You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by tr...@apache.org on 2001/05/02 04:54:11 UTC

cvs commit: apr/network_io/unix sa_common.c

trawick     01/05/01 19:54:11

  Modified:    .        CHANGES configure.in
               network_io/unix sa_common.c
  Log:
  Fix a problem on unixware where clearing h_errno wouldn't work.
  Use set_h_errno() instead.
  PR:		7651
  
  Revision  Changes    Path
  1.100     +3 -0      apr/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/apr/CHANGES,v
  retrieving revision 1.99
  retrieving revision 1.100
  diff -u -r1.99 -r1.100
  --- CHANGES	2001/05/01 04:51:59	1.99
  +++ CHANGES	2001/05/02 02:54:11	1.100
  @@ -1,5 +1,8 @@
   Changes with APR b1  
   
  +  *) Fix a problem on unixware where clearing h_errno wouldn't work.
  +     Use set_h_errno() instead.  PR #7651  [Jeff Trawick]
  +
     *) Add the test and build directories (when present) to the recursive
        make process, being sure that they are run last.  [Roy Fielding]
   
  
  
  
  1.299     +2 -0      apr/configure.in
  
  Index: configure.in
  ===================================================================
  RCS file: /home/cvs/apr/configure.in,v
  retrieving revision 1.298
  retrieving revision 1.299
  diff -u -r1.298 -r1.299
  --- configure.in	2001/05/01 19:29:34	1.298
  +++ configure.in	2001/05/02 02:54:11	1.299
  @@ -1065,6 +1065,8 @@
   AC_SUBST(have_corkable_tcp)
   AC_SUBST(accept_filter)
   
  +AC_CHECK_FUNCS(set_h_errno)
  +
   echo $ac_n "${nl}Checking for IPv6 Networking support...${nl}"
   dnl # Start of checking for IPv6 support...
   AC_SEARCH_LIBS(getaddrinfo, inet6)
  
  
  
  1.34      +9 -1      apr/network_io/unix/sa_common.c
  
  Index: sa_common.c
  ===================================================================
  RCS file: /home/cvs/apr/network_io/unix/sa_common.c,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- sa_common.c	2001/05/02 02:32:46	1.33
  +++ sa_common.c	2001/05/02 02:54:11	1.34
  @@ -71,6 +71,12 @@
   #include <stdlib.h>
   #endif
   
  +#ifdef HAVE_SET_H_ERRNO
  +#define SET_H_ERRNO(newval) set_h_errno(newval)
  +#else
  +#define SET_H_ERRNO(newval) h_errno = (newval)
  +#endif
  +
   APR_DECLARE(apr_status_t) apr_sockaddr_port_set(apr_sockaddr_t *sockaddr,
                                          apr_port_t port)
   {
  @@ -441,7 +447,9 @@
       char tmphostname[256];
   #endif
   
  -    h_errno = 0; /* don't know if it is portable for getnameinfo() to set h_errno */
  +    /* don't know if it is portable for getnameinfo() to set h_errno;
  +     * clear it then see if it was set */
  +    SET_H_ERRNO(0);
       /* default flags are NI_NAMREQD; otherwise, getnameinfo() will return
        * a numeric address string if it fails to resolve the host name;
        * that is *not* what we want here