apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <wr...@covalent.net>
Subject Re: os-unixware/7651: compilation of srclib/apr/network_io/unix/sa_common.c fails
Date Mon, 30 Apr 2001 13:27:28 GMT
Jeff,

  this is the wrong solution (and it was anticipated).  Since win32 and OS2 don't
need the unix MPM's they were never fixed, apparently (from this report) they must be.

  We can't go munging system symbols, see the declarations in apr_errno.h for the
apr_get_netos_error() (and if we need it, we could implement an apr_set_netos_error() 
although it may not enjoy cross-platform support!)

  Patch the apr core and mpms to adopt this call instead of h_errno and implement your
solution in terms of declaring apr_get_netos_error() and the problem should go away.

Bill


----- Original Message ----- 
From: <trawick@apache.org>
To: <apache-bugdb@apache.org>; <frank@lafr.de>; <trawick@apache.org>
Sent: Monday, April 30, 2001 7:33 AM
Subject: Re: os-unixware/7651: compilation of srclib/apr/network_io/unix/sa_common.c fails


> Synopsis: compilation of srclib/apr/network_io/unix/sa_common.c fails
> 
> State-Changed-From-To: open-feedback
> State-Changed-By: trawick
> State-Changed-When: Mon Apr 30 05:33:16 PDT 2001
> State-Changed-Why:
> Thanks for your report!
> 
> I don't have access to a system where set_h_errno() is needed, 
> but I have coded the following change to APR which should handle
> such a system.  Please let me know if it resolves the problem.
> (If I haven't heard back in a couple of days I'll commit the change
> and close the PR and you can open another one if it is still not
> fixed.)
>
> Index: configure.in
> ===================================================================
> RCS file: /home/cvspublic/apr/configure.in,v
> retrieving revision 1.295
> diff -u -r1.295 configure.in
> --- configure.in 2001/04/29 05:22:15 1.295
> +++ configure.in 2001/04/30 12:27:38
> @@ -1061,6 +1061,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)
> Index: network_io/unix/sa_common.c
> ===================================================================
> RCS file: /home/cvspublic/apr/network_io/unix/sa_common.c,v
> retrieving revision 1.32
> diff -u -r1.32 sa_common.c
> --- network_io/unix/sa_common.c 2001/03/15 21:54:59 1.32
> +++ network_io/unix/sa_common.c 2001/04/30 12:27:39
> @@ -437,7 +437,13 @@
>      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 */
> +#ifdef HAVE_SET_H_ERRNO
> +    set_h_errno(0);
> +#else
> +    h_errno = 0;
> +#endif
>      /* 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
> 
> 
> 



Mime
View raw message