From ab1ecd3c9a303765f5158a9d4692f6fcbea02540 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Mon, 27 Oct 2008 19:46:50 +0100 Subject: autoconfization --- doc/.gitignore | 2 + doc/Makefile.am | 38 +++++++++++++ doc/README.html.in | 158 +++++++++++++++++++++++++++++++++++++++++++++++++++++ doc/style.css | 25 +++++++++ 4 files changed, 223 insertions(+) create mode 100644 doc/.gitignore create mode 100644 doc/Makefile.am create mode 100644 doc/README.html.in create mode 100644 doc/style.css (limited to 'doc') diff --git a/doc/.gitignore b/doc/.gitignore new file mode 100644 index 0000000..bc63974 --- /dev/null +++ b/doc/.gitignore @@ -0,0 +1,2 @@ +README +README.html diff --git a/doc/Makefile.am b/doc/Makefile.am new file mode 100644 index 0000000..4f773ac --- /dev/null +++ b/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 +# . + +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/doc/README.html.in b/doc/README.html.in new file mode 100644 index 0000000..4721c4d --- /dev/null +++ b/doc/README.html.in @@ -0,0 +1,158 @@ + + + + + +nss-myhostname @PACKAGE_VERSION@ + + + + +

nss-myhostname @PACKAGE_VERSION@

+ +

Copyright 2005-2008 Lennart Poettering <@PACKAGE_BUGREPORT@>

+ + + +

License

+ +

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.

+ +

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.

+ +

News

+ +
Mon Oct 27 2008:
+ +

Version 0.2 +released. Changes include: Update for IPv6 and newest glibc NSS interfaces

+ +
Sat Nov 19 2005:
+ +

Version 0.1 +released. Initial release.

+ +

Overview

+ +

nss-myhostname is a plugin for the GNU Name Service Switch +(NSS) functionality of the GNU C Library (glibc) providing +host name resolution for the locally configured system hostname as +returned by gethostname(2). A lot of software relies on that the +local host name is resolvable via DNS to an IPv4 or IPv6 address. When +using dynamic hostnames this is usually achieved by +patching /etc/hosts which however is suboptimal since it +requires a writable /etc file system and is fragile because +the file might also be edited by the +administrator. nss-myhostname simply returns the IPv4 +address 127.0.0.2 (wich is on the local loopback) and the +IPv6 address ::1 (which is the local host) for whatever +system hostname is configured locally. Patching /etc/hostname is thus no longer necessary.

+ +

Current Status

+ +

It works!

+ +

Documentation

+ +

After compiling and installing nss-myhostname you'll find a +new NSS modules in /lib:

+ + +

To activate the NSS modules you have to edit +/etc/nsswitch.conf and add myhostname to the +line starting with "hosts:". On Debian this looks like +this:

+ +
# /etc/nsswitch.conf
+
+passwd:         compat
+group:          compat
+shadow:         compat
+
+hosts:          files dns myhostname
+networks:       files
+
+protocols:      db files
+services:       db files
+ethers:         db files
+rpc:            db files
+
+netgroup:       nis
+ +

That's it. You should now always be able to resolve your local +system hostname. For a quick check +use glibc's getent tool: + +

$ 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
+
+ +

In this case the local host name is omega.

+ +

It is recommended to put myhostname last in +the nsswitch.conf line to make sure that this mapping is only +used as fallback, and any DNS or /etc/hosts based mapping takes +precedence.

+ +

Requirements

+ +

nss-myhostname uses NSS interfaces that are specific to modern glibc's.

+ +

nss-myhostname was developed and tested on Fedora 10 +from October 2008, it should work on most other Linux +distributions since it uses GNU autoconf and +GNU libtool for source code configuration and shared library +management.

+ +

Installation

+ +

As this package is made with the GNU autotools you should run +./configure inside the distribution directory for configuring +the source tree. After that you should run make for +compilation and make install (as root) for installation of +nss-myhostname.

+ +

Acknowledgements

+ +

None so far.

+ +

Download

+ +

The newest release is always available from @PACKAGE_URL@

+ +

The current release is @PACKAGE_VERSION@

+ +

Get nss-myhostname's development sources from the GIT repository (gitweb):

+ +
git clone git://git.0pointer.de/nss-myhostname
+ +
+
Lennart Poettering <@PACKAGE_BUGREPORT@>, October 2008
+ + + diff --git a/doc/style.css b/doc/style.css new file mode 100644 index 0000000..5cc21fd --- /dev/null +++ b/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 + . +***/ + +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%; } -- cgit