diff options
author | Norikatsu Shigemura <nork@FreeBSD.org> | 2005-05-01 11:21:20 +0000 |
---|---|---|
committer | Norikatsu Shigemura <nork@FreeBSD.org> | 2005-05-01 11:21:20 +0000 |
commit | 38e95cab556ff2128ad91b74d68af0b011c8ca0a (patch) | |
tree | 0cef83406bd4e2f3aac6bcfa7c5574405c2a85a7 /net/DarwinStreamingServer | |
parent | 25c18ddcfe8a07278ca218a859f4fb9228532451 (diff) |
o Change INADDR_ANY to the IP address specified.
DSS uses the IP addess where it is bind to and not the
IP addess of the default interface.
o Use the correct port number and not a generated one.
o Bump PORTREVISION, accordingly.
These are important for Broadcaster behind a NAT.
Submitted by: Denis Ahrens <denis@berlin.ccc.de>
References:: http://lists.apple.com/archives/streaming-server-dev/2004/May/msg00000.html
Sponsored by: Ensure Technology Ltd.
Notes
Notes:
svn path=/head/; revision=134441
Diffstat (limited to 'net/DarwinStreamingServer')
-rw-r--r-- | net/DarwinStreamingServer/Makefile | 2 | ||||
-rw-r--r-- | net/DarwinStreamingServer/files/patch-APIModules::QTSSReflectorModule::ReflectorStream.cpp | 25 |
2 files changed, 25 insertions, 2 deletions
diff --git a/net/DarwinStreamingServer/Makefile b/net/DarwinStreamingServer/Makefile index c4662e0a388b..8f4a6da1b379 100644 --- a/net/DarwinStreamingServer/Makefile +++ b/net/DarwinStreamingServer/Makefile @@ -7,7 +7,7 @@ PORTNAME= DarwinStreamingServer PORTVERSION= 5.0.3.2 -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= net MASTER_SITES= #http://developer.apple.com/darwin/projects/streaming/source/ # You must accept APSL (Apple Public Source License), and get diff --git a/net/DarwinStreamingServer/files/patch-APIModules::QTSSReflectorModule::ReflectorStream.cpp b/net/DarwinStreamingServer/files/patch-APIModules::QTSSReflectorModule::ReflectorStream.cpp index 819d74603870..7339daf83f93 100644 --- a/net/DarwinStreamingServer/files/patch-APIModules::QTSSReflectorModule::ReflectorStream.cpp +++ b/net/DarwinStreamingServer/files/patch-APIModules::QTSSReflectorModule::ReflectorStream.cpp @@ -1,5 +1,5 @@ --- APIModules/QTSSReflectorModule/ReflectorStream.cpp.orig Thu Jun 10 09:03:34 2004 -+++ APIModules/QTSSReflectorModule/ReflectorStream.cpp Fri Jan 21 10:23:11 2005 ++++ APIModules/QTSSReflectorModule/ReflectorStream.cpp Sun May 1 19:53:44 2005 @@ -179,7 +179,7 @@ theRRWriter++; *theRRWriter = htonl(theSsrc); @@ -9,3 +9,26 @@ theRRWriter++; *theRRWriter = htonl(0); theRRWriter++; +@@ -381,11 +381,11 @@ + // specified by the source info, we can use that to demultiplex separate broadcasts on + // the same port. If the src IP addr is 0, we cannot do this and must dedicate 1 port per + // broadcast +- fSockets = sSocketPool.GetUDPSocketPair(INADDR_ANY, fStreamInfo.fPort, fStreamInfo.fSrcIPAddr, 0); ++ fSockets = sSocketPool.GetUDPSocketPair(fStreamInfo.fDestIPAddr, fStreamInfo.fPort, fStreamInfo.fSrcIPAddr, 0); + if ((fSockets == NULL) && fStreamInfo.fSetupToReceive) + { + fStreamInfo.fPort = 0; +- fSockets = sSocketPool.GetUDPSocketPair(INADDR_ANY, fStreamInfo.fPort, fStreamInfo.fSrcIPAddr, 0); ++ fSockets = sSocketPool.GetUDPSocketPair(fStreamInfo.fDestIPAddr, fStreamInfo.fPort, fStreamInfo.fSrcIPAddr, 0); + } + if (fSockets == NULL) + return QTSSModuleUtils::SendErrorResponse(inRequest, qtssServerInternal, +@@ -1388,7 +1388,7 @@ + { + // Check to see if we need to set the remote RTCP address + // for this stream. This will be necessary if the source is unicast. +- if ((theRemoteAddr != 0) && (theSender->fStream->fDestRTCPAddr == 0)) ++ if ((theRemoteAddr != 0) && (theSender->fStream->fDestRTCPAddr == 0) && (thePacket->IsRTCP())) + { + // If the source is multicast, this shouldn't be necessary + Assert(!SocketUtils::IsMulticastIPAddr(theSender->fStream->fStreamInfo.fDestIPAddr)); |