summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2007-01-01 16:45:49 +0000
committerLennart Poettering <lennart@poettering.net>2007-01-01 16:45:49 +0000
commit5f5834dc1e45f75520921ecdfa4e572fe27c1c1c (patch)
tree8a3b3e7ba22f7c438313c243e9fd33fc8af7e025 /src
parent35be6383e3d811be2674083add0ec6b92086af27 (diff)
add new compile option HONOUR_SEARCH_DOMAINS: parse search domain list in /etc/resolv.conf only optionally.
git-svn-id: file:///home/lennart/svn/public/nss-mdns/trunk@105 0ee8848e-81ea-0310-a63a-f631d1a40d77
Diffstat (limited to 'src')
-rw-r--r--src/nss.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/nss.c b/src/nss.c
index 5476e6f..28c3ac4 100644
--- a/src/nss.c
+++ b/src/nss.c
@@ -172,6 +172,8 @@ static int verify_name_allowed(const char *name) {
return ends_with(name, ".local") || ends_with(name, ".local.");
}
+#ifdef HONOUR_SEARCH_DOMAINS
+
static char **alloc_domains(unsigned ndomains) {
char **domains;
@@ -276,6 +278,8 @@ static char** get_search_domains(void) {
return domains;
}
+#endif
+
enum nss_status _nss_mdns_gethostbyname2_r(
const char *name,
int af,
@@ -370,6 +374,7 @@ enum nss_status _nss_mdns_gethostbyname2_r(
status = NSS_STATUS_NOTFOUND;
}
+#ifdef HONOUR_SEARCH_DOMAINS
if (u.count == 0 && avahi_works && !ends_with(name, ".")) {
char **domains;
@@ -416,7 +421,8 @@ enum nss_status _nss_mdns_gethostbyname2_r(
free_domains(domains);
}
}
-#endif
+#endif /* HONOUR_SEARCH_DOMAINS */
+#endif /* ENABLE_AVAHI */
#if defined(ENABLE_LEGACY) && defined(ENABLE_AVAHI)
if (u.count == 0 && !avahi_works)
@@ -438,6 +444,7 @@ enum nss_status _nss_mdns_gethostbyname2_r(
status = NSS_STATUS_NOTFOUND;
}
+#ifdef HONOUR_SEARCH_DOMAINS
if (u.count == 0 && !ends_with(name, ".")) {
char **domains;
@@ -476,8 +483,9 @@ enum nss_status _nss_mdns_gethostbyname2_r(
free_domains(domains);
}
}
+#endif /* HONOUR_SEARCH_DOMAINS */
}
-#endif
+#endif /* ENABLE_LEGACY */
if (u.count == 0) {
*errnop = ETIMEDOUT;