1# Readme for libnss_mdns
2
3Andrew White <Andrew.White@nicta.com.au>
4June 2004
5
6Before using this software, see "Licensing" at bottom of this file.
7
8
9# Introduction
10
11This code implements a module for the Name Service Switch to perform
12hostname lookups using the Darwin mDNSResponder / mdnsd.  This code has
13been tested on Debian and Redhat Linux.  It may work on other platforms. 
14It *will not* work on Darwin or Mac OS X - the necessary functionality is
15already built into the operation system.
16
17
18# Building and Installing:
19
20See "ReadMe.txt" for instructions on building and installing.
21
22When you run "make install" as described in that file:
23o libnss_mdns-0.2.so and libnss_mdns.so.2 are installed in /lib,
24o manual pages libnss_mdns(8) and nss_mdns.conf(5) are installed,
25o nss_mdns.conf is installed in /etc, and
26o /etc/nsswitch.conf is modified to add "mdns" on the "hosts:" line
27
28This will cause dns lookups to be passed via mdnsd before trying the dns.
29
30
31# Testing
32
33For most purposes, 'ping myhostname.local' will tell you if mdns is
34working.  If MDNS_VERBOSE was set in nss_mdns.c during compilation then
35lots of chatty debug messages will be dumped to LOG_DEBUG in syslog. 
36Otherwise, nss_mdns will only log if something isn't behaving quite right.
37
38
39# Implementation details
40
41libnss_mdns provides alternative back-end implementations of the libc
42functions gethostbyname, gethostbyname2 and gethostbyaddr, using the Name
43Service Switch mechanism.  More information on writing nsswitch modules
44can be found via 'info libc "Name Service Switch"', if installed.
45
46
47# Licensing
48
49This software is licensed under the NICTA Public Software License, version
501.0, printed below:
51
52NICTA Public Software Licence
53Version 1.0
54
55Copyright © 2004 National ICT Australia Ltd
56
57All rights reserved.
58
59By this licence, National ICT Australia Ltd (NICTA) grants permission,
60free of charge, to any person who obtains a copy of this software
61and any associated documentation files ("the Software") to use and
62deal with the Software in source code and binary forms without
63restriction, with or without modification, and to permit persons
64to whom the Software is furnished to do so, provided that the
65following conditions are met:
66
67- Redistributions of source code must retain the above copyright
68  notice, this list of conditions and the following disclaimers.
69- Redistributions in binary form must reproduce the above copyright
70  notice, this list of conditions and the following disclaimers in
71  the documentation and/or other materials provided with the
72  distribution.
73- The name of NICTA may not be used to endorse or promote products
74  derived from this Software without specific prior written permission.
75
76EXCEPT AS EXPRESSLY STATED IN THIS LICENCE AND TO THE FULL EXTENT
77PERMITTED BY APPLICABLE LAW, THE SOFTWARE IS PROVIDED "AS-IS" AND
78NICTA MAKES NO REPRESENTATIONS, WARRANTIES OR CONDITIONS OF ANY
79KIND, EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION, ANY
80REPRESENTATIONS, WARRANTIES OR CONDITIONS REGARDING THE CONTENTS
81OR ACCURACY OF THE SOFTWARE, OR OF TITLE, MERCHANTABILITY, FITNESS
82FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, THE ABSENCE OF LATENT
83OR OTHER DEFECTS, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR
84NOT DISCOVERABLE.
85
86TO THE FULL EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT WILL
87NICTA BE LIABLE ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
88NEGLIGENCE) FOR ANY LOSS OR DAMAGE WHATSOEVER, INCLUDING (WITHOUT
89LIMITATION) LOSS OF PRODUCTION OR OPERATION TIME, LOSS, DAMAGE OR
90CORRUPTION OF DATA OR RECORDS; OR LOSS OF ANTICIPATED SAVINGS,
91OPPORTUNITY, REVENUE, PROFIT OR GOODWILL, OR OTHER ECONOMIC LOSS;
92OR ANY SPECIAL, INCIDENTAL, INDIRECT, CONSEQUENTIAL, PUNITIVE OR
93EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THIS LICENCE,
94THE SOFTWARE OR THE USE OF THE SOFTWARE, EVEN IF NICTA HAS BEEN
95ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
96
97If applicable legislation implies warranties or conditions, or
98imposes obligations or liability on NICTA in respect of the Software
99that cannot be wholly or partly excluded, restricted or modified,
100NICTA's liability is limited, to the full extent permitted by the
101applicable legislation, at its option, to:
102
103a. in the case of goods, any one or more of the following:
104  i.   the replacement of the goods or the supply of equivalent goods;
105  ii.  the repair of the goods;
106  iii. the payment of the cost of replacing the goods or of acquiring
107       equivalent goods;
108  iv.  the payment of the cost of having the goods repaired; or
109b. in the case of services:
110  i.   the supplying of the services again; or 
111  ii.  the payment of the cost of having the services supplied
112       again.
113
114
115# Links:
116
117NICTA
118	http://www.nicta.com.au/
119Darwin
120	http://developer.apple.com/darwin/
121DNS service discovery and link-local
122	http://http://zeroconf.org/
123	http://http://multicastdns.org/
124	http://http://dns-sd.org/
125	http://http://dotlocal.org/
126