Updates for 2.1b
authorhyc <hyc@400ebc74-4327-4243-bc38-086b20814532>
Mon, 4 Jan 2010 12:08:46 +0000 (12:08 +0000)
committerhyc <hyc@400ebc74-4327-4243-bc38-086b20814532>
Mon, 4 Jan 2010 12:08:46 +0000 (12:08 +0000)
git-svn-id: svn://svn.mplayerhq.hu/rtmpdump/trunk@183 400ebc74-4327-4243-bc38-086b20814532

ChangeLog
Makefile
README
rtmpdump.c
rtmpsrv.c
rtmpsuck.c
streams.c

index 96b3933..5bd7380 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,13 @@ Copyright 2008-2009 Andrej Stepanchuk; Distributed under the GPL v2
 Copyright 2009-2010 Howard Chu
 Copyright 2009 The Flvstreamer Team
 
+4 January 2010, v2.1b
+- fix url matching in .swfinfo lookup
+- fix resume parsing in rtmpdump
+- minor code cleanup (CRYPTO dependencies, logging)
+- add getStreamLength recognition to rtmpsrv
+- add close processing in rtmpsuck
+
 1 January 2010, v2.1a
 - fix socket receive timeouts for WIN32
 - add streams description to README
index 90c280b..3011eca 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,9 @@
 CC=$(CROSS_COMPILE)gcc
 LD=$(CROSS_COMPILE)ld
 
+DEF=-DRTMPDUMP_VERSION=\"2.1b\"
 OPT=-O2
-CFLAGS=-Wall $(XCFLAGS) $(INC) $(OPT)
+CFLAGS=-Wall $(XCFLAGS) $(INC) $(DEF) $(OPT)
 LDFLAGS=-Wall $(XLDFLAGS)
 LIBS=-lcrypto -lz
 THREADLIB=-lpthread
diff --git a/README b/README
index e8b1340..ce9e626 100644 (file)
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-RTMP Dump v2.1a
+RTMP Dump v2.1b
 (C) 2009 Andrej Stepanchuk
 (C) 2009-2010 Howard Chu
 License: GPLv2
@@ -100,9 +100,20 @@ A rule like the above will be needed to use rtmpsuck.
 Using it in this mode takes advantage of the Linux support for IP redirects;
 in particular it uses a special getsockopt() call to retrieve the original
 destination address of the connection. That way the proxy can create the
-real outbound connection without any other help from the user. I'm not aware
-of equivalent functionality on BSD, Windows, or any other platform; if you
-know how to handle this I'd be interested in hearing about it.
+real outbound connection without any other help from the user. The equivalent
+functionality may exist on other OSs but needs more investigation.
+
+(Based on reading the BSD ipfw manpage, these rules ought to work on BSD:
+
+ipfw add 40 fwd 127.0.0.1 1935 tcp from any to any 1935
+ipfw add 40 fwd 127.0.0.1 1935 tcp from any to any 1935 not uid proxy
+
+Some confirmation from any BSD users would be nice.)
+
+(We have a solution for Windows based on a TDI driver; this is known to
+work on Win2K and WinXP but is assumed to not work on Vista or Win7 as the
+TDI is no longer used on those OS versions. Also, none of the known
+solutions are available as freeware.)
 
 The rtmpsuck command has only one option: "-z" to turn on debug logging.
 It listens on port 1935 for RTMP sessions, but you can also redirect other
index 476e912..cdc69ed 100644 (file)
@@ -43,8 +43,6 @@
 #define        SET_BINMODE(f)
 #endif
 
-#define RTMPDUMP_VERSION       "v2.1"
-
 #define RD_SUCCESS             0
 #define RD_FAILED              1
 #define RD_INCOMPLETE          2
@@ -1139,7 +1137,7 @@ main(int argc, char **argv)
 
   LogPrintf("RTMPDump %s\n", RTMPDUMP_VERSION);
   LogPrintf
-    ("(c) 2009 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL\n");
+    ("(c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL\n");
 
   if (!InitSockets())
     {
index 8275a4e..4bacea8 100644 (file)
--- a/rtmpsrv.c
+++ b/rtmpsrv.c
@@ -42,8 +42,6 @@
 #include <linux/netfilter_ipv4.h>
 #endif
 
-#define RTMPDUMP_SERVER_VERSION        "v2.1"
-
 #define RD_SUCCESS             0
 #define RD_FAILED              1
 #define RD_INCOMPLETE          2
@@ -661,8 +659,8 @@ main(int argc, char **argv)
   char *rtmpStreamingDevice = DEFAULT_HTTP_STREAMING_DEVICE;   // streaming device, default 0.0.0.0
   int nRtmpStreamingPort = 1935;       // port
 
-  LogPrintf("RTMP Server %s\n", RTMPDUMP_SERVER_VERSION);
-  LogPrintf("(c) 2009 Andrej Stepanchuk, Howard Chu; license: GPL\n\n");
+  LogPrintf("RTMP Server %s\n", RTMPDUMP_VERSION);
+  LogPrintf("(c) 2010 Andrej Stepanchuk, Howard Chu; license: GPL\n\n");
 
   debuglevel = LOGALL;
 
index 0b1e092..d0299a9 100644 (file)
@@ -42,8 +42,6 @@
 #include <linux/netfilter_ipv4.h>
 #endif
 
-#define RTMPDUMP_PROXY_VERSION "v2.1"
-
 #define RD_SUCCESS             0
 #define RD_FAILED              1
 #define RD_INCOMPLETE          2
@@ -1047,8 +1045,8 @@ main(int argc, char **argv)
   char *rtmpStreamingDevice = DEFAULT_RTMP_STREAMING_DEVICE;   // streaming device, default 0.0.0.0
   int nRtmpStreamingPort = 1935;       // port
 
-  LogPrintf("RTMP Proxy Server %s\n", RTMPDUMP_PROXY_VERSION);
-  LogPrintf("(c) 2009 Andrej Stepanchuk, Howard Chu; license: GPL\n\n");
+  LogPrintf("RTMP Proxy Server %s\n", RTMPDUMP_VERSION);
+  LogPrintf("(c) 2010 Andrej Stepanchuk, Howard Chu; license: GPL\n\n");
 
   debuglevel = LOGDEBUG;
 
index 1bf34db..e77e588 100644 (file)
--- a/streams.c
+++ b/streams.c
@@ -33,8 +33,6 @@
 
 #include "thread.h"
 
-#define RTMPDUMP_STREAMS_VERSION       "v2.1"
-
 #define RD_SUCCESS             0
 #define RD_FAILED              1
 #define RD_INCOMPLETE          2
@@ -1055,8 +1053,8 @@ main(int argc, char **argv)
   char *httpStreamingDevice = DEFAULT_HTTP_STREAMING_DEVICE;   // streaming device, default 0.0.0.0
   int nHttpStreamingPort = 80; // port
 
-  LogPrintf("HTTP-RTMP Stream Server %s\n", RTMPDUMP_STREAMS_VERSION);
-  LogPrintf("(c) 2009 Andrej Stepanchuk, Howard Chu; license: GPL\n\n");
+  LogPrintf("HTTP-RTMP Stream Server %s\n", RTMPDUMP_VERSION);
+  LogPrintf("(c) 2010 Andrej Stepanchuk, Howard Chu; license: GPL\n\n");
 
   // init request
   memset(&defaultRTMPRequest, 0, sizeof(RTMP_REQUEST));