[FFmpeg-cvslog] rtmpproto: Don't include a client version in the unencrypted C1 handshake

Martin Storsjö git at videolan.org
Thu Mar 23 17:38:16 EET 2017


ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Fri Oct 14 15:55:52 2016 +0300| [7d8d726be7dc46343ab1c98c339c1ed44bcb07c1] | committer: Martin Storsjö

rtmpproto: Don't include a client version in the unencrypted C1 handshake

According to the public RTMP specification, these 4 bytes should
be zero.

librtmp in server mode assumes that the RTMPE (FP9) handshake is
used if these bytes are nonzero.

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=7d8d726be7dc46343ab1c98c339c1ed44bcb07c1
---

 libavformat/rtmpproto.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c
index 0097841..1ffc79a 100644
--- a/libavformat/rtmpproto.c
+++ b/libavformat/rtmpproto.c
@@ -1198,10 +1198,7 @@ static int rtmp_handshake(URLContext *s, RTMPContext *rt)
     uint8_t tosend    [RTMP_HANDSHAKE_PACKET_SIZE+1] = {
         3,                // unencrypted data
         0, 0, 0, 0,       // client uptime
-        RTMP_CLIENT_VER1,
-        RTMP_CLIENT_VER2,
-        RTMP_CLIENT_VER3,
-        RTMP_CLIENT_VER4,
+        0, 0, 0, 0,       // zeros
     };
     uint8_t clientdata[RTMP_HANDSHAKE_PACKET_SIZE];
     uint8_t serverdata[RTMP_HANDSHAKE_PACKET_SIZE+1];



More information about the ffmpeg-cvslog mailing list