summaryrefslogtreecommitdiff
path: root/src/nss-myhostname/doc
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2013-01-07 15:14:01 +0100
committerTom Gundersen <teg@jklm.no>2013-01-07 15:14:01 +0100
commitf274ece0f76b5709408821e317e87aef76123db6 (patch)
treea14933a1d5bc8fa902f0d191cb358c4e06ea9461 /src/nss-myhostname/doc
parentd7ae18eea511caa6f1af63b7f07abebf2436fded (diff)
parent8e6640f0fe9eebde5a6cc9f1c0a20a289b8ad9c8 (diff)
Merge nss-myhostname
Diffstat (limited to 'src/nss-myhostname/doc')
-rw-r--r--src/nss-myhostname/doc/.gitignore2
-rw-r--r--src/nss-myhostname/doc/Makefile.am38
-rw-r--r--src/nss-myhostname/doc/README.html.in166
-rw-r--r--src/nss-myhostname/doc/style.css25
4 files changed, 231 insertions, 0 deletions
diff --git a/src/nss-myhostname/doc/.gitignore b/src/nss-myhostname/doc/.gitignore
new file mode 100644
index 0000000000..bc63974b07
--- /dev/null
+++ b/src/nss-myhostname/doc/.gitignore
@@ -0,0 +1,2 @@
+README
+README.html
diff --git a/src/nss-myhostname/doc/Makefile.am b/src/nss-myhostname/doc/Makefile.am
new file mode 100644
index 0000000000..4f773ac2c6
--- /dev/null
+++ b/src/nss-myhostname/doc/Makefile.am
@@ -0,0 +1,38 @@
+# This file is part of nss-myhostname.
+#
+# Copyright 2008 Lennart Poettering
+#
+# nss-myhostname is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public License
+# as published by the Free Software Foundation, either version 2.1 of
+# the License, or (at your option) any later version.
+#
+# nss-myhostname is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with nss-myhostname. If not, If not, see
+# <http://www.gnu.org/licenses/>.
+
+dist_html_DATA = README.html style.css
+EXTRA_DIST = README.html.in
+
+MAINTAINERCLEANFILES = README.html
+CLEANFILES =
+
+if USE_LYNX
+dist_doc_DATA = README
+MAINTAINERCLEANFILES += README
+
+README: README.html
+ lynx --dump $^ | sed 's,file://localhost/.*/doc/README.html,README,' > $@
+
+CLEANFILES += README
+endif
+
+tidy: README.html
+ tidy -qe < README.html ; true
+
+.PHONY: tidy
diff --git a/src/nss-myhostname/doc/README.html.in b/src/nss-myhostname/doc/README.html.in
new file mode 100644
index 0000000000..f78618298c
--- /dev/null
+++ b/src/nss-myhostname/doc/README.html.in
@@ -0,0 +1,166 @@
+<?xml version="1.0" encoding="iso-8859-1"?> <!-- -*-html-helper-*- -->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+
+<head>
+<title>nss-myhostname @PACKAGE_VERSION@</title>
+<link rel="stylesheet" type="text/css" href="style.css" />
+</head>
+
+<body>
+<h1><a name="top">nss-myhostname @PACKAGE_VERSION@</a></h1>
+
+<p><i>Copyright 2005-2011 Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;</i></p>
+
+<ul class="toc">
+ <li><a href="#license">License</a></li>
+ <li><a href="#news">News</a></li>
+ <li><a href="#overview">Overview</a></li>
+ <li><a href="#status">Current Status</a></li>
+ <li><a href="#documentation">Documentation</a></li>
+ <li><a href="#requirements">Requirements</a></li>
+ <li><a href="#installation">Installation</a></li>
+ <li><a href="#acks">Acknowledgements</a></li>
+ <li><a href="#download">Download</a></li>
+</ul>
+
+<h2><a name="license">License</a></h2>
+
+<p>This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public License as
+published by the Free Software Foundation, either version 2.1 of the
+License, or (at your option) any later version.</p>
+
+<p>This program is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.</p>
+
+<h2><a name="news">News</a></h2>
+
+<div class="news-date">Mon May 9 2011: </div>
+
+<p class="news-text"><a href="@PACKAGE_URL@nss-myhostname-0.3.tar.gz">Version
+0.3</a> released. Changes include: Always return locally configured IP
+addresses first, use 127.0.0.2/::1 only as fallback if no addresses
+are configured.</p>
+
+<div class="news-date">Mon Oct 27 2008: </div>
+
+<p class="news-text"><a
+href="@PACKAGE_URL@nss-myhostname-0.2.tar.gz">Version 0.2</a>
+released. Changes include: Update for IPv6 and newest glibc NSS interfaces</p>
+
+<div class="news-date">Sat Nov 19 2005: </div>
+
+<p class="news-text"><a
+href="@PACKAGE_URL@nss-myhostname-0.1.tar.gz">Version 0.1</a>
+released. Initial release.</p>
+
+<h2><a name="overview">Overview</a></h2>
+
+<p><tt>nss-myhostname</tt> is a plugin for the GNU Name Service Switch
+(NSS) functionality of the GNU C Library (<tt>glibc</tt>) providing
+host name resolution for the locally configured system hostname as
+returned by <tt>gethostname(2)</tt>. Various software relies on an
+always resolvable local host name. When using dynamic hostnames this
+is usually achieved by patching <tt>/etc/hosts</tt> at the same time
+as changing the host name. This however is not ideal since it requires
+a writable <tt>/etc</tt> file system and is fragile because the file
+might be edited by the administrator at the same
+time. <tt>nss-myhostname</tt> simply returns all locally configure
+public IP addresses, or -- if none are configured -- the IPv4
+address <tt>127.0.0.2</tt> (wich is on the local loopback) and the
+IPv6 address <tt>::1</tt> (which is the local host) for whatever
+system hostname is configured locally. Patching <tt>/etc/hosts</tt>
+is thus no longer necessary.</p>
+
+<h2><a name="status">Current Status</a></h2>
+
+<p>It works!</p>
+
+<h2><a name="documentation">Documentation</a></h2>
+
+<p>After compiling and installing <tt>nss-myhostname</tt> you'll find a
+new NSS modules in <tt>/lib</tt>:</p>
+<ul>
+<li><tt>libnss_myhostname.so.2</tt></li>
+</ul>
+
+<p>To activate the NSS modules you have to edit
+<tt>/etc/nsswitch.conf</tt> and add <tt>myhostname</tt> to the
+line starting with "<tt>hosts:</tt>". On Debian this looks like
+this:</p>
+
+<pre># /etc/nsswitch.conf
+
+passwd: compat
+group: compat
+shadow: compat
+
+hosts: files dns <b>myhostname</b>
+networks: files
+
+protocols: db files
+services: db files
+ethers: db files
+rpc: db files
+
+netgroup: nis</pre>
+
+<p>That's it. You should now always be able to resolve your local
+system hostname. For a quick check
+use <tt>glibc</tt>'s <tt>getent</tt> tool:
+
+<pre>$ getent ahosts `hostname`
+::1 STREAM omega
+::1 DGRAM
+::1 RAW
+127.0.0.2 STREAM
+127.0.0.2 DGRAM
+127.0.0.2 RAW
+</pre>
+
+<p>In this case the local host name is <i>omega</i>.</p>
+
+<p>It is recommended to put <tt>myhostname</tt> last in
+the <tt>nsswitch.conf</tt> line to make sure that this mapping is only
+used as fallback, and any DNS or <tt>/etc/hosts</tt> based mapping takes
+precedence.</p>
+
+<h2><a name="requirements">Requirements</a></h2>
+
+<p><tt>nss-myhostname</tt> uses NSS interfaces that are specific to modern <tt>glibc</tt>'s.</p>
+
+<p><tt>nss-myhostname</tt> was developed and tested on Fedora 15 from
+May 2011, it should work on most other Linux distributions since it
+uses GNU autoconf and GNU libtool for source code configuration and
+shared library management.</p>
+
+<h2><a name="installation">Installation</a></h2>
+
+<p>As this package is made with the GNU autotools you should run
+<tt>./configure</tt> inside the distribution directory for configuring
+the source tree. After that you should run <tt>make</tt> for
+compilation and <tt>make install</tt> (as root) for installation of
+<tt>nss-myhostname</tt>.</p>
+
+<h2><a name="acks">Acknowledgements</a></h2>
+
+<p>None so far.</p>
+
+<h2><a name="download">Download</a></h2>
+
+<p>The newest release is always available from <a href="@PACKAGE_URL@">@PACKAGE_URL@</a></p>
+
+<p>The current release is <a href="@PACKAGE_URL@nss-myhostname-@PACKAGE_VERSION@.tar.gz">@PACKAGE_VERSION@</a></p>
+
+<p>Get <tt>nss-myhostname</tt>'s development sources from the <a href="http://git.or.cz/">GIT</a> <a href="git://git.0pointer.de/nss-myhostname">repository</a> (<a href="http://git.0pointer.de/?p=nss-myhostname.git">gitweb</a>): </p>
+
+<pre>git clone git://git.0pointer.de/nss-myhostname</pre>
+
+<hr/>
+<address class="grey">Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;, May 2011</address>
+
+</body>
+</html>
diff --git a/src/nss-myhostname/doc/style.css b/src/nss-myhostname/doc/style.css
new file mode 100644
index 0000000000..5cc21fd510
--- /dev/null
+++ b/src/nss-myhostname/doc/style.css
@@ -0,0 +1,25 @@
+/***
+ This file is part of nss-myhostname.
+
+ Copyright 2008 Lennart Poettering
+
+ nss-myhostname is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License
+ as published by the Free Software Foundation, either version 2.1
+ of the License, or (at your option) any later version.
+
+ nss-myhostname is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with nss-myhostname. If not, If not, see
+ <http://www.gnu.org/licenses/>.
+***/
+
+body { color: black; background-color: white; }
+a:link, a:visited { color: #900000; }
+div.news-date { font-size: 80%; font-style: italic; }
+pre { background-color: #f0f0f0; padding: 0.4cm; }
+.grey { color: #8f8f8f; font-size: 80%; }