You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by wr...@apache.org on 2006/11/28 22:24:41 UTC
svn commit: r480212 - in /apr/apr/trunk/network_io: os2/sockets.c
win32/sockets.c
Author: wrowe
Date: Tue Nov 28 13:24:40 2006
New Revision: 480212
URL: http://svn.apache.org/viewvc?view=rev&rev=480212
Log:
Sync Win32/OS2 unknown remote_addr and local_port flags to unix src.
Reviewed by wrowe and jorton
Modified:
apr/apr/trunk/network_io/os2/sockets.c
apr/apr/trunk/network_io/win32/sockets.c
Modified: apr/apr/trunk/network_io/os2/sockets.c
URL: http://svn.apache.org/viewvc/apr/apr/trunk/network_io/os2/sockets.c?view=diff&rev=480212&r1=480211&r2=480212
==============================================================================
--- apr/apr/trunk/network_io/os2/sockets.c (original)
+++ apr/apr/trunk/network_io/os2/sockets.c Tue Nov 28 13:24:40 2006
@@ -62,9 +62,11 @@
(*new)->local_addr = (apr_sockaddr_t *)apr_pcalloc((*new)->pool,
sizeof(apr_sockaddr_t));
(*new)->local_addr->pool = p;
+
(*new)->remote_addr = (apr_sockaddr_t *)apr_pcalloc((*new)->pool,
sizeof(apr_sockaddr_t));
(*new)->remote_addr->pool = p;
+ (*new)->remote_addr_unknown = 1;
/* Create a pollset with room for one descriptor. */
/* ### check return codes */
@@ -140,6 +142,10 @@
return APR_OS2_STATUS(sock_errno());
else {
sock->local_addr = sa;
+ /* XXX IPv6 - this assumes sin_port and sin6_port at same offset */
+ if (sock->local_addr->sa.sin.sin_port == 0) { /* no need for ntohs() when comparing w/ 0 */
+ sock->local_port_unknown = 1; /* kernel got us an ephemeral port */
+ }
return APR_SUCCESS;
}
}
Modified: apr/apr/trunk/network_io/win32/sockets.c
URL: http://svn.apache.org/viewvc/apr/apr/trunk/network_io/win32/sockets.c?view=diff&rev=480212&r1=480211&r2=480212
==============================================================================
--- apr/apr/trunk/network_io/win32/sockets.c (original)
+++ apr/apr/trunk/network_io/win32/sockets.c Tue Nov 28 13:24:40 2006
@@ -59,9 +59,11 @@
(*new)->local_addr = (apr_sockaddr_t *)apr_pcalloc((*new)->pool,
sizeof(apr_sockaddr_t));
(*new)->local_addr->pool = p;
+
(*new)->remote_addr = (apr_sockaddr_t *)apr_pcalloc((*new)->pool,
sizeof(apr_sockaddr_t));
(*new)->remote_addr->pool = p;
+ (*new)->remote_addr_unknown = 1;
/* Create a pollset with room for one descriptor. */
/* ### check return codes */