mturk 2004/12/23 00:09:07
Modified: jk/native/common jk_connect.c
Log:
Fix in_addr problems using real structure. Patch provided by wrowe.
Thanks Bill.
Revision Changes Path
1.36 +5 -17 jakarta-tomcat-connectors/jk/native/common/jk_connect.c
Index: jk_connect.c
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_connect.c,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- jk_connect.c 17 Dec 2004 14:58:37 -0000 1.35
+++ jk_connect.c 23 Dec 2004 08:09:07 -0000 1.36
@@ -35,10 +35,6 @@
#include "apr_general.h"
#endif
-#if defined(WIN32)
-typedef u_long in_addr_t;
-#endif
-
#if defined(WIN32) || (defined(NETWARE) && defined(__NOVELL_LIBC__))
#define JK_IS_SOCKET_ERROR(x) ((x) == SOCKET_ERROR)
#define JK_GET_SOCKET_ERRNO() errno = WSAGetLastError() - WSABASEERR
@@ -53,15 +49,7 @@
int jk_resolve(char *host, int port, struct sockaddr_in *rc)
{
int x;
-
- /* TODO: Should be updated for IPV6 support. */
- /* for now use the correct type, in_addr_t */
- /* except on NetWare since the MetroWerks compiler is so strict */
-#if defined(NETWARE)
- u_long laddr;
-#else
- in_addr_t laddr;
-#endif
+ struct in_addr laddr;
memset(rc, 0, sizeof(struct sockaddr_in));
@@ -105,7 +93,7 @@
return JK_FALSE;
apr_sockaddr_ip_get(&remote_ipaddr, remote_sa);
- laddr = inet_addr(remote_ipaddr);
+ laddr.s_addr = inet_addr(remote_ipaddr);
/* May be we could avoid to delete it each time ? */
apr_pool_destroy(context);
@@ -119,13 +107,13 @@
return JK_FALSE;
}
- laddr = ((struct in_addr *)hoste->h_addr_list[0])->s_addr;
+ laddr = *((struct in_addr *)hoste->h_addr_list[0]);
#endif /* HAVE_APR */
}
else {
/* If we found only digits we use inet_addr() */
- laddr = inet_addr(host);
+ laddr.s_addr = inet_addr(host);
}
memcpy(&(rc->sin_addr), &laddr, sizeof(laddr));
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]