1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-14 23:46:10 +00:00
freebsd-ports/net/rtsp_proxy/files/patch-ad

30 lines
1.2 KiB
Plaintext
Raw Normal View History

--- ../shared_udp.c Tue Jul 6 17:42:26 1999
+++ ../shared_udp.c Tue Jul 20 23:54:38 1999
@@ -259,7 +259,16 @@
gNextPort++;
if (gNextPort > gUDPPortMax)
gNextPort = gUDPPortMin;
- } while (bind_socket_to_address(skt1, fromIP, port1 = gNextPort++, false) != 0);
+ } while (bind_socket_to_address(skt1, INADDR_ANY, port1 = gNextPort++, false) != 0);
+
+// i've changed the previous bind and the next one below to bind to any
+// IP number rather than using 'fromIP'. 'fromIP' is obtained from gProxyIP
+// which is in turn obtained from 'get_local_ip_address'. this function
+// gets the current hostname and then resolves that into an address. however,
+// since a proxy server runs on a bridging system with multiple IP addresses,
+// this is as likely as not to return the wrong IP address, which results in
+// the proxy missing all of the traffic from the server. not binding to a
+// specific address is cheap but gets a result.
if (withSib) {
retry_rtcp:
@@ -271,7 +280,7 @@
else
goto bail_error;
}
- if (bind_socket_to_address(skt2, fromIP, port2 = gNextPort++, false) != 0) {
+ if (bind_socket_to_address(skt2, INADDR_ANY, port2 = gNextPort++, false) != 0) {
close_socket(skt1);
close_socket(skt2);
skt1 = INVALID_SOCKET;