jorton 2003/09/17 07:19:17
Modified: include apr_network_io.h
Log:
Move the 'sa' field to the end of the structure, to ensure
binary compatibility between a libapr built with IPv6 support
and one built without.
Revision Changes Path
1.144 +9 -9 apr/include/apr_network_io.h
Index: apr_network_io.h
===================================================================
RCS file: /home/cvs/apr/include/apr_network_io.h,v
retrieving revision 1.143
retrieving revision 1.144
diff -u -u -r1.143 -r1.144
--- apr_network_io.h 3 Sep 2003 16:31:46 -0000 1.143
+++ apr_network_io.h 17 Sep 2003 14:19:16 -0000 1.144
@@ -239,15 +239,6 @@
apr_port_t port;
/** The family */
apr_int32_t family;
- /** Union of either IPv4 or IPv6 sockaddr. */
- union {
- /** IPv4 sockaddr structure */
- struct sockaddr_in sin;
-#if APR_HAVE_IPV6
- /** IPv6 sockaddr structure */
- struct sockaddr_in6 sin6;
-#endif
- } sa;
/** How big is the sockaddr we're using? */
apr_socklen_t salen;
/** How big is the ip address structure we're using? */
@@ -261,6 +252,15 @@
/** If multiple addresses were found by apr_sockaddr_info_get(), this
* points to a representation of the next address. */
apr_sockaddr_t *next;
+ /** Union of either IPv4 or IPv6 sockaddr. */
+ union {
+ /** IPv4 sockaddr structure */
+ struct sockaddr_in sin;
+#if APR_HAVE_IPV6
+ /** IPv6 sockaddr structure */
+ struct sockaddr_in6 sin6;
+#endif
+ } sa;
};
#if APR_HAS_SENDFILE