Return-Path: Delivered-To: apmail-apr-dev-archive@apr.apache.org Received: (qmail 55898 invoked by uid 500); 30 Apr 2001 15:35:29 -0000 Mailing-List: contact dev-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Delivered-To: mailing list dev@apr.apache.org Received: (qmail 55871 invoked from network); 30 Apr 2001 15:35:28 -0000 Date: Mon, 30 Apr 2001 08:37:22 -0700 (PDT) From: X-Sender: To: Cc: "William A. Rowe, Jr." , Subject: Re: os-unixware/7651: compilation of srclib/apr/network_io/unix/sa_common.c fails In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Spam-Rating: h31.sny.collab.net 1.6.2 0/1000/N I personally like Jeff's patch, with one minor adjustment. I would do something like the following #ifndef HAVE_SET_H_ERRNO #define set_h_errno(val) h_errno = val #endif And then always use set_h_errno. However, that is just my personal preference for keeping ifdefs out of the code. Other than that, +1 for Jeff's patch. Ryan On 30 Apr 2001, Jeff Trawick wrote: > Help me out here... I don't follow your comments. > > "William A. Rowe, Jr." writes: > > > 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. > > what is the connection between "unix MPM" and this code? Do you mean > "unix build of APR?" > > > 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!) > > What does "munging system symbols" mean? > > apr_get/set_netos_error() is not sufficient. For Unix that needs to deal > with errno. This is h_errno. > > > 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. > > can't do because of the errno/h_errno issue... > > -----------/----------- > > Note that this path is only used on systems with getnameinfo() and IPv6 > support. The h_errno kludge helps out with some getnameinfo() issues > on common versions of glibc. Before we truly clean up this code we > need to understand what is needed to operate with getnameinfo() across > a variety of systems. Hopefully the h_errno stuff can then be hidden > inside ifdef GETNAMEINFO_SETS_H_ERRNO and any non-Unix platforms which > later add getnameinfo() support won't be hurt by the kludge since it > won't be set. > > -- > Jeff Trawick | trawickj@bellsouth.net | PGP public key at web site: > http://www.geocities.com/SiliconValley/Park/9289/ > Born in Roswell... married an alien... > > _______________________________________________________________________________ Ryan Bloom rbb@apache.org 406 29th St. San Francisco, CA 94131 -------------------------------------------------------------------------------