Re: Time to heat up the new module discussion



Hi Lennart,

I think there's come confusion about the libnss implementations...

Lennart Poettering wrote:
> 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.

I wasn't talking about libss-mdns - at least not your version, which is
incompatible with Solaris' libnss implementation, so much that we have to write
 our own implementation from scratch.

Of course we don't want to write everything, and as such would have liked to use
the Avahi C API, but the Avahi developers don't guarantee stability levels in
the core C API, so we in Sun can't use it. The only API you guarantee stability
for is the D-Bus API. This is what I was referring to.

> 
> 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.

Again, as I say, not the case when we wanted to write a new implementation...

Darren.

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



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