[PATCH] resolv/resolv.h fixes

Jakub Jelinek jakub@redhat.com
Tue Jul 25 06:10:00 GMT 2000


On Tue, Jul 25, 2000 at 03:01:34PM +0200, Mark Kettenis wrote:
>    Date: Tue, 25 Jul 2000 14:16:01 +0200
>    From: Jakub Jelinek <jakub@redhat.com>
> 
>    Hi!
> 
>    Several glibc changes from resolv.h disappeared during update from bind,
>    which causes crashes in threaded programs and several C++ programs not to
>    compile.
> 
> I quite deliberately removed some of the changes that were made.  The __P ->
> __THROW changes shouldn't be necessary.  I'd prefer not make that to
> stay closer to the BIND sources.  
> 
> I'm not sure about the res_send_qhook and res_send_rhook.  The C++
> compiler will probably warn about the current situation. 

It is not a warning, it is fatal error in fact:
/usr/include/resolv.h:95: `res_send_qhook' declared with an exception
specification

> However
> simply removing the __P there isn't exactly the right solution.  These
> are types for callback functions, so we should remove the __THROW
> attribute from the resolver functions that might end up calling these
> such callbacks too.  I'll take responsibility for that.

Ok.

> 
> I don't like the __RES_PTHREAD_INTERNAL hack.  We shoudn't clutter the
> public header files with internal details if possible.  I now realize
> that I made some changes to the LinuxThreads files that I somehow
> lost.  I'll submit those shortly.

Fine if you #undef _res in linuxthreads/internals.h and declare the
structure.

	Jakub


More information about the Libc-hacker mailing list