apr-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From traw...@apache.org
Subject cvs commit: apr/include/arch/aix dso.h
Date Mon, 02 Apr 2001 19:33:16 GMT
trawick     01/04/02 12:33:15

  Modified:    .        CHANGES configure.in
               dso/aix  dso.c Makefile.in
               include/arch/aix dso.h
  Log:
  This patch sets the dso/aix subdirectory to be used for older versions
  of AIX and fixes a number of bugs the dso code in that directory.
  
  Submitted by:	Victor Orlikowski
  Reviewed by:	Jeff Trawick
                  (any build problems are my bad... I changed Victor's patch
                  to avoid the 'include "../unix/apr_private.h"' kludge but
                  am not able to easily test)
  
  Revision  Changes    Path
  1.81      +4 -0      apr/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/apr/CHANGES,v
  retrieving revision 1.80
  retrieving revision 1.81
  diff -u -r1.80 -r1.81
  --- CHANGES	2001/04/02 19:01:09	1.80
  +++ CHANGES	2001/04/02 19:32:54	1.81
  @@ -1,5 +1,9 @@
   Changes with APR b1  
   
  +  *) Use the dso/aix subdirectory for older versions of AIX and fix 
  +     a number of bugs in the dso code in that directory.
  +     [Victor Orlikowski]
  +
     *) Allow libtool 1.3b to be used.  [Victor Orlikowski]
   
     *) Misc. Win32 fixes: Set the pool pointer in apr_sockaddr_t 
  
  
  
  1.268     +6 -0      apr/configure.in
  
  Index: configure.in
  ===================================================================
  RCS file: /home/cvs/apr/configure.in,v
  retrieving revision 1.267
  retrieving revision 1.268
  diff -u -r1.267 -r1.268
  --- configure.in	2001/03/31 06:20:00	1.267
  +++ configure.in	2001/04/02 19:32:56	1.268
  @@ -120,6 +120,12 @@
   esac
   
   case "$OS" in
  +   i386-ibm-aix* | *-ibm-aix[1-2].* | *-ibm-aix3.* | *-ibm-aix4.1 | *-ibm-aix4.1.* | *-ibm-aix4.2
| *-ibm-aix4.2.*)
  +       OSDIR="aix"
  +       config_subdirs="shmem/unix/mm"
  +       USE_MM=yes
  +       eolstr="\\n"
  +       ;;
      *-os2*)
          CFLAGS="$CFLAGS -DOS2 -Zmt"
          OSDIR="os2"
  
  
  
  1.14      +18 -5     apr/dso/aix/dso.c
  
  Index: dso.c
  ===================================================================
  RCS file: /home/cvs/apr/dso/aix/dso.c,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- dso.c	2001/02/16 04:15:32	1.13
  +++ dso.c	2001/04/02 19:33:03	1.14
  @@ -148,8 +148,10 @@
   {
       void *os_handle = dlopen((char *)path, RTLD_NOW | RTLD_GLOBAL);
   
  -    if(os_handle == NULL)
  +    if(os_handle == NULL) {
  +        (*res_handle)->errormsg = dlerror();       
           return APR_EDSOOPEN;
  +    }
   
       *res_handle = apr_pcalloc(ctx, sizeof(*res_handle));
       (*res_handle)->handle = (void*)os_handle;
  @@ -171,13 +173,24 @@
   {
       void *retval = dlsym(handle->handle, symname);
   
  -    if (retval == NULL)
  +    if (retval == NULL) {
  +        handle->errormsg = dlerror();
           return APR_EINIT;
  -    
  -    ressym = retval;   
  +    }
  +
  +    *ressym = retval;
       return APR_SUCCESS;
   }
   
  +APR_DECLARE(const char *) apr_dso_error(apr_dso_handle_t *dso, char *buffer, apr_size_t
buflen)
  +{
  +    if (dso->errormsg) {
  +        apr_cpystrn(buffer, dso->errormsg, buflen);
  +        return dso->errormsg;
  +    }
  +    return "No Error";
  +}
  +
   
   
   /*
  @@ -282,7 +295,7 @@
        * load should be declared load(const char *...). Thus we
        * cast the path to a normal char *. Ugly.
        */
  -    if ((mp->entry = (void *) load((char *) path, L_NOAUTODEFER, NULL)) == NULL) {
  +    if ((mp->entry = (void *) loadAndInit((char *) path, L_NOAUTODEFER, NULL)) == NULL)
{
   	free(mp->name);
   	free(mp);
   	errvalid++;
  
  
  
  1.8       +3 -1      apr/dso/aix/Makefile.in
  
  Index: Makefile.in
  ===================================================================
  RCS file: /home/cvs/apr/dso/aix/Makefile.in,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- Makefile.in	2001/01/09 11:05:37	1.7
  +++ Makefile.in	2001/04/02 19:33:05	1.8
  @@ -5,6 +5,8 @@
   @INCLUDE_RULES@
   
   INCDIR=../../include
  -INCLUDES=-I$(INCDIR) -I$(INCDIR)/arch
  +OSDIR=$(INCDIR)/arch/@OSDIR@
  +DEFOSDIR=$(INCDIR)/arch/@DEFAULT_OSDIR@
  +INCLUDES=-I$(INCDIR) -I$(OSDIR) -I$(DEFOSDIR)
   
   # DO NOT REMOVE
  
  
  
  1.8       +1 -0      apr/include/arch/aix/dso.h
  
  Index: dso.h
  ===================================================================
  RCS file: /home/cvs/apr/include/arch/aix/dso.h,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- dso.h	2001/02/16 04:15:49	1.7
  +++ dso.h	2001/04/02 19:33:12	1.8
  @@ -71,6 +71,7 @@
   struct apr_dso_handle_t {
       apr_pool_t  *cont;
       void          *handle;
  +    const char *errormsg;
   };
   
   #endif
  
  
  

Mime
View raw message