$Id$ There's a lot of programming to be done. I've tried to break things down into discrete tasks, here: critique architecture :-) add Opaque LSAs to HSLS routing implementation; finish Opaque LSA client API for name service to use program web interface for a user to set pass/block rules, nameservers, domain name write a library for originating/receiving 'domain', 'nameserver', 'srv', and 'txt'-type Opaque LSAs (use cases #0-#5) configure nsd(8) based on received 'domain'-type LSAs (see use-case #0) for non-Zeroconf hosts, originate appropriate LSAs and emit IP-redirect directives for IP Filter (use-case #1) program library (or adapt existing) for Multicast DNS and DNS Service Discovery with support for both querying and responding to iChat TXT and SRV records (use-cases #2-#4) (docs at and ) [The 'howl' library's callback API is a good start. I am wary of the implementation code, the Apple license terms, and the IPv4-centrism.... There is an Apple library & API for POSIX, but I cannot find API docs except a line-wrapped .h, the license is questionable, and they make stupid assumptions (like running mDNS on *every* interface, sheesh).] issue appropriate SRV / TXT records for received 'srv'/'txt'-type Opaque LSAs apply pass/block filters to SRV records; originate appropriate LSAs and emit IP-redirect directives for IP Filter (use-cases #2-#4) $Id$