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]

Reply via email to