On Tue, Mar 13, 2001 at 05:57:20PM -0800, Gurusamy Sarathy wrote:
> There is a change in behavior here that looks somewhat suspect
> because the comments didn't mention it.
> 
> >On Wed, Feb 21, 2001 at 09:32:04PM +0100, Jens-Uwe Mager wrote:
> >> +#ifdef USE_NATIVE_DLOPEN
> [...]
> >> +#else
> [...]
> >> +#ifndef RTLD_LAZY
> >> +# define RTLD_LAZY 0
> >> +#endif
> >> +#ifndef RTLD_GLOBAL
> >> +# define RTLD_GLOBAL 0
> >> +#endif
> [...]
> >> -  RETVAL = dlopen(filename, 1) ;
> >> +  RETVAL = dlopen(filename, RTLD_GLOBAL|RTLD_LAZY) ;
> 
> It seems to me that dlopen() is now being called with a second
> argument of 0 instead of 1 if USE_NATIVE_DLOPEN wasn't set and
> those two constants aren't defined in the system headers.
> 
> Is this an intentional change?  Does it have potential to break
> anything on the pre-4.3 AIX versions?

If you look in the source you will see that the mode argument of dlopen
is not used at all in the dlopen emulation case, the argument "1" was
not used in the previous version at all. And in fact in the dlopen
emulator case there was no definition for the mode constants at all. I
did change the arguments so the dlopen call can be used in both cases,
with the emulator and with the native dlopen.

-- 
Jens-Uwe Mager

HELIOS Software GmbH
Steinriede 3
30827 Garbsen
Germany

Phone:          +49 5131 709320
FAX:            +49 5131 709325
Internet:       [EMAIL PROTECTED]

Reply via email to