Re: Time to heat up the new module discussion



On Fri, 14.07.06 14:56, Darren Kenny (Darren Kenny Sun COM) wrote:

> An example that effected us in Sun recently is Avahi - Avahi is excellent work
> and a good implementation of the Zeroconf networking stack - but it is very high
> level and has a dependency on D-Bus - so to implement something to support it's
> use in the nsswitch.conf file (that maps gethostent calls to files/dns/nis/ldap
> in a transparent way) we would have to include dependencies on LOADS of, what
> would be generally considered application layer APIs, in to an area that it
> simply wouldn't make sense (libnss tends to be VERY low down the stack in
> regards to APIs that people use). D-Bus in turn has a Python dependency - now
> while I know this is optional - it makes for a difficult argument as to how to
> package it, etc.

Ahem, Avahi is actually a very bad example for your case. libnss-mdns
doesn't depend on Avahi. libnss-mdns is much older than
Avahi. libnss-mdns comes with its own mini-mDNS stack which implements
enough to do host name resolution, but not much more. Recent versions
of nss-mdns gained the ability to contact a running avahi server over
a UNIX socket and use its cache. However, this is fully optional and
detected during runtime, requires no common code and definitely no
DBUS.

You can run nss-mdns without avahi and vice versa. If you run both at
the same time you get some extra functionality.

libnss-mdns.so depends on libc.so and nothing else.

Lennart 
(who happens to be the developer of both libnss-mdns and Avahi)

-- 
Lennart Poettering; lennart [at] poettering [dot] net
ICQ# 11060553; GPG 0x1A015CC4; http://0pointer.net/lennart/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]