: Why are we using libverto again

Nathaniel McCallum npmccallum at redhat.com
Thu Jul 7 11:26:21 EDT 2011


On Thu, 2011-07-07 at 10:44 -0400, Sam Hartman wrote:
> So, as far as I can tell dladdr is a glibc extension.  So, we cannot
> even guarantee it's present on Unix platforms.
> 
> I'm very concerned about the portability impact of this many shared
> library tricks.  Without win32 portability we can never use this in
> libkrb5.  So, it's only valuable for the KDC.
> 
> Now, for the KDC today, we could just use a specific event library and
> gain significant complexity savings.
> 
> I'm quite concerned that the complexity of libverto is too great to
> depend on just for simplifying a future libkdc.
> 
> This is particulary true because several of the uses of libkdc such as
> pku2u or some of the eap preauth cases would strongly benefit from
> porting to Windows.
> 
> I think we need to take a step back and carefully consider whether this
> direction makes sense.

dladdr() is available everywhere in UNIX land (I have yet to see a
platform that doesn't support it) and its only required usage is
resetting signal handlers. If we find a platform that doesn't support
it, we'll just ifdef out the signal handler reset logic. This code only
exists to prevent crashes if people stupidly try to use multiple event
loops at the same time.

Also, to ease your fears, I'm about 50% done with a Windows port already
(it already builds with the win32 version of glib). I have experience
with the subtleties of win32's LoadLibrary() implementation as I've done
this before in other projects.

In short, let's get the facts and not spread FUD.

Nathaniel




More information about the krbdev mailing list