aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDennis Schridde <devurandom@gmx.net>2011-02-09 22:02:41 +0100
committerDennis Schridde <devurandom@gmx.net>2011-02-09 22:02:41 +0100
commit3efd7d2fbb0be5be7fac199e8fac5f6df68a6bb6 (patch)
tree037bf4fa1dac656b34d86ffe2ba9702ef3346fe3 /sys-auth/nss-mdns
parent[dev-util/dbus-test-runner] Remove, migrated to Gentoo mainline (diff)
downloadkde-3efd7d2fbb0be5be7fac199e8fac5f6df68a6bb6.tar.gz
kde-3efd7d2fbb0be5be7fac199e8fac5f6df68a6bb6.tar.bz2
kde-3efd7d2fbb0be5be7fac199e8fac5f6df68a6bb6.zip
[nss-mdns/nss-mdns-0.10-r1] Handle search-domains (resolv.conf) better
* Add custom patch that disables search-domains for mdns*_minimal. * Add search-domains useflag. Disable it to follow upstream recommendations Not disabled by default because current ebuild enforces this behaviour without providing a useflag. Bug: 201948 (Portage version: 2.2.0_alpha23/git/Linux x86_64, signed Manifest commit with key 50ED256E)
Diffstat (limited to 'sys-auth/nss-mdns')
-rw-r--r--sys-auth/nss-mdns/Manifest16
-rw-r--r--sys-auth/nss-mdns/files/mdns.allow3
-rw-r--r--sys-auth/nss-mdns/files/nss-mdns-0.10-no-minimal-search-domains.patch29
-rw-r--r--sys-auth/nss-mdns/files/nss-mdns-0.8-avahi-socket.patch22
-rw-r--r--sys-auth/nss-mdns/metadata.xml17
-rw-r--r--sys-auth/nss-mdns/nss-mdns-0.10-r1.ebuild62
6 files changed, 149 insertions, 0 deletions
diff --git a/sys-auth/nss-mdns/Manifest b/sys-auth/nss-mdns/Manifest
new file mode 100644
index 0000000000..be16513ee7
--- /dev/null
+++ b/sys-auth/nss-mdns/Manifest
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+AUX mdns.allow 29 RMD160 c65a9a70c14528b7330a51187634b51c43725397 SHA1 2be715163a7d081ec248336aa47ee7cdba1680c8 SHA256 9fde506c70de0983039fc17b705fd40a2e43fbb8d426a74f662a09136458bc40
+AUX nss-mdns-0.10-no-minimal-search-domains.patch 927 RMD160 0c353faff0ced665295b0c06c707b029b10c712a SHA1 b2d98566d54597d4f0f2cefc4997c77624cc5225 SHA256 8bf498fed55e1da9751c25c32836ab016db8292fd406300cebc75e0e28755e96
+AUX nss-mdns-0.8-avahi-socket.patch 893 RMD160 c838927dae4da73a63d8d8cc628ccc0c026dd075 SHA1 575481ac15ddc6bbd7111d7b011af947b5a296ca SHA256 3ec68966c04ffec0324fdde06ded47f602aca05672ef69592a7d079bf932f641
+DIST nss-mdns-0.10.tar.gz 353130 RMD160 e33f318790bc0a7367297284cad977289f830a84 SHA1 d8610950b8b209e29129a70765449b820bcda1a0 SHA256 1e683c2e7c3921814706d62fbbd3e9cbf493a75fa00255e0e715508d8134fa6d
+EBUILD nss-mdns-0.10-r1.ebuild 1731 RMD160 c7635216f1c1d12102bb6c1a8abbe37bd950369e SHA1 e6ce9a0e02cce5fbdd477aeee8c8ced88c7cb1e1 SHA256 d5a523bc1b284f0527046ff9af8f84376b62c35dece6bbf77f5b20db1f3e2e64
+MISC metadata.xml 582 RMD160 a71b926124261130dc2f1415e621958e87269e7e SHA1 5a09b9703b44307d2312fa702580bccb26dd6319 SHA256 cd261bbcf54aa50efc7d9b1181b6a0e0b17d809d41b08b0184cf4e392e0716fa
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.17 (GNU/Linux)
+
+iEYEARECAAYFAk1TAPEACgkQjqfyF1DtJW7zHACgh91vn6BxWiNyatsN1RyxEmKD
+NwEAnjhaK93MVr0//g8wpFz2jQIXQUvM
+=jPJw
+-----END PGP SIGNATURE-----
diff --git a/sys-auth/nss-mdns/files/mdns.allow b/sys-auth/nss-mdns/files/mdns.allow
new file mode 100644
index 0000000000..80b49b097b
--- /dev/null
+++ b/sys-auth/nss-mdns/files/mdns.allow
@@ -0,0 +1,3 @@
+# mdns.allow:
+.local.
+.local
diff --git a/sys-auth/nss-mdns/files/nss-mdns-0.10-no-minimal-search-domains.patch b/sys-auth/nss-mdns/files/nss-mdns-0.10-no-minimal-search-domains.patch
new file mode 100644
index 0000000000..e32cd34599
--- /dev/null
+++ b/sys-auth/nss-mdns/files/nss-mdns-0.10-no-minimal-search-domains.patch
@@ -0,0 +1,29 @@
+--- nss-mdns-0.10/src/nss.c.orig 2011-02-09 20:48:14.183106464 +0100
++++ nss-mdns-0.10/src/nss.c 2011-02-09 20:49:41.816945892 +0100
+@@ -177,7 +177,7 @@
+ return ends_with(name, ".local") || ends_with(name, ".local.");
+ }
+
+-#ifdef HONOUR_SEARCH_DOMAINS
++#if defined(HONOUR_SEARCH_DOMAINS) && !defined(MDNS_MINIMAL)
+
+ static char **alloc_domains(unsigned ndomains) {
+ char **domains;
+@@ -379,7 +379,7 @@
+ status = NSS_STATUS_NOTFOUND;
+ }
+
+-#ifdef HONOUR_SEARCH_DOMAINS
++#if defined(HONOUR_SEARCH_DOMAINS) && !defined(MDNS_MINIMAL)
+ if (u.count == 0 && avahi_works && !ends_with(name, ".")) {
+ char **domains;
+
+@@ -449,7 +449,7 @@
+ status = NSS_STATUS_NOTFOUND;
+ }
+
+-#ifdef HONOUR_SEARCH_DOMAINS
++#if defined(HONOUR_SEARCH_DOMAINS) && !defined(HONOUR_SEARCH_DOMAINS)
+ if (u.count == 0 && !ends_with(name, ".")) {
+ char **domains;
+
diff --git a/sys-auth/nss-mdns/files/nss-mdns-0.8-avahi-socket.patch b/sys-auth/nss-mdns/files/nss-mdns-0.8-avahi-socket.patch
new file mode 100644
index 0000000000..2b73165b71
--- /dev/null
+++ b/sys-auth/nss-mdns/files/nss-mdns-0.8-avahi-socket.patch
@@ -0,0 +1,22 @@
+--- src/Makefile.am 2006-12-30 01:00:22.000000000 -0600
++++ src/Makefile.am 2006-12-30 01:01:11.000000000 -0600
+@@ -20,7 +20,7 @@
+ AM_CFLAGS = \
+ -DMDNS_ALLOW_FILE=\"$(sysconfdir)/mdns.allow\" \
+ -DRESOLV_CONF_FILE=\"$(sysconfdir)/resolv.conf\" \
+- -DAVAHI_SOCKET=\"$(localstatedir)/run/avahi-daemon/socket\"
++ -DAVAHI_SOCKET=\"$(ROOT)var/run/avahi-daemon/socket\"
+
+ #AM_CFLAGS += -DNDEBUG=1 -Os
+
+--- src/Makefile.in 2006-12-30 01:00:19.000000000 -0600
++++ src/Makefile.in 2006-12-30 01:00:37.000000000 -0600
+@@ -301,7 +301,7 @@
+ # This cool debug trap works on i386/gcc only
+ AM_CFLAGS = -DMDNS_ALLOW_FILE=\"$(sysconfdir)/mdns.allow\" \
+ -DRESOLV_CONF_FILE=\"$(sysconfdir)/resolv.conf\" \
+- -DAVAHI_SOCKET=\"$(localstatedir)/run/avahi-daemon/socket\" \
++ -DAVAHI_SOCKET=\"$(ROOT)var/run/avahi-daemon/socket\" \
+ '-DDEBUG_TRAP=__asm__("int $$3")'
+ lib_LTLIBRARIES = \
+ libnss_mdns.la \
diff --git a/sys-auth/nss-mdns/metadata.xml b/sys-auth/nss-mdns/metadata.xml
new file mode 100644
index 0000000000..9256949c4a
--- /dev/null
+++ b/sys-auth/nss-mdns/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>no-herd</herd>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+ <longdescription lang="en">
+ Name service switch module for multicast dns.
+ </longdescription>
+ <longdescription lang="ja">
+ マルチキャスト DNS 向けネーム・サービス・スイッチのモジュールです。
+ </longdescription>
+ <use>
+ <flag name="search-domains">Honour domain search list in /etc/resolv.conf</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-auth/nss-mdns/nss-mdns-0.10-r1.ebuild b/sys-auth/nss-mdns/nss-mdns-0.10-r1.ebuild
new file mode 100644
index 0000000000..ef73a27af4
--- /dev/null
+++ b/sys-auth/nss-mdns/nss-mdns-0.10-r1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=3
+
+inherit eutils
+
+DESCRIPTION="Name Service Switch module for Multicast DNS"
+HOMEPAGE="http://0pointer.de/lennart/projects/nss-mdns/"
+SRC_URI="http://0pointer.de/lennart/projects/nss-mdns/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~mips ~ppc ~x86"
+IUSE="+search-domains"
+
+DEPEND="net-dns/avahi"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.8-avahi-socket.patch
+ epatch "${FILESDIR}"/${P}-no-minimal-search-domains.patch
+}
+
+src_configure() {
+ econf $(use_enable search-domains) --enable-avahi || die "configure failed"
+}
+
+src_compile() {
+ emake || die "compile failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "install failed"
+
+ insinto /etc
+ doins "${FILESDIR}"/mdns.allow
+
+ dodoc README
+}
+
+pkg_postinst() {
+ ewarn
+ ewarn "You must modify your name service switch look up file to enable"
+ ewarn "multicast DNS lookups. If you wish to resolve only IPv6 addresses"
+ ewarn "use mdns6. For IPv4 addresses only, use mdns4. To resolve both"
+ ewarn "use mdns. Keep in mind that mdns will be slower if there are no"
+ ewarn "IPv6 addresses published via mDNS on the network. There are also"
+ ewarn "minimal (mdns?_minimal) libraries which only lookup .local hosts"
+ ewarn "and 169.254.x.x addresses."
+ ewarn
+ ewarn "Add the appropriate mdns into the hosts line in /etc/nsswitch.conf"
+ ewarn "An example line looks like:"
+ ewarn "hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4"
+ ewarn
+ ewarn "If you want to perform mDNS lookups for domains other than the ones"
+ ewarn "ending in .local, add them to /etc/mdns.allow"
+ ewarn
+ ebeep 5
+ epause 10
+}