This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Glibc 2.2 is broken


On Wed, Jul 19, 2000 at 04:52:07PM -0700, H . J . Lu wrote:
> # netscape
> /usr/lib/netscape/netscape-communicator: Symbol `_res' has different size in shared object, consider re-linking
> (dns helper): Symbol `_res' has different size in shared object, consider re-linking
> zsh: 1833 bus error  netscape
> 
> We should provide symbol versioning for it.
> 

BTW, due to the copy relocation on ia32, the definition in the main
executable is used. On ia32, we can only shrink the size of data in
libc.so, not enlarg it. It has to be fixed.

The new struct __res_state looks strange:

        union {
                char    pad[52];        /* On an i386 this means 512b total. */
                struct {
                        u_int16_t               nscount; 
                        u_int16_t               nstimes[MAXNS]; /* ms. */
                        int                     nssocks[MAXNS];
                        struct sockaddr_in      nsaddrs[MAXNS];
                } _ext;
        } _u;

The total size of __res_state is 528 bytes now. The comments for i386
no longer applies. I don't know why it is still there. Besides size of
_u._ext is 68 bytes. Did I miss something?


H.J.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]