From: Michael Tremer Date: Sat, 4 Apr 2015 13:23:17 +0000 (+0200) Subject: dnsmasq: Import latest patches from upstream X-Git-Tag: v2.17-core89~3^2~21 X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=commitdiff_plain;h=263d0a71a9064cf646f87cfbddb55013729dfd93;ds=sidebyside dnsmasq: Import latest patches from upstream --- diff --git a/lfs/dnsmasq b/lfs/dnsmasq index 4bb7f9f0d1..15a86a57d7 100644 --- a/lfs/dnsmasq +++ b/lfs/dnsmasq @@ -130,6 +130,20 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0067-Merge-message-translations.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0069-Whitespace-fixes.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq-Add-support-to-read-ISC-DHCP-lease-file.patch cd $(DIR_APP) && sed -i src/config.h \ -e 's|/\* #define HAVE_IDN \*/|#define HAVE_IDN|g' \ diff --git a/src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch b/src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch index adcb44fff7..09e385878b 100644 --- a/src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch +++ b/src/patches/dnsmasq/0001-Add-newline-at-the-end-of-example-config-file.patch @@ -1,7 +1,7 @@ From f2658275b25ebfe691cdcb9fede85a3088cca168 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Thu, 25 Sep 2014 21:51:25 +0100 -Subject: [PATCH 01/55] Add newline at the end of example config file. +Subject: [PATCH 01/71] Add newline at the end of example config file. --- dnsmasq.conf.example | 2 +- diff --git a/src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch b/src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch index b84440baf1..bcaac85dbc 100644 --- a/src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch +++ b/src/patches/dnsmasq/0002-crash-at-startup-when-an-empty-suffix-is-supplied-to.patch @@ -1,7 +1,7 @@ From 00cd9d551998307225312fd21f761cfa8868bd2c Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Thu, 2 Oct 2014 21:44:21 +0100 -Subject: [PATCH 02/55] crash at startup when an empty suffix is supplied to +Subject: [PATCH 02/71] crash at startup when an empty suffix is supplied to --conf-dir --- diff --git a/src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch b/src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch index fe73acd641..a7ef611878 100644 --- a/src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch +++ b/src/patches/dnsmasq/0003-Debian-build-fixes-for-kFreeBSD.patch @@ -1,7 +1,7 @@ From 6ac3bc0452a74e16e3d620a0757b0f8caab182ec Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Fri, 3 Oct 2014 08:48:11 +0100 -Subject: [PATCH 03/55] Debian build fixes for kFreeBSD +Subject: [PATCH 03/71] Debian build fixes for kFreeBSD --- src/tables.c | 6 +++++- diff --git a/src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch b/src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch index 5d7c3c4e88..e64e31484a 100644 --- a/src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch +++ b/src/patches/dnsmasq/0004-Set-conntrack-mark-before-connect-call.patch @@ -1,7 +1,7 @@ From e9828b6f66b22ce8873f8d30a773137d1aef1b92 Mon Sep 17 00:00:00 2001 From: Karl Vogel Date: Fri, 3 Oct 2014 21:45:15 +0100 -Subject: [PATCH 04/55] Set conntrack mark before connect() call. +Subject: [PATCH 04/71] Set conntrack mark before connect() call. SO_MARK has to be done before issuing the connect() call on the TCP socket. diff --git a/src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch b/src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch index 80c55f6849..48ed92eeea 100644 --- a/src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch +++ b/src/patches/dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch @@ -1,7 +1,7 @@ From 17b475912f6a4e72797a543dad59d4d5dde6bb1b Mon Sep 17 00:00:00 2001 From: Daniel Collins Date: Fri, 3 Oct 2014 21:58:43 +0100 -Subject: [PATCH 05/55] Fix typo in new Dbus code. +Subject: [PATCH 05/71] Fix typo in new Dbus code. Simon's fault. --- diff --git a/src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch b/src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch index 5f9f572765..c8c5169614 100644 --- a/src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch +++ b/src/patches/dnsmasq/0006-Fit-example-conf-file-typo.patch @@ -1,7 +1,7 @@ From 3d9d2dd0018603a2ae4b9cd65ac6ff959f4fd8c7 Mon Sep 17 00:00:00 2001 From: Tomas Hozza Date: Mon, 6 Oct 2014 10:46:48 +0100 -Subject: [PATCH 06/55] Fit example conf file typo. +Subject: [PATCH 06/71] Fit example conf file typo. --- dnsmasq.conf.example | 2 +- diff --git a/src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch b/src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch index 370d1065c0..c21ece4f7d 100644 --- a/src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch +++ b/src/patches/dnsmasq/0007-Improve-RFC-compliance-when-unable-to-supply-address.patch @@ -1,7 +1,7 @@ From b9ff5c8f435173cfa616e3c398bdc089ef690a07 Mon Sep 17 00:00:00 2001 From: Vladislav Grishenko Date: Mon, 6 Oct 2014 14:34:24 +0100 -Subject: [PATCH 07/55] Improve RFC-compliance when unable to supply addresses +Subject: [PATCH 07/71] Improve RFC-compliance when unable to supply addresses in DHCPv6 While testing https://github.com/sbyx/odhcp6c client I have noticed it diff --git a/src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch b/src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch index 3f8bad331b..227cab79c6 100644 --- a/src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch +++ b/src/patches/dnsmasq/0008-Fix-conntrack-with-bind-interfaces.patch @@ -1,7 +1,7 @@ From 98906275a02ae260fe3f82133bd79054f8315f06 Mon Sep 17 00:00:00 2001 From: Hans Dedecker Date: Tue, 9 Dec 2014 22:22:53 +0000 -Subject: [PATCH 08/55] Fix conntrack with --bind-interfaces +Subject: [PATCH 08/71] Fix conntrack with --bind-interfaces Make sure dst_addr is assigned the correct address in receive_query when OPTNOWILD is enabled so the assigned mark can be correctly retrieved and set in forward_query when diff --git a/src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch b/src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch index 81939202b9..7773e0bf4d 100644 --- a/src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch +++ b/src/patches/dnsmasq/0009-Use-inotify-instead-of-polling-on-Linux.patch @@ -1,7 +1,7 @@ From 193de4abf59e49c6b70d54cfe9720fcb95ca2f71 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Wed, 10 Dec 2014 17:32:16 +0000 -Subject: [PATCH 09/55] Use inotify instead of polling on Linux. +Subject: [PATCH 09/71] Use inotify instead of polling on Linux. This should solve problems people are seeing when a file changes twice within a second and thus is missed for polling. diff --git a/src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch b/src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch index 70fc5c3f85..f5e0ccdd74 100644 --- a/src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch +++ b/src/patches/dnsmasq/0010-Teach-the-new-inotify-code-about-symlinks.patch @@ -1,7 +1,7 @@ From 857973e6f7e0a3d03535a9df7f9373fd7a0b65cc Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 15 Dec 2014 15:58:13 +0000 -Subject: [PATCH 10/55] Teach the new inotify code about symlinks. +Subject: [PATCH 10/71] Teach the new inotify code about symlinks. --- src/inotify.c | 43 +++++++++++++++++++++++++++---------------- diff --git a/src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch b/src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch index 095253b184..800cfb6bff 100644 --- a/src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch +++ b/src/patches/dnsmasq/0011-Remove-floor-on-EDNS0-packet-size-with-DNSSEC.patch @@ -1,7 +1,7 @@ From 800c5cc1e7438818fd80f08c2d472df249a6942d Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 15 Dec 2014 17:50:15 +0000 -Subject: [PATCH 11/55] Remove floor on EDNS0 packet size with DNSSEC. +Subject: [PATCH 11/71] Remove floor on EDNS0 packet size with DNSSEC. --- CHANGELOG | 6 +++++- diff --git a/src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch b/src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch index b71e58b75b..1a0925a6e6 100644 --- a/src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch +++ b/src/patches/dnsmasq/0012-CHANGELOG-re.-inotify.patch @@ -1,7 +1,7 @@ From ad946d555dce44eb690c7699933b6ff40ab85bb6 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 15 Dec 2014 17:52:22 +0000 -Subject: [PATCH 12/55] CHANGELOG re. inotify. +Subject: [PATCH 12/71] CHANGELOG re. inotify. --- CHANGELOG | 4 ++++ diff --git a/src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch b/src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch index 2ff5acd14a..d467a9e0be 100644 --- a/src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch +++ b/src/patches/dnsmasq/0013-Fix-breakage-of-domain-domain-subnet-local.patch @@ -1,7 +1,7 @@ From 3ad3f3bbd4ee716a7d2fb1e115cf89bd1b1a5de9 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Tue, 16 Dec 2014 18:25:17 +0000 -Subject: [PATCH 13/55] Fix breakage of --domain=,,local +Subject: [PATCH 13/71] Fix breakage of --domain=,,local --- CHANGELOG | 4 ++++ diff --git a/src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch b/src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch index a0e647f8af..b77acce78c 100644 --- a/src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch +++ b/src/patches/dnsmasq/0014-Remove-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch @@ -1,7 +1,7 @@ From bd9520b7ade7098ee423acc38965376aa57feb07 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Tue, 16 Dec 2014 20:41:29 +0000 -Subject: [PATCH 14/55] Remove redundant IN6_IS_ADDR_ULA(a) macro defn. +Subject: [PATCH 14/71] Remove redundant IN6_IS_ADDR_ULA(a) macro defn. --- src/network.c | 4 ---- diff --git a/src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch b/src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch index 114a4f371c..06804232ba 100644 --- a/src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch +++ b/src/patches/dnsmasq/0015-Eliminate-IPv6-privacy-addresses-from-interface-name.patch @@ -1,7 +1,7 @@ From 476693678e778886b64d0b56e27eb7695cbcca99 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Wed, 17 Dec 2014 12:41:56 +0000 -Subject: [PATCH 15/55] Eliminate IPv6 privacy addresses from --interface-name +Subject: [PATCH 15/71] Eliminate IPv6 privacy addresses from --interface-name answers. --- diff --git a/src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch b/src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch index d072c0379d..6b3537877f 100644 --- a/src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch +++ b/src/patches/dnsmasq/0016-Tweak-field-width-in-cache-dump-to-avoid-truncating-.patch @@ -1,7 +1,7 @@ From 3267804598047bd1781cab91508d1bc516e5ddbb Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Wed, 17 Dec 2014 20:38:20 +0000 -Subject: [PATCH 16/55] Tweak field width in cache dump to avoid truncating +Subject: [PATCH 16/71] Tweak field width in cache dump to avoid truncating IPv6 addresses. --- diff --git a/src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch b/src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch index 944afaf15d..01095a21d1 100644 --- a/src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch +++ b/src/patches/dnsmasq/0017-Fix-crash-in-DNSSEC-code-when-attempting-to-verify-l.patch @@ -1,7 +1,7 @@ From 094b5c3d904bae9aeb3206d9f3b8348926b84975 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sun, 21 Dec 2014 16:11:52 +0000 -Subject: [PATCH 17/55] Fix crash in DNSSEC code when attempting to verify +Subject: [PATCH 17/71] Fix crash in DNSSEC code when attempting to verify large RRs. --- diff --git a/src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch b/src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch index de66adb9bc..49adf8572e 100644 --- a/src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch +++ b/src/patches/dnsmasq/0018-Make-caching-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch @@ -1,7 +1,7 @@ From cbc652423403e3cef00e00240f6beef713142246 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sun, 21 Dec 2014 21:21:53 +0000 -Subject: [PATCH 18/55] Make caching work for CNAMEs pointing to A/AAAA records +Subject: [PATCH 18/71] Make caching work for CNAMEs pointing to A/AAAA records shadowed in /etc/hosts If the answer to an upstream query is a CNAME which points to an diff --git a/src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch b/src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch index 0ee2e657b7..33e5180337 100644 --- a/src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch +++ b/src/patches/dnsmasq/0019-Fix-problems-validating-NSEC3-and-wildcards.patch @@ -1,7 +1,7 @@ From fbc5205702c7f6f431d9f1043c553d7fb62ddfdb Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Tue, 23 Dec 2014 15:46:08 +0000 -Subject: [PATCH 19/55] Fix problems validating NSEC3 and wildcards. +Subject: [PATCH 19/71] Fix problems validating NSEC3 and wildcards. --- src/dnssec.c | 253 ++++++++++++++++++++++++++++++----------------------------- diff --git a/src/patches/dnsmasq/0020-Initialise-return-value.patch b/src/patches/dnsmasq/0020-Initialise-return-value.patch index 2f70ee5873..c0493df848 100644 --- a/src/patches/dnsmasq/0020-Initialise-return-value.patch +++ b/src/patches/dnsmasq/0020-Initialise-return-value.patch @@ -1,7 +1,7 @@ From 83d2ed09fc0216b567d7fb2197e4ff3eae150b0d Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Tue, 23 Dec 2014 18:42:38 +0000 -Subject: [PATCH 20/55] Initialise return value. +Subject: [PATCH 20/71] Initialise return value. --- src/dnssec.c | 7 +++++-- diff --git a/src/patches/dnsmasq/0021-Add-ignore-address-option.patch b/src/patches/dnsmasq/0021-Add-ignore-address-option.patch index 6c88f2d188..e5422a1134 100644 --- a/src/patches/dnsmasq/0021-Add-ignore-address-option.patch +++ b/src/patches/dnsmasq/0021-Add-ignore-address-option.patch @@ -1,7 +1,7 @@ From 32fc6dbe03569d70dd394420ceb73532cf303c33 Mon Sep 17 00:00:00 2001 From: Glen Huang Date: Sat, 27 Dec 2014 15:28:12 +0000 -Subject: [PATCH 21/55] Add --ignore-address option. +Subject: [PATCH 21/71] Add --ignore-address option. --- CHANGELOG | 8 ++++++++ diff --git a/src/patches/dnsmasq/0022-Bad-packet-protection.patch b/src/patches/dnsmasq/0022-Bad-packet-protection.patch index 1b37202c46..1fbe54c290 100644 --- a/src/patches/dnsmasq/0022-Bad-packet-protection.patch +++ b/src/patches/dnsmasq/0022-Bad-packet-protection.patch @@ -1,7 +1,7 @@ From 0b1008d367d44e77352134a4c5178f896f0db3e7 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 27 Dec 2014 15:33:32 +0000 -Subject: [PATCH 22/55] Bad packet protection. +Subject: [PATCH 22/71] Bad packet protection. --- src/dnssec.c | 2 +- diff --git a/src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch b/src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch index 3bc3f79267..6e57877fd6 100644 --- a/src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch +++ b/src/patches/dnsmasq/0023-Fix-build-failure-in-new-inotify-code-on-BSD.patch @@ -1,7 +1,7 @@ From d310ab7ecbffce79d3d90debba621e0222f9bced Mon Sep 17 00:00:00 2001 From: Matthias Andree Date: Sat, 27 Dec 2014 15:36:38 +0000 -Subject: [PATCH 23/55] Fix build failure in new inotify code on BSD. +Subject: [PATCH 23/71] Fix build failure in new inotify code on BSD. --- src/inotify.c | 4 ++-- diff --git a/src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch b/src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch index e3074fa3e1..867a95d5aa 100644 --- a/src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch +++ b/src/patches/dnsmasq/0024-Implement-makefile-dependencies-on-COPTS-variable.patch @@ -1,7 +1,7 @@ From 81c538efcebfce2ce4a1d3a420b6c885b8f08df9 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Sat, 3 Jan 2015 16:36:14 +0000 -Subject: [PATCH 24/55] Implement makefile dependencies on COPTS variable. +Subject: [PATCH 24/71] Implement makefile dependencies on COPTS variable. --- .gitignore | 2 +- diff --git a/src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch b/src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch index b1c42aef41..4a379c1a74 100644 --- a/src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch +++ b/src/patches/dnsmasq/0025-Fix-race-condition-issue-in-makefile.patch @@ -1,7 +1,7 @@ From d8dbd903d024f84a149dac2f8a674a68dfed47a3 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Mon, 5 Jan 2015 17:03:35 +0000 -Subject: [PATCH 25/55] Fix race condition issue in makefile. +Subject: [PATCH 25/71] Fix race condition issue in makefile. --- Makefile | 4 +++- diff --git a/src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch b/src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch index 7f01ee73e9..837c124f57 100644 --- a/src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch +++ b/src/patches/dnsmasq/0026-DNSSEC-do-top-down-search-for-limit-of-secure-delega.patch @@ -1,7 +1,7 @@ From 97e618a0e3f29465acc689d87288596b006f197e Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Wed, 7 Jan 2015 21:55:43 +0000 -Subject: [PATCH 26/55] DNSSEC: do top-down search for limit of secure +Subject: [PATCH 26/71] DNSSEC: do top-down search for limit of secure delegation. --- diff --git a/src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch b/src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch index e258d56da0..23b94711ae 100644 --- a/src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch +++ b/src/patches/dnsmasq/0027-Add-log-queries-extra-option-for-more-complete-loggi.patch @@ -1,7 +1,7 @@ From 25cf5e373eb41c088d4ee5e625209c4cf6a5659e Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Fri, 9 Jan 2015 15:53:03 +0000 -Subject: [PATCH 27/55] Add --log-queries=extra option for more complete +Subject: [PATCH 27/71] Add --log-queries=extra option for more complete logging. --- diff --git a/src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch b/src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch index e8a61b7c15..6f7f27cb68 100644 --- a/src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch +++ b/src/patches/dnsmasq/0028-Add-min-cache-ttl-option.patch @@ -1,7 +1,7 @@ From 28de38768e2c7d763b9aa5b7a4d251d5e56bab0b Mon Sep 17 00:00:00 2001 From: RinSatsuki Date: Sat, 10 Jan 2015 15:22:21 +0000 -Subject: [PATCH 28/55] Add --min-cache-ttl option. +Subject: [PATCH 28/71] Add --min-cache-ttl option. --- CHANGELOG | 7 +++++++ diff --git a/src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch b/src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch index d3c484727e..4834269e63 100644 --- a/src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch +++ b/src/patches/dnsmasq/0029-Log-port-of-requestor-when-doing-extra-logging.patch @@ -1,7 +1,7 @@ From 9f79ee4ae34886c0319f06d8f162b81ef79d62fb Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 12 Jan 2015 20:18:18 +0000 -Subject: [PATCH 29/55] Log port of requestor when doing extra logging. +Subject: [PATCH 29/71] Log port of requestor when doing extra logging. --- src/cache.c | 6 +++--- diff --git a/src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch b/src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch index 5f489e2146..fef0e11622 100644 --- a/src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch +++ b/src/patches/dnsmasq/0030-Don-t-answer-from-cache-RRsets-from-wildcards-as-we-.patch @@ -1,7 +1,7 @@ From 5e321739db381a1d7b5964d76e9c81471d2564c9 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 12 Jan 2015 23:16:56 +0000 -Subject: [PATCH 30/55] Don't answer from cache RRsets from wildcards, as we +Subject: [PATCH 30/71] Don't answer from cache RRsets from wildcards, as we don't have NSECs. --- diff --git a/src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch b/src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch index 1a2d3e4645..8ebe4696ab 100644 --- a/src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch +++ b/src/patches/dnsmasq/0031-Logs-for-DS-records-consistent.patch @@ -1,7 +1,7 @@ From ae4624bf46b5e37ff1a9a2ba3c927e0dede95adb Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 12 Jan 2015 23:22:08 +0000 -Subject: [PATCH 31/55] Logs for DS records consistent. +Subject: [PATCH 31/71] Logs for DS records consistent. --- src/rfc1035.c | 2 +- diff --git a/src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch b/src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch index 81b02cc477..60a44b9a75 100644 --- a/src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch +++ b/src/patches/dnsmasq/0032-Cope-with-multiple-interfaces-with-the-same-LL-addre.patch @@ -1,7 +1,7 @@ From 393415597c8b5b09558b789ab9ac238dbe3db65d Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sun, 18 Jan 2015 22:11:10 +0000 -Subject: [PATCH 32/55] Cope with multiple interfaces with the same LL address. +Subject: [PATCH 32/71] Cope with multiple interfaces with the same LL address. --- CHANGELOG | 4 ++++ diff --git a/src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch b/src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch index e88a94b965..f426e8f051 100644 --- a/src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch +++ b/src/patches/dnsmasq/0033-Don-t-treat-SERVFAIL-as-a-recoverable-error.patch @@ -1,7 +1,7 @@ From 2ae195f5a71f7c5a75717845de1bd72fc7dd67f3 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sun, 18 Jan 2015 22:20:48 +0000 -Subject: [PATCH 33/55] Don't treat SERVFAIL as a recoverable error..... +Subject: [PATCH 33/71] Don't treat SERVFAIL as a recoverable error..... --- src/forward.c | 2 +- diff --git a/src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch b/src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch index c6b6703b09..53780b28c5 100644 --- a/src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch +++ b/src/patches/dnsmasq/0034-Add-dhcp-hostsdir-config-option.patch @@ -1,7 +1,7 @@ From 5f4dc5c6ca50655ab14f572c7e30815ed74cd51a Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Tue, 20 Jan 2015 20:51:02 +0000 -Subject: [PATCH 34/55] Add --dhcp-hostsdir config option. +Subject: [PATCH 34/71] Add --dhcp-hostsdir config option. --- CHANGELOG | 5 +++ diff --git a/src/patches/dnsmasq/0035-Update-German-translation.patch b/src/patches/dnsmasq/0035-Update-German-translation.patch index af45a1c3e6..2d18e760de 100644 --- a/src/patches/dnsmasq/0035-Update-German-translation.patch +++ b/src/patches/dnsmasq/0035-Update-German-translation.patch @@ -1,7 +1,7 @@ From fbf01f7046e75f9aa73fd4aab2a94e43386d9052 Mon Sep 17 00:00:00 2001 From: Conrad Kostecki Date: Tue, 20 Jan 2015 21:07:56 +0000 -Subject: [PATCH 35/55] Update German translation. +Subject: [PATCH 35/71] Update German translation. --- po/de.po | 101 +++++++++++++++++++++++++++++---------------------------------- diff --git a/src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch b/src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch index 25007de58b..ffe4cf6cb0 100644 --- a/src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch +++ b/src/patches/dnsmasq/0036-Don-t-reply-to-DHCPv6-SOLICIT-messages-when-not-conf.patch @@ -1,7 +1,7 @@ From 61b838dd574c51d96fef100285a0d225824534f9 Mon Sep 17 00:00:00 2001 From: Win King Wan Date: Wed, 21 Jan 2015 20:41:48 +0000 -Subject: [PATCH 36/55] Don't reply to DHCPv6 SOLICIT messages when not +Subject: [PATCH 36/71] Don't reply to DHCPv6 SOLICIT messages when not configured for statefull DHCPv6. --- diff --git a/src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch b/src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch index 7318688716..3cd7999711 100644 --- a/src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch +++ b/src/patches/dnsmasq/0037-Allow-inotify-to-be-disabled-at-compile-time-on-Linu.patch @@ -1,7 +1,7 @@ From 0491805d2ff6e7727f0272c94fd97d9897d1e22c Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 26 Jan 2015 11:23:43 +0000 -Subject: [PATCH 37/55] Allow inotify to be disabled at compile time on Linux. +Subject: [PATCH 37/71] Allow inotify to be disabled at compile time on Linux. --- CHANGELOG | 4 +++- diff --git a/src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch b/src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch index 75140347bd..08eb5b5530 100644 --- a/src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch +++ b/src/patches/dnsmasq/0038-Expand-inotify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch @@ -1,7 +1,7 @@ From 70d1873dd9e70041ed4bb88c69d5b886b7cc634c Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 31 Jan 2015 19:59:29 +0000 -Subject: [PATCH 38/55] Expand inotify code to dhcp-hostsdir, dhcp-optsdir and +Subject: [PATCH 38/71] Expand inotify code to dhcp-hostsdir, dhcp-optsdir and hostsdir. --- diff --git a/src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch b/src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch index 11bde00b06..7303df4729 100644 --- a/src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch +++ b/src/patches/dnsmasq/0039-Update-copyrights-for-dawn-of-2015.patch @@ -1,7 +1,7 @@ From aff3396280e944833f0e23d834aa6acd5fe2605a Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 31 Jan 2015 20:13:40 +0000 -Subject: [PATCH 39/55] Update copyrights for dawn of 2015. +Subject: [PATCH 39/71] Update copyrights for dawn of 2015. --- Makefile | 2 +- diff --git a/src/patches/dnsmasq/0040-inotify-documentation-updates.patch b/src/patches/dnsmasq/0040-inotify-documentation-updates.patch index 981e553e98..9c3ac9c542 100644 --- a/src/patches/dnsmasq/0040-inotify-documentation-updates.patch +++ b/src/patches/dnsmasq/0040-inotify-documentation-updates.patch @@ -1,7 +1,7 @@ From 3d04f46334d0e345f589eda1372e638b946fe637 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 31 Jan 2015 21:59:13 +0000 -Subject: [PATCH 40/55] inotify documentation updates. +Subject: [PATCH 40/71] inotify documentation updates. --- man/dnsmasq.8 | 11 +++++++++-- diff --git a/src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch b/src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch index 0c8aa9be30..1fc1c73f0e 100644 --- a/src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch +++ b/src/patches/dnsmasq/0041-Fix-broken-ECDSA-DNSSEC-signatures.patch @@ -1,7 +1,7 @@ From 6ef15b34ca83c62a939f69356d5c3f7a6bfef3d0 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 31 Jan 2015 22:44:26 +0000 -Subject: [PATCH 41/55] Fix broken ECDSA DNSSEC signatures. +Subject: [PATCH 41/71] Fix broken ECDSA DNSSEC signatures. --- CHANGELOG | 2 ++ diff --git a/src/patches/dnsmasq/0042-BSD-make-support.patch b/src/patches/dnsmasq/0042-BSD-make-support.patch index 76f76ef757..750f113b1b 100644 --- a/src/patches/dnsmasq/0042-BSD-make-support.patch +++ b/src/patches/dnsmasq/0042-BSD-make-support.patch @@ -1,7 +1,7 @@ From 106266761828a0acb006346ae47bf031dee46a5d Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sun, 1 Feb 2015 00:15:16 +0000 -Subject: [PATCH 42/55] BSD make support +Subject: [PATCH 42/71] BSD make support --- Makefile | 6 ++++-- diff --git a/src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch b/src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch index a3df61b89c..aa55fe28ff 100644 --- a/src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch +++ b/src/patches/dnsmasq/0043-Fix-build-failure-on-openBSD.patch @@ -1,7 +1,7 @@ From 8d8a54ec79d9f96979fabbd97b1dd2ddebc7d78f Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sun, 1 Feb 2015 21:48:46 +0000 -Subject: [PATCH 43/55] Fix build failure on openBSD. +Subject: [PATCH 43/71] Fix build failure on openBSD. --- src/tables.c | 2 +- diff --git a/src/patches/dnsmasq/0044-Manpage-typo-fix.patch b/src/patches/dnsmasq/0044-Manpage-typo-fix.patch index e0e384f546..bbc4d48733 100644 --- a/src/patches/dnsmasq/0044-Manpage-typo-fix.patch +++ b/src/patches/dnsmasq/0044-Manpage-typo-fix.patch @@ -1,7 +1,7 @@ From d36b732c4cfa91ea09af64b5dc0f3a85a075e5bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thi=C3=A9baud=20Weksteen?= Date: Mon, 2 Feb 2015 21:37:27 +0000 -Subject: [PATCH 44/55] Manpage typo fix. +Subject: [PATCH 44/71] Manpage typo fix. --- man/dnsmasq.8 | 2 +- diff --git a/src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch b/src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch index fc1b98a705..2d43b93111 100644 --- a/src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch +++ b/src/patches/dnsmasq/0045-Fixup-dhcp-configs-after-reading-extra-hostfiles-wit.patch @@ -1,7 +1,7 @@ From 2941d3ac898cf84b544e47c9735c5e4111711db1 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 2 Feb 2015 22:36:42 +0000 -Subject: [PATCH 45/55] Fixup dhcp-configs after reading extra hostfiles with +Subject: [PATCH 45/71] Fixup dhcp-configs after reading extra hostfiles with inotify. --- diff --git a/src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch b/src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch index 803174af05..8b173f275a 100644 --- a/src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch +++ b/src/patches/dnsmasq/0046-Extra-logging-for-inotify-code.patch @@ -1,7 +1,7 @@ From f9c863708c6b0aea31ff7a466647685dc739de50 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Tue, 3 Feb 2015 21:52:48 +0000 -Subject: [PATCH 46/55] Extra logging for inotify code. +Subject: [PATCH 46/71] Extra logging for inotify code. --- src/cache.c | 9 ++++----- diff --git a/src/patches/dnsmasq/0047-man-page-typo.patch b/src/patches/dnsmasq/0047-man-page-typo.patch index 6606a7ac41..9710dfb090 100644 --- a/src/patches/dnsmasq/0047-man-page-typo.patch +++ b/src/patches/dnsmasq/0047-man-page-typo.patch @@ -1,7 +1,7 @@ From efb8b5566aafc1f3ce18514a2df93af5a2e4998c Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 7 Feb 2015 22:36:34 +0000 -Subject: [PATCH 47/55] man page typo. +Subject: [PATCH 47/71] man page typo. --- man/dnsmasq.8 | 1 + diff --git a/src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch b/src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch index 5633d9d00b..fb7753c675 100644 --- a/src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch +++ b/src/patches/dnsmasq/0048-Fix-get-version-script-which-returned-wrong-tag-in-s.patch @@ -1,7 +1,7 @@ From f4f400776b3c1aa303d1a0fcd500f0ab5bc970f2 Mon Sep 17 00:00:00 2001 From: Shantanu Gadgil Date: Wed, 11 Feb 2015 20:16:59 +0000 -Subject: [PATCH 48/55] Fix get-version script which returned wrong tag in some +Subject: [PATCH 48/71] Fix get-version script which returned wrong tag in some situations. --- diff --git a/src/patches/dnsmasq/0049-Typos.patch b/src/patches/dnsmasq/0049-Typos.patch index 8f64b39d5a..c843bf25e2 100644 --- a/src/patches/dnsmasq/0049-Typos.patch +++ b/src/patches/dnsmasq/0049-Typos.patch @@ -1,7 +1,7 @@ From 8ff70de618eb7de9147dbfbd4deca4a2dd62f0cb Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 14 Feb 2015 20:02:37 +0000 -Subject: [PATCH 49/55] Typos. +Subject: [PATCH 49/71] Typos. --- src/inotify.c | 3 ++- diff --git a/src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch b/src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch index af79802025..7b9a1b3d21 100644 --- a/src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch +++ b/src/patches/dnsmasq/0050-Make-dynamic-hosts-files-work-when-no-hosts-set.patch @@ -1,7 +1,7 @@ From caeea190f12efd20139f694aac4942d1ac00019f Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 14 Feb 2015 20:08:56 +0000 -Subject: [PATCH 50/55] Make dynamic hosts files work when --no-hosts set. +Subject: [PATCH 50/71] Make dynamic hosts files work when --no-hosts set. --- src/cache.c | 21 +++++++++++---------- diff --git a/src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch b/src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch index 2c38cfc1a8..a65ed21615 100644 --- a/src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch +++ b/src/patches/dnsmasq/0051-Fix-trivial-memory-leaks-to-quieten-valgrind.patch @@ -1,7 +1,7 @@ From 28b879ac47b872af6e8c5e86d76806c69338434d Mon Sep 17 00:00:00 2001 From: Chen Wei Date: Tue, 17 Feb 2015 22:07:35 +0000 -Subject: [PATCH 51/55] Fix trivial memory leaks to quieten valgrind. +Subject: [PATCH 51/71] Fix trivial memory leaks to quieten valgrind. --- src/dnsmasq.c | 2 ++ diff --git a/src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch b/src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch index 46277fb4a6..69aeb92772 100644 --- a/src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch +++ b/src/patches/dnsmasq/0052-Fix-uninitialized-value-used-in-get_client_mac.patch @@ -1,7 +1,7 @@ From 0705a7e2d57654b27c7e14f35ca77241c1821f4d Mon Sep 17 00:00:00 2001 From: Tomas Hozza Date: Mon, 23 Feb 2015 21:26:26 +0000 -Subject: [PATCH 52/55] Fix uninitialized value used in get_client_mac() +Subject: [PATCH 52/71] Fix uninitialized value used in get_client_mac() --- src/dhcp6.c | 4 +++- diff --git a/src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch b/src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch index 95270301fc..b37498edc3 100644 --- a/src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch +++ b/src/patches/dnsmasq/0053-Log-parsing-utils-in-contrib-reverse-dns.patch @@ -1,15 +1,13 @@ From 47b9ac59c715827252ae6e6732903c3dabb697fb Mon Sep 17 00:00:00 2001 From: Joachim Zobel Date: Mon, 23 Feb 2015 21:38:11 +0000 -Subject: [PATCH 53/55] Log parsing utils in contrib/reverse-dns +Subject: [PATCH 53/71] Log parsing utils in contrib/reverse-dns --- contrib/reverse-dns/README | 18 ++++++++++++++++++ - contrib/reverse-dns/reverse_dns.sh | 29 +++++++++++++++++++++++++++++ contrib/reverse-dns/reverse_replace.sh | 28 ++++++++++++++++++++++++++++ - 3 files changed, 75 insertions(+) + 2 files changed, 46 insertions(+) create mode 100644 contrib/reverse-dns/README - create mode 100644 contrib/reverse-dns/reverse_dns.sh create mode 100644 contrib/reverse-dns/reverse_replace.sh diff --git a/contrib/reverse-dns/README b/contrib/reverse-dns/README @@ -36,41 +34,6 @@ index 000000000000..f87eb77c4c22 +Joachim + + -diff --git a/contrib/reverse-dns/reverse_dns.sh b/contrib/reverse-dns/reverse_dns.sh -new file mode 100644 -index 000000000000..c0fff300a947 ---- /dev/null -+++ b/contrib/reverse-dns/reverse_dns.sh -@@ -0,0 +1,29 @@ -+#!/bin/bash -+# $Id: reverse_dns.sh 4 2015-02-17 20:14:59Z jo $ -+# -+# Usage: reverse_dns.sh IP -+# Uses the dnsmasq query log to lookup the name -+# that was last queried to return the given IP. -+# -+ -+IP=$1 -+qmIP=`echo $IP | sed 's#\.#\\.#g'` -+LOG=/var/log/dnsmasq.log -+ -+IP_regex='^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$' -+ -+if ! [[ $IP =~ $IP_regex ]]; then -+ echo -n $IP -+ exit -+fi -+ -+NAME=`tac $LOG | \ -+ grep " is $IP" | head -1 | \ -+ sed "s#.* \([^ ]*\) is $qmIP.*#\1#" ` -+ -+if [ -z "$NAME" ]; then -+ echo -n $IP -+else -+ echo -n $NAME -+fi -+ diff --git a/contrib/reverse-dns/reverse_replace.sh b/contrib/reverse-dns/reverse_replace.sh new file mode 100644 index 000000000000..a11c164b7f19 diff --git a/src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch b/src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch index 2ff79d526b..5073440552 100644 --- a/src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch +++ b/src/patches/dnsmasq/0054-Add-dnssec-timestamp-option-and-facility.patch @@ -1,7 +1,7 @@ From f6e62e2af96f5fa0d1e3d93167a93a8f09bf6e61 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sun, 1 Mar 2015 18:17:54 +0000 -Subject: [PATCH 54/55] Add --dnssec-timestamp option and facility. +Subject: [PATCH 54/71] Add --dnssec-timestamp option and facility. --- CHANGELOG | 6 +++++ diff --git a/src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch b/src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch index 54bb5d597c..768e14a9c1 100644 --- a/src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch +++ b/src/patches/dnsmasq/0055-Fix-last-commit-to-not-crash-if-uid-changing-not-con.patch @@ -1,7 +1,7 @@ From 9003b50b13da624ca45f3e0cf99abb623b8d026b Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Mon, 2 Mar 2015 22:47:23 +0000 -Subject: [PATCH 55/55] Fix last commit to not crash if uid changing not +Subject: [PATCH 55/71] Fix last commit to not crash if uid changing not configured. --- diff --git a/src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch b/src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch index 9a052152c2..d39a058eda 100644 --- a/src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch +++ b/src/patches/dnsmasq/0056-New-version-of-contrib-reverse-dns.patch @@ -1,7 +1,7 @@ From 4c960fa90a975d20f75a1ecabd217247f1922c8f Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Wed, 4 Mar 2015 20:32:26 +0000 -Subject: [PATCH 56/57] New version of contrib/reverse-dns +Subject: [PATCH 56/71] New version of contrib/reverse-dns --- contrib/reverse-dns/README | 22 +++--- diff --git a/src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch b/src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch index df47cd0e3a..462d57250a 100644 --- a/src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch +++ b/src/patches/dnsmasq/0057-Tweak-DNSSEC-timestamp-code-to-create-file-later-rem.patch @@ -1,7 +1,7 @@ From 360f2513ab12a9bf1e262d388dd2ea8a566590a3 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Sat, 7 Mar 2015 18:28:06 +0000 -Subject: [PATCH 57/57] Tweak DNSSEC timestamp code to create file later, +Subject: [PATCH 57/71] Tweak DNSSEC timestamp code to create file later, removing need to chown it. --- diff --git a/src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch b/src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch new file mode 100644 index 0000000000..aa30241ae9 --- /dev/null +++ b/src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch @@ -0,0 +1,458 @@ +From ff841ebf5a5d6864ff48571f607c32ce80dbb75a Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Wed, 11 Mar 2015 21:36:30 +0000 +Subject: [PATCH 58/71] Fix boilerplate code for re-running system calls on + EINTR and EAGAIN etc. + +The nasty code with static variable in retry_send() which +avoids looping forever needs to be called on success of the syscall, +to reset the static variable. +--- + src/bpf.c | 2 +- + src/dhcp.c | 2 +- + src/dhcp6.c | 6 +++--- + src/dnsmasq.c | 35 +++++++++++++++++---------------- + src/dnsmasq.h | 2 +- + src/forward.c | 41 ++++++++++++++++++-------------------- + src/ipset.c | 8 ++++---- + src/loop.c | 5 +++-- + src/netlink.c | 8 ++++---- + src/radv.c | 5 +++-- + src/util.c | 63 ++++++++++++++++++++++++++++++++++------------------------- + 11 files changed, 93 insertions(+), 84 deletions(-) + +diff --git a/src/bpf.c b/src/bpf.c +index 997d87421bed..a066641f969f 100644 +--- a/src/bpf.c ++++ b/src/bpf.c +@@ -359,7 +359,7 @@ void send_via_bpf(struct dhcp_packet *mess, size_t len, + iov[3].iov_base = mess; + iov[3].iov_len = len; + +- while (writev(daemon->dhcp_raw_fd, iov, 4) == -1 && retry_send()); ++ while (retry_send(writev(daemon->dhcp_raw_fd, iov, 4))); + } + + #endif /* defined(HAVE_BSD_NETWORK) && defined(HAVE_DHCP) */ +diff --git a/src/dhcp.c b/src/dhcp.c +index f29be9b489a7..5c3089ab94ff 100644 +--- a/src/dhcp.c ++++ b/src/dhcp.c +@@ -443,7 +443,7 @@ void dhcp_packet(time_t now, int pxe_fd) + setsockopt(fd, IPPROTO_IP, IP_BOUND_IF, &iface_index, sizeof(iface_index)); + #endif + +- while(sendmsg(fd, &msg, 0) == -1 && retry_send()); ++ while(retry_send(sendmsg(fd, &msg, 0))); + } + + /* check against secondary interface addresses */ +diff --git a/src/dhcp6.c b/src/dhcp6.c +index c7144f5fee7c..ee2aa5d3bf3c 100644 +--- a/src/dhcp6.c ++++ b/src/dhcp6.c +@@ -225,9 +225,9 @@ void dhcp6_packet(time_t now) + if (port != 0) + { + from.sin6_port = htons(port); +- while (sendto(daemon->dhcp6fd, daemon->outpacket.iov_base, save_counter(0), +- 0, (struct sockaddr *)&from, sizeof(from)) == -1 && +- retry_send()); ++ while (retry_send(sendto(daemon->dhcp6fd, daemon->outpacket.iov_base, ++ save_counter(0), 0, (struct sockaddr *)&from, ++ sizeof(from)))); + } + } + +diff --git a/src/dnsmasq.c b/src/dnsmasq.c +index f3e5bcffec4f..b784951950d4 100644 +--- a/src/dnsmasq.c ++++ b/src/dnsmasq.c +@@ -444,7 +444,7 @@ int main (int argc, char **argv) + char *msg; + + /* close our copy of write-end */ +- close(err_pipe[1]); ++ while (retry_send(close(err_pipe[1]))); + + /* check for errors after the fork */ + if (read_event(err_pipe[0], &ev, &msg)) +@@ -453,7 +453,7 @@ int main (int argc, char **argv) + _exit(EC_GOOD); + } + +- close(err_pipe[0]); ++ while (retry_send(close(err_pipe[0]))); + + /* NO calls to die() from here on. */ + +@@ -505,10 +505,12 @@ int main (int argc, char **argv) + { + if (!read_write(fd, (unsigned char *)daemon->namebuff, strlen(daemon->namebuff), 0)) + err = 1; +- +- while (!err && close(fd) == -1) +- if (!retry_send()) +- err = 1; ++ else ++ { ++ while (retry_send(close(fd))); ++ if (errno != 0) ++ err = 1; ++ } + } + + if (err) +@@ -813,7 +815,7 @@ int main (int argc, char **argv) + + /* finished start-up - release original process */ + if (err_pipe[1] != -1) +- close(err_pipe[1]); ++ while (retry_send(close(err_pipe[1]))); + + if (daemon->port != 0) + check_servers(); +@@ -1319,7 +1321,7 @@ static void async_event(int pipe, time_t now) + do { + helper_write(); + } while (!helper_buf_empty() || do_script_run(now)); +- close(daemon->helperfd); ++ while (retry_send(close(daemon->helperfd))); + } + #endif + +@@ -1544,7 +1546,7 @@ static void check_dns_listeners(fd_set *set, time_t now) + + if (getsockname(confd, (struct sockaddr *)&tcp_addr, &tcp_len) == -1) + { +- close(confd); ++ while (retry_send(close(confd))); + continue; + } + +@@ -1609,7 +1611,7 @@ static void check_dns_listeners(fd_set *set, time_t now) + if (!client_ok) + { + shutdown(confd, SHUT_RDWR); +- close(confd); ++ while (retry_send(close(confd))); + } + #ifndef NO_FORK + else if (!option_bool(OPT_DEBUG) && (p = fork()) != 0) +@@ -1624,7 +1626,7 @@ static void check_dns_listeners(fd_set *set, time_t now) + break; + } + } +- close(confd); ++ while (retry_send(close(confd))); + + /* The child can use up to TCP_MAX_QUERIES ids, so skip that many. */ + daemon->log_id += TCP_MAX_QUERIES; +@@ -1669,7 +1671,7 @@ static void check_dns_listeners(fd_set *set, time_t now) + buff = tcp_request(confd, now, &tcp_addr, netmask, auth_dns); + + shutdown(confd, SHUT_RDWR); +- close(confd); ++ while (retry_send(close(confd))); + + if (buff) + free(buff); +@@ -1678,7 +1680,7 @@ static void check_dns_listeners(fd_set *set, time_t now) + if (s->tcpfd != -1) + { + shutdown(s->tcpfd, SHUT_RDWR); +- close(s->tcpfd); ++ while (retry_send(close(s->tcpfd))); + } + #ifndef NO_FORK + if (!option_bool(OPT_DEBUG)) +@@ -1756,9 +1758,8 @@ int icmp_ping(struct in_addr addr) + j = (j & 0xffff) + (j >> 16); + packet.icmp.icmp_cksum = (j == 0xffff) ? j : ~j; + +- while (sendto(fd, (char *)&packet.icmp, sizeof(struct icmp), 0, +- (struct sockaddr *)&saddr, sizeof(saddr)) == -1 && +- retry_send()); ++ while (retry_send(sendto(fd, (char *)&packet.icmp, sizeof(struct icmp), 0, ++ (struct sockaddr *)&saddr, sizeof(saddr)))); + + for (now = start = dnsmasq_time(); + difftime(now, start) < (float)PING_WAIT;) +@@ -1820,7 +1821,7 @@ int icmp_ping(struct in_addr addr) + } + + #if defined(HAVE_LINUX_NETWORK) || defined(HAVE_SOLARIS_NETWORK) +- close(fd); ++ while (retry_send(close(fd))); + #else + opt = 1; + setsockopt(fd, SOL_SOCKET, SO_RCVBUF, &opt, sizeof(opt)); +diff --git a/src/dnsmasq.h b/src/dnsmasq.h +index fc7259881358..de95d0e875e3 100644 +--- a/src/dnsmasq.h ++++ b/src/dnsmasq.h +@@ -1177,7 +1177,7 @@ int is_same_net6(struct in6_addr *a, struct in6_addr *b, int prefixlen); + u64 addr6part(struct in6_addr *addr); + void setaddr6part(struct in6_addr *addr, u64 host); + #endif +-int retry_send(void); ++int retry_send(ssize_t rc); + void prettyprint_time(char *buf, unsigned int t); + int prettyprint_addr(union mysockaddr *addr, char *buf); + int parse_hex(char *in, unsigned char *out, int maxlen, +diff --git a/src/forward.c b/src/forward.c +index 438e9fa490b8..7c0fa8da3fdf 100644 +--- a/src/forward.c ++++ b/src/forward.c +@@ -103,15 +103,11 @@ int send_from(int fd, int nowild, char *packet, size_t len, + #endif + } + +- while (sendmsg(fd, &msg, 0) == -1) ++ while (retry_send(sendmsg(fd, &msg, 0))); ++ ++ /* If interface is still in DAD, EINVAL results - ignore that. */ ++ if (errno != 0 && errno != EINVAL) + { +- if (retry_send()) +- continue; +- +- /* If interface is still in DAD, EINVAL results - ignore that. */ +- if (errno == EINVAL) +- break; +- + my_syslog(LOG_ERR, _("failed to send packet: %s"), strerror(errno)); + return 0; + } +@@ -297,9 +293,9 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr, + fd = forward->rfd4->fd; + } + +- while (sendto(fd, (char *)header, plen, 0, +- &forward->sentto->addr.sa, +- sa_len(&forward->sentto->addr)) == -1 && retry_send()); ++ while (retry_send( sendto(fd, (char *)header, plen, 0, ++ &forward->sentto->addr.sa, ++ sa_len(&forward->sentto->addr)))); + + return 1; + } +@@ -469,14 +465,12 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr, + #endif + } + +- if (sendto(fd, (char *)header, plen, 0, +- &start->addr.sa, +- sa_len(&start->addr)) == -1) +- { +- if (retry_send()) +- continue; +- } +- else ++ if (retry_send(sendto(fd, (char *)header, plen, 0, ++ &start->addr.sa, ++ sa_len(&start->addr)))) ++ continue; ++ ++ if (errno == 0) + { + /* Keep info in case we want to re-send this packet */ + daemon->srv_save = start; +@@ -932,7 +926,9 @@ void reply_query(int fd, int family, time_t now) + + if (fd != -1) + { +- while (sendto(fd, (char *)header, nn, 0, &server->addr.sa, sa_len(&server->addr)) == -1 && retry_send()); ++ while (retry_send(sendto(fd, (char *)header, nn, 0, ++ &server->addr.sa, ++ sa_len(&server->addr)))); + server->queries++; + } + +@@ -2228,8 +2224,9 @@ void resend_query() + else + return; + +- while(sendto(fd, daemon->packet, daemon->packet_len, 0, +- &daemon->srv_save->addr.sa, sa_len(&daemon->srv_save->addr)) == -1 && retry_send()); ++ while(retry_send(sendto(fd, daemon->packet, daemon->packet_len, 0, ++ &daemon->srv_save->addr.sa, ++ sa_len(&daemon->srv_save->addr)))); + } + } + +diff --git a/src/ipset.c b/src/ipset.c +index 8c5b72722371..a315e86bc7f4 100644 +--- a/src/ipset.c ++++ b/src/ipset.c +@@ -121,7 +121,6 @@ static int new_add_to_ipset(const char *setname, const struct all_addr *ipaddr, + struct my_nlattr *nested[2]; + uint8_t proto; + int addrsz = INADDRSZ; +- ssize_t rc; + + #ifdef HAVE_IPV6 + if (af == AF_INET6) +@@ -162,9 +161,10 @@ static int new_add_to_ipset(const char *setname, const struct all_addr *ipaddr, + nested[1]->nla_len = (void *)buffer + NL_ALIGN(nlh->nlmsg_len) - (void *)nested[1]; + nested[0]->nla_len = (void *)buffer + NL_ALIGN(nlh->nlmsg_len) - (void *)nested[0]; + +- while ((rc = sendto(ipset_sock, buffer, nlh->nlmsg_len, 0, +- (struct sockaddr *)&snl, sizeof(snl))) == -1 && retry_send()); +- return rc; ++ while (retry_send(sendto(ipset_sock, buffer, nlh->nlmsg_len, 0, ++ (struct sockaddr *)&snl, sizeof(snl)))); ++ ++ return errno == 0 ? 0 : -1; + } + + +diff --git a/src/loop.c b/src/loop.c +index 565f7d8e58e0..c9ed075670de 100644 +--- a/src/loop.c ++++ b/src/loop.c +@@ -45,8 +45,9 @@ void loop_send_probes() + fd = rfd->fd; + } + +- while (sendto(fd, daemon->packet, len, 0, &serv->addr.sa, sa_len(&serv->addr)) == -1 && retry_send()); +- ++ while (retry_send(sendto(fd, daemon->packet, len, 0, ++ &serv->addr.sa, sa_len(&serv->addr)))); ++ + free_rfd(rfd); + } + } +diff --git a/src/netlink.c b/src/netlink.c +index 10f94db25a14..753784dc20b4 100644 +--- a/src/netlink.c ++++ b/src/netlink.c +@@ -169,10 +169,10 @@ int iface_enumerate(int family, void *parm, int (*callback)()) + req.g.rtgen_family = family; + + /* Don't block in recvfrom if send fails */ +- while((len = sendto(daemon->netlinkfd, (void *)&req, sizeof(req), 0, +- (struct sockaddr *)&addr, sizeof(addr))) == -1 && retry_send()); +- +- if (len == -1) ++ while(retry_send(sendto(daemon->netlinkfd, (void *)&req, sizeof(req), 0, ++ (struct sockaddr *)&addr, sizeof(addr)))); ++ ++ if (errno != 0) + return 0; + + while (1) +diff --git a/src/radv.c b/src/radv.c +index 6da125b864ae..d0faddf8684a 100644 +--- a/src/radv.c ++++ b/src/radv.c +@@ -479,8 +479,9 @@ static void send_ra(time_t now, int iface, char *iface_name, struct in6_addr *de + setsockopt(daemon->icmp6fd, IPPROTO_IPV6, IPV6_MULTICAST_IF, &iface, sizeof(iface)); + } + +- while (sendto(daemon->icmp6fd, daemon->outpacket.iov_base, save_counter(0), 0, +- (struct sockaddr *)&addr, sizeof(addr)) == -1 && retry_send()); ++ while (retry_send(sendto(daemon->icmp6fd, daemon->outpacket.iov_base, ++ save_counter(0), 0, (struct sockaddr *)&addr, ++ sizeof(addr)))); + + } + +diff --git a/src/util.c b/src/util.c +index 91d02410b13f..648bc4d4b428 100644 +--- a/src/util.c ++++ b/src/util.c +@@ -569,17 +569,27 @@ void bump_maxfd(int fd, int *max) + *max = fd; + } + +-int retry_send(void) ++/* rc is return from sendto and friends. ++ Return 1 if we should retry. ++ Set errno to zero if we succeeded. */ ++int retry_send(ssize_t rc) + { ++ static int retries = 0; ++ struct timespec waiter; ++ ++ if (rc != -1) ++ { ++ retries = 0; ++ errno = 0; ++ return 0; ++ } ++ + /* Linux kernels can return EAGAIN in perpetuity when calling + sendmsg() and the relevant interface has gone. Here we loop + retrying in EAGAIN for 1 second max, to avoid this hanging + dnsmasq. */ + +- static int retries = 0; +- struct timespec waiter; +- +- if (errno == EAGAIN || errno == EWOULDBLOCK) ++ if (errno == EAGAIN || errno == EWOULDBLOCK) + { + waiter.tv_sec = 0; + waiter.tv_nsec = 10000; +@@ -587,13 +597,13 @@ int retry_send(void) + if (retries++ < 1000) + return 1; + } +- +- retries = 0; +- +- if (errno == EINTR) +- return 1; +- +- return 0; ++ ++ retries = 0; ++ ++ if (errno == EINTR) ++ return 1; ++ ++ return 0; + } + + int read_write(int fd, unsigned char *packet, int size, int rw) +@@ -602,22 +612,21 @@ int read_write(int fd, unsigned char *packet, int size, int rw) + + for (done = 0; done < size; done += n) + { +- retry: +- if (rw) +- n = read(fd, &packet[done], (size_t)(size - done)); +- else +- n = write(fd, &packet[done], (size_t)(size - done)); +- +- if (n == 0) +- return 0; +- else if (n == -1) +- { +- if (retry_send() || errno == ENOMEM || errno == ENOBUFS) +- goto retry; +- else +- return 0; +- } ++ do { ++ if (rw) ++ n = read(fd, &packet[done], (size_t)(size - done)); ++ else ++ n = write(fd, &packet[done], (size_t)(size - done)); ++ ++ if (n == 0) ++ return 0; ++ ++ } while (retry_send(n) || errno == ENOMEM || errno == ENOBUFS); ++ ++ if (errno != 0) ++ return 0; + } ++ + return 1; + } + +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch b/src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch new file mode 100644 index 0000000000..6a2a0f41fc --- /dev/null +++ b/src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch @@ -0,0 +1,75 @@ +From 979fe86bc8693f660eddea232ae39cbbb50b294c Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Thu, 19 Mar 2015 22:50:22 +0000 +Subject: [PATCH 59/71] Make --address=/example.com/ equivalent to + --server=/example.com/ + +--- + man/dnsmasq.8 | 7 +++++-- + src/network.c | 4 ++-- + src/option.c | 2 -- + 3 files changed, 7 insertions(+), 6 deletions(-) + +diff --git a/man/dnsmasq.8 b/man/dnsmasq.8 +index 2db780d90987..1f1dd7b69c53 100644 +--- a/man/dnsmasq.8 ++++ b/man/dnsmasq.8 +@@ -460,7 +460,7 @@ but provides some syntactic sugar to make specifying address-to-name queries eas + is exactly equivalent to + .B --server=/3.2.1.in-addr.arpa/192.168.0.1 + .TP +-.B \-A, --address=//[domain/] ++.B \-A, --address=//[domain/][] + Specify an IP address to return for any host in the given domains. + Queries in the domains are never forwarded and always replied to + with the specified IP address which may be IPv4 or IPv6. To give +@@ -472,7 +472,10 @@ domain specification works in the same was as for --server, with the + additional facility that /#/ matches any domain. Thus + --address=/#/1.2.3.4 will always return 1.2.3.4 for any query not + answered from /etc/hosts or DHCP and not sent to an upstream +-nameserver by a more specific --server directive. ++nameserver by a more specific --server directive. As for --server, ++one or more domains with no address returns a no-such-domain answer, so ++--address=/example.com/ is equivalent to --server=/example.com/ and returns ++NXDOMAIN for example.com and all its subdomains. + .TP + .B --ipset=//[domain/][,] + Places the resolved IP addresses of queries for the specified domains +diff --git a/src/network.c b/src/network.c +index 7045253d467b..992f023c31de 100644 +--- a/src/network.c ++++ b/src/network.c +@@ -1459,7 +1459,7 @@ void check_servers(void) + } + } + +- if (!(serv->flags & SERV_NO_REBIND)) ++ if (!(serv->flags & SERV_NO_REBIND) && !(serv->flags & SERV_LITERAL_ADDRESS)) + { + if (serv->flags & (SERV_HAS_DOMAIN | SERV_FOR_NODOTS | SERV_USE_RESOLV)) + { +@@ -1475,7 +1475,7 @@ void check_servers(void) + my_syslog(LOG_INFO, _("using local addresses only for %s %s"), s1, s2); + else if (serv->flags & SERV_USE_RESOLV) + my_syslog(LOG_INFO, _("using standard nameservers for %s %s"), s1, s2); +- else if (!(serv->flags & SERV_LITERAL_ADDRESS)) ++ else + my_syslog(LOG_INFO, _("using nameserver %s#%d for %s %s"), daemon->namebuff, port, s1, s2); + } + #ifdef HAVE_LOOP +diff --git a/src/option.c b/src/option.c +index eace40bb566c..3009eb545fde 100644 +--- a/src/option.c ++++ b/src/option.c +@@ -2284,8 +2284,6 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma + { + if (!(newlist->flags & SERV_NO_REBIND)) + newlist->flags |= SERV_NO_ADDR; /* no server */ +- if (newlist->flags & SERV_LITERAL_ADDRESS) +- ret_err(gen_err); + } + + else if (strcmp(arg, "#") == 0) +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch b/src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch new file mode 100644 index 0000000000..1eb504be6d --- /dev/null +++ b/src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch @@ -0,0 +1,80 @@ +From 65c721200023ef0023114459a8d12f8b0a24cfd8 Mon Sep 17 00:00:00 2001 +From: Lung-Pin Chang +Date: Thu, 19 Mar 2015 23:22:21 +0000 +Subject: [PATCH 60/71] dhcp: set outbound interface via cmsg in unicast reply + + If multiple routes to the same network exist, Linux blindly picks + the first interface (route) based on destination address, which might not be + the one we're actually offering leases. Rather than relying on this, + always set the interface for outgoing unicast DHCP packets. +--- + src/dhcp.c | 45 +++++++++++++++++++++++++-------------------- + 1 file changed, 25 insertions(+), 20 deletions(-) + +diff --git a/src/dhcp.c b/src/dhcp.c +index 5c3089ab94ff..f1f43f8d8f90 100644 +--- a/src/dhcp.c ++++ b/src/dhcp.c +@@ -376,10 +376,9 @@ void dhcp_packet(time_t now, int pxe_fd) + } + } + #if defined(HAVE_LINUX_NETWORK) +- else if ((ntohs(mess->flags) & 0x8000) || mess->hlen == 0 || +- mess->hlen > sizeof(ifr.ifr_addr.sa_data) || mess->htype == 0) ++ else + { +- /* broadcast to 255.255.255.255 (or mac address invalid) */ ++ /* fill cmsg for outbound interface (both broadcast & unicast) */ + struct in_pktinfo *pkt; + msg.msg_control = control_u.control; + msg.msg_controllen = sizeof(control_u); +@@ -389,23 +388,29 @@ void dhcp_packet(time_t now, int pxe_fd) + pkt->ipi_spec_dst.s_addr = 0; + msg.msg_controllen = cmptr->cmsg_len = CMSG_LEN(sizeof(struct in_pktinfo)); + cmptr->cmsg_level = IPPROTO_IP; +- cmptr->cmsg_type = IP_PKTINFO; +- dest.sin_addr.s_addr = INADDR_BROADCAST; +- dest.sin_port = htons(daemon->dhcp_client_port); +- } +- else +- { +- /* unicast to unconfigured client. Inject mac address direct into ARP cache. +- struct sockaddr limits size to 14 bytes. */ +- dest.sin_addr = mess->yiaddr; +- dest.sin_port = htons(daemon->dhcp_client_port); +- memcpy(&arp_req.arp_pa, &dest, sizeof(struct sockaddr_in)); +- arp_req.arp_ha.sa_family = mess->htype; +- memcpy(arp_req.arp_ha.sa_data, mess->chaddr, mess->hlen); +- /* interface name already copied in */ +- arp_req.arp_flags = ATF_COM; +- if (ioctl(daemon->dhcpfd, SIOCSARP, &arp_req) == -1) +- my_syslog(MS_DHCP | LOG_ERR, _("ARP-cache injection failed: %s"), strerror(errno)); ++ cmptr->cmsg_type = IP_PKTINFO; ++ ++ if ((ntohs(mess->flags) & 0x8000) || mess->hlen == 0 || ++ mess->hlen > sizeof(ifr.ifr_addr.sa_data) || mess->htype == 0) ++ { ++ /* broadcast to 255.255.255.255 (or mac address invalid) */ ++ dest.sin_addr.s_addr = INADDR_BROADCAST; ++ dest.sin_port = htons(daemon->dhcp_client_port); ++ } ++ else ++ { ++ /* unicast to unconfigured client. Inject mac address direct into ARP cache. ++ struct sockaddr limits size to 14 bytes. */ ++ dest.sin_addr = mess->yiaddr; ++ dest.sin_port = htons(daemon->dhcp_client_port); ++ memcpy(&arp_req.arp_pa, &dest, sizeof(struct sockaddr_in)); ++ arp_req.arp_ha.sa_family = mess->htype; ++ memcpy(arp_req.arp_ha.sa_data, mess->chaddr, mess->hlen); ++ /* interface name already copied in */ ++ arp_req.arp_flags = ATF_COM; ++ if (ioctl(daemon->dhcpfd, SIOCSARP, &arp_req) == -1) ++ my_syslog(MS_DHCP | LOG_ERR, _("ARP-cache injection failed: %s"), strerror(errno)); ++ } + } + #elif defined(HAVE_SOLARIS_NETWORK) + else if ((ntohs(mess->flags) & 0x8000) || mess->hlen != ETHER_ADDR_LEN || mess->htype != ARPHRD_ETHER) +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch b/src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch new file mode 100644 index 0000000000..b566ebf0d9 --- /dev/null +++ b/src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch @@ -0,0 +1,27 @@ +From 8805283088d670baecb92569252c01cf754cda51 Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Thu, 26 Mar 2015 21:15:43 +0000 +Subject: [PATCH 61/71] Don't fail DNSSEC when a signed CNAME dangles into an + unsigned zone. + +--- + src/dnssec.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/dnssec.c b/src/dnssec.c +index ad0d6f072ba2..db5c768bd751 100644 +--- a/src/dnssec.c ++++ b/src/dnssec.c +@@ -2032,7 +2032,8 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + /* NXDOMAIN or NODATA reply, prove that (name, class1, type1) can't exist */ + /* First marshall the NSEC records, if we've not done it previously */ + if (!nsec_type && !(nsec_type = find_nsec_records(header, plen, &nsecs, &nsec_count, qclass))) +- return STAT_BOGUS; /* No NSECs */ ++ return STAT_NO_SIG; /* No NSECs, this is probably a dangling CNAME pointing into ++ an unsigned zone. Return STAT_NO_SIG to cause this to be proved. */ + + /* Get name of missing answer */ + if (!extract_name(header, plen, &qname, name, 1, 0)) +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch b/src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch new file mode 100644 index 0000000000..a660450c2c --- /dev/null +++ b/src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch @@ -0,0 +1,48 @@ +From 150162bc37170a6edae9d488435e836b1e4e3a4e Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Fri, 27 Mar 2015 09:58:26 +0000 +Subject: [PATCH 62/71] Return SERVFAIL when validation abandoned. + +--- + src/forward.c | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/src/forward.c b/src/forward.c +index 7c0fa8da3fdf..985814c3aec5 100644 +--- a/src/forward.c ++++ b/src/forward.c +@@ -663,6 +663,7 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server + header->ancount = htons(0); + header->nscount = htons(0); + header->arcount = htons(0); ++ header->hb3 &= ~HB3_TC; + } + + /* the bogus-nxdomain stuff, doctor and NXDOMAIN->NODATA munging can all elide +@@ -991,7 +992,10 @@ void reply_query(int fd, int family, time_t now) + char *result; + + if (forward->work_counter == 0) +- result = "ABANDONED"; ++ { ++ result = "ABANDONED"; ++ status = STAT_BOGUS; ++ } + else + result = (status == STAT_SECURE ? "SECURE" : (status == STAT_INSECURE ? "INSECURE" : "BOGUS")); + +@@ -1938,7 +1942,10 @@ unsigned char *tcp_request(int confd, time_t now, + char *result; + + if (keycount == 0) +- result = "ABANDONED"; ++ { ++ result = "ABANDONED"; ++ status = STAT_BOGUS; ++ } + else + result = (status == STAT_SECURE ? "SECURE" : (status == STAT_INSECURE ? "INSECURE" : "BOGUS")); + +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch b/src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch new file mode 100644 index 0000000000..93161d06f1 --- /dev/null +++ b/src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch @@ -0,0 +1,37 @@ +From 0b8a5a30a77331974ba24a04e43e720585dfbc61 Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Fri, 27 Mar 2015 11:44:55 +0000 +Subject: [PATCH 63/71] Protect against broken DNSSEC upstreams. + +--- + src/dnssec.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/dnssec.c b/src/dnssec.c +index db5c768bd751..14bae7e9bf75 100644 +--- a/src/dnssec.c ++++ b/src/dnssec.c +@@ -1177,7 +1177,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch + STAT_NO_DS It's proved there's no DS here. + STAT_NO_NS It's proved there's no DS _or_ NS here. + STAT_BOGUS no DS in reply or not signed, fails validation, bad packet. +- STAT_NEED_DNSKEY DNSKEY records to validate a DS not found, name in keyname ++ STAT_NEED_KEY DNSKEY records to validate a DS not found, name in keyname + */ + + int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char *name, char *keyname, int class) +@@ -1208,7 +1208,10 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char + if (!(p = skip_section(p, ntohs(header->ancount), header, plen))) + val = STAT_BOGUS; + +- if (val == STAT_BOGUS) ++ /* If the key needed to validate the DS is on the same domain as the DS, we'll ++ loop getting nowhere. Stop that now. This can happen of the DS answer comes ++ from the DS's zone, and not the parent zone. */ ++ if (val == STAT_BOGUS || (val == STAT_NEED_KEY && hostname_isequal(name, keyname))) + { + log_query(F_NOEXTRA | F_UPSTREAM, name, NULL, "BOGUS DS"); + return STAT_BOGUS; +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch b/src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch new file mode 100644 index 0000000000..389beee081 --- /dev/null +++ b/src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch @@ -0,0 +1,197 @@ +From 1e153945def3c50d1e59ceea6a768db0ac770f98 Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Sat, 28 Mar 2015 21:34:07 +0000 +Subject: [PATCH 64/71] DNSSEC fix for non-ascii characters in labels. + +--- + src/dnssec.c | 34 +++++++++++++++++----------------- + src/rfc1035.c | 5 +++-- + 2 files changed, 20 insertions(+), 19 deletions(-) + +diff --git a/src/dnssec.c b/src/dnssec.c +index 14bae7e9bf75..8bd5294ce773 100644 +--- a/src/dnssec.c ++++ b/src/dnssec.c +@@ -552,7 +552,7 @@ static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end, + + (*desc)++; + +- if (d == 0 && extract_name(header, plen, p, buff, 1, 0)) ++ if (d == 0 && extract_name(header, plen, p, buff, 2, 0)) + /* domain-name, canonicalise */ + return to_wire(buff); + else +@@ -811,7 +811,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in + GETLONG(sig_inception, p); + GETSHORT(key_tag, p); + +- if (!extract_name(header, plen, &p, keyname, 1, 0)) ++ if (!extract_name(header, plen, &p, keyname, 2, 0)) + return STAT_BOGUS; + + /* RFC 4035 5.3.1 says that the Signer's Name field MUST equal +@@ -866,7 +866,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in + u16 len, *dp; + + p = rrset[i]; +- if (!extract_name(header, plen, &p, name, 1, 10)) ++ if (!extract_name(header, plen, &p, name, 2, 10)) + return STAT_BOGUS; + + name_start = name; +@@ -923,7 +923,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in + + /* namebuff used for workspace above, restore to leave unchanged on exit */ + p = (unsigned char*)(rrset[0]); +- extract_name(header, plen, &p, name, 1, 0); ++ extract_name(header, plen, &p, name, 2, 0); + + if (key) + { +@@ -963,7 +963,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch + struct all_addr a; + + if (ntohs(header->qdcount) != 1 || +- !extract_name(header, plen, &p, name, 1, 4)) ++ !extract_name(header, plen, &p, name, 2, 4)) + return STAT_BOGUS; + + GETSHORT(qtype, p); +@@ -1202,7 +1202,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char + val = STAT_BOGUS; + + p = (unsigned char *)(header+1); +- extract_name(header, plen, &p, name, 1, 4); ++ extract_name(header, plen, &p, name, 2, 4); + p += 4; /* qtype, qclass */ + + if (!(p = skip_section(p, ntohs(header->ancount), header, plen))) +@@ -1419,12 +1419,12 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi + for (i = 0; i < nsec_count; i++) + { + p = nsecs[i]; +- if (!extract_name(header, plen, &p, workspace1, 1, 10)) ++ if (!extract_name(header, plen, &p, workspace1, 2, 10)) + return STAT_BOGUS; + p += 8; /* class, type, TTL */ + GETSHORT(rdlen, p); + psave = p; +- if (!extract_name(header, plen, &p, workspace2, 1, 10)) ++ if (!extract_name(header, plen, &p, workspace2, 2, 10)) + return STAT_BOGUS; + + rc = hostname_cmp(workspace1, name); +@@ -1553,7 +1553,7 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige + for (i = 0; i < nsec_count; i++) + if ((p = nsecs[i])) + { +- if (!extract_name(header, plen, &p, workspace1, 1, 0) || ++ if (!extract_name(header, plen, &p, workspace1, 2, 0) || + !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2))) + return 0; + +@@ -1730,7 +1730,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns + for (i = 0; i < nsec_count; i++) + if ((p = nsecs[i])) + { +- if (!extract_name(header, plen, &p, workspace1, 1, 0) || ++ if (!extract_name(header, plen, &p, workspace1, 2, 0) || + !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2))) + return STAT_BOGUS; + +@@ -1796,7 +1796,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + + qname = p1 = (unsigned char *)(header+1); + +- if (!extract_name(header, plen, &p1, name, 1, 4)) ++ if (!extract_name(header, plen, &p1, name, 2, 4)) + return STAT_BOGUS; + + GETSHORT(qtype, p1); +@@ -1836,7 +1836,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + qname = p1; + + /* looped CNAMES */ +- if (!cname_count-- || !extract_name(header, plen, &p1, name, 1, 0)) ++ if (!cname_count-- || !extract_name(header, plen, &p1, name, 2, 0)) + return STAT_BOGUS; + + p1 = ans_start; +@@ -1857,7 +1857,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + + for (p1 = ans_start, i = 0; i < ntohs(header->ancount) + ntohs(header->nscount); i++) + { +- if (!extract_name(header, plen, &p1, name, 1, 10)) ++ if (!extract_name(header, plen, &p1, name, 2, 10)) + return STAT_BOGUS; /* bad packet */ + + GETSHORT(type1, p1); +@@ -2039,7 +2039,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + an unsigned zone. Return STAT_NO_SIG to cause this to be proved. */ + + /* Get name of missing answer */ +- if (!extract_name(header, plen, &qname, name, 1, 0)) ++ if (!extract_name(header, plen, &qname, name, 2, 0)) + return STAT_BOGUS; + + if (nsec_type == T_NSEC) +@@ -2061,7 +2061,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char + int cname_count = CNAME_CHAIN; + + /* Get question */ +- if (!extract_name(header, plen, &p, name, 1, 4)) ++ if (!extract_name(header, plen, &p, name, 2, 4)) + return STAT_BOGUS; + + p +=2; /* type */ +@@ -2102,7 +2102,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char + + /* Loop down CNAME chain/ */ + if (!cname_count-- || +- !extract_name(header, plen, &p, name, 1, 0) || ++ !extract_name(header, plen, &p, name, 2, 0) || + !(p = skip_questions(header, plen))) + return STAT_BOGUS; + +@@ -2419,7 +2419,7 @@ unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name + + for (q = ntohs(header->qdcount); q != 0; q--) + { +- if (!extract_name(header, plen, &p, name, 1, 4)) ++ if (!extract_name(header, plen, &p, name, 2, 4)) + break; /* bad packet */ + + len = to_wire(name); +diff --git a/src/rfc1035.c b/src/rfc1035.c +index 5ef5ddb7485e..10832a3d5d2e 100644 +--- a/src/rfc1035.c ++++ b/src/rfc1035.c +@@ -16,6 +16,7 @@ + + #include "dnsmasq.h" + ++/* isExtract == 2 -> DNSSEC mode, no bitstrings, no ascii checks. */ + int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, + char *name, int isExtract, int extrabytes) + { +@@ -86,7 +87,7 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, + if ((l & 0x3f) != 1) + return 0; /* we only understand bitstrings */ + +- if (!isExtract) ++ if (isExtract != 1) + return 0; /* Cannot compare bitsrings */ + + count = *p++; +@@ -128,7 +129,7 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, + if (isExtract) + { + unsigned char c = *p; +- if (isascii(c) && !iscntrl(c) && c != '.') ++ if ((isExtract == 2 || (isascii(c) && !iscntrl(c))) && c != '.') + *cp++ = *p; + else + return 0; +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch b/src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch new file mode 100644 index 0000000000..69f6081f0f --- /dev/null +++ b/src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch @@ -0,0 +1,246 @@ +From 394ff492da6af5da7e7d356be9586683bc5fc011 Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Sun, 29 Mar 2015 22:17:14 +0100 +Subject: [PATCH 65/71] Allow control characters in names in the cache, handle + when logging. + +--- + src/cache.c | 19 +++++++++++++++++-- + src/dnssec.c | 34 +++++++++++++++++----------------- + src/rfc1035.c | 7 +++---- + 3 files changed, 37 insertions(+), 23 deletions(-) + +diff --git a/src/cache.c b/src/cache.c +index c95624c42b1c..873c5779044c 100644 +--- a/src/cache.c ++++ b/src/cache.c +@@ -1399,6 +1399,19 @@ int cache_make_stat(struct txt_record *t) + return 1; + } + ++/* There can be names in the cache containing control chars, don't ++ mess up logging or open security holes. */ ++static char *sanitise(char *name) ++{ ++ unsigned char *r; ++ for (r = (unsigned char *)name; *r; r++) ++ if (!isprint((int)*r)) ++ return ""; ++ ++ return name; ++} ++ ++ + void dump_cache(time_t now) + { + struct server *serv, *serv1; +@@ -1452,9 +1465,9 @@ void dump_cache(time_t now) + *a = 0; + if (strlen(n) == 0 && !(cache->flags & F_REVERSE)) + n = ""; +- p += sprintf(p, "%-30.30s ", n); ++ p += sprintf(p, "%-30.30s ", sanitise(n)); + if ((cache->flags & F_CNAME) && !is_outdated_cname_pointer(cache)) +- a = cache_get_cname_target(cache); ++ a = sanitise(cache_get_cname_target(cache)); + #ifdef HAVE_DNSSEC + else if (cache->flags & F_DS) + { +@@ -1587,6 +1600,8 @@ void log_query(unsigned int flags, char *name, struct all_addr *addr, char *arg) + if (!option_bool(OPT_LOG)) + return; + ++ name = sanitise(name); ++ + if (addr) + { + if (flags & F_KEYTAG) +diff --git a/src/dnssec.c b/src/dnssec.c +index 8bd5294ce773..14bae7e9bf75 100644 +--- a/src/dnssec.c ++++ b/src/dnssec.c +@@ -552,7 +552,7 @@ static int get_rdata(struct dns_header *header, size_t plen, unsigned char *end, + + (*desc)++; + +- if (d == 0 && extract_name(header, plen, p, buff, 2, 0)) ++ if (d == 0 && extract_name(header, plen, p, buff, 1, 0)) + /* domain-name, canonicalise */ + return to_wire(buff); + else +@@ -811,7 +811,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in + GETLONG(sig_inception, p); + GETSHORT(key_tag, p); + +- if (!extract_name(header, plen, &p, keyname, 2, 0)) ++ if (!extract_name(header, plen, &p, keyname, 1, 0)) + return STAT_BOGUS; + + /* RFC 4035 5.3.1 says that the Signer's Name field MUST equal +@@ -866,7 +866,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in + u16 len, *dp; + + p = rrset[i]; +- if (!extract_name(header, plen, &p, name, 2, 10)) ++ if (!extract_name(header, plen, &p, name, 1, 10)) + return STAT_BOGUS; + + name_start = name; +@@ -923,7 +923,7 @@ static int validate_rrset(time_t now, struct dns_header *header, size_t plen, in + + /* namebuff used for workspace above, restore to leave unchanged on exit */ + p = (unsigned char*)(rrset[0]); +- extract_name(header, plen, &p, name, 2, 0); ++ extract_name(header, plen, &p, name, 1, 0); + + if (key) + { +@@ -963,7 +963,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch + struct all_addr a; + + if (ntohs(header->qdcount) != 1 || +- !extract_name(header, plen, &p, name, 2, 4)) ++ !extract_name(header, plen, &p, name, 1, 4)) + return STAT_BOGUS; + + GETSHORT(qtype, p); +@@ -1202,7 +1202,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char + val = STAT_BOGUS; + + p = (unsigned char *)(header+1); +- extract_name(header, plen, &p, name, 2, 4); ++ extract_name(header, plen, &p, name, 1, 4); + p += 4; /* qtype, qclass */ + + if (!(p = skip_section(p, ntohs(header->ancount), header, plen))) +@@ -1419,12 +1419,12 @@ static int prove_non_existence_nsec(struct dns_header *header, size_t plen, unsi + for (i = 0; i < nsec_count; i++) + { + p = nsecs[i]; +- if (!extract_name(header, plen, &p, workspace1, 2, 10)) ++ if (!extract_name(header, plen, &p, workspace1, 1, 10)) + return STAT_BOGUS; + p += 8; /* class, type, TTL */ + GETSHORT(rdlen, p); + psave = p; +- if (!extract_name(header, plen, &p, workspace2, 2, 10)) ++ if (!extract_name(header, plen, &p, workspace2, 1, 10)) + return STAT_BOGUS; + + rc = hostname_cmp(workspace1, name); +@@ -1553,7 +1553,7 @@ static int check_nsec3_coverage(struct dns_header *header, size_t plen, int dige + for (i = 0; i < nsec_count; i++) + if ((p = nsecs[i])) + { +- if (!extract_name(header, plen, &p, workspace1, 2, 0) || ++ if (!extract_name(header, plen, &p, workspace1, 1, 0) || + !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2))) + return 0; + +@@ -1730,7 +1730,7 @@ static int prove_non_existence_nsec3(struct dns_header *header, size_t plen, uns + for (i = 0; i < nsec_count; i++) + if ((p = nsecs[i])) + { +- if (!extract_name(header, plen, &p, workspace1, 2, 0) || ++ if (!extract_name(header, plen, &p, workspace1, 1, 0) || + !(base32_len = base32_decode(workspace1, (unsigned char *)workspace2))) + return STAT_BOGUS; + +@@ -1796,7 +1796,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + + qname = p1 = (unsigned char *)(header+1); + +- if (!extract_name(header, plen, &p1, name, 2, 4)) ++ if (!extract_name(header, plen, &p1, name, 1, 4)) + return STAT_BOGUS; + + GETSHORT(qtype, p1); +@@ -1836,7 +1836,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + qname = p1; + + /* looped CNAMES */ +- if (!cname_count-- || !extract_name(header, plen, &p1, name, 2, 0)) ++ if (!cname_count-- || !extract_name(header, plen, &p1, name, 1, 0)) + return STAT_BOGUS; + + p1 = ans_start; +@@ -1857,7 +1857,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + + for (p1 = ans_start, i = 0; i < ntohs(header->ancount) + ntohs(header->nscount); i++) + { +- if (!extract_name(header, plen, &p1, name, 2, 10)) ++ if (!extract_name(header, plen, &p1, name, 1, 10)) + return STAT_BOGUS; /* bad packet */ + + GETSHORT(type1, p1); +@@ -2039,7 +2039,7 @@ int dnssec_validate_reply(time_t now, struct dns_header *header, size_t plen, ch + an unsigned zone. Return STAT_NO_SIG to cause this to be proved. */ + + /* Get name of missing answer */ +- if (!extract_name(header, plen, &qname, name, 2, 0)) ++ if (!extract_name(header, plen, &qname, name, 1, 0)) + return STAT_BOGUS; + + if (nsec_type == T_NSEC) +@@ -2061,7 +2061,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char + int cname_count = CNAME_CHAIN; + + /* Get question */ +- if (!extract_name(header, plen, &p, name, 2, 4)) ++ if (!extract_name(header, plen, &p, name, 1, 4)) + return STAT_BOGUS; + + p +=2; /* type */ +@@ -2102,7 +2102,7 @@ int dnssec_chase_cname(time_t now, struct dns_header *header, size_t plen, char + + /* Loop down CNAME chain/ */ + if (!cname_count-- || +- !extract_name(header, plen, &p, name, 2, 0) || ++ !extract_name(header, plen, &p, name, 1, 0) || + !(p = skip_questions(header, plen))) + return STAT_BOGUS; + +@@ -2419,7 +2419,7 @@ unsigned char* hash_questions(struct dns_header *header, size_t plen, char *name + + for (q = ntohs(header->qdcount); q != 0; q--) + { +- if (!extract_name(header, plen, &p, name, 2, 4)) ++ if (!extract_name(header, plen, &p, name, 1, 4)) + break; /* bad packet */ + + len = to_wire(name); +diff --git a/src/rfc1035.c b/src/rfc1035.c +index 10832a3d5d2e..7a07b0cee906 100644 +--- a/src/rfc1035.c ++++ b/src/rfc1035.c +@@ -16,7 +16,6 @@ + + #include "dnsmasq.h" + +-/* isExtract == 2 -> DNSSEC mode, no bitstrings, no ascii checks. */ + int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, + char *name, int isExtract, int extrabytes) + { +@@ -87,7 +86,7 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, + if ((l & 0x3f) != 1) + return 0; /* we only understand bitstrings */ + +- if (isExtract != 1) ++ if (!isExtract) + return 0; /* Cannot compare bitsrings */ + + count = *p++; +@@ -129,8 +128,8 @@ int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, + if (isExtract) + { + unsigned char c = *p; +- if ((isExtract == 2 || (isascii(c) && !iscntrl(c))) && c != '.') +- *cp++ = *p; ++ if (c != 0 && c != '.') ++ *cp++ = c; + else + return 0; + } +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch b/src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch new file mode 100644 index 0000000000..04a865f71b --- /dev/null +++ b/src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch @@ -0,0 +1,30 @@ +From 794fccca7ffebfba4468bfffc6276b68bbf6afd9 Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Sun, 29 Mar 2015 22:35:44 +0100 +Subject: [PATCH 66/71] Fix crash in last commit. + +--- + src/cache.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/src/cache.c b/src/cache.c +index 873c5779044c..d7bea574c0d8 100644 +--- a/src/cache.c ++++ b/src/cache.c +@@ -1404,9 +1404,10 @@ int cache_make_stat(struct txt_record *t) + static char *sanitise(char *name) + { + unsigned char *r; +- for (r = (unsigned char *)name; *r; r++) +- if (!isprint((int)*r)) +- return ""; ++ if (name) ++ for (r = (unsigned char *)name; *r; r++) ++ if (!isprint((int)*r)) ++ return ""; + + return name; + } +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0067-Merge-message-translations.patch b/src/patches/dnsmasq/0067-Merge-message-translations.patch new file mode 100644 index 0000000000..090da5c9ab --- /dev/null +++ b/src/patches/dnsmasq/0067-Merge-message-translations.patch @@ -0,0 +1,20329 @@ +From fd6ad9e481ab7c812a6b1515244908818cbb0442 Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Mon, 30 Mar 2015 07:52:21 +0100 +Subject: [PATCH 67/71] Merge message translations. + +--- + po/de.po | 803 +++++++++++++++++++++++++++++++++-------------------------- + po/es.po | 798 ++++++++++++++++++++++++++++++++-------------------------- + po/fi.po | 786 +++++++++++++++++++++++++++++++-------------------------- + po/fr.po | 799 ++++++++++++++++++++++++++++++++-------------------------- + po/id.po | 814 +++++++++++++++++++++++++++++++++--------------------------- + po/it.po | 786 +++++++++++++++++++++++++++++++-------------------------- + po/no.po | 797 ++++++++++++++++++++++++++++++++-------------------------- + po/pl.po | 803 +++++++++++++++++++++++++++++++++-------------------------- + po/pt_BR.po | 786 +++++++++++++++++++++++++++++++-------------------------- + po/ro.po | 797 ++++++++++++++++++++++++++++++++-------------------------- + 10 files changed, 4396 insertions(+), 3573 deletions(-) + +diff --git a/po/de.po b/po/de.po +index 4c93c5b28ef2..a03173845b35 100644 +--- a/po/de.po ++++ b/po/de.po +@@ -23,70 +23,70 @@ msgstr "" + "X-Generator: Poedit 1.7.3\n" + "X-Poedit-SourceCharset: UTF-8\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "Interner Fehler im Cache." + +-#: cache.c:908 ++#: cache.c:941 + #, c-format + msgid "failed to load names from %s: %s" + msgstr "Fehler beim Laden der Namen von %s: %s" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, c-format + msgid "bad address at %s line %d" + msgstr "Fehlerhafte Adresse in %s Zeile %d" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "Fehlerhafter Name in %s Zeile %d" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "%s gelesen - %d Adressen" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "Cache geleert" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "Keine IPv4-Adresse für %s gefunden" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "%s ist ein CNAME, weise es der DHCP-Lease von %s nicht zu" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "Name %s wurde dem DHCP-Lease von %s nicht zugewiesen, da der Name in %s bereits mit Adresse %s existiert" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "Zeit %lu" + +-#: cache.c:1367 ++#: cache.c:1422 + #, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "Cache Größe %d, %d/%d Cache-Einfügungen verwendeten nicht abgelaufene Cache-Einträge wieder." + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "%u weitergeleitete Anfragen, %u lokal beantwortete Anfragen" + +-#: cache.c:1372 ++#: cache.c:1427 + #, c-format + msgid "queries for authoritative zones %u" + msgstr "Anfragen nach autoritativen Zonen %u" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "Server %s#%d: %u Anfragen gesendet, %u erneut versucht oder fehlgeschlagen" +@@ -100,7 +100,7 @@ msgstr "Konnte den Zufallszahlengenerator nicht initialisieren: %s" + msgid "failed to allocate memory" + msgstr "Konnte Speicher nicht belegen" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "Speicher nicht verfügbar" + +@@ -115,593 +115,626 @@ msgid "failed to allocate %d bytes" + msgstr "Konnte %d Bytes nicht belegen" + + # @Simon: not perfect but I cannot get nearer right now. +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "unendlich" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "Lokale abzuhörende Adresse(n) angeben." + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "IP-Adresse für alle Hosts in angegebenen Domänen festlegen." + + # FIXME: the English test is not to the point. Just use a shortened description + # from the manpage instead. -- MA +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "Für private Adressbereiche nach RFC1918 \"keine solche Domain\" liefern." + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "Diese IP-Adresse als NXDOMAIN interpretieren (wehrt \"Suchhilfen\" ab)." + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "Größe des Caches (Zahl der Einträge) festlegen (Voreinstellung: %s)." + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "Konfigurationsdatei festlegen (Voreinstellung: %s)." + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "NICHT in den Hintergrund gehen: Betrieb im Debug-Modus" + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "Anfragen ohne Domänen-Teil NICHT weiterschicken." + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "Für lokale Einträge MX-Einträge liefern, die auf sich selbst zeigen." + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "Erweitere einfache Namen in /etc/hosts mit der Domänen-Endung." + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "'unechte' DNS-Anfragen von Windows-Rechnern nicht weiterleiten" + + # @Simon: I'm a bit unsure about "spurious" +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "DHCP für angegebenen Bereich und Dauer einschalten" + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "Nach dem Start in diese Benutzergruppe wechseln (Voreinstellung %s)." + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "Adresse oder Hostnamen für einen angegebenen Computer setzen." + +-#: option.c:332 ++#: option.c:344 + msgid "Read DHCP host specs from file." + msgstr "DHCP-Host-Angaben aus Datei lesen." + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "DHCP-Optionen aus Datei lesen." + +-#: option.c:334 ++#: option.c:346 ++#, fuzzy ++msgid "Read DHCP host specs from a directory." ++msgstr "DHCP-Host-Angaben aus Datei lesen." ++ ++#: option.c:347 ++#, fuzzy ++msgid "Read DHCP options from a directory." ++msgstr "DHCP-Optionen aus Datei lesen." ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "Auswertung eines Ausdrucks bedingter Marken." + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "%s-Datei NICHT laden." + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "Hosts-Datei festlegen, die zusätzlich zu %s gelesen wird." + +-#: option.c:337 ++#: option.c:351 ++#, fuzzy ++msgid "Read hosts files from a directory." ++msgstr "DHCP-Host-Angaben aus Datei lesen." ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "Schnittstelle(n) zum Empfang festlegen." + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "Schnittstelle(n) festlegen, die NICHT empfangen sollen." + +-#: option.c:339 ++#: option.c:354 + msgid "Map DHCP user class to tag." + msgstr "DHCP-Benutzerklasse auf Marke abbilden." + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "RFC3046 \"circuit-id\" auf Marke abbilden." + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "RFC3046 \"remote-id\" auf Marke abbilden." + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "RFC3993 \"subscriber-id\" auf Marke abbilden." + +-#: option.c:343 ++#: option.c:358 + msgid "Don't do DHCP for hosts with tag set." + msgstr "Kein DHCP für Hosts mit gesetzter Marke verwenden." + +-#: option.c:344 ++#: option.c:359 + msgid "Force broadcast replies for hosts with tag set." + msgstr "Rundsendung für Hosts mit gesetzter Marke erzwingen." + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "NICHT in den Hintergrund wechseln, NICHT im Debug-Modus laufen." + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "Voraussetzen, dass wir der einzige DHCP-Server im lokalen Netz sind." + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "Festlegen, wo DHCP-Leases gespeichert werden (Voreinstellung %s)." + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "MX-Einträge für lokale Hosts liefern." + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "Einen MX-Eintrag festlegen." + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "BOOTP-Optionen für DHCP-Server festlegen." + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "%s-Datei NICHT abfragen, nur bei SIGHUP neu laden." + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "Fehlerhafte Suchergebnisse NICHT zwischenspeichern." + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "Namensserver streng in der in %s angegebenen Reihenfolge verwenden." + +-#: option.c:354 ++#: option.c:369 + msgid "Specify options to be sent to DHCP clients." + msgstr "Optionen festlegen, die an DHCP-Klienten gesendet werden." + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "DHCP-Option, die selbst ohne Klientenanfrage gesendet wird." + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "Port zum Abhören der DNS-Anfragen festlegen (53 voreingestellt)." + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "Maximale unterstützte UDP-Paketgröße für EDNS.0 (Voreinstellung %s)." + +-#: option.c:358 ++#: option.c:373 + msgid "Log DNS queries." + msgstr "DNS-Anfragen protokollieren." + +-#: option.c:359 ++#: option.c:374 + msgid "Force the originating port for upstream DNS queries." + msgstr "Ausgehenden Port erzwingen für DNS-Anfragen an vorgelagerte Server." + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "resolv.conf NICHT lesen." + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "Pfad zu resolv.conf festlegen (%s voreingestellt)." + +-#: option.c:362 ++#: option.c:377 + msgid "Specify path to file with server= options" + msgstr " Dateipfad mit der Option server= angeben" + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "Adresse(n) vorgelagerter Server festlegen, optional mit Domänen." + +-#: option.c:364 ++#: option.c:379 + msgid "Specify address of upstream servers for reverse address queries" + msgstr "Adresse(n) vorgelagerter Server festlegen, für reverse Adressanfragen" + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "Anfragen für angegebene Domänen niemals weiterleiten." + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "Domäne festlegen, die für DHCP-Leases zugewiesen wird." + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "Voreingestelltes Ziel für MX-Einträge festlegen." + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "Gültigkeitsdauer für Antworten aus /etc/hosts festlegen." + +-#: option.c:369 ++#: option.c:384 + msgid "Specify time-to-live in seconds for negative caching." + msgstr "Gültigkeitsdauer in Sekunden für Caching negativer Ergebnisse festlegen." + +-#: option.c:370 ++#: option.c:385 + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "Gültigkeitsdauer in Sekunden für Caching negativer Ergebnisse festlegen." + +-#: option.c:371 ++#: option.c:386 ++#, fuzzy ++msgid "Specify time-to-live ceiling for cache." ++msgstr "Gültigkeitsdauer in Sekunden für Caching negativer Ergebnisse festlegen." ++ ++#: option.c:387 ++#, fuzzy ++msgid "Specify time-to-live floor for cache." ++msgstr "Gültigkeitsdauer in Sekunden für Caching negativer Ergebnisse festlegen." ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "Nach dem Start diese Benutzerrechte annehmen (%s voreingestellt)." + +-#: option.c:372 ++#: option.c:389 + msgid "Map DHCP vendor class to tag." + msgstr "DHCP-\"vendor class\" auf Marke abbilden." + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "dnsmasq-Version und Urheberrecht anzeigen." + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "IPv4-Adressen von vorgelagerten Servern übersetzen." + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "SRV-Eintrag festlegen." + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "Diese Hilfe anzeigen. Benutzen Sie --help dhcp für bekannte DHCP-Optionen." + +-#: option.c:377 ++#: option.c:394 + #, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "Dateipfad für Prozesskennung (PID) festlegen (Voreinstellung: %s)." + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "Höchstzahl der DHCP-Leases festlegen (%s voreingestellt)." + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "DNS-Anfragen abhängig der Emfpangsschnittstelle beantworten." + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "DNS-TXT-Eintrag festlegen." + +-#: option.c:381 ++#: option.c:398 + msgid "Specify PTR DNS record." + msgstr "DNS-PTR-Eintrag festlegen." + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "Schnittstellennamen zur IPv4-Adresse des Interfaces auflösen." + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "Nur an verwendete Schnittstellen binden." + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "Statische DHCP-Host-Information aus %s lesen." + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "DBus-Schnittstelle zum Festlegen vorgelagerter Server usw. festlegen." + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "Auf dieser Schnittstelle kein DHCP anbieten, sondern nur DNS." + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "Dynamische Adressbelegung für bootp einschalten." + +-#: option.c:388 ++#: option.c:405 + msgid "Map MAC address (with wildcards) to option set." + msgstr "MAC-Adresse (mit Jokerzeichen) auf Netzmarke abbilden." + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "DHCP-Anfragen von Alias-Schnittstellen für die Hauptschnittstelle beantworten." + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "ICMP-Echo-Adressprüfung im DHCP-Server abschalten." + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "Skript, das bei Erzeugung/Löschung einer DHCP-Lease laufen soll." + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "Lua-Skript, welches bei Erzeugung/Löschung eines DHCP-Leases laufen soll." + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "Lease-Änderungs-Skript mit den Rechten dieses Nutzers ausführen." + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "Konfiguration aus allen Dateien in diesem Verzeichnis lesen." + +-#: option.c:395 ++#: option.c:412 + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "Für diese Syslog-Anlage oder in Datei loggen (Voreinstellung DAEMON)." + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "Keine Lease-Datei benützen." + +-#: option.c:397 ++#: option.c:414 + #, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "Höchstzahl nebenläufiger DNS-Anfragen (%s voreingestellt)." + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "DNS-Cache beim Neuladen von %s löschen." + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "Von DHCP-Clients gelieferte Hostnamen ignorieren." + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "Dateinamen und Server-Datenfehler für zusätzliche DHCP-Optionen NICHT wiederverwenden." + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "Eingebauten Nur-Lese-TFTP-Server einschalten." + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "Nur vom festgelegten Unterbaum Dateien per TFTP exportieren." + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "IP-Adresse des Klienten an tftp-root anhängen." + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "Zugriff nur auf Dateien gestatten, die dem dnsmasq aufrufenden Benutzer gehören." + +-#: option.c:405 ++#: option.c:422 + #, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "Höchstzahl nebenläufiger TFTP-Übertragungen (%s voreingestellt)." + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "TFTP-Blockgrößen-Erweiterung abschalten." + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "Konvertiere TFTP Dateinamen in Kleinschreibung" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "Bereich für vorübergehende Ports für TFTP-Übertragungen." + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "Erweiterte DHCP-Protokollierung." + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "Asynchrone Protokollierung einschalten, opt. Warteschlangenlänge festlegen." + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "DNS-Rebinding unterbinden, private IP-Bereiche bei der Auflösung ausfiltern." + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "Auflösung zu 127.0.0.0/8 erlauben, für RBL-Server." + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "DNS-Rebind-Schutz für diese Domäne sperren." + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "DNS-Anfragen immer an alle Server weiterleiten." + +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "Marke setzen, wenn Klient eine entsprechende Option anfragt." + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "Alternative Ports für DHCP verwenden." + +-#: option.c:417 ++#: option.c:434 + msgid "Specify NAPTR DNS record." + msgstr "DNS-NAPTR-Eintrag festlegen." + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "Niedrigsten verfügbaren Port für Übertragung von DNS-Anfragen festlegen." + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "Für DHCP-Klienten nur vollständig bestimmte Domänennamen benutzen." + + # FIXME: probably typo in original message. -- MA +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "Generiere Hostnamen auf Basis der MAC-Adresse für namenlose Klienten." + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "Diese DHCP-Relais als vollwertige Proxies verwenden." + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "Leute DHCP Anfragen an entfernten Server weiter" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "Alias für LOKALEN DNS-Namen festlegen." + +-#: option.c:424 ++#: option.c:441 + msgid "Prompt to send to PXE clients." + msgstr "Aufforderung, die an PXE-Klienten geschickt wird." + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "Boot-Dienst für PXE-Menü." + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "Konfigurationssyntax prüfen." + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "Anfragende MAC-Adresse in die weiterleitende DNS-Anfrage einfügen" + +-#: option.c:428 ++#: option.c:445 + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "Füge das IP-Subnetz des Anfragenden in die weitergeleiteten DNS-Anfragen hinzu." + +-#: option.c:429 ++#: option.c:446 + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "Proxy-DNSSEC-Validierung-Ergebnisse von Upstream-Namensservern." + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "Versuche sequenzielle IP-Adressen an DHCP-Klienten zu vergeben." + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "Kopiere \"connection-track mark\" von Anfragen nach Upstream-Verbindungen." + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "Erlaube DHCP-Klienten ihre eigenen DDNS-Updates durchzuführen." + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "Sende \"Router-Advertisments\" für Netzwerkschnittstellen, welche DHCPv6 nutzen" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "Spezifiziere DUID_EN-type DHCPv6 Server DUID" + +-#: option.c:435 ++#: option.c:452 + msgid "Specify host (A/AAAA and PTR) records" + msgstr "Spezifiziere Host (A/AAAA und PTR) Einträge" + +-#: option.c:436 ++#: option.c:453 + msgid "Specify arbitrary DNS resource record" + msgstr "Spezifiziere einen beliebiegen DNS Eintrag" + +-#: option.c:437 ++#: option.c:454 + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "Bindung zu Schnittstellen in Benutzung - prüfe auf neue Schnittstellen" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "Exportiere lokale Namen in das globale DNS" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "Domain für das Exportieren des globalen DNS" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "Setzte TTL für autoritative Antworten" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "Setze autoritative Zoneninformationen" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "Sekundärer autoritativer Nameserver für weitergeleitete Domains" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "Peers welche einen Zonentransfer durchführen dürfen" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "Spezifiziere IPSets zu welcher passende Domains hinzugefügt werden sollen" + +-#: option.c:445 ++#: option.c:462 + msgid "Specify a domain and address range for synthesised names" + msgstr "Spezifiziere eine Domain und Adressbereich für synthetisierte Namen" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "Aktiviere DNSSEC-Validierung" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "Spezifiziere Vertrauensursprung (Trust Anchor) der Schlüssel-Prüfdaten (Key Digest)." + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "Deaktiviere die Überprüfung vorgelagerter Server für DNSSEC-Debugging" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "Stellt sicher, dass Antworten ohne DNSSEC sich in einer unsignierten Zone befinden." + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "DNSSEC Signatur-Zeitstempel nicht prüfen, bis erstmalig der Cache neugeladen wird" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "Spezifiziere DHCPv6 Prefix Klasse" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "Setze Priorität, Intervall des erneuten Sendens und Router Lebenszeit" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "Protokolliere kein DHCP." + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "Protokolliere kein DHCPv6." + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "RA nicht protokollieren." + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "Akzeptiere nur Anfragen von direkt verbundenen Netzwerken" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "Erkennen und Entfernen von DNS-Weiterleitungsschleifen" + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" +@@ -710,312 +743,312 @@ msgstr "" + "Verwendung: dnsmasq [Optionen]\n" + "\n" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "Auf der Befehlszeile nur kurze Optionen verwenden!\n" + +-#: option.c:665 ++#: option.c:684 + #, c-format + msgid "Valid options are:\n" + msgstr "Gültige Optionen sind:\n" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "unzulässiger Port" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "Schnittstellenbindung nicht unterstützt" + +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + msgid "bad interface name" + msgstr "unzulässiger Schnittestellenname" + +-#: option.c:792 ++#: option.c:811 + msgid "bad address" + msgstr "Fehlerhafte Adresse" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "Nicht unterstützte Verkapselung für eine IPv6-Option" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "Fehlerhafte DHCP-Option" + +-#: option.c:1056 ++#: option.c:1075 + msgid "bad IP address" + msgstr "Fehlerhafte IP-Adresse" + +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + msgid "bad IPv6 address" + msgstr "Fehlerhafte IPv6-Adresse" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "Fehlerhafte Domäne in DHCP-Option" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "DHCP-Option zu lang" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "Unzulässige dhcp-match-Option" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "unzulässig wiederholte Markierung" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "unzulässig wiederholtes Schlüsselwort" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, c-format + msgid "cannot access directory %s: %s" + msgstr "Kann auf Verzeichnis %s nicht zugreifen: %s" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, c-format + msgid "cannot access %s: %s" + msgstr "Kann auf %s nicht zugreifen: %s" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "Die Einstellung Protokolliereinrichtung kann unter Android nicht gesetzt werden" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "Falsche Protokolliereinrichtung" + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "unzulässige MX-Präferenz-Angabe" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "unzulässiger MX-Name" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "unzulässiges MX-Ziel" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "unter uClinux ist die Skriptausführung nicht möglich" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "Neuübersetzung mit HAVE_SCRIPT nötig, um Lease-Änderungs-Skripte auszuführen" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "Um Benutzerdefinierte Lua-Scripte zu ermöglichen, muss mit HAVE_LUASCRIPT neu kompiliert werden" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + msgid "bad prefix" + msgstr "unzulässiger Präfix" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "Um IPSet-Direktiven zu aktivieren, muss mit HAVE_IPSET neu übersetzt werden" + +-#: option.c:2469 ++#: option.c:2545 + msgid "bad port range" + msgstr "unzulässiger Portbereich" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "unzulässige Brücken-Schnittstelle" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "nur eine Marke zulässig" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "unzulässiger DHCP-Bereich" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "inkonsistenter DHCP-Bereich" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "Die Präfixlenge muss genau 64 für RA Subnetze sein" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "Die Präfixlenge muss genau 64 für Subnet Konstruktoren sein" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "Die Präfixlänge muss mindestens 64 sein" + +-#: option.c:2660 ++#: option.c:2736 + msgid "inconsistent DHCPv6 range" + msgstr "Inkonsistenter DHCPv6-Bereich" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "Prefix muss mit dem \"constructor:\" Argument Null sein" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + msgid "bad hex constant" + msgstr "Falscher Hexwert" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "Kann die Tags in --dhcp-host nicht abgleichen" + +-#: option.c:2852 ++#: option.c:2928 + #, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "doppelte dhcp-host IP-Adresse %s" + +-#: option.c:2910 ++#: option.c:2986 + msgid "bad DHCP host name" + msgstr "unzulässiger DHCP-Hostname" + +-#: option.c:2992 ++#: option.c:3068 + msgid "bad tag-if" + msgstr "unzulässige bedingte Marke (tag-if)" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "unzulässige Portnummer" + +-#: option.c:3378 ++#: option.c:3454 + msgid "bad dhcp-proxy address" + msgstr "Fehlerhafte DHCP-Proxy-Adresse" + +-#: option.c:3404 ++#: option.c:3480 + msgid "Bad dhcp-relay" + msgstr "unzulässiger dhcp-relay" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "unzulässige RA-Parameter" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "unzulässige DUID" + +-#: option.c:3481 ++#: option.c:3557 + msgid "invalid alias range" + msgstr "unzulässiger Alias-Bereich" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "unzulässiger CNAME" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "doppelter CNAME" + +-#: option.c:3560 ++#: option.c:3636 + msgid "bad PTR record" + msgstr "unzulässiger PTR-Eintrag" + +-#: option.c:3591 ++#: option.c:3667 + msgid "bad NAPTR record" + msgstr "unzulässiger NAPTR-Eintrag" + +-#: option.c:3625 ++#: option.c:3701 + msgid "bad RR record" + msgstr "unzulässiger RR-Eintrag" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "unzulässiger TXT-Eintrag" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "unzulässiger SRV-Eintrag" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "unzulässiges SRV-Ziel" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "unzulässige Priorität" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "unzulässige Wichtung" + +-#: option.c:3748 ++#: option.c:3824 + msgid "Bad host-record" + msgstr "unzulässiger host-record" + +-#: option.c:3765 ++#: option.c:3841 + msgid "Bad name in host-record" + msgstr "Unzulässiger Name in host-record" + +-#: option.c:3826 ++#: option.c:3906 + msgid "bad trust anchor" + msgstr "unzulässiger Vertrauensursprung (Trust Anchor)" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "unzulässiger Hexwert in Vertrauensursprung (Trust Anchor)" + +-#: option.c:3850 ++#: option.c:3930 + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "Nicht unterstützte Option (prüfen Sie, ob DNSMasq mit DHCP/TFTP/DNSSEC/DBus-Unterstützung übersetzt wurde)" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "fehlende \\\"" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "unzulässige Option" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "überschüssiger Parameter" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "fehler Parameter" + +-#: option.c:3972 ++#: option.c:4052 + msgid "illegal option" + msgstr "unzulässige Option" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "Fehler" + +-#: option.c:3981 ++#: option.c:4061 + #, c-format + msgid " at line %d of %s" + msgstr " in Zeile %d von %s" + +-#: option.c:4045 option.c:4168 tftp.c:667 +-#, c-format +-msgid "cannot read %s: %s" +-msgstr "kann %s nicht lesen: %s" +- +-#: option.c:4229 option.c:4265 ++#: option.c:4076 option.c:4323 option.c:4359 + #, c-format + msgid "read %s" + msgstr "%s gelesen" + +-#: option.c:4331 ++#: option.c:4139 option.c:4262 tftp.c:667 ++#, c-format ++msgid "cannot read %s: %s" ++msgstr "kann %s nicht lesen: %s" ++ ++#: option.c:4425 + msgid "junk found in command line" + msgstr "Mist in der Kommandozeile gefunden" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "Dnsmasq Version %s %s\n" + +-#: option.c:4367 ++#: option.c:4461 + #, c-format + msgid "" + "Compile time options: %s\n" +@@ -1024,90 +1057,90 @@ msgstr "" + "Kompilierungs-Optionen %s\n" + "\n" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "Für diese Software wird ABSOLUT KEINE GARANTIE gewährt.\n" + + # FIXME: this must be one long string! -- MA +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "Dnsmasq ist freie Software, und du bist willkommen es weiter zu verteilen\n" + +-#: option.c:4370 ++#: option.c:4464 + #, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "unter den Bedingungen der GNU General Public Lizenz, Version 2 oder 3.\n" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "versuchen Sie --help" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "versuchen Sie -w" + +-#: option.c:4385 ++#: option.c:4479 + #, c-format + msgid "bad command line options: %s" + msgstr "unzulässige Optionen auf der Befehlszeile: %s" + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "kann Hostnamen nicht ermitteln: %s" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "mit -n/--no-poll ist nur eine resolv.conf-Datei zulässig." + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "Um die Domäne zu lesen, muss genau eine resolv.conf-Datei verwendet werden." + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, c-format + msgid "failed to read %s: %s" + msgstr "konnte %s nicht lesen: %s" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "keine \"search\"-Anweisung in %s gefunden" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "Es muss eine standard Domain gesetzt sein, wenn --dhcp-fqdn gesetzt ist" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "Syntaxprüfung OK" + +-#: forward.c:114 ++#: forward.c:111 + #, c-format + msgid "failed to send packet: %s" + msgstr "Fehlgeschlagen, folgendes Paket zu senden: %s" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "Verwerfe DNS Antwort: Subnetoption stimmt nicht überrein" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "Namensserver %s hat eine rekursive Anfrage verweigert" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "möglichen DNS-Rebind-Angriff entdeckt: %s" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "Ignoriere Anfragen vom nicht lokalen Netzwerk" + +-#: forward.c:2101 ++#: forward.c:2178 + #, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "Maximale Anzahl an nebenläufiger DNS-Anfragen erreicht (Max: %d)" +@@ -1198,265 +1231,284 @@ msgstr "Benutze Namensserver %s#%d(via %s)" + msgid "using nameserver %s#%d" + msgstr "Benutze Namensserver %s#%d" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" ++msgstr "" ++ ++#: dnsmasq.c:156 ++#, fuzzy ++msgid "no trust anchors provided for DNSSEC" + msgstr "Keine Vertrauensursprünge (Trust Anchor) für DNSSEC verfügbar" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:159 ++#, fuzzy ++msgid "cannot reduce cache size from default when DNSSEC enabled" + msgstr "Kann die Standard Cachegröße nicht verkleinern, wenn DNSSEC aktiviert ist" + +-#: dnsmasq.c:159 ++#: dnsmasq.c:161 + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "DNSSEC nicht verfügbar: setzen Sie HAVE_DNSSEC in src/config.h" + +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "TFTP-Server nicht verfügbar, setzen Sie HAVE_TFTP in src/config.h" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++#, fuzzy ++msgid "cannot use --conntrack AND --query-port" + msgstr "Kann nicht --conntrack UND --query-port einsetzen" + +-#: dnsmasq.c:173 +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++#: dnsmasq.c:175 ++#, fuzzy ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "Conntrack-Unterstützung nicht verfügbar: setze HAVE_CONNTRACK in src/config.h" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "asynchrone Protokollierung unter Solaris nicht verfügbar" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "Asynchrone Protokollierung unter Android nicht verfügbar" + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "Authoritatives DNS nicht verfügbar: Es muss HAVE_AUTH in src/config.h gesetzt sein" + +-#: dnsmasq.c:193 +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++#: dnsmasq.c:195 ++#, fuzzy ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "Loop-Erkennung nicht verfügbar, setzen Sie HAVE_LOOP in src/config.h" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "Zonen Seriennummer muss mit --auth-soa konfiguriert werden" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "dhcp-range Konstruktor ist auf dieser Plattform nicht verfübar" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "Kann nicht --bind-interfaces und --bind-dynamic setzen" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "konnte Schnitstellenliste nicht beziehen: %s" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "unbekannte Schnittstelle %s" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "DBus-Fehler: %s" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "DBus nicht verfügbar: setzen Sie HAVE_DBUS in src/config.h" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "Unbekannter Benutzer oder Gruppe: %s" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "kann nicht ins Wurzelverzeichnis des Dateisystems wechseln: %s" + + # FIXME: this and the next would need commas after the version +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, c-format + msgid "started, version %s DNS disabled" + msgstr "gestartet, Version %s, DNS abgeschaltet" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "gestartet, Version %s, Cachegröße %d" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "Gestartet, Version %s Cache deaktiviert" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "Übersetzungsoptionen: %s" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "DBus-Unterstützung eingeschaltet: mit Systembus verbunden" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "DBus-Unterstützung eingeschaltet: warte auf Systembus-Verbindung" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "DNS-Dienst auf lokale Subnetze eingeschränkt" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "DNSSEC-Validierung aktiviert" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "DNSSEC Signatur-Zeitstempel werden erst ab dem ersten Neuladen des Caches überprüft" + +-#: dnsmasq.c:684 ++#: dnsmasq.c:708 ++#, fuzzy ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "DNSSEC Signatur-Zeitstempel werden erst ab dem ersten Neuladen des Caches überprüft" ++ ++#: dnsmasq.c:713 + #, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "Warnung: konnte den Besitzer von %s nicht ändern: %s" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "Aktiviere --bind-interfaces wegen Einschränkungen des Betriebssystems" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "Warnung: Schnittstelle %s existiert derzeit nicht" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "Warnung: Ignoriere \"resolv-file\", weil \"no-resolv\" aktiv ist" + +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + msgid "warning: no upstream servers configured" + msgstr "Warnung: keine vorgelagerten (Upstream) Server konfiguriert" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "asynchrone Protokollierung eingeschaltet, Warteschlange fasst %d Nachrichten" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "IPv6-Router-Advertisement aktiviert" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "DHCP, Sockets exklusiv an das Interface %s gebunden" + + # FIXME: this and the next few must be full strings to be translatable - do not assemble in code" +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "Wurzel ist " + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "enabled" + msgstr "Aktiviert" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "sicherer Modus" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "Begrenze gleichzeitige TFTP-Übertragungen auf maximal %d" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "Mit System-DBus verbunden" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "kann nicht in den Hintergrund abspalten: %s" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, c-format + msgid "failed to create helper: %s" + msgstr "kann Helfer nicht erzeugen: %s" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "kann \"capabilities\" nicht setzen: %s" + +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, c-format + msgid "failed to change user-id to %s: %s" + msgstr "Kann nicht Benutzerrechte %s annehmen: %s" + +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, c-format + msgid "failed to change group-id to %s: %s" + msgstr "Kann nicht Gruppenrechte %s annehmen: %s" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, c-format + msgid "failed to open pidfile %s: %s" + msgstr "kann die Prozessidentifikations-(PID)-Datei %s nicht öffnen: %s" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, c-format + msgid "cannot open log %s: %s" + msgstr "Kann Logdatei %s nicht öffnen: %s" + +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, c-format + msgid "failed to load Lua script: %s" + msgstr "Konnte Lua-Script nicht laden: %s" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "Das TFTP-Verzeichnis %s ist nicht zugreifbar: %s" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, fuzzy, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "kann Lease-Datei %s nicht öffnen: %s" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "Prüfe jetzt DNSSEC Signatur-Zeitstempel" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "Scriptprozess durch Signal %d getötet" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "Scriptprozess hat sich mit Status %d beendet" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, c-format + msgid "failed to execute %s: %s" + msgstr "konnte %s nicht ausführen: %s" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "beende nach Empfang von SIGTERM" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, c-format + msgid "failed to access %s: %s" + msgstr "konnte auf %s nicht zugreifen: %s" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "lese %s" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, c-format + msgid "no servers found in %s, will retry" + msgstr "keine Server in %s gefunden, werde es später neu versuchen" +@@ -1496,27 +1548,27 @@ msgstr "unbekannte Schnittstelle %s in bridge-interface" + msgid "DHCP packet received on %s which has no address" + msgstr "DHCP-Paket ohne Adresse an Schnittstelle %s empfangen" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "APR-Cache Injektion fehlgeschlagen: %s" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "DHCP-Bereich %s - %s passt nicht zur Netzmaske %s" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, c-format + msgid "bad line at %s line %d" + msgstr "ungültige Zeile %2$d in Datei %1$s" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "ignoriere %s Zeile %d, doppelter Name oder doppelte IP-Adresse" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "DHCP Weiterleitung %s -> %s" +@@ -1591,12 +1643,12 @@ msgstr "%u Benutzerklasse: %s" + msgid "disabled" + msgstr "deaktiviert" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "ignoriert" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "Adresse in Nutzung" + +@@ -1616,7 +1668,7 @@ msgstr "Keine Adresse konfiguriert" + msgid "no leases left" + msgstr "Keine Leases übrig" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "%u Klient stellt Name bereit: %s" +@@ -1625,7 +1677,7 @@ msgstr "%u Klient stellt Name bereit: %s" + msgid "PXE BIS not supported" + msgstr "PXE BIS nicht unterstützt" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "schalte statische DHCP-Adresse %s für %s ab" +@@ -1663,7 +1715,7 @@ msgstr "Falsche Server-ID" + msgid "wrong address" + msgstr "Falsche Adresse" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "Lease nicht gefunden" + +@@ -1713,7 +1765,7 @@ msgstr "kann DHCP/BOOTP-Opition %d nicht setzen: kein Platz mehr im Paket" + msgid "PXE menu too large" + msgstr "PXE-Menüeintrag zu groß" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, c-format + msgid "%u requested options: %s" + msgstr "%u angeforderte Optionen: %s" +@@ -1728,7 +1780,7 @@ msgstr "Kann RFC3925-Option nicht senden: zu viele Optionen für Unternehmen Nr. + msgid "cannot create netlink socket: %s" + msgstr "kann Netlink-Socket nicht erzeugen: %s" + +-#: netlink.c:347 ++#: netlink.c:348 + #, c-format + msgid "netlink returns error: %s" + msgstr "Netlink liefert Fehler %s" +@@ -1846,63 +1898,63 @@ msgstr "Kein Adressbereich verfügbar für die DHCPv6-Anfrage via %s" + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "%u verfügbare(s) DHCPv6-Subnetz: %s/%d" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, c-format + msgid "%u vendor class: %u" + msgstr "%u Herstellerklasse: %u" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, c-format + msgid "%u client MAC address: %s" + msgstr "%u Klient MAC-Adresse: %s" + + # FIXME: do not assemble +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, c-format + msgid "unknown prefix-class %d" + msgstr "unbekannte Präfixklasse %d" + +-#: rfc3315.c:791 rfc3315.c:913 ++#: rfc3315.c:803 rfc3315.c:902 ++msgid "address unavailable" ++msgstr "Adresse nicht verfügbar" ++ ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 + msgid "success" + msgstr "Erfolg" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 + msgid "no addresses available" + msgstr "Keine Adressen verfügbar" + +-#: rfc3315.c:865 +-msgid "address unavailable" +-msgstr "Adresse nicht verfügbar" +- +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "nicht on link" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "Keine Bindung gefunden" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "veraltet" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + msgid "address invalid" + msgstr "Adresse ungültig" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "Bestätigung fehlgeschlagen" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + msgid "all addresses still on link" + msgstr "Alle Adressen immer noch on link" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "Freigabe empfangen" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "Kann nicht zum DHCPv6 Server multicasten ohne korrekte Schnittstelle" + +@@ -1995,7 +2047,7 @@ msgstr "DHCP Weiterleitung von %s nach %s" + msgid "cannot create ICMPv6 socket: %s" + msgstr "Kann ICMPv6-Socket nicht erzeugen: %s" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "ignoriere Zonentransfer-Anfrage von %s" +@@ -2010,54 +2062,89 @@ msgstr "konnte Kernelversion nicht finden: %s" + msgid "failed to create IPset control socket: %s" + msgstr "konnte IPset-Kontroll-Socket nicht erzeugen: %s" + ++#: dnssec.c:425 dnssec.c:469 ++#, fuzzy, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "kann die Prozessidentifikations-(PID)-Datei %s nicht öffnen: %s" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "DNSSEC Speicher in Benutzung %u, Max %u, zugewiesen %u" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "Fehler: fill_addr falsch verwendet" + +-#: tables.c:105 ++#: tables.c:109 + #, c-format + msgid "failed to access pf devices: %s" + msgstr "konnte auf pf Geräte nicht zugreifen: %s" + +-#: tables.c:119 ++#: tables.c:123 + #, c-format + msgid "warning: no opened pf devices %s" + msgstr "Warnung: Keine geöffneten pf Geräte %s" + +-#: tables.c:127 ++#: tables.c:131 + #, c-format + msgid "error: cannot use table name %s" + msgstr "Fehler: Kann Tabellenname %s nicht benutzen" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "Fehler: Kann den Tabellennamen %s nicht strlcpy" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "Warnung: pfr_add_tables: %s(%d)" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "Info: Tabelle erstellt" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "Warnung: DIOCR%sADDRS: %s" + +-#: tables.c:162 ++#: tables.c:166 + #, c-format + msgid "%d addresses %s" + msgstr "%d Adressen %s" + ++#: inotify.c:46 ++#, fuzzy, c-format ++msgid "failed to create inotify: %s" ++msgstr "kann Helfer nicht erzeugen: %s" ++ ++#: inotify.c:60 ++#, fuzzy, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "kann Lease-Datei %s nicht öffnen: %s" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, fuzzy, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "Konnte Empfangs-Socket für %s: %s nicht erzeugen" ++ ++#: inotify.c:97 ++#, fuzzy, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "Kann auf Verzeichnis %s nicht zugreifen: %s" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" ++ + #~ msgid "no interface with address %s" + #~ msgstr "keine Schnittstelle mit Adresse %s" + +diff --git a/po/es.po b/po/es.po +index 0bdff67f720b..b85696072661 100644 +--- a/po/es.po ++++ b/po/es.po +@@ -16,70 +16,70 @@ msgstr "" + "Content-Transfer-Encoding: 8bit\n" + "Plural-Forms: nplurals=2; plural=(n != 1);\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "" + +-#: cache.c:908 ++#: cache.c:941 + #, fuzzy, c-format + msgid "failed to load names from %s: %s" + msgstr "no se pudo cargar nombres desde %s: %s" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, fuzzy, c-format + msgid "bad address at %s line %d" + msgstr "dirección errónea en %s línea %d" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "nombre erróneo en %s línea %d" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "direcciónes %s - %d leídas" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "el caché fue liberado" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "%s es un CNAME, no se le está dando concesión DHCP de %s" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "no otorgando nombre %s a concesión DHCP de %s porque el nombre existe en %s con dirección %s" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "tiempo %lu" + +-#: cache.c:1367 ++#: cache.c:1422 + #, fuzzy, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "tamaño de caché %d, %d/%d inserciónes de caché reutilizaron objetos no vencidos." + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "búsquedas reenviadas %u, búsquedas respondidas localmente %u" + +-#: cache.c:1372 ++#: cache.c:1427 + #, fuzzy, c-format + msgid "queries for authoritative zones %u" + msgstr "Fijar TTL para respuestas autoritarias" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "servidor %s#%d: búsquedas enviadas %u, reintentadas o fallidas %u" +@@ -94,7 +94,7 @@ msgstr "no se pudo crear valor semilla para el generador de n + msgid "failed to allocate memory" + msgstr "no se pudo asignar memoria" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "no se pudo adquirir memoria" + +@@ -108,617 +108,650 @@ msgstr "no se puede crear pipe: %s" + msgid "failed to allocate %d bytes" + msgstr "no se pudo asignar %d bytes" + +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "infinito" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "Especificar dirección(es) locales dónde escuchar." + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "Retornar ipaddr (dirección IP) para todos los hosts en los dominios especificados." + +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "Falsificar búsquedas reversas para rangos de dirección privados RFC1918." + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "Tratar ipaddr (dirección IP) como NXDOMAIN (derrota comodín Verisign)." + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "Especificar tamaño de caché en cuanto a cantidad de objetos (%s por predeterminado)." + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "Especificar archivo de configuración (%s por predeterminado)." + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "NO hacer un fork hacia el fondo: correr en modo debug." + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "NO reenviar búsquedas sin parte de dominio." + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "Retornar expedientes MX auto-señaladores para hosts locales." + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "Expandir nombres simples en /etc/hosts con domain-suffix (sufijo de dominio)." + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "No reenviar pedidos DNS falsos desde máquinas Windows." + +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "Habilitar DHCP dentro del rango brindado con duración de concesión." + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "Cambiar a este grupo después del inicio (%s por predeterminado)." + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "Fijar dirección o nombre de host para una máquina especificada." + +-#: option.c:332 ++#: option.c:344 + #, fuzzy + msgid "Read DHCP host specs from file." + msgstr "Leer especificaciones DHCP de host desde archivo" + +-#: option.c:333 ++#: option.c:345 + #, fuzzy + msgid "Read DHCP option specs from file." + msgstr "Leer opciones DHCP de host desde archivo" + +-#: option.c:334 ++#: option.c:346 ++#, fuzzy ++msgid "Read DHCP host specs from a directory." ++msgstr "Leer especificaciones DHCP de host desde archivo" ++ ++#: option.c:347 ++#, fuzzy ++msgid "Read DHCP options from a directory." ++msgstr "Leer opciones DHCP de host desde archivo" ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "Evaluar expresión condicional de etiqueta." + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "NO cargar archivo %s." + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "Especificar un archivo de hosts para ser leído adicionalmente a %s." + +-#: option.c:337 ++#: option.c:351 ++#, fuzzy ++msgid "Read hosts files from a directory." ++msgstr "Leer especificaciones DHCP de host desde archivo" ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "Especificar interfase(s) donde escuchar." + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "Especificar interfase(s) donde NO escuchar." + +-#: option.c:339 ++#: option.c:354 + #, fuzzy + msgid "Map DHCP user class to tag." + msgstr "Trazar clase de usuario DHCP a etiqueta." + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "Trazar circuit-id (identificación de circuito) RFC3046 a etiqueta." + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "Trazar remote-id (identificación remota) RFC3046 a etiqueta." + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "Trazar subscriber-id (identificación de suscritor) RFC3993 a etiqueta." + +-#: option.c:343 ++#: option.c:358 + #, fuzzy + msgid "Don't do DHCP for hosts with tag set." + msgstr "No hacer DHCP para hosts con etiqueta fijada." + +-#: option.c:344 ++#: option.c:359 + #, fuzzy + msgid "Force broadcast replies for hosts with tag set." + msgstr "Forzar respuestas broadcast para hosts con etiqueta fijada." + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "NO hacer un fork hacia el fondo, NO correr en modo debug." + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "Asumir que somos el único servidor DHCP en la red local." + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "Especificar donde almacenar concesión DHCP (%s por predeterminado)." + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "Retornar expedientes MX para hosts locales." + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "Especificar un expediente MX." + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "Especificar opciones BOOTP a servidor DHCP." + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "NO revisar archivo %s periódicamente, recargar solo con SIGHUP." + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "NO almacenar en caché resultados de búsquedas fallidas." + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "Usar servidores DNS estrictamente en el órden brindado en %s." + +-#: option.c:354 ++#: option.c:369 + #, fuzzy + msgid "Specify options to be sent to DHCP clients." + msgstr "Especificar opciones para ser enviadas a clientes DHCP." + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "Opción DHCP enviada aún si el cliente no la pide." + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "Especificar puerto donde escuchar por búsquedas DNS (53 por predeterminado)." + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "Tamaño máximo de paquetes UDP soportado para EDNS.0 (%s por predeterminado)." + +-#: option.c:358 ++#: option.c:373 + #, fuzzy + msgid "Log DNS queries." + msgstr "Bitacorear búsquedas DNS." + +-#: option.c:359 ++#: option.c:374 + #, fuzzy + msgid "Force the originating port for upstream DNS queries." + msgstr "Enforzar el puerto original para búsquedas DNS subida." + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "NO leer resolv.conf." + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "Especificar el path hacia resolv.conf (%s por predeterminado)." + +-#: option.c:362 ++#: option.c:377 + #, fuzzy + msgid "Specify path to file with server= options" + msgstr "Especificar path de archivo PID (%s por predeterminado)." + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "Especificar dirección(es) de servidores subida con dominios opcionales." + +-#: option.c:364 ++#: option.c:379 + #, fuzzy + msgid "Specify address of upstream servers for reverse address queries" + msgstr "Especificar dirección(es) de servidores subida con dominios opcionales." + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "Nunca reenviar búsquedas a dominios especificados." + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "Especificar el dominio para ser asignado en concesión DHCP." + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "Especificar destino predeterminado en un expediente MX." + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "Especificar tiempo de vida en segundos para respuestas desde /etc/hosts." + +-#: option.c:369 ++#: option.c:384 + #, fuzzy + msgid "Specify time-to-live in seconds for negative caching." + msgstr "Especificar tiempo de vida en segundos para caché negativo." + +-#: option.c:370 ++#: option.c:385 + #, fuzzy + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "Especificar tiempo de vida en segundos para respuestas desde /etc/hosts." + +-#: option.c:371 ++#: option.c:386 ++#, fuzzy ++msgid "Specify time-to-live ceiling for cache." ++msgstr "Especificar tiempo de vida en segundos para caché negativo." ++ ++#: option.c:387 ++#, fuzzy ++msgid "Specify time-to-live floor for cache." ++msgstr "Especificar tiempo de vida en segundos para caché negativo." ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "Cambiar a este usuario despues del inicio (%s por predeterminado)." + +-#: option.c:372 ++#: option.c:389 + #, fuzzy + msgid "Map DHCP vendor class to tag." + msgstr "Trazar clase de vendedor DHCP a etiqueta." + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "Mostrar información sobre la versión y copyright de dnsmasq." + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "Traducir direcciones IPv4 desde servidores subida." + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "Especificar un expediente SRV." + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "Mostrar este mensaje. Usar --help dhcp para opciones DHCP conocidas." + +-#: option.c:377 ++#: option.c:394 + #, fuzzy, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "Especificar path de archivo PID (%s por predeterminado)." + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "Especificar número máximo de concesión DHCP (%s por predeterminado)." + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "Responder a búsquedas DNS en base a la interfase a la cuál fueron enviadas." + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "Especificar expediente DNS TXT." + +-#: option.c:381 ++#: option.c:398 + #, fuzzy + msgid "Specify PTR DNS record." + msgstr "Especificar expediente DNS PTR." + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "Otorgar nombre DNS a dirección IPv4 de interfase." + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "Acoplar solo a interfases en uso." + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "Leer información sobre hosts DHCP estáticos desde %s." + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "Habilitar la interfase DBus para fijar servidores subida, etc." + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "No proveer DHCP en esta interfase, sólo proveer DNS." + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "Habilitar alocación dinámica de direcciónes para BOOTP." + +-#: option.c:388 ++#: option.c:405 + #, fuzzy + msgid "Map MAC address (with wildcards) to option set." + msgstr "Trazar dirección MAC (con comodínes) a opción fijada." + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "Tratar pedidos DHCP en alias como si llegaran de la interfase." + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "Deshabilitar verificación de direcciónes para echo ICMP en el servidor DHCP." + +-#: option.c:391 ++#: option.c:408 + #, fuzzy + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "Archivo guión para ejecutar cuando se crea o destruye una concesión DHCP." + +-#: option.c:392 ++#: option.c:409 + #, fuzzy + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "Archivo guión para ejecutar cuando se crea o destruye una concesión DHCP." + +-#: option.c:393 ++#: option.c:410 + #, fuzzy + msgid "Run lease-change scripts as this user." + msgstr "Correr archivo guión de cambio de concesión como este usuario." + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "Leer configuración desde todos los archivos en este directorio." + +-#: option.c:395 ++#: option.c:412 + #, fuzzy + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "Bitacorear a esta facilidad syslog o archivo. (DAEMON por predeterminado)" + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "No usar archivo de concesión." + +-#: option.c:397 ++#: option.c:414 + #, fuzzy, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "Número máximo de búsquedas DNS simultáneas. (%s por predeterminado)" + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "Liberar caché DNS al recargar %s." + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "Ignorar nombres de host brindados por clientes DHCP." + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "NO reutilizar campos de nombre de archivo y servidor para opciones DHCP extra." + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "Habilitar servidor integrado TFTP solo-lectura." + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "Exportar archivos vía TFTP solo del sub-árbol especificado." + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "Agregar IP de cliente a tftp-root." + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "Permitir acceso solo a archivos pertenecientes al usuario que corre dnsmasq." + +-#: option.c:405 ++#: option.c:422 + #, fuzzy, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "Número máximo de transferencias TFTP simultáneas (%s por predeterminado)." + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "Deshabilitar la extensión TFTP blocksize (tamaño de bloque)." + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "Convertir a minúsculas los nombres de archivos TFTP" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "Rango de puertos efímeros para ser usados en transferencias TFTP." + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "Log extra para DHCP." + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "Habilitar registro asíncrono; opcionalmente fijar tamaño de cola." + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "Detener revinculación DNS. Filtrar rangos de IP privados al resolver." + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "Permitir revinculación de 127.0.0.0/8, para servidores RBL." + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "Inhibir protección de revinculación DNS en este dominio." + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "Siempre realizar búsquedas DNS a todos los servidores." + +-#: option.c:415 ++#: option.c:432 + #, fuzzy + msgid "Set tag if client includes matching option in request." + msgstr "Fijar etiqueta si cliente incluye opción coincidente en pedido." + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "Usar puertos alternativos para DHCP." + +-#: option.c:417 ++#: option.c:434 + #, fuzzy + msgid "Specify NAPTR DNS record." + msgstr "Especificar expediente DNS NAPTR." + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "Especificar puerto más bajo disponible para transmisión de búsquedas DNS." + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "Usar solo nombres de dominio completamente calificados para clientes DHCP." + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "Generar hostnames basados en direcciones MAC para clientes sin nombre." + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "Usar estos relays DHCP como proxies completos." + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "Especificar nombre alias para nombre DNS LOCAL." + +-#: option.c:424 ++#: option.c:441 + #, fuzzy + msgid "Prompt to send to PXE clients." + msgstr "Aviso a ser enviado a clientes PXE." + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "Servicio de arranque para menú PXE." + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "Revisar sintaxis de configuración." + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "Añadir direcciones MAC de los peticionarios a los filtros DNS enviados" + +-#: option.c:428 ++#: option.c:445 + #, fuzzy + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "Añadir direcciones MAC de los peticionarios a los filtros DNS enviados" + +-#: option.c:429 ++#: option.c:446 + #, fuzzy + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "Traducir direcciones IPv4 desde servidores subida." + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "Intento de instaurar direcciones IP secuenciales a cliente DHCP" + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "Copiar la marca de connection-track desde los filtros a las conexiones salientes" + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "Permite a clientes DHCP realizar sus propias actualizaciones DDNS" + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "Enviar anuncios del router a los interfases realizando DHCPv6" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "" + +-#: option.c:435 ++#: option.c:452 + #, fuzzy + msgid "Specify host (A/AAAA and PTR) records" + msgstr "Especificar un expediente MX." + +-#: option.c:436 ++#: option.c:453 + #, fuzzy + msgid "Specify arbitrary DNS resource record" + msgstr "Especificar expediente DNS TXT." + +-#: option.c:437 ++#: option.c:454 + #, fuzzy + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "interfase desconocida %s en bridge-interfase" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "Exportar nombres DNS locales a globales" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "Dominio a exportar a DNS global" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "Fijar TTL para respuestas autoritarias" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "Fijar información de zona autoritaria" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "Nombres de servidor secundario autoritatorios para dominios enviados" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "Colegas autorizados a la zona de transferencia (transfer)" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "Especificar los ipsets coincidentes en dominio que debrían ser añadidos" + +-#: option.c:445 ++#: option.c:462 + #, fuzzy + msgid "Specify a domain and address range for synthesised names" + msgstr "Especificar dominio y rango de direcciones para los nombres acrónimos" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "" + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "" + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "Especificar prefijo de clase DHCPv6" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "" + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "" + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "" + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "" + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" +@@ -727,335 +760,335 @@ msgstr "" + "Modo de uso: dnsmasq [opciones]\n" + "\n" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "Usar opciones cortas solo en la línea de comandos.\n" + +-#: option.c:665 ++#: option.c:684 + #, fuzzy, c-format + msgid "Valid options are:\n" + msgstr "Opciones válidas son :\n" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "puerto erróneo" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "vinculación de interfase no está soportado" + +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + #, fuzzy + msgid "bad interface name" + msgstr "nombre de interfase erróneo" + +-#: option.c:792 ++#: option.c:811 + #, fuzzy + msgid "bad address" + msgstr "dirección IP errónea" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "Encapsulación no soportada para opción IPv6" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "opción dhcp-option errónea" + +-#: option.c:1056 ++#: option.c:1075 + #, fuzzy + msgid "bad IP address" + msgstr "dirección IP errónea" + +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + #, fuzzy + msgid "bad IPv6 address" + msgstr "dirección IP errónea" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "dominio erróneo en dhcp-option" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "opción dhcp-option demasiado larga" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "dhcp-match ilegal" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "opción repetida ilegal" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "palabra clave repetida ilegal" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, fuzzy, c-format + msgid "cannot access directory %s: %s" + msgstr "no se puede acceder a directorio %s: %s" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, fuzzy, c-format + msgid "cannot access %s: %s" + msgstr "no se puede acceder %s: %s" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "la creación de un registro no es posible en Android" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "ubicación del registro errónea" + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "preferencia MX errónea" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "nombre MX erróneo" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "destino MX erróneo" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "no se pueden correr archivos 'script' bajo uClinux" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "recompilar con HAVE_SCRIPT definido para habilitar guiónes de cambio de concesión" + +-#: option.c:1687 ++#: option.c:1714 + #, fuzzy + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "recompilar con HAVE_SCRIPT definido para habilitar 'scripts' en Lua" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + #, fuzzy + msgid "bad prefix" + msgstr "prefijo erróneo" + +-#: option.c:2289 ++#: option.c:2352 + #, fuzzy + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "recompilar con HAVE_SCRIPT definido para habilitar directivas ipset" + +-#: option.c:2469 ++#: option.c:2545 + #, fuzzy + msgid "bad port range" + msgstr "rango de puertos erróneo" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "opción bridge-interface (interfase puente) errónea" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "solo una etiqueta permitida" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "opción dhcp-range (rango DHCP) errónea" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "rango DHCP inconsistente" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "la longitud del prefijo debe ser 64 exacto para subredes RA" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "la longitud del prefijo debe ser 64 exacto para subredes constructoras" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "la longitud del prefijo debe ser al menos 64" + +-#: option.c:2660 ++#: option.c:2736 + #, fuzzy + msgid "inconsistent DHCPv6 range" + msgstr "rango DHCP inconsistente" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "prefijo debe ser cero con argumento \"constructor:\"" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + #, fuzzy + msgid "bad hex constant" + msgstr "constante hexadecimal errónea" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "no coinciden etiquetas en --dhcp-host" + +-#: option.c:2852 ++#: option.c:2928 + #, fuzzy, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "dirección IP duplicada %s en %s." + +-#: option.c:2910 ++#: option.c:2986 + #, fuzzy + msgid "bad DHCP host name" + msgstr "nombre de host DHCP erróneo" + +-#: option.c:2992 ++#: option.c:3068 + #, fuzzy + msgid "bad tag-if" + msgstr "etiqueta tag-if errónea" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "número de puerto inválido" + +-#: option.c:3378 ++#: option.c:3454 + #, fuzzy + msgid "bad dhcp-proxy address" + msgstr "dirección IP errónea" + +-#: option.c:3404 ++#: option.c:3480 + #, fuzzy + msgid "Bad dhcp-relay" + msgstr "opción dhcp-range (rango DHCP) errónea" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "DUID erróneo" + +-#: option.c:3481 ++#: option.c:3557 + #, fuzzy + msgid "invalid alias range" + msgstr "rango alias inválido" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "CNAME erróneo" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "CNAME duplicado" + +-#: option.c:3560 ++#: option.c:3636 + #, fuzzy + msgid "bad PTR record" + msgstr "registro PTR erróneo" + +-#: option.c:3591 ++#: option.c:3667 + #, fuzzy + msgid "bad NAPTR record" + msgstr "registro NAPTR erróneo" + +-#: option.c:3625 ++#: option.c:3701 + #, fuzzy + msgid "bad RR record" + msgstr "registro PTR erróneo" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "registro TXT erróneo" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "registro SRV erróneo" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "destino SRV erróneo" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "prioridad inválida" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "peso inválido" + +-#: option.c:3748 ++#: option.c:3824 + #, fuzzy + msgid "Bad host-record" + msgstr "registro PTR erróneo" + +-#: option.c:3765 ++#: option.c:3841 + #, fuzzy + msgid "Bad name in host-record" + msgstr "nombre erróneo en %s" + +-#: option.c:3826 ++#: option.c:3906 + #, fuzzy + msgid "bad trust anchor" + msgstr "rango de puertos erróneo" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "" + +-#: option.c:3850 ++#: option.c:3930 + #, fuzzy + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "opción no soportada (verificar que dnsmasq fue compilado con soporte para DHCP/TFTP/DBus)" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "falta \"" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "opción errónea" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "parámetro extraño" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "parámetro ausente" + +-#: option.c:3972 ++#: option.c:4052 + #, fuzzy + msgid "illegal option" + msgstr "opción errónea" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "error" + +-#: option.c:3981 ++#: option.c:4061 + #, fuzzy, c-format + msgid " at line %d of %s" + msgstr "%s en línea %d de %%s" + +-#: option.c:4045 option.c:4168 tftp.c:667 +-#, c-format +-msgid "cannot read %s: %s" +-msgstr "no se puede leer %s: %s" +- +-#: option.c:4229 option.c:4265 ++#: option.c:4076 option.c:4323 option.c:4359 + #, fuzzy, c-format + msgid "read %s" + msgstr "lee %s" + +-#: option.c:4331 ++#: option.c:4139 option.c:4262 tftp.c:667 ++#, c-format ++msgid "cannot read %s: %s" ++msgstr "no se puede leer %s: %s" ++ ++#: option.c:4425 + msgid "junk found in command line" + msgstr "basura encontrada en linea de comando" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "Versión dnsmasq %s %s\n" + +-#: option.c:4367 ++#: option.c:4461 + #, fuzzy, c-format + msgid "" + "Compile time options: %s\n" +@@ -1064,90 +1097,90 @@ msgstr "" + "Opciones de compilación %s\n" + "\n" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "Este software viene SIN NINGUNA GARANTIA.\n" + +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "Dnsmasq es software libre, y usted está autorizado a redistribuirlo\n" + +-#: option.c:4370 ++#: option.c:4464 + #, fuzzy, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "bajo los términos de la GNU General Public License, versión 2 o 3.\n" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "pruebe --help" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "pruebe -w" + +-#: option.c:4385 ++#: option.c:4479 + #, fuzzy, c-format + msgid "bad command line options: %s" + msgstr "opciones de línea de comandos erróneas: %s" + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "no se puede obtener host-name (nombre de host): %s" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "solo un archivo resolv.conf está permitido en modo no-poll." + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "debe haber exáctamente un resolv.conf desde donde leer dominio." + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, fuzzy, c-format + msgid "failed to read %s: %s" + msgstr "no se pudo leer %s: %s" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "ninguna directiva de búsqueda encontrada en %s" + +-#: option.c:4513 ++#: option.c:4614 + #, fuzzy + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "debe haber un dominio predeterminado cuando --dhcp-fqdn está fijado" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "revisión de sintaxis OK" + +-#: forward.c:114 ++#: forward.c:111 + #, fuzzy, c-format + msgid "failed to send packet: %s" + msgstr "no se pudo escuchar en socket: %s" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "servidor DNS %s rechazó realizar una búsqueda recursiva" + +-#: forward.c:629 ++#: forward.c:627 + #, fuzzy, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "posible ataque de revinculación DNS detectado" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "" + +-#: forward.c:2101 ++#: forward.c:2178 + #, fuzzy, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "Número máximo de búsquedas DNS simultáneas alcanzado. (%s por predeterminado)" +@@ -1237,272 +1270,286 @@ msgstr "usando nombre de servidor %s#%d(v + msgid "using nameserver %s#%d" + msgstr "usando nombre de servidor %s#%d" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" + msgstr "" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:156 ++msgid "no trust anchors provided for DNSSEC" + msgstr "" + + #: dnsmasq.c:159 ++msgid "cannot reduce cache size from default when DNSSEC enabled" ++msgstr "" ++ ++#: dnsmasq.c:161 + #, fuzzy + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "DBus no disponible: fijar HAVE_DBUS en src/config.h" + +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + #, fuzzy + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "servidor TFTP no disponible: fijar HAVE_TFTP en src/config.h" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++#, fuzzy ++msgid "cannot use --conntrack AND --query-port" + msgstr "No puede usar --conntrack AND --query-port" + +-#: dnsmasq.c:173 ++#: dnsmasq.c:175 + #, fuzzy +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "servidor TFTP no disponible: fijar HAVE_TFTP en src/config.h" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + #, fuzzy + msgid "asychronous logging is not available under Solaris" + msgstr "registro asíncrono no está disponible bajo Solaris" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + #, fuzzy + msgid "asychronous logging is not available under Android" + msgstr "registro asíncrono no está disponible bajo Solaris" + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + #, fuzzy + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "DBus no disponible: fijar HAVE_DBUS en src/config.h" + +-#: dnsmasq.c:193 ++#: dnsmasq.c:195 + #, fuzzy +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "servidor TFTP no disponible: fijar HAVE_TFTP en src/config.h" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "zona serie debe ser configurada en --auth-soa" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "constructor rango dhcp no disponible en esta plataforma" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "no puede usar --bind-interfases y --bind-dynamic" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "no se pudo encontrar lista de interfases: %s" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "interfase desconocida %s" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "error DBus: %s" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "DBus no disponible: fijar HAVE_DBUS en src/config.h" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "usuario o grupo desconocido: %s" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "no se puede cambiar directorio a raíz de sistema de archivos: %s" + +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, fuzzy, c-format + msgid "started, version %s DNS disabled" + msgstr "iniciado, versión %s DNS deshabilitado" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "iniciado, versión %s tamaño de caché %d" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "iniciado, versión %s caché deshabilitado" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "opciones de compilación: %s" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "soporte DBus habilitado: conectado a bus de sistema" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "soporte DBus habilitado: conexión a bus pendiente" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "" + +-#: dnsmasq.c:684 ++#: dnsmasq.c:708 ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "" ++ ++#: dnsmasq.c:713 + #, fuzzy, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "advertencia: no se pudo cambiar propietario de %s: %s" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "fijando opción --bind-interfases debido a limitaciones de sistema operativo" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "advertencia: interfase %s no existe actualmente" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "advertencia: ignorando opción resolv-file porque no-resolv está fijado" + +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + #, fuzzy + msgid "warning: no upstream servers configured" + msgstr "advertencia: ningún servidor de subida configurado" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "registro asíncrono habilitado, el límite de la cola es %d mensajes" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "Anuncio de router IPv6 habilitado" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "root está " + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + #, fuzzy + msgid "enabled" + msgstr "habilitado" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "modo seguro" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "limitando número máximo de transferencias TFTP simultáneas a %d" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "conectado a DBus de sistema" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "no se puede hacer fork en background: %s" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, fuzzy, c-format + msgid "failed to create helper: %s" + msgstr "no se pudo crear ayudante: %s" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, fuzzy, c-format + msgid "setting capabilities failed: %s" + msgstr "configuración de capacidades ha fallado: %s" + +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, fuzzy, c-format + msgid "failed to change user-id to %s: %s" + msgstr "no se pudo cambiar user-id a %s: %s" + +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, fuzzy, c-format + msgid "failed to change group-id to %s: %s" + msgstr "no se pudo cambiar group-id a %s: %s" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, fuzzy, c-format + msgid "failed to open pidfile %s: %s" + msgstr "no se pudo abrir archivo PID %s: %s" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, fuzzy, c-format + msgid "cannot open log %s: %s" + msgstr "no se puede abrir registro %s: %s" + +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, fuzzy, c-format + msgid "failed to load Lua script: %s" + msgstr "no se pudo cargar script Lua %s: %s" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "directorio TFTP % inaccesible: %s" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, fuzzy, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "no se puede abrir o crear archivo de concesión %s: %s" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, fuzzy, c-format + msgid "script process killed by signal %d" + msgstr "proceso script eliminado por señal %d" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, fuzzy, c-format + msgid "script process exited with status %d" + msgstr "proceso script salió con con estado %d" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, fuzzy, c-format + msgid "failed to execute %s: %s" + msgstr "no se pudo ejecutar %s: %s" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "saliendo al recibir SIGTERM" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, fuzzy, c-format + msgid "failed to access %s: %s" + msgstr "no se pudo acceder %s: %s" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "leyendo %s" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, fuzzy, c-format + msgid "no servers found in %s, will retry" + msgstr "ningún servidor encontrado en %s, se reintentará" +@@ -1542,27 +1589,27 @@ msgstr "interfase desconocida %s en bridge-interface" + msgid "DHCP packet received on %s which has no address" + msgstr "Paquete DHCP recibido en %s que no tiene dirección" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "rango DHCP %s -- %s no coincide con máscara de subred %s" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, fuzzy, c-format + msgid "bad line at %s line %d" + msgstr "línea errónea en %s línea %d" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "ignorando %s línea %d, nombre o dirección IP duplicada" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "DHCP relay %s -> %s" +@@ -1633,12 +1680,12 @@ msgstr "%u Clase de usuario: %s" + msgid "disabled" + msgstr "deshabilitado" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "ignorado" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "dirección en uso" + +@@ -1658,7 +1705,7 @@ msgstr "ninguna direcci + msgid "no leases left" + msgstr "no sobra ninguna concesión" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, fuzzy, c-format + msgid "%u client provides name: %s" + msgstr "%u cliente provee nombre: %s" +@@ -1667,7 +1714,7 @@ msgstr "%u cliente provee nombre: %s" + msgid "PXE BIS not supported" + msgstr "no hay soporte para BIS PXE" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, fuzzy, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "deshabilitando dirección DHCP estática %s para %s" +@@ -1703,7 +1750,7 @@ msgstr "ID de servidor equivocada" + msgid "wrong address" + msgstr "dirección equivocada" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "concesión no encontrada" + +@@ -1753,7 +1800,7 @@ msgstr "no se puede enviar opci + msgid "PXE menu too large" + msgstr "menú PXE demasiado largo" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, fuzzy, c-format + msgid "%u requested options: %s" + msgstr "%u opciones solicitadas: %s" +@@ -1768,7 +1815,7 @@ msgstr "no se puede enviar opci + msgid "cannot create netlink socket: %s" + msgstr "no se puede crear zócalo netlink: %s" + +-#: netlink.c:347 ++#: netlink.c:348 + #, fuzzy, c-format + msgid "netlink returns error: %s" + msgstr "netlink retorna error: %s" +@@ -1886,66 +1933,66 @@ msgstr "ning + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "%u Subred DHCP disponible: %s/%s" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, fuzzy, c-format + msgid "%u vendor class: %u" + msgstr "%u Clase de vendedor: %s" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, fuzzy, c-format + msgid "%u client MAC address: %s" + msgstr "%u cliente provee nombre: %s" + +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, fuzzy, c-format + msgid "unknown prefix-class %d" + msgstr "clase de prefijo desconocida" + +-#: rfc3315.c:791 rfc3315.c:913 ++#: rfc3315.c:803 rfc3315.c:902 ++#, fuzzy ++msgid "address unavailable" ++msgstr "dirección no disponible" ++ ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 + msgid "success" + msgstr "" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 + #, fuzzy + msgid "no addresses available" + msgstr "ninguna dirección disponible" + +-#: rfc3315.c:865 +-#, fuzzy +-msgid "address unavailable" +-msgstr "dirección no disponible" +- +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "no en el enlace" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "uniones no encontradas" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "descartado" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + #, fuzzy + msgid "address invalid" + msgstr "dirección en uso" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "confirmación falló" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + #, fuzzy + msgid "all addresses still on link" + msgstr "dirección errónea en %s línea %d" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "concesión recibida" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "No puede hacer multicast DHCPv6 sin el interfase correcto" + +@@ -2038,7 +2085,7 @@ msgstr "" + msgid "cannot create ICMPv6 socket: %s" + msgstr "no se puede crear socket DHCP: %s" + +-#: auth.c:429 ++#: auth.c:436 + #, fuzzy, c-format + msgid "ignoring zone transfer request from %s" + msgstr "pedido no-soportado desde %s" +@@ -2053,54 +2100,89 @@ msgstr "no se pudo acoplar socket de servidor DHCP: %s" + msgid "failed to create IPset control socket: %s" + msgstr "no se pudo crear socket TFTP: %s" + ++#: dnssec.c:425 dnssec.c:469 ++#, fuzzy, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "no se pudo abrir archivo PID %s: %s" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "" + +-#: tables.c:105 ++#: tables.c:109 + #, fuzzy, c-format + msgid "failed to access pf devices: %s" + msgstr "no se pudo acceder %s: %s" + +-#: tables.c:119 ++#: tables.c:123 + #, fuzzy, c-format + msgid "warning: no opened pf devices %s" + msgstr "usando direcciones locales solo para %s %s" + +-#: tables.c:127 ++#: tables.c:131 + #, fuzzy, c-format + msgid "error: cannot use table name %s" + msgstr "no se puede obtener host-name (nombre de host): %s" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "" + +-#: tables.c:162 ++#: tables.c:166 + #, fuzzy, c-format + msgid "%d addresses %s" + msgstr "dirección IP errónea" + ++#: inotify.c:46 ++#, fuzzy, c-format ++msgid "failed to create inotify: %s" ++msgstr "no se pudo crear ayudante: %s" ++ ++#: inotify.c:60 ++#, fuzzy, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "no se puede abrir o crear archivo de concesión %s: %s" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, fuzzy, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "no se pudo crear un zócalo de escucha: %s" ++ ++#: inotify.c:97 ++#, fuzzy, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "no se puede acceder a directorio %s: %s" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" ++ + #~ msgid "no interface with address %s" + #~ msgstr "ninguna interfase con dirección %s" + +diff --git a/po/fi.po b/po/fi.po +index 36f430986e79..760b08107510 100644 +--- a/po/fi.po ++++ b/po/fi.po +@@ -16,70 +16,70 @@ msgstr "" + "Content-Transfer-Encoding: 8bit\n" + "Plural-Forms: nplurals=2; plural=(n != 1);\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "" + +-#: cache.c:908 ++#: cache.c:941 + #, c-format + msgid "failed to load names from %s: %s" + msgstr "" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, c-format + msgid "bad address at %s line %d" + msgstr "" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "" + +-#: cache.c:1367 ++#: cache.c:1422 + #, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "" + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "" + +-#: cache.c:1372 ++#: cache.c:1427 + #, c-format + msgid "queries for authoritative zones %u" + msgstr "" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "" +@@ -93,7 +93,7 @@ msgstr "" + msgid "failed to allocate memory" + msgstr "" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "" + +@@ -107,990 +107,1018 @@ msgstr "" + msgid "failed to allocate %d bytes" + msgstr "" + +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "" + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "" + +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "" + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "" + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "" + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "" + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "" + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "" + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "" + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "" + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "" + +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "" + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "" + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "" + +-#: option.c:332 ++#: option.c:344 + msgid "Read DHCP host specs from file." + msgstr "" + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "" + +-#: option.c:334 ++#: option.c:346 ++msgid "Read DHCP host specs from a directory." ++msgstr "" ++ ++#: option.c:347 ++msgid "Read DHCP options from a directory." ++msgstr "" ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "" + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "" + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "" + +-#: option.c:337 ++#: option.c:351 ++msgid "Read hosts files from a directory." ++msgstr "" ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "" + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "" + +-#: option.c:339 ++#: option.c:354 + msgid "Map DHCP user class to tag." + msgstr "" + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "" + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "" + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "" + +-#: option.c:343 ++#: option.c:358 + msgid "Don't do DHCP for hosts with tag set." + msgstr "" + +-#: option.c:344 ++#: option.c:359 + msgid "Force broadcast replies for hosts with tag set." + msgstr "" + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "" + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "" + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "" + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "" + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "" + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "" + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "" + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "" + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "" + +-#: option.c:354 ++#: option.c:369 + msgid "Specify options to be sent to DHCP clients." + msgstr "" + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "" + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "" + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "" + +-#: option.c:358 ++#: option.c:373 + msgid "Log DNS queries." + msgstr "" + +-#: option.c:359 ++#: option.c:374 + msgid "Force the originating port for upstream DNS queries." + msgstr "" + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "" + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "" + +-#: option.c:362 ++#: option.c:377 + msgid "Specify path to file with server= options" + msgstr "" + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "" + +-#: option.c:364 ++#: option.c:379 + msgid "Specify address of upstream servers for reverse address queries" + msgstr "" + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "" + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "" + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "" + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "" + +-#: option.c:369 ++#: option.c:384 + msgid "Specify time-to-live in seconds for negative caching." + msgstr "" + +-#: option.c:370 ++#: option.c:385 + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "" + +-#: option.c:371 ++#: option.c:386 ++msgid "Specify time-to-live ceiling for cache." ++msgstr "" ++ ++#: option.c:387 ++msgid "Specify time-to-live floor for cache." ++msgstr "" ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "" + +-#: option.c:372 ++#: option.c:389 + msgid "Map DHCP vendor class to tag." + msgstr "" + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "" + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "" + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "" + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "" + +-#: option.c:377 ++#: option.c:394 + #, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "" + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "" + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "" + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "" + +-#: option.c:381 ++#: option.c:398 + msgid "Specify PTR DNS record." + msgstr "" + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "" + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "" + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "" + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "" + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "" + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "" + +-#: option.c:388 ++#: option.c:405 + msgid "Map MAC address (with wildcards) to option set." + msgstr "" + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "" + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "" + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "" + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "" + +-#: option.c:395 ++#: option.c:412 + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "" + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "" + +-#: option.c:397 ++#: option.c:414 + #, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "" + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "" + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "" + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "" + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "" + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "" + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "" + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "" + +-#: option.c:405 ++#: option.c:422 + #, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "" + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "" + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "" + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "" + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "" + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "" + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "" + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "" + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "" + +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "" + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "" + +-#: option.c:417 ++#: option.c:434 + msgid "Specify NAPTR DNS record." + msgstr "" + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "" + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "" + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "" + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "" + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "" + +-#: option.c:424 ++#: option.c:441 + msgid "Prompt to send to PXE clients." + msgstr "" + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "" + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "" + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "" + +-#: option.c:428 ++#: option.c:445 + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "" + +-#: option.c:429 ++#: option.c:446 + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "" + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "" + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "" + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "" + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "" + +-#: option.c:435 ++#: option.c:452 + msgid "Specify host (A/AAAA and PTR) records" + msgstr "" + +-#: option.c:436 ++#: option.c:453 + msgid "Specify arbitrary DNS resource record" + msgstr "" + +-#: option.c:437 ++#: option.c:454 + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "" + +-#: option.c:445 ++#: option.c:462 + msgid "Specify a domain and address range for synthesised names" + msgstr "" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "" + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "" + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "" + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "" + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "" + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "" + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" + "\n" + msgstr "" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "" + +-#: option.c:665 ++#: option.c:684 + #, c-format + msgid "Valid options are:\n" + msgstr "" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "" + +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + msgid "bad interface name" + msgstr "" + +-#: option.c:792 ++#: option.c:811 + msgid "bad address" + msgstr "" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "" + +-#: option.c:1056 ++#: option.c:1075 + msgid "bad IP address" + msgstr "" + +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + msgid "bad IPv6 address" + msgstr "" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, c-format + msgid "cannot access directory %s: %s" + msgstr "" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, c-format + msgid "cannot access %s: %s" + msgstr "" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "" + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + msgid "bad prefix" + msgstr "" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "" + +-#: option.c:2469 ++#: option.c:2545 + msgid "bad port range" + msgstr "" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "" + +-#: option.c:2660 ++#: option.c:2736 + msgid "inconsistent DHCPv6 range" + msgstr "" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + msgid "bad hex constant" + msgstr "" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "" + +-#: option.c:2852 ++#: option.c:2928 + #, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "" + +-#: option.c:2910 ++#: option.c:2986 + msgid "bad DHCP host name" + msgstr "" + +-#: option.c:2992 ++#: option.c:3068 + msgid "bad tag-if" + msgstr "" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "" + +-#: option.c:3378 ++#: option.c:3454 + msgid "bad dhcp-proxy address" + msgstr "" + +-#: option.c:3404 ++#: option.c:3480 + msgid "Bad dhcp-relay" + msgstr "" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "" + +-#: option.c:3481 ++#: option.c:3557 + msgid "invalid alias range" + msgstr "" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "" + +-#: option.c:3560 ++#: option.c:3636 + msgid "bad PTR record" + msgstr "" + +-#: option.c:3591 ++#: option.c:3667 + msgid "bad NAPTR record" + msgstr "" + +-#: option.c:3625 ++#: option.c:3701 + msgid "bad RR record" + msgstr "" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "" + +-#: option.c:3748 ++#: option.c:3824 + msgid "Bad host-record" + msgstr "" + +-#: option.c:3765 ++#: option.c:3841 + msgid "Bad name in host-record" + msgstr "" + +-#: option.c:3826 ++#: option.c:3906 + msgid "bad trust anchor" + msgstr "" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "" + +-#: option.c:3850 ++#: option.c:3930 + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "" + +-#: option.c:3972 ++#: option.c:4052 + msgid "illegal option" + msgstr "" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "" + +-#: option.c:3981 ++#: option.c:4061 + #, c-format + msgid " at line %d of %s" + msgstr "" + +-#: option.c:4045 option.c:4168 tftp.c:667 ++#: option.c:4076 option.c:4323 option.c:4359 + #, c-format +-msgid "cannot read %s: %s" ++msgid "read %s" + msgstr "" + +-#: option.c:4229 option.c:4265 ++#: option.c:4139 option.c:4262 tftp.c:667 + #, c-format +-msgid "read %s" ++msgid "cannot read %s: %s" + msgstr "" + +-#: option.c:4331 ++#: option.c:4425 + msgid "junk found in command line" + msgstr "" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "" + +-#: option.c:4367 ++#: option.c:4461 + #, c-format + msgid "" + "Compile time options: %s\n" + "\n" + msgstr "" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "" + +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "" + +-#: option.c:4370 ++#: option.c:4464 + #, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "" + +-#: option.c:4385 ++#: option.c:4479 + #, c-format + msgid "bad command line options: %s" + msgstr "" + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "" + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "" + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, c-format + msgid "failed to read %s: %s" + msgstr "" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "" + +-#: forward.c:114 ++#: forward.c:111 + #, c-format + msgid "failed to send packet: %s" + msgstr "" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "" + +-#: forward.c:2101 ++#: forward.c:2178 + #, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "" +@@ -1180,263 +1208,276 @@ msgstr "" + msgid "using nameserver %s#%d" + msgstr "" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" + msgstr "" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:156 ++msgid "no trust anchors provided for DNSSEC" + msgstr "" + + #: dnsmasq.c:159 ++msgid "cannot reduce cache size from default when DNSSEC enabled" ++msgstr "" ++ ++#: dnsmasq.c:161 + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "" + +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++msgid "cannot use --conntrack AND --query-port" + msgstr "" + +-#: dnsmasq.c:173 +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++#: dnsmasq.c:175 ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "" + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "" + +-#: dnsmasq.c:193 +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++#: dnsmasq.c:195 ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "" + +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, c-format + msgid "started, version %s DNS disabled" + msgstr "" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "" + +-#: dnsmasq.c:684 ++#: dnsmasq.c:708 ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "" ++ ++#: dnsmasq.c:713 + #, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "" + +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + msgid "warning: no upstream servers configured" + msgstr "" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "enabled" + msgstr "" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, c-format + msgid "failed to create helper: %s" + msgstr "" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "" + +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, c-format + msgid "failed to change user-id to %s: %s" + msgstr "" + +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, c-format + msgid "failed to change group-id to %s: %s" + msgstr "" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, c-format + msgid "failed to open pidfile %s: %s" + msgstr "" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, c-format + msgid "cannot open log %s: %s" + msgstr "" + +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, c-format + msgid "failed to load Lua script: %s" + msgstr "" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, c-format + msgid "failed to execute %s: %s" + msgstr "" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, c-format + msgid "failed to access %s: %s" + msgstr "" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, c-format + msgid "no servers found in %s, will retry" + msgstr "" +@@ -1476,27 +1517,27 @@ msgstr "" + msgid "DHCP packet received on %s which has no address" + msgstr "" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, c-format + msgid "bad line at %s line %d" + msgstr "" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "" +@@ -1567,12 +1608,12 @@ msgstr "" + msgid "disabled" + msgstr "" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "" + +@@ -1592,7 +1633,7 @@ msgstr "" + msgid "no leases left" + msgstr "" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "" +@@ -1601,7 +1642,7 @@ msgstr "" + msgid "PXE BIS not supported" + msgstr "" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "" +@@ -1637,7 +1678,7 @@ msgstr "" + msgid "wrong address" + msgstr "" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "" + +@@ -1687,7 +1728,7 @@ msgstr "" + msgid "PXE menu too large" + msgstr "" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, c-format + msgid "%u requested options: %s" + msgstr "" +@@ -1702,7 +1743,7 @@ msgstr "" + msgid "cannot create netlink socket: %s" + msgstr "" + +-#: netlink.c:347 ++#: netlink.c:348 + #, c-format + msgid "netlink returns error: %s" + msgstr "" +@@ -1820,62 +1861,62 @@ msgstr "" + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, c-format + msgid "%u vendor class: %u" + msgstr "" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, c-format + msgid "%u client MAC address: %s" + msgstr "" + +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, c-format + msgid "unknown prefix-class %d" + msgstr "" + +-#: rfc3315.c:791 rfc3315.c:913 +-msgid "success" ++#: rfc3315.c:803 rfc3315.c:902 ++msgid "address unavailable" + msgstr "" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 +-msgid "no addresses available" ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 ++msgid "success" + msgstr "" + +-#: rfc3315.c:865 +-msgid "address unavailable" ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 ++msgid "no addresses available" + msgstr "" + +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + msgid "address invalid" + msgstr "" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + msgid "all addresses still on link" + msgstr "" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "" + +@@ -1968,7 +2009,7 @@ msgstr "" + msgid "cannot create ICMPv6 socket: %s" + msgstr "" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "" +@@ -1983,50 +2024,85 @@ msgstr "" + msgid "failed to create IPset control socket: %s" + msgstr "" + ++#: dnssec.c:425 dnssec.c:469 ++#, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "" + +-#: tables.c:105 ++#: tables.c:109 + #, c-format + msgid "failed to access pf devices: %s" + msgstr "" + +-#: tables.c:119 ++#: tables.c:123 + #, c-format + msgid "warning: no opened pf devices %s" + msgstr "" + +-#: tables.c:127 ++#: tables.c:131 + #, c-format + msgid "error: cannot use table name %s" + msgstr "" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "" + +-#: tables.c:162 ++#: tables.c:166 + #, c-format + msgid "%d addresses %s" + msgstr "" ++ ++#: inotify.c:46 ++#, c-format ++msgid "failed to create inotify: %s" ++msgstr "" ++ ++#: inotify.c:60 ++#, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "" ++ ++#: inotify.c:97 ++#, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" +diff --git a/po/fr.po b/po/fr.po +index 1ac4848b9fa9..fbddad73887a 100644 +--- a/po/fr.po ++++ b/po/fr.po +@@ -14,70 +14,70 @@ msgstr "" + "Content-Transfer-Encoding: 8bit\n" + "Plural-Forms: nplurals=2; plural=(n > 1);\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "" + +-#: cache.c:908 ++#: cache.c:941 + #, c-format + msgid "failed to load names from %s: %s" + msgstr "Impossible de charger les noms à partir de %s : %s" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, c-format + msgid "bad address at %s line %d" + msgstr "mauvaise adresse dans %s ligne %d" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "mauvais nom dans %s ligne %d" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "lecture %s - %d adresses" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "cache vidé" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "Aucune adresse IPv4 trouvée pour %s" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "%s est un CNAME, il ne sera pas donné au bail DHCP de %s" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "ne donne pas de nom %s au bail DHCP de %s parce-que le nom existe dans %s avec l'adresse %s" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "horodatage %lu" + +-#: cache.c:1367 ++#: cache.c:1422 + #, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "taille de cache %d, %d/%d insertions dans le cache entrées non-expirées réutilisées" + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "requêtes transmises %u, requêtes résolues localement %u" + +-#: cache.c:1372 ++#: cache.c:1427 + #, fuzzy, c-format + msgid "queries for authoritative zones %u" + msgstr "Configure la durée de vie (Time To Live) pour les réponses faisant autorité" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "serveur %s#%d: requêtes envoyées %u, requêtes réessayées ou échouées %u" +@@ -91,7 +91,7 @@ msgstr "impossible d'initialiser le g + msgid "failed to allocate memory" + msgstr "impossible d'allouer la mémoire" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "impossible d'allouer de la mémoire" + +@@ -105,607 +105,642 @@ msgstr "Ne peut pas cr + msgid "failed to allocate %d bytes" + msgstr "impossible d'allouer %d octets" + +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "illimité(e)" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "Spécifie la ou les adresse(s) locales où le démon doit se mettre à l'écoute." + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "Retourne les adresses IP pour toutes les machines présentes dans les domaines spécifiés" + +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "Traduction inverse truquée pour la plage d'adresse privée RFC1918" + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "Traite l'adresse IP comme un domaine inexistant NXDOMAIN (contourne le systeme de redirection de Verisign)" + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "Spécifie le nombre d'entrées que contiendra le cache (par défaut : %s)." + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "Spécifie le nom du fichier de configuration (par défaut : %s)" + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "Ne passe pas en tâche de fond : démarre en mode debug" + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "Ne retransmet pas les requêtes qui n'ont pas de domaine." + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "Retourne les champs MX pour les machines locales." + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "Etend les noms uniques des machines dans /etc/hosts avec le suffixe du domaine." + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "Ne retransmet pas les fausses requêtes DNS en provenance des machines Windows." + +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "Autorise DHCP dans la plage d'adresses donnée sur la durée de validité du bail." + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "On change pour ce groupe après le démarrage (par défaut : %s)." + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "On assigne une adresse ou un nom pour une machine spécifiée." + +-#: option.c:332 ++#: option.c:344 + msgid "Read DHCP host specs from file." + msgstr "Lecture des spécifications d'hôtes DHCP à partir du fichier" + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "Lecture des options DHCP à partir du fichier" + +-#: option.c:334 ++#: option.c:346 ++#, fuzzy ++msgid "Read DHCP host specs from a directory." ++msgstr "Lecture des spécifications d'hôtes DHCP à partir du fichier" ++ ++#: option.c:347 ++#, fuzzy ++msgid "Read DHCP options from a directory." ++msgstr "Lecture des options DHCP à partir du fichier" ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "Expression d'évaluation conditionnelle d'étiquette" + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "Ne charge PAS le fichier %s." + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "Spécifie un nom de fichier hosts à lire en complément de %s" + +-#: option.c:337 ++#: option.c:351 ++#, fuzzy ++msgid "Read hosts files from a directory." ++msgstr "Lecture des spécifications d'hôtes DHCP à partir du fichier" ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "Spécifie la ou les interface(s) où le démon doit se mettre à l'écoute." + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "Spécifie la ou les interface(s) que le démon ne doit PAS traiter." + + # +-#: option.c:339 ++#: option.c:354 + msgid "Map DHCP user class to tag." + msgstr "Associe les classes d'utilisateurs ('user class') DHCP aux options." + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "Associe les identifiants de circuits RFC3046 ('circuit-id') aux options" + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "Associe les identifiants distants RFC3046 ('remote-id') aux options" + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "Associe les identifiants de souscripteurs RFC3993 ('subscriber-id') aux options" + + # +-#: option.c:343 ++#: option.c:358 + msgid "Don't do DHCP for hosts with tag set." + msgstr "Ne pas autoriser DHCP pour les machines énumerées dans les options." + + # +-#: option.c:344 ++#: option.c:359 + msgid "Force broadcast replies for hosts with tag set." + msgstr "Forcer les réponses par 'broadcast' pour les machines énumerées dans les options." + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "Ne passe pas en tâche de fond, ne pas s'exécuter en mode debug." + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "On considère que l'on est le seul serveur DHCP sur le réseau local." + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "Spécifie où il faut sauvegarder les baux DHCP (par défaut : %s)." + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "Retourne les champs MX pour les machines locales." + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "Spécifie un champ MX." + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "Spécifie les options BOOTP pour le serveur DHCP." + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "Ne pas scruter le fichier %s, ne recharger les modifications que sur réception du signal SIGHUP." + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "Ne place pas en cache le résultat des requêtes qui ont échouées." + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "Utilise les serveurs de noms dans l'ordre donné dans %s." + + # +-#: option.c:354 ++#: option.c:369 + msgid "Specify options to be sent to DHCP clients." + msgstr "Options supplémentaires à associer aux clients DHCP." + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "Option DHCP envoyée même si le client de la demande pas." + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "Spécifie le port où il faut écouter les requêtes DNS (par défaut : 53)." + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "Taille maximale des paquets UDP supportés pour EDNS.0 (par défaut : %s)." + + # +-#: option.c:358 ++#: option.c:373 + msgid "Log DNS queries." + msgstr "Enregistre les requêtes DNS dans un journal d'activité." + + # +-#: option.c:359 ++#: option.c:374 + msgid "Force the originating port for upstream DNS queries." + msgstr "Force le port d'origine pour les requêtes vers les serveurs amonts." + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "Ne pas lire le fichier resolv.conf." + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "Spécifie le chemin pour le fichier resolv.conf (par défaut : %s)." + +-#: option.c:362 ++#: option.c:377 + #, fuzzy + msgid "Specify path to file with server= options" + msgstr "Spécifie un chemin pour le fichier PID (par défaut : %s)." + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "Spécifie la ou les adresses des serveurs amonts avec des domaines optionels." + +-#: option.c:364 ++#: option.c:379 + #, fuzzy + msgid "Specify address of upstream servers for reverse address queries" + msgstr "Spécifie la ou les adresses des serveurs amonts avec des domaines optionels." + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "Ne jamais retransmettre les requêtes pour les domaines spécifiés." + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "Spécifie le domaine qui doit etre assigné aux baux DHCP." + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "Spécifie la cible par défaut dans un champ MX." + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "Spécifie le TTL en secondes pour les réponses qui utilisent /etc/hosts." + + # +-#: option.c:369 ++#: option.c:384 + msgid "Specify time-to-live in seconds for negative caching." + msgstr "Spécifie le TTL en secondes pour les réponses qui utilisent /etc/hosts." + +-#: option.c:370 ++#: option.c:385 + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "Spécifie, en secondes, la valeur maximum de TTL à renvoyer aux clients." + +-#: option.c:371 ++# ++#: option.c:386 ++#, fuzzy ++msgid "Specify time-to-live ceiling for cache." ++msgstr "Spécifie le TTL en secondes pour les réponses qui utilisent /etc/hosts." ++ ++# ++#: option.c:387 ++#, fuzzy ++msgid "Specify time-to-live floor for cache." ++msgstr "Spécifie le TTL en secondes pour les réponses qui utilisent /etc/hosts." ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "Change pour cet utilisateur après le démarrage (par défaut : %s)." + + # +-#: option.c:372 ++#: option.c:389 + msgid "Map DHCP vendor class to tag." + msgstr "Associe les classes de fournisseurs ('vendor class') DHCP aux options." + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "Affiche la version de Dnsmasq et les informations liées au copyright." + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "Traduit les adresses IPV4 des serveurs amonts." + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "Spécifie un champ SRV." + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "Afficher ce message. Utiliser --help dhcp pour obtenir la liste des options DHCP connues." + +-#: option.c:377 ++#: option.c:394 + #, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "Spécifie un chemin pour le fichier PID (par défaut : %s)." + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "Spécifie le nombre maximum de baux DHCP (par défaut : %s)." + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "Repond aux requêtes DNS en se basant sur l'interface ou a été envoyée la requête." + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "Spécifie un champ DNS TXT" + + # +-#: option.c:381 ++#: option.c:398 + msgid "Specify PTR DNS record." + msgstr "Spécifie un champ DNS PTR" + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "Donne le nom DNS pour l'adresse IPv4 de l'interface." + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "Association uniquement aux interfaces réseau actuellement actives." + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "Lecture des informations de DHCP statique à partir de %s." + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "Autorise l'interface DBus pour la configuration des serveurs amonts, etc." + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "Ne pas assurer de fonction DHCP sur cette interface, mais seulement la fonction DNS." + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "Autorise l'allocation dynamique d'adresse pour bootp." + + # +-#: option.c:388 ++#: option.c:405 + msgid "Map MAC address (with wildcards) to option set." + msgstr "Associe l'adresse MAC (avec les jokers) aux options." + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "Traiter les requêtes DHCP sur les alias comme arrivant de l'interface." + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "Supprime la vérification d'adresse sur le serveur au moyen de paquets ICMP echo" + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "Script shell à exécuter lors de la création ou destruction de bail DHCP." + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "Script Lua à exécuter lors de la création ou destruction de bail DHCP." + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "Lancer le script 'lease-change' avec cet utilisateur." + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "Lecture de la configuration dans tous les fichiers de ce répertoire." + + # +-#: option.c:395 ++#: option.c:412 + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "Enregistrer les journaux d'activité dans cette facilité syslog. (défaut : DAEMON)" + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "Ne pas utiliser de fichier de baux." + +-#: option.c:397 ++#: option.c:414 + #, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "Spécifie le nombre maximum de requêtes DHCP concurrentes (par défaut : %s)." + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "Vider le cache DNS lors du rechargement de %s." + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "Ignorer les noms d'hôtes fournis par les clients DHCP" + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "Ne pas réutiliser les champs nom de fichier et serveur dans les options DHCP supplémentaires." + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "Activer le server TFTP intégré (fonctionnant en lecture seulement)" + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "N'exporter par TFTP que les fichiers de l'arborescence de fichier spécifiée" + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "Ajouter les adresses IP clientes à la racine tftp ('tftp-root')." + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "Accès aux seuls fichiers appartenants à l'utilisateur sous lequel tourne dnsmasq" + +-#: option.c:405 ++#: option.c:422 + #, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "Spécifie le nombre maximum de transfert TFTP concurrents (défaut : %s)." + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "Désactivation de l'extension TFTP « taille de bloc »" + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "Convertis les noms de fichiers TFTP en minuscule" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "Gamme de ports dans laquelle seront choisis les ports temporaires utilisés dans les transferts TFTP." + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "Traces supplémentaires pour le DHCP." + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "Active l'écriture de traces en mode asynchrone. Peut prendre en option la valeur de la longueur de la queue." + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "Stopper la réassociation DNS ('DNS rebinding'). Filtre les gammes d'adresses IP privées lors de la résolution." + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "Autorise la réassociation de 127.0.0/8, pour les serveurs RBL (Realtime Blackhole List)" + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "Désactive la protection contre les réassociation DNS pour ce domaine" + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "Toujours effectuer les requêtes DNS à tous les serveurs." + + # +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "Spécifie le label si le client inclus l'option dans la requête." + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "Utiliser des ports alternatifs pour le DHCP." + + # +-#: option.c:417 ++#: option.c:434 + msgid "Specify NAPTR DNS record." + msgstr "Spécifie un champ DNS NAPTR." + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "Définie le plus petit port utilisé pour la transmission d'une requête DNS." + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "Utilise seulement les noms de domaine pleinement qualifiés pour les clients DHCP." + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "Génère les noms d'hôtes à partir de l'adresse MAC pour les clients sans nom." + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "Utilise ces relais DHCP en temps que proxy complets." + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "Requêtes de relais DHCP à un serveur distant" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "Spécifie un alias pour un nom DNS local." + + # +-#: option.c:424 ++#: option.c:441 + msgid "Prompt to send to PXE clients." + msgstr "Invite à envoyer aux clients PXE." + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "Service de démarrage pour menu PXE." + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "vérification de la syntaxe de la configuration." + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "Ajoute l'adresse MAC du requêteur aux requêtes DNS transmises" + +-#: option.c:428 ++#: option.c:445 + #, fuzzy + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "Ajoute l'adresse MAC du requêteur aux requêtes DNS transmises" + +-#: option.c:429 ++#: option.c:446 + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "Copie dans la réponse DNS le résultat de la validation DNSSEC effectuée par les serveurs DNS amonts." + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "Essaie d'allouer des adresses IP séquentielles aux clients DHCP." + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "Copie les marques de suivi de connexion pour les requêtes amont." + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "Autoriser les clients DHCP à faire leurs propres mises à jour DDNS (Dynamic DNS)" + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "Envoyer des annonces de routeurs pour toutes les interfaces faisant du DHCPv6" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "Spécifie pour le serveur DHCPv6 un identifiant unique DHCP (DUID) basé sur un numéro unique de vendeur (DUID_EN)" + +-#: option.c:435 ++#: option.c:452 + msgid "Specify host (A/AAAA and PTR) records" + msgstr "Spécifie les enregistrements (A/AAAA et PTR) d'un hôte." + +-#: option.c:436 ++#: option.c:453 + msgid "Specify arbitrary DNS resource record" + msgstr "Définie une resource DNS d'un type spécifique" + +-#: option.c:437 ++#: option.c:454 + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "Se lie aux interfaces préexistantes - vérifie l'apparition de nouvelles interfaces" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "Exporte les noms locaux dans le DNS global" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "Domaine à exporter dans le DNS global" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "Configure la durée de vie (Time To Live) pour les réponses faisant autorité" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "Configure les informations pour une zone de nom faisant autorité" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "Serveurs de noms secondaires faisant autorité pour les domaines délégués" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "Pairs autorisés à faire des transferts de zone" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "Spécifie les ipsets auxquels les domaines correspondants doivent-être ajoutés" + +-#: option.c:445 ++#: option.c:462 + #, fuzzy + msgid "Specify a domain and address range for synthesised names" + msgstr "Spécifie un domaine et une plage d'adresses pour les noms auto-générés" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "" + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "" + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "Spécifie le préfixe de classe DHCPv6" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "" + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "" + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "" + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "" + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" +@@ -714,328 +749,328 @@ msgstr "" + "Usage : dnsmasq [options]\n" + "\n" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "Utilisez les options courtes uniquement sur la ligne de commande.\n" + +-#: option.c:665 ++#: option.c:684 + #, c-format + msgid "Valid options are:\n" + msgstr "Les options valides sont :\n" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "numéro de port incorrect" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "association d'interface non supportée" + + # +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + msgid "bad interface name" + msgstr "nom d'interface invalide" + + # +-#: option.c:792 ++#: option.c:811 + msgid "bad address" + msgstr "mauvaise adresse" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "encapsulation d'option non supportée pour IPv6" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "mauvaise valeur de 'dhcp-option'" + + # +-#: option.c:1056 ++#: option.c:1075 + msgid "bad IP address" + msgstr "mauvaise adresse IP" + + # +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + msgid "bad IPv6 address" + msgstr "mauvaise adresse IPv6" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "mauvais domaine dans dhcp-option" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "dhcp-option trop long" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "valeur illégale pour 'dhcp-match'" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "Une option ne pouvant être spécifié qu'une seule fois à été donnée plusieurs fois" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "Mot-clef ne pouvant être répété" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, c-format + msgid "cannot access directory %s: %s" + msgstr "Ne peut pas lire le répertoire %s : %s" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, c-format + msgid "cannot access %s: %s" + msgstr "Ne peut pas lire %s : %s" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "Sous android, impossible de positionner la cible (facility) pour les traces (logs)." + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "Mauvaise cible (facility) pour les traces." + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "préference MX incorrecte" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "nom MX incorrect" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "valeur MX cible incorrecte" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "ne peut exécuter de script sous uClinux" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "recompiler en définissant HAVE_SCRIPT pour permettre l'exécution de scripts shell au changement de bail (lease-change)" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "recompiler en définissant HAVE_LUASCRIPT pour permettre l'exécution de scripts LUA au changement de bail (lease-change)" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + msgid "bad prefix" + msgstr "mauvais préfixe" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "recompiler en définissant HAVE_IPSET pour permettre l'utilisation de directives de groupes d'IP (IPset)" + + # +-#: option.c:2469 ++#: option.c:2545 + msgid "bad port range" + msgstr "gamme de ports incorrecte" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "interface-pont incorrecte" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "une seule étiquette est autorisée" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "plage d'adresses DHCP (dhcp-range) incorrecte" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "plage d'adresses DHCP incohérente" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "la taille du préfixe doit être exactement 64 pour les sous-réseaux d'annonces de routeurs (RA)" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "la taille du préfixe doit être exactement 64 pour le constructeur de sous-réseaux" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "la taille de préfixe doit être au minimum 64" + +-#: option.c:2660 ++#: option.c:2736 + msgid "inconsistent DHCPv6 range" + msgstr "plage d'adresses DHCPv6 incohérente" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "le préfixe doit avoir une taille de 0 lorsque l'argument \"constructor:\" est utilisé" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + msgid "bad hex constant" + msgstr "mauvaise constante hexadecimale" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "L'utilisation de labels est prohibée dans --dhcp-host" + +-#: option.c:2852 ++#: option.c:2928 + #, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "adresse IP dhcp-host dupliquée dans %s." + + # +-#: option.c:2910 ++#: option.c:2986 + msgid "bad DHCP host name" + msgstr "nom d'hôte DHCP incorrect" + +-#: option.c:2992 ++#: option.c:3068 + msgid "bad tag-if" + msgstr "mauvaise étiquette tag-if" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "numéro de port invalide" + + # +-#: option.c:3378 ++#: option.c:3454 + msgid "bad dhcp-proxy address" + msgstr "adresse dhcp-proxy incorrecte" + +-#: option.c:3404 ++#: option.c:3480 + msgid "Bad dhcp-relay" + msgstr "valeur incorrecte pour le relais DHCP (dhcp-relay)" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "mauvais identifiant unique DHCP (DUID)" + + # +-#: option.c:3481 ++#: option.c:3557 + msgid "invalid alias range" + msgstr "poids invalide" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "mauvais CNAME" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "ce CNAME existe déja" + + # +-#: option.c:3560 ++#: option.c:3636 + msgid "bad PTR record" + msgstr "mauvais champ PTR" + + # +-#: option.c:3591 ++#: option.c:3667 + msgid "bad NAPTR record" + msgstr "mauvais champ NAPTR" + + # +-#: option.c:3625 ++#: option.c:3701 + msgid "bad RR record" + msgstr "mauvais enregistrement RR" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "champ TXT invalide" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "champ SRV invalide" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "cible SRV invalide" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "priorité invalide" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "poids invalide" + + # +-#: option.c:3748 ++#: option.c:3824 + msgid "Bad host-record" + msgstr "mauvais champ host-record" + +-#: option.c:3765 ++#: option.c:3841 + msgid "Bad name in host-record" + msgstr "mauvais nom dans le champ host-record" + + # +-#: option.c:3826 ++#: option.c:3906 + #, fuzzy + msgid "bad trust anchor" + msgstr "gamme de ports incorrecte" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "" + +-#: option.c:3850 ++#: option.c:3930 + #, fuzzy + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "option non supportée (vérifier que Dnsmasq a été compilé avec le support DHCP/TFTP/DBus)" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "il manque \"" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "mauvaise option" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "paramètre en trop" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "paramètre manquant" + +-#: option.c:3972 ++#: option.c:4052 + #, fuzzy + msgid "illegal option" + msgstr "mauvaise option" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "erreur" + +-#: option.c:3981 ++#: option.c:4061 + #, c-format + msgid " at line %d of %s" + msgstr "à la ligne %d de %s" + +-#: option.c:4045 option.c:4168 tftp.c:667 +-#, c-format +-msgid "cannot read %s: %s" +-msgstr "Ne peut pas lire %s : %s" +- +-#: option.c:4229 option.c:4265 ++#: option.c:4076 option.c:4323 option.c:4359 + #, c-format + msgid "read %s" + msgstr "Lecture de %s" + +-#: option.c:4331 ++#: option.c:4139 option.c:4262 tftp.c:667 ++#, c-format ++msgid "cannot read %s: %s" ++msgstr "Ne peut pas lire %s : %s" ++ ++#: option.c:4425 + msgid "junk found in command line" + msgstr "la ligne de commande contient des éléments indésirables ou incompréhensibles" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "Version de Dnsmasq %s %s\n" + +-#: option.c:4367 ++#: option.c:4461 + #, c-format + msgid "" + "Compile time options: %s\n" +@@ -1044,89 +1079,89 @@ msgstr "" + "Options à la compilation %s\n" + "\n" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "Ce logiciel est fourni sans AUCUNE GARANTIE.\n" + +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "Dnsmasq est un logiciel libre, il vous est permis de le redistribuer\n" + +-#: option.c:4370 ++#: option.c:4464 + #, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "sous les termes de la licence GPL (GNU General Public License), version 2 ou 3.\n" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "essayez avec --help" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "essayez avec -w" + +-#: option.c:4385 ++#: option.c:4479 + #, c-format + msgid "bad command line options: %s" + msgstr "mauvaises options en ligne de commande : %s." + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "ne peut pas obtenir le nom de la machine : %s" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "seul un fichier resolv.conf est autorisé dans le mode no-poll" + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "un fichier resolv.conf (et un seul) est nécessaire pour y récuperer le nom de domaine." + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, c-format + msgid "failed to read %s: %s" + msgstr "impossible de lire %s : %s" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "pas de directive de recherche trouvée dans %s" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "un domaine par défaut doit être spécifié lorsque l'option --dhcp-fqdn est utilisée" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "vérification de syntaxe OK" + +-#: forward.c:114 ++#: forward.c:111 + #, c-format + msgid "failed to send packet: %s" + msgstr "impossible d'envoyer le paquet : %s" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "le serveur de nom %s a refusé de faire une recherche récursive" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "détection d'une possible attaque de type DNS-rebind: %s" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "" + +-#: forward.c:2101 ++#: forward.c:2178 + #, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "Nombre maximum de requêtes DNS concurrentes atteint (maximum : %d)." +@@ -1216,271 +1251,286 @@ msgstr "utilise le serveur de nom %s#%d (via %s)" + msgid "using nameserver %s#%d" + msgstr "utilise le serveur de nom %s#%d" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" + msgstr "" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:156 ++msgid "no trust anchors provided for DNSSEC" + msgstr "" + + #: dnsmasq.c:159 ++msgid "cannot reduce cache size from default when DNSSEC enabled" ++msgstr "" ++ ++#: dnsmasq.c:161 + #, fuzzy + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "DBus n'est pas disponible : activez HAVE_DBUS dans src/config.h" + + # +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "TFTP n'est pas disponible : activez HAVE_TFTP dans src/config.h" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++#, fuzzy ++msgid "cannot use --conntrack AND --query-port" + msgstr "impossible d'utiliser conjointement --conntrack et --query-port" + + # +-#: dnsmasq.c:173 +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++#: dnsmasq.c:175 ++#, fuzzy ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "Support de suivi de connexion non disponible : activez HAVE_CONNTRACK dans src/config.h" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "l'écriture de traces en mode asynchrone n'est pas disponible sous Solaris." + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "l'écriture de traces en mode asynchrone n'est pas disponible sous Android." + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "le mode « autorité DNS » n'est pas disponible : activez HAVE_AUTH dans src/config.h" + + # +-#: dnsmasq.c:193 ++#: dnsmasq.c:195 + #, fuzzy +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "TFTP n'est pas disponible : activez HAVE_TFTP dans src/config.h" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "le numéro de série de la zone doit être configuré dans --auth-soa" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "le constructeur de plage dhcp n'est pas disponible sur cette plate-forme" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "--bind-interfaces et --bind-dynamic sont mutuellement exclusives" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "impossible de trouver la liste des interfaces : %s" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "interface %s inconnue" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "Erreur DBus : %s" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "DBus n'est pas disponible : activez HAVE_DBUS dans src/config.h" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "utilisateur ou groupe inconnu : %s" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "Ne peut effectuer un 'chdir' à la racine du système de fichier : %s" + +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, c-format + msgid "started, version %s DNS disabled" + msgstr "démarrage avec le DNS désactivé (version %s)" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "demarré, version %s (taille de cache %d)" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "démarrage avec le cache désactivé (version %s)" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "options à la compilation : %s" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "Support DBus autorisé : connecté au bus système" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "Support DBus autorisé : connexion au bus en attente" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "" + +-#: dnsmasq.c:684 ++#: dnsmasq.c:708 ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "" ++ ++#: dnsmasq.c:713 + #, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "Impossible de changer pour l'utilisateur %s : %s" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "active l'option --bind-interfaces à cause de limitations dans le système d'exploitation" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "attention : l'interface %s n'existe pas actuellement" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "attention : l'option « resolv-file » sera ignorée car « no-resolv » a été spécifié" + + # +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + msgid "warning: no upstream servers configured" + msgstr "attention : aucun serveur amont n'est configuré" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "mode asynchrone d'écriture de traces, la taille maximum de la queue est de %d messages." + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "annonces de routeur IPv6 activées" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "root est" + + # +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "enabled" + msgstr "activé" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "mode sécurisé" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "le nombre maximum de transferts TFTP simultanés sera restreint à %d" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "connecté au systeme DBus" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "Ne peut se lancer en tâche de fond : %s" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, c-format + msgid "failed to create helper: %s" + msgstr "impossible de créer le 'helper' : %s" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "impossible de configurer la capacité %s" + +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, c-format + msgid "failed to change user-id to %s: %s" + msgstr "Impossible de changer l'identifiant utilisateur pour %s : %s" + +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, c-format + msgid "failed to change group-id to %s: %s" + msgstr "Impossible de changer l'identifiant de groupe pour %s : %s" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, c-format + msgid "failed to open pidfile %s: %s" + msgstr "impossible de lire le fichier de PID %s : %s" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, c-format + msgid "cannot open log %s: %s" + msgstr "Ne peut ouvrir le fichier de log %s : %s" + + # +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, c-format + msgid "failed to load Lua script: %s" + msgstr "impossible de charger le script Lua : %s" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "répertoire TFTP %s inaccessible : %s" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, fuzzy, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "ne peut ouvrir ou créer le fichiers de baux %s : %s" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "Le script a été terminé par le signal %d" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "Le script s'est terminé avec le statut %d" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, c-format + msgid "failed to execute %s: %s" + msgstr "impossible d'exécuter à %s : %s" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "sortie sur réception du signal SIGTERM" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, c-format + msgid "failed to access %s: %s" + msgstr "impossible d'accéder à %s : %s" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "Lecture de %s" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, c-format + msgid "no servers found in %s, will retry" + msgstr "aucun serveur trouvé dans %s, va réessayer" +@@ -1520,27 +1570,27 @@ msgstr "interface %s inconnue sp + msgid "DHCP packet received on %s which has no address" + msgstr "Paquet DHCP reçu sur %s qui n'a pas d'adresse" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "La plage d'adresses DHCP %s -- %s n'est pas cohérente avec le masque de réseau %s" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, c-format + msgid "bad line at %s line %d" + msgstr "mauvaise ligne dans %s ligne %d" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "ignore %s à la ligne %d : duplication de nom ou d'adresse IP" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "Relais DHCP %s -> %s" +@@ -1611,12 +1661,12 @@ msgstr "%u Classe d'utilisateur : %s" + msgid "disabled" + msgstr "désactivé" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "ignoré" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "adresse déjà utilisée" + +@@ -1636,7 +1686,7 @@ msgstr "pas d'adresse configur + msgid "no leases left" + msgstr "plus aucun bail disponible" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "le client %u fourni le nom : %s" +@@ -1645,7 +1695,7 @@ msgstr "le client %u fourni le nom : %s" + msgid "PXE BIS not supported" + msgstr "Service PXE BIS (Boot Integrity Services) non supporté" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "désactive l'adresse statique DHCP %s pour %s" +@@ -1681,7 +1731,7 @@ msgstr "mauvais identifiant de serveur" + msgid "wrong address" + msgstr "mauvaise adresse" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "bail non trouvé" + +@@ -1731,7 +1781,7 @@ msgstr "Impossible d'envoyer l'option DHCP/BOOTP %d : pas assez d'espace dans le + msgid "PXE menu too large" + msgstr "menu PXE trop grand" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, c-format + msgid "%u requested options: %s" + msgstr "%u options demandées : %s" +@@ -1746,7 +1796,7 @@ msgstr "ne peux envoyer l'option RFC3925 : trop d'options pour le num + msgid "cannot create netlink socket: %s" + msgstr "ne peux lier une socket netlink : %s" + +-#: netlink.c:347 ++#: netlink.c:348 + #, c-format + msgid "netlink returns error: %s" + msgstr "Erreur netlink : %s" +@@ -1864,62 +1914,62 @@ msgstr "pas de plage d'adresse disponible pour la requ + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "%u sous-réseaux DHCPv6 disponibles : %s/%d" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, c-format + msgid "%u vendor class: %u" + msgstr "%u Classe de vendeur ('Vendor Class') : %u" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, c-format + msgid "%u client MAC address: %s" + msgstr "%u MAC adresse du client : %s" + +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, c-format + msgid "unknown prefix-class %d" + msgstr "préfixe de classe inconnu %d" + +-#: rfc3315.c:791 rfc3315.c:913 ++#: rfc3315.c:803 rfc3315.c:902 ++msgid "address unavailable" ++msgstr "adresse non disponible" ++ ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 + msgid "success" + msgstr "réussi" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 + msgid "no addresses available" + msgstr "pas d'adresse disponible" + +-#: rfc3315.c:865 +-msgid "address unavailable" +-msgstr "adresse non disponible" +- +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "pas sur ce lien" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "aucune liaison trouvée" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "obsolète" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + msgid "address invalid" + msgstr "adresse non valide" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "confirmation d'échec" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + msgid "all addresses still on link" + msgstr "toutes les adresses sont toujours sur le lien" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "libération reçue" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "Impossible de faire du multicast au server DHCPv6 sans interface valide" + +@@ -2012,7 +2062,7 @@ msgstr "Relais DHCP de %s + msgid "cannot create ICMPv6 socket: %s" + msgstr "ne peut créer la socket ICMPv6: %s" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "la requête de transfert de zone en provenance de %s est ignorée" +@@ -2027,55 +2077,90 @@ msgstr "impossible de trouver la version de noyau : %s" + msgid "failed to create IPset control socket: %s" + msgstr "impossible de créer une socket de contrôle IPset : %s" + ++#: dnssec.c:425 dnssec.c:469 ++#, fuzzy, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "impossible de lire le fichier de PID %s : %s" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "" + +-#: tables.c:105 ++#: tables.c:109 + #, fuzzy, c-format + msgid "failed to access pf devices: %s" + msgstr "impossible d'accéder à %s : %s" + +-#: tables.c:119 ++#: tables.c:123 + #, fuzzy, c-format + msgid "warning: no opened pf devices %s" + msgstr "utilise les adresses locales seulement pour %s %s" + +-#: tables.c:127 ++#: tables.c:131 + #, fuzzy, c-format + msgid "error: cannot use table name %s" + msgstr "ne peut pas obtenir le nom de la machine : %s" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "" + + # +-#: tables.c:162 ++#: tables.c:166 + #, fuzzy, c-format + msgid "%d addresses %s" + msgstr "mauvaise adresse" + ++#: inotify.c:46 ++#, fuzzy, c-format ++msgid "failed to create inotify: %s" ++msgstr "impossible de créer le 'helper' : %s" ++ ++#: inotify.c:60 ++#, fuzzy, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "ne peut ouvrir ou créer le fichiers de baux %s : %s" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, fuzzy, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "impossible de créer une socket d'écoute pour %s : %s" ++ ++#: inotify.c:97 ++#, fuzzy, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "Ne peut pas lire le répertoire %s : %s" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" ++ + #~ msgid "Always send frequent router-advertisements" + #~ msgstr "Envoyer des annonces de routeurs fréquentes" + +diff --git a/po/id.po b/po/id.po +index b1809b695168..a0ff0f062e8b 100644 +--- a/po/id.po ++++ b/po/id.po +@@ -15,77 +15,77 @@ msgstr "" + "Content-Type: text/plain; charset=ASCII\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "" + + # OK +-#: cache.c:908 ++#: cache.c:941 + #, fuzzy, c-format + msgid "failed to load names from %s: %s" + msgstr "gagal memuat nama-nama dari %s: %s" + + # OK +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, fuzzy, c-format + msgid "bad address at %s line %d" + msgstr "kesalahan nama pada %s baris %d" + + # OK +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "kesalahan nama pada %s baris %d" + + # OK +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "membaca %s - %d alamat" + + # OK +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "cache telah dihapus" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "" + + # OK +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "tidak memberikan nama %s kepada lease DHCP %s karena nama telah ada dalam %sdengan alamat %s" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "" + + # OK +-#: cache.c:1367 ++#: cache.c:1422 + #, fuzzy, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "ukuran cache %d, %d/%d penyisipan cache menimpa cache yang belum kadaluwarsa" + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "" + +-#: cache.c:1372 ++#: cache.c:1427 + #, c-format + msgid "queries for authoritative zones %u" + msgstr "" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "" +@@ -103,7 +103,7 @@ msgid "failed to allocate memory" + msgstr "gagal memuat %S: %m" + + # OK +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "tidak bisa mendapatkan memory" + +@@ -120,682 +120,720 @@ msgid "failed to allocate %d bytes" + msgstr "gagal memuat %S: %m" + + # OK +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "tak terbatas" + + # OK +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "Tentukan alamat lokal untuk mendengarkan." + + # OK +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "Menghasilkan ipaddr untuk semua host dalam domain yang dipilih." + + # OK +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "Fake pencarian balik untuk alamat private sesuai dengan RFC1918." + + # OK +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "Perlakukan ipaddr sebagai NXDOMAIN (mengalahkan wildcard Verisign)." + + # OK +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "Tentukan ukuran cache, dalam jumlah isian (default %s)." + + # OK +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "Tentukan file konfigurasi (default %s)." + + # OK +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "JANGAN berjalan di background: berjalan dalam modus debug." + + # OK +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "JANGAN teruskan permintaan tanpa bagian domain." + + # OK +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "Mengembalikan record MX untuk diri sendiri host-host lokal." + + # OK +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "Melengkapi nama-nama di /etc/hosts dengan akhiran domain." + + # OK +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "Jangan meneruskan permintaan DNS spurious dari host-host Windows." + + # OK +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "Bolehkan DHCP dalam jangkauan yang diberikan dengan durasi lease." + + # OK +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "Ubah ke group ini setelah mulai (default %s)." + + # OK +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "Setel alamat atau nama host untuk mesin yang disebutkan." + + # OK +-#: option.c:332 ++#: option.c:344 + #, fuzzy + msgid "Read DHCP host specs from file." + msgstr "nama MX salah" + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "" + +-#: option.c:334 ++# OK ++#: option.c:346 ++#, fuzzy ++msgid "Read DHCP host specs from a directory." ++msgstr "nama MX salah" ++ ++# OK ++#: option.c:347 ++#, fuzzy ++msgid "Read DHCP options from a directory." ++msgstr "nama MX salah" ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "" + + # OK +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "JANGAN muat file %s." + + # OK +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "Sebutkan sebuah file hosts yang harus dibaca sebagai tambahan untuk %s." + + # OK +-#: option.c:337 ++#: option.c:351 ++#, fuzzy ++msgid "Read hosts files from a directory." ++msgstr "nama MX salah" ++ ++# OK ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "Sebutkan antarmuka untuk mendengarkan." + + # OK +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "Sebutkan antarmuka untuk TIDAK mendengarkan." + + # OK +-#: option.c:339 ++#: option.c:354 + #, fuzzy + msgid "Map DHCP user class to tag." + msgstr "Petakan kelas user DHCP ke setelan yang dipilih." + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "" + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "" + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "" + + # OK +-#: option.c:343 ++#: option.c:358 + #, fuzzy + msgid "Don't do DHCP for hosts with tag set." + msgstr "Jangan menggunakan DHCP untuk host-host yang dipilih." + + # OK +-#: option.c:344 ++#: option.c:359 + #, fuzzy + msgid "Force broadcast replies for hosts with tag set." + msgstr "Jangan menggunakan DHCP untuk host-host yang dipilih." + + # OK +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "JANGAN berjalan di background, jangan berjalan dalam modus debug." + + # OK +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "Berpikir bahwa kita satu-satunya DHCP server dalam jaringan." + + # OK +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "Sebutkan lokasi untuk menyimpan lease DHCP (default %s)." + + # OK +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "Kembalikan rekord MX untuk host-host lokal." + + # OK +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "Sebutkan sebuah rekord MX." + + # OK +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "Sebutkan pilihan-pilihan BOOTP untuk DHCP server." + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "Jangan kumpulkan file %s, muat kembali saat SIGHUP." + + # OK +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "JANGAN menyimpan hasil pencarian yang gagal." + + # OK +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "Gunakan secara ketat namaserver yang disebutkan sesuai urutan di %s." + + # OK +-#: option.c:354 ++#: option.c:369 + #, fuzzy + msgid "Specify options to be sent to DHCP clients." + msgstr "Setel pilihan-pilihan tambahan yang akan disetel untuk klien-klien DHCP." + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "" + + # OK +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "Sebutkan port untuk mendengarkan permintaan DNS (default port 53)." + + # OK +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "Ukuran maksimum paket UDP yang didukung untuk EDNS.0 (default %s)." + + # OK +-#: option.c:358 ++#: option.c:373 + #, fuzzy + msgid "Log DNS queries." + msgstr "Permintaan log." + + # OK +-#: option.c:359 ++#: option.c:374 + #, fuzzy + msgid "Force the originating port for upstream DNS queries." + msgstr "Paksa port asal untuk permintaan ke atas." + + # OK +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "JANGAN baca resolv.conf." + + # OK +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "Sebutkan path ke resolv.conf (default %s)." + + # OK +-#: option.c:362 ++#: option.c:377 + #, fuzzy + msgid "Specify path to file with server= options" + msgstr "Sebutkan path file PID. (default %s)." + + # OK +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "Sebutkan alamat-alamat server di atas, boleh dilengkapi dengan nama domain." + + # OK +-#: option.c:364 ++#: option.c:379 + #, fuzzy + msgid "Specify address of upstream servers for reverse address queries" + msgstr "Sebutkan alamat-alamat server di atas, boleh dilengkapi dengan nama domain." + + # OK +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "JANGAN pernah meneruskan permintaan ke domain yang disebutkan." + + # OK +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "Sebutkan domain yang digunakan dalam lease DHCP." + + # OK +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "Sebutkan tujuan default dalam rekord MX." + + # OK +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts." + + # OK +-#: option.c:369 ++#: option.c:384 + #, fuzzy + msgid "Specify time-to-live in seconds for negative caching." + msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts." + + # OK +-#: option.c:370 ++#: option.c:385 + #, fuzzy + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts." + + # OK +-#: option.c:371 ++#: option.c:386 ++#, fuzzy ++msgid "Specify time-to-live ceiling for cache." ++msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts." ++ ++# OK ++#: option.c:387 ++#, fuzzy ++msgid "Specify time-to-live floor for cache." ++msgstr "Sebutkan time-to-live dalam detik untuk jawaban dari /etc/hosts." ++ ++# OK ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "Ubah ke user ini setelah mulai. (default %s)." + + # OK +-#: option.c:372 ++#: option.c:389 + #, fuzzy + msgid "Map DHCP vendor class to tag." + msgstr "Memetakan kelas vendor DHCP ke daftar pilihan." + + # OK +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "Menampilkan versi dan informasi hak cipta dnsmasq." + + # OK +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "Terjemahkan alamat-alamat IPv4 dari server-server di atas." + + # OK +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "Sebutkan rekord SRV." + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "" + + # OK +-#: option.c:377 ++#: option.c:394 + #, fuzzy, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "Sebutkan path file PID. (default %s)." + + # OK +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "Sebutkan jumlah maksimum lease DHCP (default %s)." + + # OK +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "Jawab permintaan DNS berdasarkan antarmuka dimana permintaan dikirimkan." + + # OK +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "Sebutkan rekord TXT DNS." + + # OK +-#: option.c:381 ++#: option.c:398 + #, fuzzy + msgid "Specify PTR DNS record." + msgstr "Sebutkan rekord TXT DNS." + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "" + + # OK +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "Hanya kaitkan ke antarmuka yang sedang digunakan saja." + + # OK +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "Baca informasi statik host DHCP dari %s." + + # OK +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "Mungkinkan antar muka DBus untuk menyetel server-server di atas, dsb." + + # OK +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "JANGAN menyediakan DHCP pada antarmuka ini, hanya menyediakan DNS." + + # OK +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "Mungkinkan alokasi alamat dinamis untuk bootp." + + # OK +-#: option.c:388 ++#: option.c:405 + #, fuzzy + msgid "Map MAC address (with wildcards) to option set." + msgstr "Memetakan kelas vendor DHCP ke daftar pilihan." + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "" + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "" + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "" + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "" + + # OK +-#: option.c:395 ++#: option.c:412 + #, fuzzy + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "Ubah ke user ini setelah mulai. (default %s)." + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "" + + # OK +-#: option.c:397 ++#: option.c:414 + #, fuzzy, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "Sebutkan jumlah maksimum lease DHCP (default %s)." + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "" + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "" + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "" + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "" + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "" + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "" + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "" + + # OK +-#: option.c:405 ++#: option.c:422 + #, fuzzy, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "Sebutkan jumlah maksimum lease DHCP (default %s)." + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "" + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "" + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "" + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "" + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "" + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "" + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "" + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "" + +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "" + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "" + + # OK +-#: option.c:417 ++#: option.c:434 + #, fuzzy + msgid "Specify NAPTR DNS record." + msgstr "Sebutkan rekord TXT DNS." + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "" + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "" + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "" + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "" + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "" + + # OK +-#: option.c:424 ++#: option.c:441 + #, fuzzy + msgid "Prompt to send to PXE clients." + msgstr "Setel pilihan-pilihan tambahan yang akan disetel untuk klien-klien DHCP." + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "" + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "" + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "" + +-#: option.c:428 ++#: option.c:445 + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "" + + # OK +-#: option.c:429 ++#: option.c:446 + #, fuzzy + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "Terjemahkan alamat-alamat IPv4 dari server-server di atas." + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "" + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "" + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "" + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "" + + # OK +-#: option.c:435 ++#: option.c:452 + #, fuzzy + msgid "Specify host (A/AAAA and PTR) records" + msgstr "Sebutkan sebuah rekord MX." + + # OK +-#: option.c:436 ++#: option.c:453 + #, fuzzy + msgid "Specify arbitrary DNS resource record" + msgstr "Sebutkan rekord TXT DNS." + + # OK +-#: option.c:437 ++#: option.c:454 + #, fuzzy + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "antarmuka tidak dikenal %s" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "" + +-#: option.c:445 ++#: option.c:462 + msgid "Specify a domain and address range for synthesised names" + msgstr "" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "" + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "" + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "" + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "" + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "" + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "" + ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ + # OK +-#: option.c:661 ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" +@@ -805,381 +843,381 @@ msgstr "" + "\n" + + # OK +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "Gunakan pilihan pendek saja pada perintah baris.\n" + + # OK +-#: option.c:665 ++#: option.c:684 + #, fuzzy, c-format + msgid "Valid options are:\n" + msgstr "Pilihan yang boleh adalah:\n" + + # OK +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "port salah" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "" + + # OK +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + #, fuzzy + msgid "bad interface name" + msgstr "nama MX salah" + + # OK +-#: option.c:792 ++#: option.c:811 + #, fuzzy + msgid "bad address" + msgstr "membaca %s - %d alamat" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "" + + # OK +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "dhcp-option salah" + + # OK +-#: option.c:1056 ++#: option.c:1075 + #, fuzzy + msgid "bad IP address" + msgstr "membaca %s - %d alamat" + + # OK +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + #, fuzzy + msgid "bad IPv6 address" + msgstr "membaca %s - %d alamat" + + # OK +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "domain dalam dhcp-option salah" + + # OK +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "dhcp-option terlalu panjang" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "" + + # OK +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, fuzzy, c-format + msgid "cannot access directory %s: %s" + msgstr "tidak bisa membaca %s: %s" + + # OK +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, fuzzy, c-format + msgid "cannot access %s: %s" + msgstr "tidak bisa membaca %s: %s" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "" + + # OK +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "kesukaan MX salah" + + # OK +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "nama MX salah" + + # OK +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "target MX salah" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "" + + # OK +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + #, fuzzy + msgid "bad prefix" + msgstr "port salah" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "" + + # OK +-#: option.c:2469 ++#: option.c:2545 + #, fuzzy + msgid "bad port range" + msgstr "port salah" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "" + + # OK +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "dhcp-range salah" + + # OK +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "jangkauan DHCP tidak konsisten" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "" + + # OK +-#: option.c:2660 ++#: option.c:2736 + #, fuzzy + msgid "inconsistent DHCPv6 range" + msgstr "jangkauan DHCP tidak konsisten" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "" + + # OK +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + #, fuzzy + msgid "bad hex constant" + msgstr "dhcp-host salah" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "" + + # OK +-#: option.c:2852 ++#: option.c:2928 + #, fuzzy, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "alamat IP kembar %s dalam direktif dhcp-config" + + # OK +-#: option.c:2910 ++#: option.c:2986 + #, fuzzy + msgid "bad DHCP host name" + msgstr "nama MX salah" + + # OK +-#: option.c:2992 ++#: option.c:3068 + #, fuzzy + msgid "bad tag-if" + msgstr "target MX salah" + + # OK +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "nomor port tidak benar" + + # OK +-#: option.c:3378 ++#: option.c:3454 + #, fuzzy + msgid "bad dhcp-proxy address" + msgstr "membaca %s - %d alamat" + + # OK +-#: option.c:3404 ++#: option.c:3480 + #, fuzzy + msgid "Bad dhcp-relay" + msgstr "dhcp-range salah" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "" + + # OK +-#: option.c:3481 ++#: option.c:3557 + #, fuzzy + msgid "invalid alias range" + msgstr "weight tidak benar" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "" + + # OK +-#: option.c:3560 ++#: option.c:3636 + #, fuzzy + msgid "bad PTR record" + msgstr "rekord SRV salah" + + # OK +-#: option.c:3591 ++#: option.c:3667 + #, fuzzy + msgid "bad NAPTR record" + msgstr "rekord SRV salah" + + # OK +-#: option.c:3625 ++#: option.c:3701 + #, fuzzy + msgid "bad RR record" + msgstr "rekord SRV salah" + + # OK +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "rekord TXT salah" + + # OK +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "rekord SRV salah" + + # OK +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "target SRV salah" + + # OK +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "prioritas tidak benar" + + # OK +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "weight tidak benar" + + # OK +-#: option.c:3748 ++#: option.c:3824 + #, fuzzy + msgid "Bad host-record" + msgstr "rekord SRV salah" + + # OK +-#: option.c:3765 ++#: option.c:3841 + #, fuzzy + msgid "Bad name in host-record" + msgstr "kesalahan nama di %s" + + # OK +-#: option.c:3826 ++#: option.c:3906 + #, fuzzy + msgid "bad trust anchor" + msgstr "port salah" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "" + +-#: option.c:3850 ++#: option.c:3930 + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "" + + # OK +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "kurang \"" + + # OK +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "pilihan salah" + + # OK +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "parameter berlebihan" + + # OK +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "parameter kurang" + + # OK +-#: option.c:3972 ++#: option.c:4052 + #, fuzzy + msgid "illegal option" + msgstr "pilihan salah" + + # OK +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "kesalahan" + + # OK +-#: option.c:3981 ++#: option.c:4061 + #, fuzzy, c-format + msgid " at line %d of %s" + msgstr "%s pada baris %d dari %%s" + + # OK +-#: option.c:4045 option.c:4168 tftp.c:667 +-#, c-format +-msgid "cannot read %s: %s" +-msgstr "tidak bisa membaca %s: %s" +- +-# OK +-#: option.c:4229 option.c:4265 ++#: option.c:4076 option.c:4323 option.c:4359 + #, fuzzy, c-format + msgid "read %s" + msgstr "membaca %s" + +-#: option.c:4331 ++# OK ++#: option.c:4139 option.c:4262 tftp.c:667 ++#, c-format ++msgid "cannot read %s: %s" ++msgstr "tidak bisa membaca %s: %s" ++ ++#: option.c:4425 + msgid "junk found in command line" + msgstr "" + + # OK +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "Dnsmasq versi %s %s\n" + + # OK +-#: option.c:4367 ++#: option.c:4461 + #, fuzzy, c-format + msgid "" + "Compile time options: %s\n" +@@ -1189,100 +1227,100 @@ msgstr "" + "\n" + + # OK +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "Perangkat lunak ini tersedia TANPA JAMINAN SEDIKITPUN.\n" + + # OK +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "Dnsdmasq adalah perangkat lunak bebas, dan Anda dipersilahkan untuk membagikannya\n" + + # OK +-#: option.c:4370 ++#: option.c:4464 + #, fuzzy, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "dengan aturan GNU General Public License, versi 2.\n" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "" + + # OK +-#: option.c:4385 ++#: option.c:4479 + #, fuzzy, c-format + msgid "bad command line options: %s" + msgstr "pilihan baris perintah salah: %s." + + # OK +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "tidak bisa mendapatkan host-name: %s" + + # OK +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "hanya satu file resolv.conf yang diperbolehkan dalam modus no-poll." + + # OK +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "harus mempunyai tepat satu resolv.conf untuk mendapatkan nama domain." + + # OK +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, fuzzy, c-format + msgid "failed to read %s: %s" + msgstr "gagal membaca %s: %s" + + # OK +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "tidak ditemukan direktif search di %s" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "" + + # OK +-#: forward.c:114 ++#: forward.c:111 + #, fuzzy, c-format + msgid "failed to send packet: %s" + msgstr "gagal mendengarkan di socket: %s" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "" + + # OK +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "nameserver %s menolak melakukan resolusi rekursif" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "" + + # OK +-#: forward.c:2101 ++#: forward.c:2178 + #, fuzzy, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "Sebutkan jumlah maksimum lease DHCP (default %s)." +@@ -1385,301 +1423,315 @@ msgstr "menggunakan nameserver %s#%d" + msgid "using nameserver %s#%d" + msgstr "menggunakan nameserver %s#%d" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" + msgstr "" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:156 ++msgid "no trust anchors provided for DNSSEC" + msgstr "" + +-# OK + #: dnsmasq.c:159 ++msgid "cannot reduce cache size from default when DNSSEC enabled" ++msgstr "" ++ ++# OK ++#: dnsmasq.c:161 + #, fuzzy + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h" + + # OK +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + #, fuzzy + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++msgid "cannot use --conntrack AND --query-port" + msgstr "" + + # OK +-#: dnsmasq.c:173 ++#: dnsmasq.c:175 + #, fuzzy +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "" + + # OK +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + #, fuzzy + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h" + + # OK +-#: dnsmasq.c:193 ++#: dnsmasq.c:195 + #, fuzzy +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "" + + # OK +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "gagal mendapatkan daftar antarmuka: %s" + + # OK +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "antarmuka tidak dikenal %s" + + # OK +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "DBus error: %s" + + # OK +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "" + + # OK +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, fuzzy, c-format + msgid "started, version %s DNS disabled" + msgstr "dimulai, cache versi %s di disable" + + # OK +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "dimulai, versi %s ukuran cache %d" + + # OK +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "dimulai, cache versi %s di disable" + + # OK +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "pilihan-pilihan saat kompilasi: %s" + + # OK +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "dukungan DBus dimungkinkan: terkoneksi pada bus sistem" + + # OK +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "dukungan DBus dimungkinkan: koneksi bus ditunda" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "" + ++#: dnsmasq.c:708 ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "" ++ + # OK +-#: dnsmasq.c:684 ++#: dnsmasq.c:713 + #, fuzzy, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "gagal memuat nama-nama dari %s: %s" + + # OK +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "setelan opsi --bind-interfaces disebabkan keterbatasan OS" + + # OK +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "peringatan: antarmuka %s tidak ada" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "" + + # OK +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + #, fuzzy + msgid "warning: no upstream servers configured" + msgstr "menyetel server-server di atas dengan DBus" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "" + + # OK +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + #, fuzzy + msgid "enabled" + msgstr "di disable" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "" + + # OK +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "terhubung ke sistem DBus" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "" + + # OK +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, fuzzy, c-format + msgid "failed to create helper: %s" + msgstr "gagal membaca %s: %s" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "" + + # OK +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, fuzzy, c-format + msgid "failed to change user-id to %s: %s" + msgstr "gagal memuat nama-nama dari %s: %s" + + # OK +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, fuzzy, c-format + msgid "failed to change group-id to %s: %s" + msgstr "gagal memuat nama-nama dari %s: %s" + + # OK +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, fuzzy, c-format + msgid "failed to open pidfile %s: %s" + msgstr "gagal membaca %s: %s" + + # OK +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, fuzzy, c-format + msgid "cannot open log %s: %s" + msgstr "tidak bisa membuka %s:%s" + + # OK +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, fuzzy, c-format + msgid "failed to load Lua script: %s" + msgstr "gagal memuat %S: %s" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "" + +-#: dnsmasq.c:1151 ++# OK ++#: dnsmasq.c:1183 ++#, fuzzy, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "tidak dapat membuka atau membuat file lease: %s" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "" + + # OK +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, fuzzy, c-format + msgid "failed to execute %s: %s" + msgstr "gagal mengakses %s: %s" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "keluar karena menerima SIGTERM" + + # OK +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, fuzzy, c-format + msgid "failed to access %s: %s" + msgstr "gagal mengakses %s: %s" + + # OK +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "membaca %s" + + # OK +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, fuzzy, c-format + msgid "no servers found in %s, will retry" + msgstr "tidak ditemukan direktif search di %s" +@@ -1725,29 +1777,29 @@ msgstr "antarmuka tidak dikenal %s" + msgid "DHCP packet received on %s which has no address" + msgstr "" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "" + + # OK +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "jangkauan DHCP %s -- %s tidak konsisten dengan netmask %s" + + # OK +-#: dhcp.c:807 ++#: dhcp.c:812 + #, fuzzy, c-format + msgid "bad line at %s line %d" + msgstr "kesalahan nama pada %s baris %d" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "" +@@ -1830,13 +1882,13 @@ msgid "disabled" + msgstr "di disable" + + # OK +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "diabaikan" + + # OK +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "alamat telah digunakan" + +@@ -1860,7 +1912,7 @@ msgstr "tak ada alamat yang disetel" + msgid "no leases left" + msgstr "tak ada lease yang tersisa" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "" +@@ -1870,7 +1922,7 @@ msgid "PXE BIS not supported" + msgstr "" + + # OK +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, fuzzy, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "men-disable alamat statik DHCP %s" +@@ -1909,7 +1961,7 @@ msgid "wrong address" + msgstr "alamat salah" + + # OK +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "lease tak ditemukan" + +@@ -1965,7 +2017,7 @@ msgid "PXE menu too large" + msgstr "" + + # OK +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, fuzzy, c-format + msgid "%u requested options: %s" + msgstr "pilihan-pilihan saat kompilasi: %s" +@@ -1982,7 +2034,7 @@ msgid "cannot create netlink socket: %s" + msgstr "tidak bisa mem-bind netlink socket: %s" + + # OK +-#: netlink.c:347 ++#: netlink.c:348 + #, fuzzy, c-format + msgid "netlink returns error: %s" + msgstr "DBus error: %s" +@@ -2116,72 +2168,72 @@ msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "tidak ada alamat yang bisa dipakai untuk permintaan DHCP %s %s" + + # OK +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, fuzzy, c-format + msgid "%u vendor class: %u" + msgstr "DBus error: %s" + + # OK +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, fuzzy, c-format + msgid "%u client MAC address: %s" + msgstr "tidak ada antarmuka dengan alamat %s" + + # OK +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, fuzzy, c-format + msgid "unknown prefix-class %d" + msgstr "lease tidak diketahui" + +-#: rfc3315.c:791 rfc3315.c:913 ++# OK ++#: rfc3315.c:803 rfc3315.c:902 ++#, fuzzy ++msgid "address unavailable" ++msgstr "alamat tak tersedia" ++ ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 + msgid "success" + msgstr "" + + # OK +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 + #, fuzzy + msgid "no addresses available" + msgstr "tak ada alamat yang tersedia" + +-# OK +-#: rfc3315.c:865 +-#, fuzzy +-msgid "address unavailable" +-msgstr "alamat tak tersedia" +- +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "" + + # OK +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + #, fuzzy + msgid "address invalid" + msgstr "alamat telah digunakan" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "" + + # OK +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + #, fuzzy + msgid "all addresses still on link" + msgstr "kesalahan nama pada %s baris %d" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "" + +@@ -2280,7 +2332,7 @@ msgstr "" + msgid "cannot create ICMPv6 socket: %s" + msgstr "tidak bisa membuat socket DHCP: %s" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "" +@@ -2297,59 +2349,99 @@ msgstr "gagal mem-bind socket server DHCP: %s" + msgid "failed to create IPset control socket: %s" + msgstr "gagal membuat socket: %s " + ++# OK ++#: dnssec.c:425 dnssec.c:469 ++#, fuzzy, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "gagal membaca %s: %s" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "" + + # OK +-#: tables.c:105 ++#: tables.c:109 + #, fuzzy, c-format + msgid "failed to access pf devices: %s" + msgstr "gagal mengakses %s: %s" + + # OK +-#: tables.c:119 ++#: tables.c:123 + #, fuzzy, c-format + msgid "warning: no opened pf devices %s" + msgstr "menggunakan alamat lokal saja untuk %s %s" + + # OK +-#: tables.c:127 ++#: tables.c:131 + #, fuzzy, c-format + msgid "error: cannot use table name %s" + msgstr "tidak bisa mendapatkan host-name: %s" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "" + + # OK +-#: tables.c:162 ++#: tables.c:166 + #, fuzzy, c-format + msgid "%d addresses %s" + msgstr "membaca %s - %d alamat" + + # OK ++#: inotify.c:46 ++#, fuzzy, c-format ++msgid "failed to create inotify: %s" ++msgstr "gagal membaca %s: %s" ++ ++# OK ++#: inotify.c:60 ++#, fuzzy, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "tidak dapat membuka atau membuat file lease: %s" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++# OK ++#: inotify.c:75 inotify.c:112 ++#, fuzzy, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "gagal membuat socket: %s " ++ ++# OK ++#: inotify.c:97 ++#, fuzzy, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "tidak bisa membaca %s: %s" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" ++ ++# OK + #~ msgid "duplicate IP address %s in dhcp-config directive." + #~ msgstr "alamat IP kembar %s dalam direktif dhcp-config" + +diff --git a/po/it.po b/po/it.po +index f3b547576ba4..64342c9804ba 100644 +--- a/po/it.po ++++ b/po/it.po +@@ -16,70 +16,70 @@ msgstr "" + "Content-Transfer-Encoding: 8bit\n" + "Plural-Forms: nplurals=2; plural=(n != 1);\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "" + +-#: cache.c:908 ++#: cache.c:941 + #, c-format + msgid "failed to load names from %s: %s" + msgstr "" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, c-format + msgid "bad address at %s line %d" + msgstr "" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "" + +-#: cache.c:1367 ++#: cache.c:1422 + #, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "" + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "" + +-#: cache.c:1372 ++#: cache.c:1427 + #, c-format + msgid "queries for authoritative zones %u" + msgstr "" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "" +@@ -93,7 +93,7 @@ msgstr "" + msgid "failed to allocate memory" + msgstr "" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "" + +@@ -107,990 +107,1018 @@ msgstr "" + msgid "failed to allocate %d bytes" + msgstr "" + +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "" + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "" + +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "" + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "" + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "" + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "" + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "" + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "" + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "" + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "" + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "" + +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "" + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "" + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "" + +-#: option.c:332 ++#: option.c:344 + msgid "Read DHCP host specs from file." + msgstr "" + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "" + +-#: option.c:334 ++#: option.c:346 ++msgid "Read DHCP host specs from a directory." ++msgstr "" ++ ++#: option.c:347 ++msgid "Read DHCP options from a directory." ++msgstr "" ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "" + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "" + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "" + +-#: option.c:337 ++#: option.c:351 ++msgid "Read hosts files from a directory." ++msgstr "" ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "" + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "" + +-#: option.c:339 ++#: option.c:354 + msgid "Map DHCP user class to tag." + msgstr "" + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "" + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "" + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "" + +-#: option.c:343 ++#: option.c:358 + msgid "Don't do DHCP for hosts with tag set." + msgstr "" + +-#: option.c:344 ++#: option.c:359 + msgid "Force broadcast replies for hosts with tag set." + msgstr "" + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "" + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "" + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "" + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "" + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "" + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "" + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "" + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "" + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "" + +-#: option.c:354 ++#: option.c:369 + msgid "Specify options to be sent to DHCP clients." + msgstr "" + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "" + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "" + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "" + +-#: option.c:358 ++#: option.c:373 + msgid "Log DNS queries." + msgstr "" + +-#: option.c:359 ++#: option.c:374 + msgid "Force the originating port for upstream DNS queries." + msgstr "" + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "" + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "" + +-#: option.c:362 ++#: option.c:377 + msgid "Specify path to file with server= options" + msgstr "" + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "" + +-#: option.c:364 ++#: option.c:379 + msgid "Specify address of upstream servers for reverse address queries" + msgstr "" + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "" + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "" + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "" + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "" + +-#: option.c:369 ++#: option.c:384 + msgid "Specify time-to-live in seconds for negative caching." + msgstr "" + +-#: option.c:370 ++#: option.c:385 + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "" + +-#: option.c:371 ++#: option.c:386 ++msgid "Specify time-to-live ceiling for cache." ++msgstr "" ++ ++#: option.c:387 ++msgid "Specify time-to-live floor for cache." ++msgstr "" ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "" + +-#: option.c:372 ++#: option.c:389 + msgid "Map DHCP vendor class to tag." + msgstr "" + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "" + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "" + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "" + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "" + +-#: option.c:377 ++#: option.c:394 + #, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "" + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "" + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "" + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "" + +-#: option.c:381 ++#: option.c:398 + msgid "Specify PTR DNS record." + msgstr "" + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "" + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "" + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "" + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "" + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "" + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "" + +-#: option.c:388 ++#: option.c:405 + msgid "Map MAC address (with wildcards) to option set." + msgstr "" + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "" + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "" + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "" + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "" + +-#: option.c:395 ++#: option.c:412 + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "" + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "" + +-#: option.c:397 ++#: option.c:414 + #, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "" + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "" + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "" + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "" + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "" + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "" + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "" + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "" + +-#: option.c:405 ++#: option.c:422 + #, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "" + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "" + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "" + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "" + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "" + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "" + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "" + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "" + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "" + +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "" + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "" + +-#: option.c:417 ++#: option.c:434 + msgid "Specify NAPTR DNS record." + msgstr "" + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "" + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "" + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "" + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "" + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "" + +-#: option.c:424 ++#: option.c:441 + msgid "Prompt to send to PXE clients." + msgstr "" + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "" + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "" + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "" + +-#: option.c:428 ++#: option.c:445 + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "" + +-#: option.c:429 ++#: option.c:446 + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "" + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "" + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "" + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "" + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "" + +-#: option.c:435 ++#: option.c:452 + msgid "Specify host (A/AAAA and PTR) records" + msgstr "" + +-#: option.c:436 ++#: option.c:453 + msgid "Specify arbitrary DNS resource record" + msgstr "" + +-#: option.c:437 ++#: option.c:454 + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "" + +-#: option.c:445 ++#: option.c:462 + msgid "Specify a domain and address range for synthesised names" + msgstr "" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "" + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "" + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "" + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "" + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "" + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "" + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" + "\n" + msgstr "" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "" + +-#: option.c:665 ++#: option.c:684 + #, c-format + msgid "Valid options are:\n" + msgstr "" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "" + +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + msgid "bad interface name" + msgstr "" + +-#: option.c:792 ++#: option.c:811 + msgid "bad address" + msgstr "" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "" + +-#: option.c:1056 ++#: option.c:1075 + msgid "bad IP address" + msgstr "" + +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + msgid "bad IPv6 address" + msgstr "" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, c-format + msgid "cannot access directory %s: %s" + msgstr "" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, c-format + msgid "cannot access %s: %s" + msgstr "" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "" + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + msgid "bad prefix" + msgstr "" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "" + +-#: option.c:2469 ++#: option.c:2545 + msgid "bad port range" + msgstr "" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "" + +-#: option.c:2660 ++#: option.c:2736 + msgid "inconsistent DHCPv6 range" + msgstr "" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + msgid "bad hex constant" + msgstr "" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "" + +-#: option.c:2852 ++#: option.c:2928 + #, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "" + +-#: option.c:2910 ++#: option.c:2986 + msgid "bad DHCP host name" + msgstr "" + +-#: option.c:2992 ++#: option.c:3068 + msgid "bad tag-if" + msgstr "" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "" + +-#: option.c:3378 ++#: option.c:3454 + msgid "bad dhcp-proxy address" + msgstr "" + +-#: option.c:3404 ++#: option.c:3480 + msgid "Bad dhcp-relay" + msgstr "" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "" + +-#: option.c:3481 ++#: option.c:3557 + msgid "invalid alias range" + msgstr "" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "" + +-#: option.c:3560 ++#: option.c:3636 + msgid "bad PTR record" + msgstr "" + +-#: option.c:3591 ++#: option.c:3667 + msgid "bad NAPTR record" + msgstr "" + +-#: option.c:3625 ++#: option.c:3701 + msgid "bad RR record" + msgstr "" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "" + +-#: option.c:3748 ++#: option.c:3824 + msgid "Bad host-record" + msgstr "" + +-#: option.c:3765 ++#: option.c:3841 + msgid "Bad name in host-record" + msgstr "" + +-#: option.c:3826 ++#: option.c:3906 + msgid "bad trust anchor" + msgstr "" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "" + +-#: option.c:3850 ++#: option.c:3930 + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "" + +-#: option.c:3972 ++#: option.c:4052 + msgid "illegal option" + msgstr "" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "" + +-#: option.c:3981 ++#: option.c:4061 + #, c-format + msgid " at line %d of %s" + msgstr "" + +-#: option.c:4045 option.c:4168 tftp.c:667 ++#: option.c:4076 option.c:4323 option.c:4359 + #, c-format +-msgid "cannot read %s: %s" ++msgid "read %s" + msgstr "" + +-#: option.c:4229 option.c:4265 ++#: option.c:4139 option.c:4262 tftp.c:667 + #, c-format +-msgid "read %s" ++msgid "cannot read %s: %s" + msgstr "" + +-#: option.c:4331 ++#: option.c:4425 + msgid "junk found in command line" + msgstr "" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "" + +-#: option.c:4367 ++#: option.c:4461 + #, c-format + msgid "" + "Compile time options: %s\n" + "\n" + msgstr "" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "" + +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "" + +-#: option.c:4370 ++#: option.c:4464 + #, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "" + +-#: option.c:4385 ++#: option.c:4479 + #, c-format + msgid "bad command line options: %s" + msgstr "" + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "" + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "" + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, c-format + msgid "failed to read %s: %s" + msgstr "" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "" + +-#: forward.c:114 ++#: forward.c:111 + #, c-format + msgid "failed to send packet: %s" + msgstr "" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "" + +-#: forward.c:2101 ++#: forward.c:2178 + #, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "" +@@ -1180,263 +1208,276 @@ msgstr "" + msgid "using nameserver %s#%d" + msgstr "" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" + msgstr "" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:156 ++msgid "no trust anchors provided for DNSSEC" + msgstr "" + + #: dnsmasq.c:159 ++msgid "cannot reduce cache size from default when DNSSEC enabled" ++msgstr "" ++ ++#: dnsmasq.c:161 + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "" + +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++msgid "cannot use --conntrack AND --query-port" + msgstr "" + +-#: dnsmasq.c:173 +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++#: dnsmasq.c:175 ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "" + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "" + +-#: dnsmasq.c:193 +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++#: dnsmasq.c:195 ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "" + +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, c-format + msgid "started, version %s DNS disabled" + msgstr "" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "" + +-#: dnsmasq.c:684 ++#: dnsmasq.c:708 ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "" ++ ++#: dnsmasq.c:713 + #, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "" + +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + msgid "warning: no upstream servers configured" + msgstr "" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "enabled" + msgstr "" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, c-format + msgid "failed to create helper: %s" + msgstr "" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "" + +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, c-format + msgid "failed to change user-id to %s: %s" + msgstr "" + +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, c-format + msgid "failed to change group-id to %s: %s" + msgstr "" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, c-format + msgid "failed to open pidfile %s: %s" + msgstr "" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, c-format + msgid "cannot open log %s: %s" + msgstr "" + +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, c-format + msgid "failed to load Lua script: %s" + msgstr "" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, c-format + msgid "failed to execute %s: %s" + msgstr "" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, c-format + msgid "failed to access %s: %s" + msgstr "" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, c-format + msgid "no servers found in %s, will retry" + msgstr "" +@@ -1476,27 +1517,27 @@ msgstr "" + msgid "DHCP packet received on %s which has no address" + msgstr "" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, c-format + msgid "bad line at %s line %d" + msgstr "" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "" +@@ -1567,12 +1608,12 @@ msgstr "" + msgid "disabled" + msgstr "" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "" + +@@ -1592,7 +1633,7 @@ msgstr "" + msgid "no leases left" + msgstr "" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "" +@@ -1601,7 +1642,7 @@ msgstr "" + msgid "PXE BIS not supported" + msgstr "" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "" +@@ -1637,7 +1678,7 @@ msgstr "" + msgid "wrong address" + msgstr "" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "" + +@@ -1687,7 +1728,7 @@ msgstr "" + msgid "PXE menu too large" + msgstr "" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, c-format + msgid "%u requested options: %s" + msgstr "" +@@ -1702,7 +1743,7 @@ msgstr "" + msgid "cannot create netlink socket: %s" + msgstr "" + +-#: netlink.c:347 ++#: netlink.c:348 + #, c-format + msgid "netlink returns error: %s" + msgstr "" +@@ -1820,62 +1861,62 @@ msgstr "" + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, c-format + msgid "%u vendor class: %u" + msgstr "" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, c-format + msgid "%u client MAC address: %s" + msgstr "" + +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, c-format + msgid "unknown prefix-class %d" + msgstr "" + +-#: rfc3315.c:791 rfc3315.c:913 +-msgid "success" ++#: rfc3315.c:803 rfc3315.c:902 ++msgid "address unavailable" + msgstr "" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 +-msgid "no addresses available" ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 ++msgid "success" + msgstr "" + +-#: rfc3315.c:865 +-msgid "address unavailable" ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 ++msgid "no addresses available" + msgstr "" + +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + msgid "address invalid" + msgstr "" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + msgid "all addresses still on link" + msgstr "" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "" + +@@ -1968,7 +2009,7 @@ msgstr "" + msgid "cannot create ICMPv6 socket: %s" + msgstr "" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "" +@@ -1983,50 +2024,85 @@ msgstr "" + msgid "failed to create IPset control socket: %s" + msgstr "" + ++#: dnssec.c:425 dnssec.c:469 ++#, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "" + +-#: tables.c:105 ++#: tables.c:109 + #, c-format + msgid "failed to access pf devices: %s" + msgstr "" + +-#: tables.c:119 ++#: tables.c:123 + #, c-format + msgid "warning: no opened pf devices %s" + msgstr "" + +-#: tables.c:127 ++#: tables.c:131 + #, c-format + msgid "error: cannot use table name %s" + msgstr "" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "" + +-#: tables.c:162 ++#: tables.c:166 + #, c-format + msgid "%d addresses %s" + msgstr "" ++ ++#: inotify.c:46 ++#, c-format ++msgid "failed to create inotify: %s" ++msgstr "" ++ ++#: inotify.c:60 ++#, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "" ++ ++#: inotify.c:97 ++#, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" +diff --git a/po/no.po b/po/no.po +index ff7eaad9cad1..c2e7067d2304 100644 +--- a/po/no.po ++++ b/po/no.po +@@ -18,70 +18,70 @@ msgstr "" + "Content-Transfer-Encoding: 8bit\n" + "Plural-Forms: nplurals=2; plural=(n != 1);\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "" + +-#: cache.c:908 ++#: cache.c:941 + #, fuzzy, c-format + msgid "failed to load names from %s: %s" + msgstr "feilet å laste navn fra %s: %s" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, c-format + msgid "bad address at %s line %d" + msgstr "dårlig adresse ved %s linje %d" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "dårlig navn ved %s linje %d" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "les %s - %d adresser" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "mellomlager tømt" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "gir ikke navnet %s til DHCP leien for %s fordi navnet eksisterer i %s med adressen %s" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "" + +-#: cache.c:1367 ++#: cache.c:1422 + #, fuzzy, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "mellomlager størrelse %d, %d/%d mellomlager innsettinger re-bruker mellomlager plasser som ikke er utløpt" + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "" + +-#: cache.c:1372 ++#: cache.c:1427 + #, c-format + msgid "queries for authoritative zones %u" + msgstr "" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "" +@@ -96,7 +96,7 @@ msgstr "feilet + msgid "failed to allocate memory" + msgstr "feilet å laste %d bytes" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "kunne ikke få minne" + +@@ -110,610 +110,643 @@ msgstr "kan ikke lese %s: %s" + msgid "failed to allocate %d bytes" + msgstr "feilet å laste %d bytes" + +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "uendelig" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "Spesifiser lokal(e) adresse(r) å lytte på." + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "Returner ipaddr for alle verter i det spesifiserte domenet." + +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "Forfalsk revers oppslag for RFC1918 private adresse områder." + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "Behandle ipaddr som NXDOMAIN (omgår Verisign wildcard)." + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "Spesifiser størrelsen på mellomlager plassene (standard er %s)." + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "Spesifiser konfigurasjonsfil (standard er %s)." + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "IKKE legg (fork) som bakgrunnsprosess: kjør i debug modus." + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "IKKE videresend oppslag som mangler domene del." + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "Returner selv-pekende MX post for lokale verter." + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "Utvid enkle navn i /etc/hosts med domene-suffiks." + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "Ikke videresend falske/uekte DNS forespørsler fra Windows verter." + +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "Aktiver DHCP i det gitte området med leie varighet" + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "Skift til denne gruppen etter oppstart (standard er %s)." + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "Sett adresse eller vertsnavn for en spesifikk maskin." + +-#: option.c:332 ++#: option.c:344 + #, fuzzy + msgid "Read DHCP host specs from file." + msgstr "dårlig MX navn" + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "" + +-#: option.c:334 ++#: option.c:346 ++#, fuzzy ++msgid "Read DHCP host specs from a directory." ++msgstr "dårlig MX navn" ++ ++#: option.c:347 ++#, fuzzy ++msgid "Read DHCP options from a directory." ++msgstr "dårlig MX navn" ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "" + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "IKKE last %s filen." + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "Spesifiser en verts (hosts) fil som skal leses i tilleg til %s." + +-#: option.c:337 ++#: option.c:351 ++#, fuzzy ++msgid "Read hosts files from a directory." ++msgstr "dårlig MX navn" ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "Spesifiser nettverkskort det skal lyttes på." + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "Spesifiser nettverkskort det IKKE skal lyttes på." + +-#: option.c:339 ++#: option.c:354 + #, fuzzy + msgid "Map DHCP user class to tag." + msgstr "Map DHCP bruker klasse til opsjon sett." + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "" + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "" + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "" + +-#: option.c:343 ++#: option.c:358 + #, fuzzy + msgid "Don't do DHCP for hosts with tag set." + msgstr "Ikke utfør DHCP for klienter i opsjon sett." + +-#: option.c:344 ++#: option.c:359 + #, fuzzy + msgid "Force broadcast replies for hosts with tag set." + msgstr "Ikke utfør DHCP for klienter i opsjon sett." + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "IKKE last (fork) som bakgrunnsprosess, IKKE kjør i debug modus." + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "Anta at vi er den eneste DHCP tjeneren på det lokale nettverket." + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "Spesifiser hvor DHCP leiene skal lagres (standard er %s)." + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "Returner MX records for lokale verter." + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "Spesifiser en MX post." + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "Spesifiser BOOTP opsjoner til DHCP tjener." + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "IKKE spør (poll) %s fil, les på nytt kun ved SIGHUP" + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "IKKE mellomlagre søkeresultater som feiler." + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "Bruk navnetjenere kun som bestemt i rekkefølgen gitt i %s." + +-#: option.c:354 ++#: option.c:369 + #, fuzzy + msgid "Specify options to be sent to DHCP clients." + msgstr "Sett ekstra opsjoner som skal fordeles til DHCP klientene." + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "" + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "Spesifiser lytteport for DNS oppslag (standard er 53)." + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "Maksimal støttet UDP pakkestørrelse for EDNS.0 (standard er %s)." + +-#: option.c:358 ++#: option.c:373 + #, fuzzy + msgid "Log DNS queries." + msgstr "Logg oppslag." + +-#: option.c:359 ++#: option.c:374 + #, fuzzy + msgid "Force the originating port for upstream DNS queries." + msgstr "Tving bruk av opprinnelig port for oppstrøms oppslag." + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "IKKE les resolv.conf." + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "Spesifiser stien til resolv.conf (standard er %s)." + +-#: option.c:362 ++#: option.c:377 + #, fuzzy + msgid "Specify path to file with server= options" + msgstr "Spesifiser stien til PID fil. (standard er %s)." + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "Spesifiser adressen(e) til oppstrøms tjenere med valgfrie domener." + +-#: option.c:364 ++#: option.c:379 + #, fuzzy + msgid "Specify address of upstream servers for reverse address queries" + msgstr "Spesifiser adressen(e) til oppstrøms tjenere med valgfrie domener." + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "Aldri videresend oppslag til spesifiserte domener." + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "Spesifiser domenet som skal tildeles i DHCP leien." + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "Spesifiser default mål i en MX post." + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts." + +-#: option.c:369 ++#: option.c:384 + #, fuzzy + msgid "Specify time-to-live in seconds for negative caching." + msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts." + +-#: option.c:370 ++#: option.c:385 + #, fuzzy + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts." + +-#: option.c:371 ++#: option.c:386 ++#, fuzzy ++msgid "Specify time-to-live ceiling for cache." ++msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts." ++ ++#: option.c:387 ++#, fuzzy ++msgid "Specify time-to-live floor for cache." ++msgstr "Spesifiser time-to-live i sekunder for svar fra /etc/hosts." ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "Skift til denne bruker etter oppstart (standard er %s)." + +-#: option.c:372 ++#: option.c:389 + #, fuzzy + msgid "Map DHCP vendor class to tag." + msgstr "Map DHCP produsent klasse til opsjon sett." + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "Vis dnsmasq versjon og copyright informasjon." + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "Oversett IPv4 adresser fra oppstrøms tjenere." + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "Spesifiser en SRV post." + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "" + +-#: option.c:377 ++#: option.c:394 + #, fuzzy, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "Spesifiser stien til PID fil. (standard er %s)." + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "Spesifiser maksimum antall DHCP leier (standard er %s)" + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "Svar DNS oppslag basert på nettverkskortet oppslaget ble sendt til." + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "Spesifiser TXT DNS post." + +-#: option.c:381 ++#: option.c:398 + #, fuzzy + msgid "Specify PTR DNS record." + msgstr "Spesifiser TXT DNS post." + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "" + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "Bind kun til nettverkskort som er i bruk." + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "Les DHCP statisk vert informasjon fra %s." + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "Aktiver DBus interface for å sette oppstrøms tjenere, osv." + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "Ikke lever DHCP på dette nettverkskortet, kun lever DNS." + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "Aktiver dynamisk adresse allokering for bootp." + +-#: option.c:388 ++#: option.c:405 + #, fuzzy + msgid "Map MAC address (with wildcards) to option set." + msgstr "Map DHCP produsent klasse til opsjon sett." + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "" + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "" + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "" + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "" + +-#: option.c:395 ++#: option.c:412 + #, fuzzy + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "Skift til denne bruker etter oppstart (standard er %s)." + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "" + +-#: option.c:397 ++#: option.c:414 + #, fuzzy, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "Spesifiser maksimum antall DHCP leier (standard er %s)" + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "" + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "" + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "" + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "" + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "" + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "" + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "" + +-#: option.c:405 ++#: option.c:422 + #, fuzzy, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "Spesifiser maksimum antall DHCP leier (standard er %s)" + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "" + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "" + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "" + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "" + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "" + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "" + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "" + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "" + +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "" + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "" + +-#: option.c:417 ++#: option.c:434 + #, fuzzy + msgid "Specify NAPTR DNS record." + msgstr "Spesifiser TXT DNS post." + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "" + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "" + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "" + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "" + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "" + +-#: option.c:424 ++#: option.c:441 + #, fuzzy + msgid "Prompt to send to PXE clients." + msgstr "Sett ekstra opsjoner som skal fordeles til DHCP klientene." + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "" + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "" + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "" + +-#: option.c:428 ++#: option.c:445 + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "" + +-#: option.c:429 ++#: option.c:446 + #, fuzzy + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "Oversett IPv4 adresser fra oppstrøms tjenere." + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "" + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "" + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "" + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "" + +-#: option.c:435 ++#: option.c:452 + #, fuzzy + msgid "Specify host (A/AAAA and PTR) records" + msgstr "Spesifiser en MX post." + +-#: option.c:436 ++#: option.c:453 + #, fuzzy + msgid "Specify arbitrary DNS resource record" + msgstr "Spesifiser TXT DNS post." + +-#: option.c:437 ++#: option.c:454 + #, fuzzy + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "ukjent tilknytning (interface) %s" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "" + +-#: option.c:445 ++#: option.c:462 + msgid "Specify a domain and address range for synthesised names" + msgstr "" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "" + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "" + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "" + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "" + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "" + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "" + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" +@@ -722,332 +755,332 @@ msgstr "" + "Bruk: dnsmasq [opsjoner]\n" + "\n" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "Bruk korte opsjoner kun på kommandolinjen.\n" + +-#: option.c:665 ++#: option.c:684 + #, fuzzy, c-format + msgid "Valid options are:\n" + msgstr "Gyldige opsjoner er :\n" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "dårlig port" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "" + +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + #, fuzzy + msgid "bad interface name" + msgstr "dårlig MX navn" + +-#: option.c:792 ++#: option.c:811 + #, fuzzy + msgid "bad address" + msgstr "les %s - %d adresser" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "dårlig dhcp-opsjon" + +-#: option.c:1056 ++#: option.c:1075 + #, fuzzy + msgid "bad IP address" + msgstr "les %s - %d adresser" + +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + #, fuzzy + msgid "bad IPv6 address" + msgstr "les %s - %d adresser" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "dårlig domene i dhcp-opsjon" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "dhcp-opsjon for lang" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, fuzzy, c-format + msgid "cannot access directory %s: %s" + msgstr "kan ikke lese %s: %s" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, fuzzy, c-format + msgid "cannot access %s: %s" + msgstr "kan ikke lese %s: %s" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "" + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "dårlig MX preferanse" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "dårlig MX navn" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "dårlig MX mål" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + #, fuzzy + msgid "bad prefix" + msgstr "dårlig port" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "" + +-#: option.c:2469 ++#: option.c:2545 + #, fuzzy + msgid "bad port range" + msgstr "dårlig port" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "dårlig dhcp-område" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "ikke konsistent DHCP område" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "" + +-#: option.c:2660 ++#: option.c:2736 + #, fuzzy + msgid "inconsistent DHCPv6 range" + msgstr "ikke konsistent DHCP område" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + #, fuzzy + msgid "bad hex constant" + msgstr "dårlig dhcp-vert" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "" + +-#: option.c:2852 ++#: option.c:2928 + #, fuzzy, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "dubliserte IP adresser i %s dhcp-config direktiv." + +-#: option.c:2910 ++#: option.c:2986 + #, fuzzy + msgid "bad DHCP host name" + msgstr "dårlig MX navn" + +-#: option.c:2992 ++#: option.c:3068 + #, fuzzy + msgid "bad tag-if" + msgstr "dårlig MX mål" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "ugyldig portnummer" + +-#: option.c:3378 ++#: option.c:3454 + #, fuzzy + msgid "bad dhcp-proxy address" + msgstr "les %s - %d adresser" + +-#: option.c:3404 ++#: option.c:3480 + #, fuzzy + msgid "Bad dhcp-relay" + msgstr "dårlig dhcp-område" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "" + +-#: option.c:3481 ++#: option.c:3557 + #, fuzzy + msgid "invalid alias range" + msgstr "ugyldig vekt" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "" + +-#: option.c:3560 ++#: option.c:3636 + #, fuzzy + msgid "bad PTR record" + msgstr "dårlig SRV post" + +-#: option.c:3591 ++#: option.c:3667 + #, fuzzy + msgid "bad NAPTR record" + msgstr "dårlig SRV post" + +-#: option.c:3625 ++#: option.c:3701 + #, fuzzy + msgid "bad RR record" + msgstr "dårlig SRV post" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "dårlig TXT post" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "dårlig SRV post" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "dårlig SRV mål" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "ugyldig prioritet" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "ugyldig vekt" + +-#: option.c:3748 ++#: option.c:3824 + #, fuzzy + msgid "Bad host-record" + msgstr "dårlig SRV post" + +-#: option.c:3765 ++#: option.c:3841 + #, fuzzy + msgid "Bad name in host-record" + msgstr "dårlig navn i %s" + +-#: option.c:3826 ++#: option.c:3906 + #, fuzzy + msgid "bad trust anchor" + msgstr "dårlig port" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "" + +-#: option.c:3850 ++#: option.c:3930 + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "mangler \"" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "dårlig opsjon" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "overflødig parameter" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "mangler parameter" + +-#: option.c:3972 ++#: option.c:4052 + #, fuzzy + msgid "illegal option" + msgstr "dårlig opsjon" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "feil" + +-#: option.c:3981 ++#: option.c:4061 + #, fuzzy, c-format + msgid " at line %d of %s" + msgstr "%s på linje %d av %%s" + +-#: option.c:4045 option.c:4168 tftp.c:667 +-#, c-format +-msgid "cannot read %s: %s" +-msgstr "kan ikke lese %s: %s" +- +-#: option.c:4229 option.c:4265 ++#: option.c:4076 option.c:4323 option.c:4359 + #, fuzzy, c-format + msgid "read %s" + msgstr "leser %s" + +-#: option.c:4331 ++#: option.c:4139 option.c:4262 tftp.c:667 ++#, c-format ++msgid "cannot read %s: %s" ++msgstr "kan ikke lese %s: %s" ++ ++#: option.c:4425 + msgid "junk found in command line" + msgstr "" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "Dnsmasq versjon %s %s\n" + +-#: option.c:4367 ++#: option.c:4461 + #, fuzzy, c-format + msgid "" + "Compile time options: %s\n" +@@ -1056,89 +1089,89 @@ msgstr "" + "Kompileringsopsjoner %s\n" + "\n" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "Denne programvaren kommer med ABSOLUTT INGEN GARANTI.\n" + +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "DNsmasq er fri programvare, du er velkommen til å redistribuere den\n" + +-#: option.c:4370 ++#: option.c:4464 + #, fuzzy, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "under vilkårene gitt i GNU General Public License, versjon 2.\n" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "" + +-#: option.c:4385 ++#: option.c:4479 + #, fuzzy, c-format + msgid "bad command line options: %s" + msgstr "dårlige kommandlinje opsjoner: %s." + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "klarer ikke å få vertsnavn: %s" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "kun en resolv.conf fil tillat i no-poll modus." + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "må ha nøyaktig en resolv.conf å lese domene fra." + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, fuzzy, c-format + msgid "failed to read %s: %s" + msgstr "feilet å lese %s: %s" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "intet søke direktiv funnet i %s" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "" + +-#: forward.c:114 ++#: forward.c:111 + #, fuzzy, c-format + msgid "failed to send packet: %s" + msgstr "feilet å lytte på socket: %s" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "navnetjener %s nektet å gjøre et rekursivt oppslag" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "" + +-#: forward.c:2101 ++#: forward.c:2178 + #, fuzzy, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "Spesifiser maksimum antall DHCP leier (standard er %s)" +@@ -1228,270 +1261,283 @@ msgstr "benytter navnetjener %s#%d" + msgid "using nameserver %s#%d" + msgstr "benytter navnetjener %s#%d" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" + msgstr "" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:156 ++msgid "no trust anchors provided for DNSSEC" + msgstr "" + + #: dnsmasq.c:159 ++msgid "cannot reduce cache size from default when DNSSEC enabled" ++msgstr "" ++ ++#: dnsmasq.c:161 + #, fuzzy + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h" + +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + #, fuzzy + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++msgid "cannot use --conntrack AND --query-port" + msgstr "" + +-#: dnsmasq.c:173 ++#: dnsmasq.c:175 + #, fuzzy +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "" + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + #, fuzzy + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h" + +-#: dnsmasq.c:193 ++#: dnsmasq.c:195 + #, fuzzy +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "feilet å finne liste av tilknytninger (interfaces): %s" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "ukjent tilknytning (interface) %s" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "DBus feil: %s" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "" + +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, fuzzy, c-format + msgid "started, version %s DNS disabled" + msgstr "startet, versjon %s mellomlager deaktivert" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "startet, versjon %s mellomlager størrelse %d" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "startet, versjon %s mellomlager deaktivert" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "kompilerings opsjoner: %s" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "DBus støtte aktivert: koblet til system buss" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "DBus støtte aktivert: avventer buss tilkobling" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "" + +-#: dnsmasq.c:684 ++#: dnsmasq.c:708 ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "" ++ ++#: dnsmasq.c:713 + #, fuzzy, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "feilet å laste navn fra %s: %s" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "setter --bind-interfaces opsjon på grunn av OS begrensninger" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "advarsel: nettverkskort %s eksisterer ikke for tiden" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "" + +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + #, fuzzy + msgid "warning: no upstream servers configured" + msgstr "setter oppstrøms tjener fra DBus" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + #, fuzzy + msgid "enabled" + msgstr "deaktivert" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "tilkoblet til system DBus" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, fuzzy, c-format + msgid "failed to create helper: %s" + msgstr "feilet å lese %s: %s" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "" + +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, fuzzy, c-format + msgid "failed to change user-id to %s: %s" + msgstr "feilet å laste navn fra %s: %s" + +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, fuzzy, c-format + msgid "failed to change group-id to %s: %s" + msgstr "feilet å laste navn fra %s: %s" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, fuzzy, c-format + msgid "failed to open pidfile %s: %s" + msgstr "feilet å lese %s: %s" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, fuzzy, c-format + msgid "cannot open log %s: %s" + msgstr "kan ikke åpne %s:%s" + +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, fuzzy, c-format + msgid "failed to load Lua script: %s" + msgstr "feilet å laste %s: %s" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, fuzzy, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "kan ikke åpne eller lage leie fil: %s" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, fuzzy, c-format + msgid "failed to execute %s: %s" + msgstr "feilet å få tilgang til %s: %s" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "avslutter etter mottak av SIGTERM" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, fuzzy, c-format + msgid "failed to access %s: %s" + msgstr "feilet å få tilgang til %s: %s" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "leser %s" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, fuzzy, c-format + msgid "no servers found in %s, will retry" + msgstr "intet søke direktiv funnet i %s" +@@ -1531,27 +1577,27 @@ msgstr "ukjent tilknytning (interface) %s" + msgid "DHCP packet received on %s which has no address" + msgstr "" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "DHCP område %s -- %s er ikke konsistent med nettmaske %s" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, c-format + msgid "bad line at %s line %d" + msgstr "dårlig linje ved %s linje %d" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "" +@@ -1622,12 +1668,12 @@ msgstr "DBus feil: %s" + msgid "disabled" + msgstr "deaktivert" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "oversett" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "adresse i bruk" + +@@ -1647,7 +1693,7 @@ msgstr "ingen adresse konfigurert" + msgid "no leases left" + msgstr "ingen leier igjen" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "" +@@ -1656,7 +1702,7 @@ msgstr "" + msgid "PXE BIS not supported" + msgstr "" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, fuzzy, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "deaktiverer DHCP statisk adresse %s" +@@ -1692,7 +1738,7 @@ msgstr "" + msgid "wrong address" + msgstr "gal adresse" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "leie ikke funnet" + +@@ -1742,7 +1788,7 @@ msgstr "kan ikke sende DHCP opsjon %d: ikke mer plass i pakken" + msgid "PXE menu too large" + msgstr "" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, fuzzy, c-format + msgid "%u requested options: %s" + msgstr "kompilerings opsjoner: %s" +@@ -1757,7 +1803,7 @@ msgstr "" + msgid "cannot create netlink socket: %s" + msgstr "kan ikke binde netlink socket: %s" + +-#: netlink.c:347 ++#: netlink.c:348 + #, fuzzy, c-format + msgid "netlink returns error: %s" + msgstr "DBus feil: %s" +@@ -1875,66 +1921,66 @@ msgstr "ingen adresse omr + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "ingen adresse område tilgjengelig for DHCP krav %s %s" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, fuzzy, c-format + msgid "%u vendor class: %u" + msgstr "DBus feil: %s" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, fuzzy, c-format + msgid "%u client MAC address: %s" + msgstr "ingen tilknytning (interface) med adresse %s" + +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, fuzzy, c-format + msgid "unknown prefix-class %d" + msgstr "ukjent leie" + +-#: rfc3315.c:791 rfc3315.c:913 ++#: rfc3315.c:803 rfc3315.c:902 ++#, fuzzy ++msgid "address unavailable" ++msgstr "adresse ikke tilgjengelig" ++ ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 + msgid "success" + msgstr "" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 + #, fuzzy + msgid "no addresses available" + msgstr "ingen adresse tilgjengelig" + +-#: rfc3315.c:865 +-#, fuzzy +-msgid "address unavailable" +-msgstr "adresse ikke tilgjengelig" +- +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + #, fuzzy + msgid "address invalid" + msgstr "adresse i bruk" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + #, fuzzy + msgid "all addresses still on link" + msgstr "dårlig adresse ved %s linje %d" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "" + +@@ -2027,7 +2073,7 @@ msgstr "" + msgid "cannot create ICMPv6 socket: %s" + msgstr "kan ikke lage DHCP socket: %s" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "" +@@ -2042,54 +2088,89 @@ msgstr "feilet + msgid "failed to create IPset control socket: %s" + msgstr "feilet å lage lytte socket: %s" + ++#: dnssec.c:425 dnssec.c:469 ++#, fuzzy, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "feilet å lese %s: %s" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "" + +-#: tables.c:105 ++#: tables.c:109 + #, fuzzy, c-format + msgid "failed to access pf devices: %s" + msgstr "feilet å få tilgang til %s: %s" + +-#: tables.c:119 ++#: tables.c:123 + #, fuzzy, c-format + msgid "warning: no opened pf devices %s" + msgstr "benytter lokale adresser kun for %s %s" + +-#: tables.c:127 ++#: tables.c:131 + #, fuzzy, c-format + msgid "error: cannot use table name %s" + msgstr "klarer ikke å få vertsnavn: %s" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "" + +-#: tables.c:162 ++#: tables.c:166 + #, fuzzy, c-format + msgid "%d addresses %s" + msgstr "les %s - %d adresser" + ++#: inotify.c:46 ++#, fuzzy, c-format ++msgid "failed to create inotify: %s" ++msgstr "feilet å lese %s: %s" ++ ++#: inotify.c:60 ++#, fuzzy, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "kan ikke åpne eller lage leie fil: %s" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, fuzzy, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "feilet å lage lytte socket: %s" ++ ++#: inotify.c:97 ++#, fuzzy, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "kan ikke lese %s: %s" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" ++ + #~ msgid "duplicate IP address %s in dhcp-config directive." + #~ msgstr "dubliserte IP adresser i %s dhcp-config direktiv." + +diff --git a/po/pl.po b/po/pl.po +index 705f1779390f..362e41226644 100644 +--- a/po/pl.po ++++ b/po/pl.po +@@ -21,70 +21,70 @@ msgstr "" + "X-Generator: Poedit 1.6.9\n" + "X-Language: pl_PL\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "Wewnętrzny błąd w pamięci podręcznej." + +-#: cache.c:908 ++#: cache.c:941 + #, c-format + msgid "failed to load names from %s: %s" + msgstr "nie potrafię wczytać nazw z %s: %s" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, c-format + msgid "bad address at %s line %d" + msgstr "błędny adres w pliku %s, w linii %d" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "błędna nazwa w pliku %s, w linii %d" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "wczytałem %s - %d adresów" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "wyczyszczono pamięć podręczną" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "Nie znalazłem adresu IPv4 komputera %s" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "%s to nazwa CNAME, nie przypisuję jej dzierżawie DHCP %s" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "nazwa %s nie została nadana dzierżawie DHCP %s, ponieważ nazwa istnieje w %s i ma już adres %s" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "czas %lu" + +-#: cache.c:1367 ++#: cache.c:1422 + #, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "wielkość pamięci podręcznej: %d; %d z %d miejsc aktualnych wpisów użyto ponownie." + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "%u zapytań przesłanych dalej, %u odpowiedzi udzielonych samodzielnie" + +-#: cache.c:1372 ++#: cache.c:1427 + #, c-format + msgid "queries for authoritative zones %u" + msgstr "zapytań do stref autorytatywnych %u" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "serwer %s#%d: %u zapytań wysłanych, %u ponowionych lub nieudanych" +@@ -98,7 +98,7 @@ msgstr "brak możliwości użycia generatora liczb losowych: %s" + msgid "failed to allocate memory" + msgstr "nie udało się przydzielić pamięci" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "nie można dostać pamięci" + +@@ -112,589 +112,622 @@ msgstr "błąd podczas próby utworzenia potoku: %s" + msgid "failed to allocate %d bytes" + msgstr "niemożliwość przydzielenia %d bajtów pamięci" + +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "nieskończona" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "Wskazanie adresów, na których należy nasłuchiwać." + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "Zwracanie adresu IP dla wszystkich hostów we wskazanych domenach." + +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "Wyłączenie przekazywania zapytań odwrotnych dla prywatnych zakresów IP." + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "Traktowanie adresu IP jako NXDOMAIN (unieważnia ,,Verisign wildcard'')." + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "Wskazanie wielkości pamięci podręcznej (domyślnie: %s miejsc)." + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "Wskazanie pliku konfiguracyjnego (domyślnie: %s)." + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "NIE twórz procesu potomnego w tle: działanie w trybie debugowania." + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "Wyłączenie przekazywania zapytań bez podanej części domenowej." + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "Zwracanie samowskazującego rekordu MX dla lokalnych hostów." + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "Rozwijanie prostych nazw z /etc/hosts przyrostkiem domenowym." + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "Wyłączenie przekazywania pozornych zapytań DNS z komputerów działających pod Windows." + +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "Włączenie serwera DHCP dla wskazanego zakresu adresów." + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "Po uruchomieniu zmiana grupy procesu na podaną (domyślnie: %s)." + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "Ustawienie adresu lub nazwy dla wskazanego komputera." + +-#: option.c:332 ++#: option.c:344 + msgid "Read DHCP host specs from file." + msgstr "Wskazanie pliku z wartościami 'dhcp-host='." + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "Wskazanie pliku z wartościami 'dhcp-option='." + +-#: option.c:334 ++#: option.c:346 ++#, fuzzy ++msgid "Read DHCP host specs from a directory." ++msgstr "Wskazanie pliku z wartościami 'dhcp-host='." ++ ++#: option.c:347 ++#, fuzzy ++msgid "Read DHCP options from a directory." ++msgstr "Wskazanie pliku z wartościami 'dhcp-option='." ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "Warunkowe ustawianie znaczników." + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "NIE wczytywanie pliku %s." + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "Wskazanie dodatkowego pliku 'hosts' oprócz %s." + +-#: option.c:337 ++#: option.c:351 ++#, fuzzy ++msgid "Read hosts files from a directory." ++msgstr "Wskazanie pliku z wartościami 'dhcp-host='." ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "Interfejsy, na których nasłuchiwać." + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "Interfejsy, na których NIE nasłuchiwać." + +-#: option.c:339 ++#: option.c:354 + msgid "Map DHCP user class to tag." + msgstr "Przyporządkowanie znacznika w zależności od klasy użytkownika DHCP." + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "Przyporządkowanie znacznika w zależności od numeru obwodu (w rozumieniu RFC3046)." + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "Przyporządkowanie znacznika w zależności od numeru agenta (w rozumieniu RFC3046)." + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "Przyporządkowanie znacznika w zależności od numeru subskrybenta (w rozumieniu RFC3993)." + +-#: option.c:343 ++#: option.c:358 + msgid "Don't do DHCP for hosts with tag set." + msgstr "Wyłączenie DHCP dla hostów z określonym znacznikiem." + +-#: option.c:344 ++#: option.c:359 + msgid "Force broadcast replies for hosts with tag set." + msgstr "Wymuszenie odpowiedzi w trybie rozgłoszeniowym dla hostów z określonym znacznikiem." + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "NIE twórz procesu potomnego w tle i NIE włączaj trybu debugowania." + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "Zakładanie, że jesteśmy jedynym serwerem DHCP w sieci lokalnej." + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "Ścieżka przechowywania pliku dzierżaw DHCP (domyślnie: %s)." + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "Włączenie zwracania rekordu MX dla hostów lokalnych." + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "Specyfikacja rekordu MX." + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "Określenie opcji BOOTP serwera DHCP." + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "Wyłączenie obserwowania pliku %s; ponowne odczytywanie tylko po odebraniu sygnału SIGHUP." + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "Wyłączenie przechowywania w pamięci podręcznej wyników nieudanych wyszukiwań." + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "Odpytywanie serwerów nazw w kolejności ich wystąpienia w %s." + +-#: option.c:354 ++#: option.c:369 + msgid "Specify options to be sent to DHCP clients." + msgstr "Specyfikacja opcji wysyłanej do klientów DHCP." + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "Opcja DHCP wysyłana nawet jeżeli klient o nią nie prosi." + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "Wskazanie portu do nasłuchiwania zapytań DNS (domyślnie: 53)." + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "Maksymalna obsługiwana wielkość pakietu EDNS.0 (domyślnie: %s)." + +-#: option.c:358 ++#: option.c:373 + msgid "Log DNS queries." + msgstr "Włączenie spisywania zapytań DNS do logu." + +-#: option.c:359 ++#: option.c:374 + msgid "Force the originating port for upstream DNS queries." + msgstr "Wymuszenie użycia wskazanego portu UDP do odpytywania nadrzędnych serwerów DNS i odbierania od nich odpowiedzi." + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "Wyłączenie czytania pliku resolv.conf." + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "Wskazanie położenia pliku resolv.conf (domyślnie: %s)." + +-#: option.c:362 ++#: option.c:377 + msgid "Specify path to file with server= options" + msgstr "Wskazanie położenia pliku z opcjami server=" + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "Wskazywanie adresów serwerów nazw, opcjonalnie z przypisaniem do domeny." + +-#: option.c:364 ++#: option.c:379 + msgid "Specify address of upstream servers for reverse address queries" + msgstr "Wskazanie serwerów nazw do odwrotnej translacji adresów." + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "Wyłączenie przekazywania zapytań do wskazanych domen." + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "Wskazanie domeny dla serwera DHCP." + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "Określenie domyślnego celu w rekordzie MX." + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "Określenie (w sekundach) czasu ważności odpowiedzi udzielonych na podstawie /etc/hosts (domyślnie 0)." + +-#: option.c:369 ++#: option.c:384 + msgid "Specify time-to-live in seconds for negative caching." + msgstr "Określenie (w sekundach) czasu ważności negatywnych odpowiedzi." + +-#: option.c:370 ++#: option.c:385 + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "Ograniczenie maksymalnego czasu ważności odpowiedzi (TTL) podawanego klientom [w sekundach]." + +-#: option.c:371 ++#: option.c:386 ++#, fuzzy ++msgid "Specify time-to-live ceiling for cache." ++msgstr "Określenie (w sekundach) czasu ważności negatywnych odpowiedzi." ++ ++#: option.c:387 ++#, fuzzy ++msgid "Specify time-to-live floor for cache." ++msgstr "Określenie (w sekundach) czasu ważności negatywnych odpowiedzi." ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "Zmiana użytkownika procesu na wskazanego (po uruchomieniu, domyślnie: %s)." + +-#: option.c:372 ++#: option.c:389 + msgid "Map DHCP vendor class to tag." + msgstr "Przyporządkowanie znacznika w zależności od typu klienta DHCP." + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "Wydrukowanie informacji o programie i ochronie praw autorskich." + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "Tłumaczenie adresów IPv4 z serwerów nadrzędnych." + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "Określenie rekordu SRV." + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "Wyświetla ten komunikat. Użyj '--help dhcp' chcąc przejrzeć listę opcji DHCP (dhcp-option=xxx,...)." + +-#: option.c:377 ++#: option.c:394 + #, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "Określenie ścieżki do pliku PID (domyślnie: %s)." + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "Maksymalna liczba dzierżaw DHCP (domyślnie: %s)." + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "Uzależnienie odpowiedzi DNS od interfejsu, na którym odebrano zapytanie (wygodne dla serwerów kilku podsieci z różnymi adresami w /etc/hosts)." + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "Specyfikacja rekordu DNS TXT." + +-#: option.c:381 ++#: option.c:398 + msgid "Specify PTR DNS record." + msgstr "Specyfikacja rekordu DNS PTR." + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "Zwraca nazwę domenową powiązaną z adresem interfejsu sieciowego." + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "Nasłuchiwanie tylko na wykorzystywanych interfejsach (umożliwia uruchomienie osobnych serwerów dla różnych kart)." + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "Wczytanie przyporządkowań adresów z %s." + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "Włączenie używania interfejsu DBus do informowania o zmianach konfiguracji." + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "Uruchomienie na wskazanym interfejsie tylko DNS-a, bez usług DHCP i TFTP." + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "Włączenie dynamicznego przydzielania adresów dla klientów BOOTP." + +-#: option.c:388 ++#: option.c:405 + msgid "Map MAC address (with wildcards) to option set." + msgstr "Przyporządkowanie znacznika w zależności od adresu MAC (można używać uogólnień: *)." + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "Traktowanie żądań DHCP odebranych na interfejsach alias, ..., jako odebranych na iface." + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "Pominięcie sprawdzania za pomocą ICMP niezajętości adresu przed jego wydzierżawieniem." + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "Skrypt powłoki uruchamiany po przyznaniu lub zwolnieniu adresu." + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "Skrypt Lua uruchamiany po przyznaniu lub zwolnieniu adresu." + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "Wskazanie użytkownika z którego uprawnieniami będą uruchamiane skrypty." + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "Wczytanie wszystkich plików ze wskazanego katalogu jako konfiguracyjnych." + +-#: option.c:395 ++#: option.c:412 + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "Wskazanie kanału syslog-a do którego mają trafiać komunikaty (domyślnie: DAEMON)" + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "Nieużywanie bazy dzierżaw." + +-#: option.c:397 ++#: option.c:414 + #, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "Maksymalna liczba jednocześnie obsługiwanych zapytań DNS (domyślnie: %s)" + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "Czyszczenie pamięci podręcznej serwera nazw w przypadku ponownego odczytu %s." + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "Nie zwracanie uwagi na nazwę podawaną przez klienta w przypadku dopasowania wszystkich wymienionych znaczników." + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "Wyłączenie oszczędzania miejsca w pakiecie DHCP przez przesuwanie pól servername i filename do opcji DHCP. Wymusza prostszy tryb budowy pakietu rozwiązując problemy z nieprzystosowanymi klientami DHCP." + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "Włączenie wbudowanego serwera TFTP (tylko do wysyłania)." + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "Ograniczenie działania serwera TFTP do wskazanego katalogu i podkatalogów. Nazwy z .. są odrzucane, / odnosi się do wskazanego katalogu." + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "Doklejanie adresu IP klienta do głównego katalogu TFTP. Jeżeli wynikowy katalog nie istnieje, nadal wykorzystuje się tftp-root." + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "Ograniczenie dostępu do plików przez TFTP do tych, których właścicielem jest użytkownik uruchamiający dnsmasq-a." + +-#: option.c:405 ++#: option.c:422 + #, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "Maksymalna liczba jednocześnie obsługiwanych połączeń TFTP (domyślnie %s)." + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "Wyłączenie możliwości negocjowania wielkości bloku dla przesyłów przez TFTP." + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "Konwertowanie nazw plików żądanych przez TFTP do małych liter" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "Wskazanie zakresu portów do użytku TFTP." + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "Włączenie spisywania w logu operacji DHCP." + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "Włączenie asynchronicznego zapisywania do logu z ewentualnym wskazaniem długości kolejki." + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "Odfiltrowywanie adresów wskazujących na komputery w sieciach wewnętrznych spośród odpowiedzi od zewnętrznych serwerów DNS." + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "Zezwolenie na przekazywanie odpowiedzi w klasie 127.0.0.0/8. Dla serwerów RBL." + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "Dezaktywacja zabezpieczenia przed atakami DNS-rebind dla wskazanych domen." + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "Jednoczesne odpytywanie wszystkich serwerów nadrzędnych; klientowi przekazywana jest pierwsza odpowiedź." + +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "Ustawienie znacznika jeżeli w żądaniu DHCP pojawi się wskazana opcja, ewentualnie o konkretnej wartości." + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "Użycie alternatywnych portów dla usługi DHCP." + +-#: option.c:417 ++#: option.c:434 + msgid "Specify NAPTR DNS record." + msgstr "Specyfikacja rekordu DNS NAPTR." + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "Ustawienie dolnej granicy numerów portów do przesyłania zapytań DNS." + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "Przechowywanie w serwerze DNS dnsmasq-a tylko w pełni kwalifikowanych nazw zgłaszanych przez klientów DHCP." + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "Generowanie nazw na podstawie MAC-adresów dla klientów bez nazwy." + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "Traktowanie wskazanych serwerów pośredniczących DHCP jako działających w trybie \"pełnomocnika\" (full-proxy)." + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "Przekazywanie żądań DHCP do zdalnego serwera" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "Wskazanie synonimu nazwy komputera lokalnego - znanego z /etc/hosts albo z DHCP." + +-#: option.c:424 ++#: option.c:441 + msgid "Prompt to send to PXE clients." + msgstr "Zgłoszenie wysyłane klientom PXE." + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "Składnik menu PXE (--> man)." + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "Sprawdzenie składni." + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "Przekazywanie MAC-adresu komputera pytającego w ruchu wychodzącym DNS." + +-#: option.c:428 ++#: option.c:445 + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "Zamieszczanie adresu IP pytającego w przekazywanych zapytaniach DNS." + +-#: option.c:429 ++#: option.c:446 + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "Przekazywanie wyników weryfikacji DNSSEC z serwerów nadrzędnych." + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "Zmiana sposobu przydzielania adresów IP na sekwencyjny." + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "Zachowanie znacznika połączenia z odebranego zapytania DNS w ruchu zewnętrznym." + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "Zezwolenie klientom DHCP na uaktualnianie DDNS-ów." + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "Załączenie anonsowania (RA) na interfejsach serwujących DHCPv6" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "Określenie DHCPv6 DUID" + +-#: option.c:435 ++#: option.c:452 + msgid "Specify host (A/AAAA and PTR) records" + msgstr "Określenie rekordów A/AAAA i PTR" + +-#: option.c:436 ++#: option.c:453 + msgid "Specify arbitrary DNS resource record" + msgstr "Określenie rekordu TXT" + +-#: option.c:437 ++#: option.c:454 + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "Dynamiczne podpinanie do interfejsów sieciowych" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "Eksportowanie lokalnych nazw hostów do globalnego DNS-a" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "Domena pod którą będą eksportowane lokalne nazwy" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "Określenie TTL dla odpowiedzi autorytatywnych" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "Określenie danych strefy autorytatywnej (SOA)" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "Pomocnicze serwery autorytatywne dla forwardowanych domen" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "Wskazanie serwerów uprawnionych do transferu stref" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "Wyszczególnienie ipset-ów, do których będą dopisywane adresy IP leżące we wskazanych domenach" + +-#: option.c:445 ++#: option.c:462 + msgid "Specify a domain and address range for synthesised names" + msgstr "Wskazanie domeny i zakresu adresów dla generowanych nazw" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "Uaktywnienie walidacji DNSSEC" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "Wskazanie punktu zaufania dla uwierzytelniania DNSSEC." + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "Akceptowanie nieuwiarygodnionych odpowiedzi DNSSEC (ustawienie bitu CD w zapytaniach)." + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "Upewnianie się, że odpowiedzi bez DNSSEC pochodzą ze stref niepodpisanych." + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "Wyłączenie sprawdzania sygnatur czasowych DNSSEC do pierwszego przeładowania pamięci podręcznej." + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "Określenie prefiksu klasy DHCPv6" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "Ustawianie priorytetu, okresu rozsyłania oraz czasu życia rutera (RA)." + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "Wyłączenie logowania zwyczajnego DHCP." + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "Wyłączenie logowania zwyczajnego DHCPv6." + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "Wyłączenie logowania RA." + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "Akceptowanie zapytań wyłącznie z sieci podpiętych bezpośrednio." + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "Wykrywanie i usuwanie pętli zapytań DNS." + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" +@@ -703,312 +736,312 @@ msgstr "" + "Użycie: dnsmasq [opcje]\n" + "\n" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "W tym systemie w linii poleceń można używać wyłącznie jednoliterowych opcji.\n" + +-#: option.c:665 ++#: option.c:684 + #, c-format + msgid "Valid options are:\n" + msgstr "Dostępne opcje:\n" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "nieprawidłowy numer portu" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "nie ma możliwości dowiązywania do interfejsu" + +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + msgid "bad interface name" + msgstr "nieprawidłowa nazwa interfejsu" + +-#: option.c:792 ++#: option.c:811 + msgid "bad address" + msgstr "zły adres" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "nieobsługiwany rodzaj enkapsulacji opcji IPv6" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "błąd w dhcp-option" + +-#: option.c:1056 ++#: option.c:1075 + msgid "bad IP address" + msgstr "zły adres IP" + +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + msgid "bad IPv6 address" + msgstr "zły adres IPv6" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "nieprawidłowa nazwa domeny w dhcp-option" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "zbyt długa dhcp-option (>255 znaków)" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "niedopuszczalne dhcp-match" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "wielokrotne użycie opcji niedozwolone (pojawiła się wcześniej w linii poleceń)" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "wielokrotne użycie opcji niedozwolone (pojawiła się wsześniej w pliku konfiguracyjnym)" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, c-format + msgid "cannot access directory %s: %s" + msgstr "brak dostępu do katalogu %s: %s" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, c-format + msgid "cannot access %s: %s" + msgstr "brak dostępu do %s: %s" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "zmiana log-facility w systemie Android nie jest możliwa" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "nierozpoznany znacznik logów" + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "nieprawidłowa wartość preferencji MX" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "nieprawidłowa nazwa MX" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "nieprawidłowa wartość celu MX" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "w uClinuksie nie ma możliwości uruchamiania skryptów" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "żeby mieć możliwość używania skryptów wywoływanych przy zmianie dzierżawy, przekompiluj dnsmasq-a z włączoną flagą HAVE_SCRIPT" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "używanie skryptów Lua, wymaga skompilowania dnsmasq-a z flagą HAVE_LUASCRIPT" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + msgid "bad prefix" + msgstr "zła maska" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "chcąc korzystać z ipsets przekompiluj dnsmasq-a z HAVE_IPSET" + +-#: option.c:2469 ++#: option.c:2545 + msgid "bad port range" + msgstr "nieprawidłowy zakres numerów portów" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "nieprawidłowa nazwa urządzenia w bridge-interface" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "można wskazać tylko jeden znacznik sieci" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "nieprawidłowy zakres dhcp-range" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "niespójny zakres adresów DHCP" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "długość prefiksu musi wynosić dokładnie 64 dla podsieci RA" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "długość prefiksu musi wynosić dokładnie 64 dla konstruktorów podsieci" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "długość prefiksu musi wynosić co najmniej 64" + +-#: option.c:2660 ++#: option.c:2736 + msgid "inconsistent DHCPv6 range" + msgstr "niespójny zakres adresów DHCPv6" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "prefiks musi wynosić zero z argumentem \"constructor:\"" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + msgid "bad hex constant" + msgstr "zapis niezgodny z formatem szesnastkowym" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "--dhcp-host nie dopuszcza dopasowywania na podstawie znaczników" + +-#: option.c:2852 ++#: option.c:2928 + #, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "powtórzony adres IP %s w specyfikacji dhcp-host" + +-#: option.c:2910 ++#: option.c:2986 + msgid "bad DHCP host name" + msgstr "niedopuszczalna nazwa komputera w dhcp-host" + +-#: option.c:2992 ++#: option.c:3068 + msgid "bad tag-if" + msgstr "nieprawidłowa składnia 'tag-if'" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "nieprawidłowy numer portu" + +-#: option.c:3378 ++#: option.c:3454 + msgid "bad dhcp-proxy address" + msgstr "zły adres dhcp-proxy" + +-#: option.c:3404 ++#: option.c:3480 + msgid "Bad dhcp-relay" + msgstr "zły dhcp-relay" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "nieprawidłowe argumenty RA" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "zły DUID" + +-#: option.c:3481 ++#: option.c:3557 + msgid "invalid alias range" + msgstr "nieprawidłowy zakres adresów w --alias" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "zła CNAME" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "powtórzona CNAME" + +-#: option.c:3560 ++#: option.c:3636 + msgid "bad PTR record" + msgstr "nieprawidłowy zapis rekordu PTR" + +-#: option.c:3591 ++#: option.c:3667 + msgid "bad NAPTR record" + msgstr "nieprawidłowy zapis rekordu NAPTR" + +-#: option.c:3625 ++#: option.c:3701 + msgid "bad RR record" + msgstr "nieprawidłowy zapis rekordu RR" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "nieprawidłowy zapis rekordu TXT" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "nieprawidłowy zapis rekordu SRV" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "nieprawidłowa wartość celu SRV" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "nieprawidłowy priorytet" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "nieprawidłowa waga" + +-#: option.c:3748 ++#: option.c:3824 + msgid "Bad host-record" + msgstr "nieprawidłowy zapis host-record" + +-#: option.c:3765 ++#: option.c:3841 + msgid "Bad name in host-record" + msgstr "niedopuszczalna nazwa w host-record" + +-#: option.c:3826 ++#: option.c:3906 + msgid "bad trust anchor" + msgstr "nieprawidłowa specyfikacja punktu zaufania" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "zły zapis szesnastkowy" + +-#: option.c:3850 ++#: option.c:3930 + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "nieobsługiwana opcja (sprawdź, czy obsługa DHCP/TFTP/DNSSEC/DBus została wkompilowana)" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "brakuje \"" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "nieprawidłowa opcja" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "nadwyżkowy parametr" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "brak parametru" + +-#: option.c:3972 ++#: option.c:4052 + msgid "illegal option" + msgstr "niedopuszczalna opcja" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "błąd" + +-#: option.c:3981 ++#: option.c:4061 + #, c-format + msgid " at line %d of %s" + msgstr " w linii %d pliku %s" + +-#: option.c:4045 option.c:4168 tftp.c:667 +-#, c-format +-msgid "cannot read %s: %s" +-msgstr "błąd odczytu z pliku %s: %s" +- +-#: option.c:4229 option.c:4265 ++#: option.c:4076 option.c:4323 option.c:4359 + #, c-format + msgid "read %s" + msgstr "przeczytałem %s" + +-#: option.c:4331 ++#: option.c:4139 option.c:4262 tftp.c:667 ++#, c-format ++msgid "cannot read %s: %s" ++msgstr "błąd odczytu z pliku %s: %s" ++ ++#: option.c:4425 + msgid "junk found in command line" + msgstr "jakieś śmieci w linii poleceń" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "Dnsmasq, wersja %s %s\n" + +-#: option.c:4367 ++#: option.c:4461 + #, c-format + msgid "" + "Compile time options: %s\n" +@@ -1017,89 +1050,89 @@ msgstr "" + "Wkompilowane opcje %s\n" + "\n" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "Autor nie daje Å»ADNYCH GWARANCJI egzekwowalnych prawnie.\n" + +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "Dnsmasq jest wolnym oprogramowaniem, możesz go rozprowadzać\n" + +-#: option.c:4370 ++#: option.c:4464 + #, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "na warunkach określonych w GNU General Public Licence, w wersji 2 lub 3.\n" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "spróbuj: --help" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "spróbuj: -w" + +-#: option.c:4385 ++#: option.c:4479 + #, c-format + msgid "bad command line options: %s" + msgstr "nieprawidłowa opcja w linii poleceń %s" + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "nie można pobrać nazwy hosta: %s" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "w trybie no-poll można wskazać najwyżej jeden plik resolv.conf." + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "musisz mieć dokładnie jeden plik resolv.conf do odczytu domen." + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, c-format + msgid "failed to read %s: %s" + msgstr "nie udało się odczytać %s: %s" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "brak wytycznych wyszukiwania w %s" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "w przypadku używania --dhcp-fqdn trzeba wskazać domyślną domenę" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "składnia sprawdzona, jest prawidłowa" + +-#: forward.c:114 ++#: forward.c:111 + #, c-format + msgid "failed to send packet: %s" + msgstr "wysyłanie pakietu nie powiodło się: %s" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "odrzucam odpowiedź DNS: nie zgadza się specyfikacja podsieci" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "serwer nazw %s odmawia wykonania zapytania rekurencyjnego" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "prawdopodobnie wykryto atak DNS-rebind: %s" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "Ignorowanie zapytań z sieci pozalokalnych." + +-#: forward.c:2101 ++#: forward.c:2178 + #, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "Osiągnięto graniczną ilość jednocześnie obsługiwanych zapytań DNS (maks: %d)" +@@ -1189,263 +1222,282 @@ msgstr "używam serwera nazw %s#%d (przez %s)" + msgid "using nameserver %s#%d" + msgstr "używam serwera nazw %s#%d" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" ++msgstr "" ++ ++#: dnsmasq.c:156 ++#, fuzzy ++msgid "no trust anchors provided for DNSSEC" + msgstr "Nie wskazano punktów zaufania dla DNSSEC." + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:159 ++#, fuzzy ++msgid "cannot reduce cache size from default when DNSSEC enabled" + msgstr "Brak możliwości zmniejszenia pamięci podręcznej poniżej wielkości domyślnej w przypadku używania DNSSEC." + +-#: dnsmasq.c:159 ++#: dnsmasq.c:161 + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "obsługa DNSSEC niedostępna - ustaw HAVE_DNSSEC w src/config.h" + +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "Serwer TFTP nie został wkompilowany -- ustaw HAVE_TFTP w src/config.h" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++#, fuzzy ++msgid "cannot use --conntrack AND --query-port" + msgstr "--conntrack i --query-port wykluczają się wzajemnie" + +-#: dnsmasq.c:173 +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++#: dnsmasq.c:175 ++#, fuzzy ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "Wsparcie dla przekazywania znaczników połączeń (conntrack) nie zostało wkompilowane - ustaw HAVE_CONNTRACK w src/config.h" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "zapis do logów w trybie asynchronicznym nie jest dostępny w Solarisie" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "zapis do logów w trybie asynchronicznym nie jest dostępny w Androidzie" + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "tryb autorytatywny DNS-a niedostępny - ustaw HAVE_AUTH w src/config.h" + +-#: dnsmasq.c:193 +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++#: dnsmasq.c:195 ++#, fuzzy ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "Wykrywanie pętli zapytań nie zostało wkompilowane - ustaw HAVE_LOOP w src/config.h" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "za pomocą --auth-soa musi zostać ustawiony numer seryjny strefy" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "konstrukcja dhcp-range nie jest dostępna w tym systemie" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "--bind-interfaces i --bind-dynamic wzajemnie się wykluczają" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "błąd podczas tworzenia listy interfejsów sieciowych: %s" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "nieznany interfejs %s" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "błąd DBus: %s" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "Obsługa DBus nie została wkompilowana -- ustaw HAVE_DBUS w src/config.h" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "nieznany użytkownik lub grupa: %s" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "nie potrafię wejść do głównego katalogu: %s" + +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, c-format + msgid "started, version %s DNS disabled" + msgstr "uruchomiony, wersja %s, DNS wyłączony" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "uruchomiony, wersja %s, %d miejsc w pamięci podręcznej" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "uruchomiony, wersja %s, pamięć podręczna wyłączona" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "opcje kompilacji: %s" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "obsługa DBus włączona, podłączono do serwera DBus" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "obsługa DBus włączona, trwa podłączanie do serwera DBus" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "usługa DNS ograniczona do lokalnych podsieci" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "walidacja DNSSEC włączona" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "sprawdzanie sygnatur czasowych DNSSEC wyłączone do czasu przeładowania pamięci podręcznej" + +-#: dnsmasq.c:684 ++#: dnsmasq.c:708 ++#, fuzzy ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "sprawdzanie sygnatur czasowych DNSSEC wyłączone do czasu przeładowania pamięci podręcznej" ++ ++#: dnsmasq.c:713 + #, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "UWAGA! Nie udało się zmienić użytkownika pliku %s: %s" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "ustawiam --bind-interfaces z powodu ograniczeń systemu operacyjnego" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "uwaga: interfejs %s nie jest włączony" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "uwaga: ignoruję opcję resolv-file, ponieważ wybrano tryb no-resolv" + +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + msgid "warning: no upstream servers configured" + msgstr "uwaga: nie wskazano nadrzędnych serwerów DNS" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "włączono asynchroniczny tryb zapisu do logów z kolejką na %d komunikatów" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "anonsowanie rutera IPv6 włączone" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "DHCP, gniazda dowiązane na wyłączność interfejsowi %s" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "z głównym katalogiem w " + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "enabled" + msgstr "włączony" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "w trybie bezpiecznym" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "ograniczam ilość jednoczesnych przesłań TFTP do %d" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "podłączono do DBus-a" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "nie potrafię przełączyć się do pracy w tle: %s" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, c-format + msgid "failed to create helper: %s" + msgstr "nie udało się utworzyć procesu pomocniczego: %s" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "nie powiodło się ustawianie ograniczeń (capabilities): %s" + +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, c-format + msgid "failed to change user-id to %s: %s" + msgstr "nie udało się zmienić użytkownika procesu na %s: %s" + +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, c-format + msgid "failed to change group-id to %s: %s" + msgstr "nie udało się zmienić grupy procesu na %s: %s" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, c-format + msgid "failed to open pidfile %s: %s" + msgstr "nie udało się otworzyć pliku z PID-em %s: %s" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, c-format + msgid "cannot open log %s: %s" + msgstr "nie udało się otworzyć logu %s: %s" + +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, c-format + msgid "failed to load Lua script: %s" + msgstr "nie udało się wczytać skryptu Lua: %s" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "katalog TFTP %s nie jest dostępny: %s" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, fuzzy, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "nie potrafię otworzyć albo utworzyć pliku dzierżaw %s: %s" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "trwa sprawdzanie sygnatur czasowych podpisów DNSSEC" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "skrypt został zabity sygnałem %d" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "skrypt zakończył się z kodem powrotu %d" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, c-format + msgid "failed to execute %s: %s" + msgstr "nie udało się uruchomić %s: %s" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "zakończyłem działanie z powodu odebrania SIGTERM" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, c-format + msgid "failed to access %s: %s" + msgstr "brak dostępu do %s: %s" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "czytanie %s" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, c-format + msgid "no servers found in %s, will retry" + msgstr "w %s nie znalazłem serwerów, spróbuję ponownie później" +@@ -1485,27 +1537,27 @@ msgstr "nieznany interfejs %s w bridge-u" + msgid "DHCP packet received on %s which has no address" + msgstr "żądanie DHCP odebrano na interfejsie %s, który nie ma adresu" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "uzupełnienie pamięci podręcznej ARP nie powiodło się: %s" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "zakres adresów DHCP %s -- %s jest niespójny z maską sieci %s" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, c-format + msgid "bad line at %s line %d" + msgstr "zła zawartość pliku %s, w linii %d" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "w %s pomijam linię %d -- powtórzona nazwa lub adres IP" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "przekazywanie DHCP %s -> %s" +@@ -1576,12 +1628,12 @@ msgstr "%u klasa użytkownika: %s" + msgid "disabled" + msgstr "wyłączony(a)" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "ignoruję" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "adres jest w użyciu" + +@@ -1601,7 +1653,7 @@ msgstr "brak skonfigurowanego adresu" + msgid "no leases left" + msgstr "brak wolnych dzierżaw" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "klient %u przedstawia się jako %s" +@@ -1610,7 +1662,7 @@ msgstr "klient %u przedstawia się jako %s" + msgid "PXE BIS not supported" + msgstr "PXE BIS nie jest obsługiwane" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "wyłączam statyczne przypisanie adresu %s dla %s" +@@ -1646,7 +1698,7 @@ msgstr "nieprawidłowy identyfikator serwera (server-ID)" + msgid "wrong address" + msgstr "błędny adres" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "dzierżawa nieznaleziona" + +@@ -1696,7 +1748,7 @@ msgstr "nie mam możliwości wysłania opcji %d DHCP/BOOTP: niedostateczna iloś + msgid "PXE menu too large" + msgstr "menu PXE zbyt duże" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, c-format + msgid "%u requested options: %s" + msgstr "%u zażądano: %s" +@@ -1711,7 +1763,7 @@ msgstr "nie mogę wysłać opcji RFC3925: za długi łańcuch opcji przy numerze + msgid "cannot create netlink socket: %s" + msgstr "nie potrafię utworzyć połączenia netlink %s" + +-#: netlink.c:347 ++#: netlink.c:348 + #, c-format + msgid "netlink returns error: %s" + msgstr "wystąpił błąd w połączeniu netlink %s" +@@ -1829,62 +1881,62 @@ msgstr "nie zdefiniowano zakresu adresów odpowiedniego dla żądania DHCPv6 od + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "%u dostępna podsieć DHCPv6: %s/%d" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, c-format + msgid "%u vendor class: %u" + msgstr "%u klasa dostawcy: %u" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, c-format + msgid "%u client MAC address: %s" + msgstr "adres MAC klienta %u: %s" + +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, c-format + msgid "unknown prefix-class %d" + msgstr "nieznana klasa sieci %d" + +-#: rfc3315.c:791 rfc3315.c:913 ++#: rfc3315.c:803 rfc3315.c:902 ++msgid "address unavailable" ++msgstr "adres niedostępny" ++ ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 + msgid "success" + msgstr "udane" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 + msgid "no addresses available" + msgstr "brak wolnych adresów" + +-#: rfc3315.c:865 +-msgid "address unavailable" +-msgstr "adres niedostępny" +- +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "poza zasięgiem" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "brak powiązania" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "przestarzały" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + msgid "address invalid" + msgstr "niepoprawny adres" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "brak potwierdzenia" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + msgid "all addresses still on link" + msgstr "wszystkie adresy ciągle w użyciu" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "adres został zwolniony" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "Nie mogę rozesłać do serwerów DHCPv6 nie mając prawidłowego interfejsu" + +@@ -1977,7 +2029,7 @@ msgstr "przekazywanie DHCP z %s do %s" + msgid "cannot create ICMPv6 socket: %s" + msgstr "nie udało się utworzyć gniazda dla ICMPv6: %s" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "ignoruję żądanie transferu strefy od %s" +@@ -1992,54 +2044,89 @@ msgstr "niezgodna wersja jądra: %s" + msgid "failed to create IPset control socket: %s" + msgstr "nie powiodło się otwieranie gniazda sterującego IPset: %s" + ++#: dnssec.c:425 dnssec.c:469 ++#, fuzzy, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "nie udało się otworzyć pliku z PID-em %s: %s" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "DNSSEC: zużycie pamięci %u, maks. %u, przydzielona %u" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "błąd: niepoprawnie użyty fill_addr" + +-#: tables.c:105 ++#: tables.c:109 + #, c-format + msgid "failed to access pf devices: %s" + msgstr "brak dostępu do /dev/pf (filtra pakietów): %s" + +-#: tables.c:119 ++#: tables.c:123 + #, c-format + msgid "warning: no opened pf devices %s" + msgstr "uwaga: brak otwartych filtrów pakietów %s" + +-#: tables.c:127 ++#: tables.c:131 + #, c-format + msgid "error: cannot use table name %s" + msgstr "błąd: nie potrafię użyć nazwy tablicy %s" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "błąd: nie potrafię strlcpy nazwy tablicy %s" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "uwaga: pfr_add_tables: %s(%d)" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "info: tablica utworzona" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "uwaga: DIOCR%sADDRS: %s" + +-#: tables.c:162 ++#: tables.c:166 + #, c-format + msgid "%d addresses %s" + msgstr "%d adresów %s" + ++#: inotify.c:46 ++#, fuzzy, c-format ++msgid "failed to create inotify: %s" ++msgstr "nie udało się utworzyć procesu pomocniczego: %s" ++ ++#: inotify.c:60 ++#, fuzzy, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "nie potrafię otworzyć albo utworzyć pliku dzierżaw %s: %s" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, fuzzy, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "nie udało się otworzyć gniazda %s: %s" ++ ++#: inotify.c:97 ++#, fuzzy, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "brak dostępu do katalogu %s: %s" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" ++ + #~ msgid "Always send frequent router-advertisements" + #~ msgstr "Rozsyłanie wielokrotne anonsów rutera (RA)" + +diff --git a/po/pt_BR.po b/po/pt_BR.po +index b91cf6ce53b4..ef6e4cbf529b 100644 +--- a/po/pt_BR.po ++++ b/po/pt_BR.po +@@ -16,70 +16,70 @@ msgstr "" + "Content-Transfer-Encoding: 8bit\n" + "Plural-Forms: nplurals=2; plural=(n > 1);\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "" + +-#: cache.c:908 ++#: cache.c:941 + #, c-format + msgid "failed to load names from %s: %s" + msgstr "" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, c-format + msgid "bad address at %s line %d" + msgstr "" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "" + +-#: cache.c:1367 ++#: cache.c:1422 + #, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "" + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "" + +-#: cache.c:1372 ++#: cache.c:1427 + #, c-format + msgid "queries for authoritative zones %u" + msgstr "" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "" +@@ -93,7 +93,7 @@ msgstr "" + msgid "failed to allocate memory" + msgstr "" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "" + +@@ -107,990 +107,1018 @@ msgstr "" + msgid "failed to allocate %d bytes" + msgstr "" + +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "" + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "" + +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "" + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "" + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "" + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "" + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "" + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "" + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "" + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "" + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "" + +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "" + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "" + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "" + +-#: option.c:332 ++#: option.c:344 + msgid "Read DHCP host specs from file." + msgstr "" + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "" + +-#: option.c:334 ++#: option.c:346 ++msgid "Read DHCP host specs from a directory." ++msgstr "" ++ ++#: option.c:347 ++msgid "Read DHCP options from a directory." ++msgstr "" ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "" + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "" + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "" + +-#: option.c:337 ++#: option.c:351 ++msgid "Read hosts files from a directory." ++msgstr "" ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "" + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "" + +-#: option.c:339 ++#: option.c:354 + msgid "Map DHCP user class to tag." + msgstr "" + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "" + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "" + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "" + +-#: option.c:343 ++#: option.c:358 + msgid "Don't do DHCP for hosts with tag set." + msgstr "" + +-#: option.c:344 ++#: option.c:359 + msgid "Force broadcast replies for hosts with tag set." + msgstr "" + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "" + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "" + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "" + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "" + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "" + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "" + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "" + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "" + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "" + +-#: option.c:354 ++#: option.c:369 + msgid "Specify options to be sent to DHCP clients." + msgstr "" + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "" + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "" + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "" + +-#: option.c:358 ++#: option.c:373 + msgid "Log DNS queries." + msgstr "" + +-#: option.c:359 ++#: option.c:374 + msgid "Force the originating port for upstream DNS queries." + msgstr "" + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "" + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "" + +-#: option.c:362 ++#: option.c:377 + msgid "Specify path to file with server= options" + msgstr "" + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "" + +-#: option.c:364 ++#: option.c:379 + msgid "Specify address of upstream servers for reverse address queries" + msgstr "" + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "" + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "" + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "" + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "" + +-#: option.c:369 ++#: option.c:384 + msgid "Specify time-to-live in seconds for negative caching." + msgstr "" + +-#: option.c:370 ++#: option.c:385 + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "" + +-#: option.c:371 ++#: option.c:386 ++msgid "Specify time-to-live ceiling for cache." ++msgstr "" ++ ++#: option.c:387 ++msgid "Specify time-to-live floor for cache." ++msgstr "" ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "" + +-#: option.c:372 ++#: option.c:389 + msgid "Map DHCP vendor class to tag." + msgstr "" + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "" + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "" + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "" + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "" + +-#: option.c:377 ++#: option.c:394 + #, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "" + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "" + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "" + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "" + +-#: option.c:381 ++#: option.c:398 + msgid "Specify PTR DNS record." + msgstr "" + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "" + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "" + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "" + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "" + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "" + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "" + +-#: option.c:388 ++#: option.c:405 + msgid "Map MAC address (with wildcards) to option set." + msgstr "" + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "" + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "" + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "" + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "" + +-#: option.c:395 ++#: option.c:412 + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "" + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "" + +-#: option.c:397 ++#: option.c:414 + #, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "" + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "" + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "" + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "" + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "" + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "" + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "" + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "" + +-#: option.c:405 ++#: option.c:422 + #, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "" + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "" + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "" + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "" + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "" + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "" + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "" + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "" + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "" + +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "" + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "" + +-#: option.c:417 ++#: option.c:434 + msgid "Specify NAPTR DNS record." + msgstr "" + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "" + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "" + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "" + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "" + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "" + +-#: option.c:424 ++#: option.c:441 + msgid "Prompt to send to PXE clients." + msgstr "" + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "" + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "" + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "" + +-#: option.c:428 ++#: option.c:445 + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "" + +-#: option.c:429 ++#: option.c:446 + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "" + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "" + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "" + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "" + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "" + +-#: option.c:435 ++#: option.c:452 + msgid "Specify host (A/AAAA and PTR) records" + msgstr "" + +-#: option.c:436 ++#: option.c:453 + msgid "Specify arbitrary DNS resource record" + msgstr "" + +-#: option.c:437 ++#: option.c:454 + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "" + +-#: option.c:445 ++#: option.c:462 + msgid "Specify a domain and address range for synthesised names" + msgstr "" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "" + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "" + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "" + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "" + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "" + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "" + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" + "\n" + msgstr "" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "" + +-#: option.c:665 ++#: option.c:684 + #, c-format + msgid "Valid options are:\n" + msgstr "" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "" + +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + msgid "bad interface name" + msgstr "" + +-#: option.c:792 ++#: option.c:811 + msgid "bad address" + msgstr "" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "" + +-#: option.c:1056 ++#: option.c:1075 + msgid "bad IP address" + msgstr "" + +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + msgid "bad IPv6 address" + msgstr "" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, c-format + msgid "cannot access directory %s: %s" + msgstr "" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, c-format + msgid "cannot access %s: %s" + msgstr "" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "" + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + msgid "bad prefix" + msgstr "" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "" + +-#: option.c:2469 ++#: option.c:2545 + msgid "bad port range" + msgstr "" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "" + +-#: option.c:2660 ++#: option.c:2736 + msgid "inconsistent DHCPv6 range" + msgstr "" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + msgid "bad hex constant" + msgstr "" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "" + +-#: option.c:2852 ++#: option.c:2928 + #, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "" + +-#: option.c:2910 ++#: option.c:2986 + msgid "bad DHCP host name" + msgstr "" + +-#: option.c:2992 ++#: option.c:3068 + msgid "bad tag-if" + msgstr "" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "" + +-#: option.c:3378 ++#: option.c:3454 + msgid "bad dhcp-proxy address" + msgstr "" + +-#: option.c:3404 ++#: option.c:3480 + msgid "Bad dhcp-relay" + msgstr "" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "" + +-#: option.c:3481 ++#: option.c:3557 + msgid "invalid alias range" + msgstr "" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "" + +-#: option.c:3560 ++#: option.c:3636 + msgid "bad PTR record" + msgstr "" + +-#: option.c:3591 ++#: option.c:3667 + msgid "bad NAPTR record" + msgstr "" + +-#: option.c:3625 ++#: option.c:3701 + msgid "bad RR record" + msgstr "" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "" + +-#: option.c:3748 ++#: option.c:3824 + msgid "Bad host-record" + msgstr "" + +-#: option.c:3765 ++#: option.c:3841 + msgid "Bad name in host-record" + msgstr "" + +-#: option.c:3826 ++#: option.c:3906 + msgid "bad trust anchor" + msgstr "" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "" + +-#: option.c:3850 ++#: option.c:3930 + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "" + +-#: option.c:3972 ++#: option.c:4052 + msgid "illegal option" + msgstr "" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "" + +-#: option.c:3981 ++#: option.c:4061 + #, c-format + msgid " at line %d of %s" + msgstr "" + +-#: option.c:4045 option.c:4168 tftp.c:667 ++#: option.c:4076 option.c:4323 option.c:4359 + #, c-format +-msgid "cannot read %s: %s" ++msgid "read %s" + msgstr "" + +-#: option.c:4229 option.c:4265 ++#: option.c:4139 option.c:4262 tftp.c:667 + #, c-format +-msgid "read %s" ++msgid "cannot read %s: %s" + msgstr "" + +-#: option.c:4331 ++#: option.c:4425 + msgid "junk found in command line" + msgstr "" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "" + +-#: option.c:4367 ++#: option.c:4461 + #, c-format + msgid "" + "Compile time options: %s\n" + "\n" + msgstr "" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "" + +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "" + +-#: option.c:4370 ++#: option.c:4464 + #, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "" + +-#: option.c:4385 ++#: option.c:4479 + #, c-format + msgid "bad command line options: %s" + msgstr "" + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "" + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "" + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, c-format + msgid "failed to read %s: %s" + msgstr "" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "" + +-#: forward.c:114 ++#: forward.c:111 + #, c-format + msgid "failed to send packet: %s" + msgstr "" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "" + +-#: forward.c:2101 ++#: forward.c:2178 + #, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "" +@@ -1180,263 +1208,276 @@ msgstr "" + msgid "using nameserver %s#%d" + msgstr "" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" + msgstr "" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:156 ++msgid "no trust anchors provided for DNSSEC" + msgstr "" + + #: dnsmasq.c:159 ++msgid "cannot reduce cache size from default when DNSSEC enabled" ++msgstr "" ++ ++#: dnsmasq.c:161 + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "" + +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++msgid "cannot use --conntrack AND --query-port" + msgstr "" + +-#: dnsmasq.c:173 +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++#: dnsmasq.c:175 ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "" + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "" + +-#: dnsmasq.c:193 +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++#: dnsmasq.c:195 ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "" + +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, c-format + msgid "started, version %s DNS disabled" + msgstr "" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "" + +-#: dnsmasq.c:684 ++#: dnsmasq.c:708 ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "" ++ ++#: dnsmasq.c:713 + #, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "" + +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + msgid "warning: no upstream servers configured" + msgstr "" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "enabled" + msgstr "" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, c-format + msgid "failed to create helper: %s" + msgstr "" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "" + +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, c-format + msgid "failed to change user-id to %s: %s" + msgstr "" + +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, c-format + msgid "failed to change group-id to %s: %s" + msgstr "" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, c-format + msgid "failed to open pidfile %s: %s" + msgstr "" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, c-format + msgid "cannot open log %s: %s" + msgstr "" + +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, c-format + msgid "failed to load Lua script: %s" + msgstr "" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, c-format + msgid "failed to execute %s: %s" + msgstr "" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, c-format + msgid "failed to access %s: %s" + msgstr "" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, c-format + msgid "no servers found in %s, will retry" + msgstr "" +@@ -1476,27 +1517,27 @@ msgstr "" + msgid "DHCP packet received on %s which has no address" + msgstr "" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, c-format + msgid "bad line at %s line %d" + msgstr "" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "" +@@ -1567,12 +1608,12 @@ msgstr "" + msgid "disabled" + msgstr "" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "" + +@@ -1592,7 +1633,7 @@ msgstr "" + msgid "no leases left" + msgstr "" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "" +@@ -1601,7 +1642,7 @@ msgstr "" + msgid "PXE BIS not supported" + msgstr "" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "" +@@ -1637,7 +1678,7 @@ msgstr "" + msgid "wrong address" + msgstr "" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "" + +@@ -1687,7 +1728,7 @@ msgstr "" + msgid "PXE menu too large" + msgstr "" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, c-format + msgid "%u requested options: %s" + msgstr "" +@@ -1702,7 +1743,7 @@ msgstr "" + msgid "cannot create netlink socket: %s" + msgstr "" + +-#: netlink.c:347 ++#: netlink.c:348 + #, c-format + msgid "netlink returns error: %s" + msgstr "" +@@ -1820,62 +1861,62 @@ msgstr "" + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, c-format + msgid "%u vendor class: %u" + msgstr "" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, c-format + msgid "%u client MAC address: %s" + msgstr "" + +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, c-format + msgid "unknown prefix-class %d" + msgstr "" + +-#: rfc3315.c:791 rfc3315.c:913 +-msgid "success" ++#: rfc3315.c:803 rfc3315.c:902 ++msgid "address unavailable" + msgstr "" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 +-msgid "no addresses available" ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 ++msgid "success" + msgstr "" + +-#: rfc3315.c:865 +-msgid "address unavailable" ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 ++msgid "no addresses available" + msgstr "" + +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + msgid "address invalid" + msgstr "" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + msgid "all addresses still on link" + msgstr "" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "" + +@@ -1968,7 +2009,7 @@ msgstr "" + msgid "cannot create ICMPv6 socket: %s" + msgstr "" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "" +@@ -1983,50 +2024,85 @@ msgstr "" + msgid "failed to create IPset control socket: %s" + msgstr "" + ++#: dnssec.c:425 dnssec.c:469 ++#, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "" + +-#: tables.c:105 ++#: tables.c:109 + #, c-format + msgid "failed to access pf devices: %s" + msgstr "" + +-#: tables.c:119 ++#: tables.c:123 + #, c-format + msgid "warning: no opened pf devices %s" + msgstr "" + +-#: tables.c:127 ++#: tables.c:131 + #, c-format + msgid "error: cannot use table name %s" + msgstr "" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "" + +-#: tables.c:162 ++#: tables.c:166 + #, c-format + msgid "%d addresses %s" + msgstr "" ++ ++#: inotify.c:46 ++#, c-format ++msgid "failed to create inotify: %s" ++msgstr "" ++ ++#: inotify.c:60 ++#, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "" ++ ++#: inotify.c:97 ++#, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" +diff --git a/po/ro.po b/po/ro.po +index 6887fcb62636..0ac8bd63e25f 100644 +--- a/po/ro.po ++++ b/po/ro.po +@@ -15,71 +15,71 @@ msgstr "" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: cache.c:505 ++#: cache.c:523 + msgid "Internal error in cache." + msgstr "" + + # for compatibility purposes the letters â, ă, ş, Å£ and î can be written as their look-alike correspondent. +-#: cache.c:908 ++#: cache.c:941 + #, fuzzy, c-format + msgid "failed to load names from %s: %s" + msgstr "încărcarea numelor din %s: %s a eşuat" + +-#: cache.c:934 dhcp.c:820 ++#: cache.c:967 dhcp.c:825 + #, c-format + msgid "bad address at %s line %d" + msgstr "adresă greşită în %s, linia %d" + +-#: cache.c:985 dhcp.c:836 ++#: cache.c:1018 dhcp.c:841 + #, c-format + msgid "bad name at %s line %d" + msgstr "nume greşit în %s linia %d" + +-#: cache.c:992 dhcp.c:911 ++#: cache.c:1027 dhcp.c:916 + #, c-format + msgid "read %s - %d addresses" + msgstr "citesc %s - %d adrese" + +-#: cache.c:1100 ++#: cache.c:1135 + msgid "cleared cache" + msgstr "memoria temporară a fost ştearsă" + +-#: cache.c:1123 ++#: cache.c:1164 + #, c-format + msgid "No IPv4 address found for %s" + msgstr "" + +-#: cache.c:1201 ++#: cache.c:1242 + #, c-format + msgid "%s is a CNAME, not giving it to the DHCP lease of %s" + msgstr "" + +-#: cache.c:1225 ++#: cache.c:1266 + #, c-format + msgid "not giving name %s to the DHCP lease of %s because the name exists in %s with address %s" + msgstr "nu pot da numele %s împrumutului de adresă DHCP a lui %s deoarece numeleexistă în %s cu adresa %s" + +-#: cache.c:1366 ++#: cache.c:1421 + #, c-format + msgid "time %lu" + msgstr "" + +-#: cache.c:1367 ++#: cache.c:1422 + #, fuzzy, c-format + msgid "cache size %d, %d/%d cache insertions re-used unexpired cache entries." + msgstr "cantitate de memorie temporară %d, %d/%d stocări temporare aureutilizat locaÅ£ii neexpirate." + +-#: cache.c:1369 ++#: cache.c:1424 + #, c-format + msgid "queries forwarded %u, queries answered locally %u" + msgstr "" + +-#: cache.c:1372 ++#: cache.c:1427 + #, c-format + msgid "queries for authoritative zones %u" + msgstr "" + +-#: cache.c:1398 ++#: cache.c:1453 + #, c-format + msgid "server %s#%d: queries sent %u, retried or failed %u" + msgstr "" +@@ -94,7 +94,7 @@ msgstr "ascultarea pe socket a eşuat: %s" + msgid "failed to allocate memory" + msgstr "nu pot încărca %d bytes" + +-#: util.c:243 option.c:579 ++#: util.c:243 option.c:598 + msgid "could not get memory" + msgstr "nu am putut aloca memorie" + +@@ -108,610 +108,643 @@ msgstr "nu pot citi %s: %s" + msgid "failed to allocate %d bytes" + msgstr "nu pot încărca %d bytes" + +-#: util.c:429 ++#: util.c:430 + #, c-format + msgid "infinite" + msgstr "infinit" + +-#: option.c:318 ++#: option.c:330 + msgid "Specify local address(es) to listen on." + msgstr "SpecificaÅ£i adresele locale deservite." + +-#: option.c:319 ++#: option.c:331 + msgid "Return ipaddr for all hosts in specified domains." + msgstr "Afişează adresele IP ale maşinilor în domeniul dat." + +-#: option.c:320 ++#: option.c:332 + msgid "Fake reverse lookups for RFC1918 private address ranges." + msgstr "Simulează căutări după adresă pentru domenii de adresă private (RFC1918)." + +-#: option.c:321 ++#: option.c:333 + msgid "Treat ipaddr as NXDOMAIN (defeats Verisign wildcard)." + msgstr "Interpretează adresa IP ca NXDOMAIN (împotriva manipulărilor Verisign)" + +-#: option.c:322 ++#: option.c:334 + #, c-format + msgid "Specify the size of the cache in entries (defaults to %s)." + msgstr "Specifică mărimea înregistrărilor temporare (implicit e %s)." + +-#: option.c:323 ++#: option.c:335 + #, c-format + msgid "Specify configuration file (defaults to %s)." + msgstr "Specifică fişier de configurare (implicit e %s)." + +-#: option.c:324 ++#: option.c:336 + msgid "Do NOT fork into the background: run in debug mode." + msgstr "NU porneşte în fundal: rulează în modul depanare." + +-#: option.c:325 ++#: option.c:337 + msgid "Do NOT forward queries with no domain part." + msgstr "NU înainta cererile ce nu conÅ£in domeniu DNS." + +-#: option.c:326 ++#: option.c:338 + msgid "Return self-pointing MX records for local hosts." + msgstr "Răspunde cu înregistrări MX spre el însuşi pentru maşini locale." + +-#: option.c:327 ++#: option.c:339 + msgid "Expand simple names in /etc/hosts with domain-suffix." + msgstr "Adaugă numelor simple din /etc/hosts numele domeniului ca sufix." + +-#: option.c:328 ++#: option.c:340 + msgid "Don't forward spurious DNS requests from Windows hosts." + msgstr "Nu inainta cereri DNS defecte provenite de la maşini Windows." + +-#: option.c:329 ++#: option.c:341 + msgid "Enable DHCP in the range given with lease duration." + msgstr "Activează DHCP în domeniul dat cu durată limitată de împrumut." + +-#: option.c:330 ++#: option.c:342 + #, c-format + msgid "Change to this group after startup (defaults to %s)." + msgstr "Rulează sub acest grup după pornire (implicit e %s)." + +-#: option.c:331 ++#: option.c:343 + msgid "Set address or hostname for a specified machine." + msgstr "Schimbă adresa sau numele maşinii specificate." + +-#: option.c:332 ++#: option.c:344 + #, fuzzy + msgid "Read DHCP host specs from file." + msgstr "nume MX invalid" + +-#: option.c:333 ++#: option.c:345 + msgid "Read DHCP option specs from file." + msgstr "" + +-#: option.c:334 ++#: option.c:346 ++#, fuzzy ++msgid "Read DHCP host specs from a directory." ++msgstr "nume MX invalid" ++ ++#: option.c:347 ++#, fuzzy ++msgid "Read DHCP options from a directory." ++msgstr "nume MX invalid" ++ ++#: option.c:348 + msgid "Evaluate conditional tag expression." + msgstr "" + +-#: option.c:335 ++#: option.c:349 + #, c-format + msgid "Do NOT load %s file." + msgstr "Nu încarcă fişierul %s." + +-#: option.c:336 ++#: option.c:350 + #, c-format + msgid "Specify a hosts file to be read in addition to %s." + msgstr "Specifică spre citire un fişier hosts adiÅ£ional la %s." + +-#: option.c:337 ++#: option.c:351 ++#, fuzzy ++msgid "Read hosts files from a directory." ++msgstr "nume MX invalid" ++ ++#: option.c:352 + msgid "Specify interface(s) to listen on." + msgstr "Specifică interfeÅ£ele deservite." + +-#: option.c:338 ++#: option.c:353 + msgid "Specify interface(s) NOT to listen on." + msgstr "Specifică interfeÅ£ele NE-deservite." + +-#: option.c:339 ++#: option.c:354 + #, fuzzy + msgid "Map DHCP user class to tag." + msgstr "Leagă clasa de utilizator DHCP cu grup de opÅ£iuni." + +-#: option.c:340 ++#: option.c:355 + msgid "Map RFC3046 circuit-id to tag." + msgstr "" + +-#: option.c:341 ++#: option.c:356 + msgid "Map RFC3046 remote-id to tag." + msgstr "" + +-#: option.c:342 ++#: option.c:357 + msgid "Map RFC3993 subscriber-id to tag." + msgstr "" + +-#: option.c:343 ++#: option.c:358 + #, fuzzy + msgid "Don't do DHCP for hosts with tag set." + msgstr "Nu furniza DHCP maşinilor din grupul de opÅ£iuni." + +-#: option.c:344 ++#: option.c:359 + #, fuzzy + msgid "Force broadcast replies for hosts with tag set." + msgstr "Nu furniza DHCP maşinilor din grupul de opÅ£iuni." + +-#: option.c:345 ++#: option.c:360 + msgid "Do NOT fork into the background, do NOT run in debug mode." + msgstr "NU porneşte în fundal, NU rulează în modul depanare." + +-#: option.c:346 ++#: option.c:361 + msgid "Assume we are the only DHCP server on the local network." + msgstr "Presupune că suntem singurul server DHCP din reÅ£eaua locală." + +-#: option.c:347 ++#: option.c:362 + #, c-format + msgid "Specify where to store DHCP leases (defaults to %s)." + msgstr "Specifică fişierul de stocare a împrumuturilor DHCP (implicit e %s)." + +-#: option.c:348 ++#: option.c:363 + msgid "Return MX records for local hosts." + msgstr "Răspunde cu întregistrări MX pentru maşini locale." + +-#: option.c:349 ++#: option.c:364 + msgid "Specify an MX record." + msgstr "Specifică o înregistrare MX." + +-#: option.c:350 ++#: option.c:365 + msgid "Specify BOOTP options to DHCP server." + msgstr "Specifică opÅ£iuni BOOTP serverului DHCP." + +-#: option.c:351 ++#: option.c:366 + #, c-format + msgid "Do NOT poll %s file, reload only on SIGHUP." + msgstr "Nu încărca fişierul %s, citeşte-l doar la SIGHUP." + +-#: option.c:352 ++#: option.c:367 + msgid "Do NOT cache failed search results." + msgstr "NU memora rezultatele de căutare DNS eşuatată." + +-#: option.c:353 ++#: option.c:368 + #, c-format + msgid "Use nameservers strictly in the order given in %s." + msgstr "Foloseşte servere DNS strict în ordinea dată în %s." + +-#: option.c:354 ++#: option.c:369 + #, fuzzy + msgid "Specify options to be sent to DHCP clients." + msgstr "Configurează opÅ£iuni în plusce trebuie trimise clienÅ£ilor DHCP." + +-#: option.c:355 ++#: option.c:370 + msgid "DHCP option sent even if the client does not request it." + msgstr "" + +-#: option.c:356 ++#: option.c:371 + msgid "Specify port to listen for DNS requests on (defaults to 53)." + msgstr "Specifică numărul portului pentru cereri DNS (implicit e 53)." + +-#: option.c:357 ++#: option.c:372 + #, c-format + msgid "Maximum supported UDP packet size for EDNS.0 (defaults to %s)." + msgstr "Marimea maximă a pachetului UDP pentru EDNS.0 (implicit e %s)." + +-#: option.c:358 ++#: option.c:373 + #, fuzzy + msgid "Log DNS queries." + msgstr "Înregistrează tranzacÅ£iile." + +-#: option.c:359 ++#: option.c:374 + #, fuzzy + msgid "Force the originating port for upstream DNS queries." + msgstr "ForÅ£ează acest port pentru datele ce pleacă." + +-#: option.c:360 ++#: option.c:375 + msgid "Do NOT read resolv.conf." + msgstr "NU citi fişierul resolv.conf" + +-#: option.c:361 ++#: option.c:376 + #, c-format + msgid "Specify path to resolv.conf (defaults to %s)." + msgstr "Specifică calea către resolv.conf (implicit e %s)." + +-#: option.c:362 ++#: option.c:377 + #, fuzzy + msgid "Specify path to file with server= options" + msgstr "Specifică o cale pentru fişierul PID. (implicit %s)." + +-#: option.c:363 ++#: option.c:378 + msgid "Specify address(es) of upstream servers with optional domains." + msgstr "Specifică adresele server(elor) superioare cu domenii opÅ£ionale." + +-#: option.c:364 ++#: option.c:379 + #, fuzzy + msgid "Specify address of upstream servers for reverse address queries" + msgstr "Specifică adresele server(elor) superioare cu domenii opÅ£ionale." + +-#: option.c:365 ++#: option.c:380 + msgid "Never forward queries to specified domains." + msgstr "Nu înaintează cererile spre domeniile specificate." + +-#: option.c:366 ++#: option.c:381 + msgid "Specify the domain to be assigned in DHCP leases." + msgstr "Specifică domeniul de transmis prin DHCP." + +-#: option.c:367 ++#: option.c:382 + msgid "Specify default target in an MX record." + msgstr "Specifică o Å£intă într-o înregistrare MX." + +-#: option.c:368 ++#: option.c:383 + msgid "Specify time-to-live in seconds for replies from /etc/hosts." + msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts." + +-#: option.c:369 ++#: option.c:384 + #, fuzzy + msgid "Specify time-to-live in seconds for negative caching." + msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts." + +-#: option.c:370 ++#: option.c:385 + #, fuzzy + msgid "Specify time-to-live in seconds for maximum TTL to send to clients." + msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts." + +-#: option.c:371 ++#: option.c:386 ++#, fuzzy ++msgid "Specify time-to-live ceiling for cache." ++msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts." ++ ++#: option.c:387 ++#, fuzzy ++msgid "Specify time-to-live floor for cache." ++msgstr "Specifică TTL în secunde pentru răspunsurile din /etc/hosts." ++ ++#: option.c:388 + #, c-format + msgid "Change to this user after startup. (defaults to %s)." + msgstr "Rulează sub acest utilizator după pornire. (implicit e %s)." + +-#: option.c:372 ++#: option.c:389 + #, fuzzy + msgid "Map DHCP vendor class to tag." + msgstr "Trimite opÅ£iuni DHCP în funcÅ£ie de marca plăcii de reÅ£ea." + +-#: option.c:373 ++#: option.c:390 + msgid "Display dnsmasq version and copyright information." + msgstr "Afişează versiunea dnsmasq şi drepturile de autor." + +-#: option.c:374 ++#: option.c:391 + msgid "Translate IPv4 addresses from upstream servers." + msgstr "Traduce adresele IPv4 de la serverele DNS superioare." + +-#: option.c:375 ++#: option.c:392 + msgid "Specify a SRV record." + msgstr "Specifică o înregistrare SRV." + +-#: option.c:376 ++#: option.c:393 + msgid "Display this message. Use --help dhcp for known DHCP options." + msgstr "" + +-#: option.c:377 ++#: option.c:394 + #, fuzzy, c-format + msgid "Specify path of PID file (defaults to %s)." + msgstr "Specifică o cale pentru fişierul PID. (implicit %s)." + +-#: option.c:378 ++#: option.c:395 + #, c-format + msgid "Specify maximum number of DHCP leases (defaults to %s)." + msgstr "Specifică numărul maxim de împrumuturi DHCP (implicit %s)." + +-#: option.c:379 ++#: option.c:396 + msgid "Answer DNS queries based on the interface a query was sent to." + msgstr "Răspunde cererilor DNS în funcÅ£ie de interfaÅ£a pe care a venit cererea." + +-#: option.c:380 ++#: option.c:397 + msgid "Specify TXT DNS record." + msgstr "Specifică o înregistrare TXT." + +-#: option.c:381 ++#: option.c:398 + #, fuzzy + msgid "Specify PTR DNS record." + msgstr "Specifică o înregistrare TXT." + +-#: option.c:382 ++#: option.c:399 + msgid "Give DNS name to IPv4 address of interface." + msgstr "" + +-#: option.c:383 ++#: option.c:400 + msgid "Bind only to interfaces in use." + msgstr "Ascultă doar pe interfeÅ£ele active." + +-#: option.c:384 ++#: option.c:401 + #, c-format + msgid "Read DHCP static host information from %s." + msgstr "Citeşte informaÅ£ii DHCP statice despre maşină din %s." + +-#: option.c:385 ++#: option.c:402 + msgid "Enable the DBus interface for setting upstream servers, etc." + msgstr "Activeaza interfaÅ£a DBus pentru configurarea serverelor superioare." + +-#: option.c:386 ++#: option.c:403 + msgid "Do not provide DHCP on this interface, only provide DNS." + msgstr "Nu activează DHCP ci doar DNS pe această interfaţă." + +-#: option.c:387 ++#: option.c:404 + msgid "Enable dynamic address allocation for bootp." + msgstr "Activează alocarea dinamică a adreselor pentru BOOTP." + +-#: option.c:388 ++#: option.c:405 + #, fuzzy + msgid "Map MAC address (with wildcards) to option set." + msgstr "Trimite opÅ£iuni DHCP în funcÅ£ie de marca plăcii de reÅ£ea." + +-#: option.c:389 ++#: option.c:406 + msgid "Treat DHCP requests on aliases as arriving from interface." + msgstr "" + +-#: option.c:390 ++#: option.c:407 + msgid "Disable ICMP echo address checking in the DHCP server." + msgstr "" + +-#: option.c:391 ++#: option.c:408 + msgid "Shell script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:392 ++#: option.c:409 + msgid "Lua script to run on DHCP lease creation and destruction." + msgstr "" + +-#: option.c:393 ++#: option.c:410 + msgid "Run lease-change scripts as this user." + msgstr "" + +-#: option.c:394 ++#: option.c:411 + msgid "Read configuration from all the files in this directory." + msgstr "" + +-#: option.c:395 ++#: option.c:412 + #, fuzzy + msgid "Log to this syslog facility or file. (defaults to DAEMON)" + msgstr "Rulează sub acest utilizator după pornire. (implicit e %s)." + +-#: option.c:396 ++#: option.c:413 + msgid "Do not use leasefile." + msgstr "" + +-#: option.c:397 ++#: option.c:414 + #, fuzzy, c-format + msgid "Maximum number of concurrent DNS queries. (defaults to %s)" + msgstr "Specifică numărul maxim de împrumuturi DHCP (implicit %s)." + +-#: option.c:398 ++#: option.c:415 + #, c-format + msgid "Clear DNS cache when reloading %s." + msgstr "" + +-#: option.c:399 ++#: option.c:416 + msgid "Ignore hostnames provided by DHCP clients." + msgstr "" + +-#: option.c:400 ++#: option.c:417 + msgid "Do NOT reuse filename and server fields for extra DHCP options." + msgstr "" + +-#: option.c:401 ++#: option.c:418 + msgid "Enable integrated read-only TFTP server." + msgstr "" + +-#: option.c:402 ++#: option.c:419 + msgid "Export files by TFTP only from the specified subtree." + msgstr "" + +-#: option.c:403 ++#: option.c:420 + msgid "Add client IP address to tftp-root." + msgstr "" + +-#: option.c:404 ++#: option.c:421 + msgid "Allow access only to files owned by the user running dnsmasq." + msgstr "" + +-#: option.c:405 ++#: option.c:422 + #, fuzzy, c-format + msgid "Maximum number of conncurrent TFTP transfers (defaults to %s)." + msgstr "Specifică numărul maxim de împrumuturi DHCP (implicit %s)." + +-#: option.c:406 ++#: option.c:423 + msgid "Disable the TFTP blocksize extension." + msgstr "" + +-#: option.c:407 ++#: option.c:424 + msgid "Convert TFTP filenames to lowercase" + msgstr "" + +-#: option.c:408 ++#: option.c:425 + msgid "Ephemeral port range for use by TFTP transfers." + msgstr "" + +-#: option.c:409 ++#: option.c:426 + msgid "Extra logging for DHCP." + msgstr "" + +-#: option.c:410 ++#: option.c:427 + msgid "Enable async. logging; optionally set queue length." + msgstr "" + +-#: option.c:411 ++#: option.c:428 + msgid "Stop DNS rebinding. Filter private IP ranges when resolving." + msgstr "" + +-#: option.c:412 ++#: option.c:429 + msgid "Allow rebinding of 127.0.0.0/8, for RBL servers." + msgstr "" + +-#: option.c:413 ++#: option.c:430 + msgid "Inhibit DNS-rebind protection on this domain." + msgstr "" + +-#: option.c:414 ++#: option.c:431 + msgid "Always perform DNS queries to all servers." + msgstr "" + +-#: option.c:415 ++#: option.c:432 + msgid "Set tag if client includes matching option in request." + msgstr "" + +-#: option.c:416 ++#: option.c:433 + msgid "Use alternative ports for DHCP." + msgstr "" + +-#: option.c:417 ++#: option.c:434 + #, fuzzy + msgid "Specify NAPTR DNS record." + msgstr "Specifică o înregistrare TXT." + +-#: option.c:418 ++#: option.c:435 + msgid "Specify lowest port available for DNS query transmission." + msgstr "" + +-#: option.c:419 ++#: option.c:436 + msgid "Use only fully qualified domain names for DHCP clients." + msgstr "" + +-#: option.c:420 ++#: option.c:437 + msgid "Generate hostnames based on MAC address for nameless clients." + msgstr "" + +-#: option.c:421 ++#: option.c:438 + msgid "Use these DHCP relays as full proxies." + msgstr "" + +-#: option.c:422 ++#: option.c:439 + msgid "Relay DHCP requests to a remote server" + msgstr "" + +-#: option.c:423 ++#: option.c:440 + msgid "Specify alias name for LOCAL DNS name." + msgstr "" + +-#: option.c:424 ++#: option.c:441 + #, fuzzy + msgid "Prompt to send to PXE clients." + msgstr "Configurează opÅ£iuni în plusce trebuie trimise clienÅ£ilor DHCP." + +-#: option.c:425 ++#: option.c:442 + msgid "Boot service for PXE menu." + msgstr "" + +-#: option.c:426 ++#: option.c:443 + msgid "Check configuration syntax." + msgstr "" + +-#: option.c:427 ++#: option.c:444 + msgid "Add requestor's MAC address to forwarded DNS queries." + msgstr "" + +-#: option.c:428 ++#: option.c:445 + msgid "Add requestor's IP subnet to forwarded DNS queries." + msgstr "" + +-#: option.c:429 ++#: option.c:446 + #, fuzzy + msgid "Proxy DNSSEC validation results from upstream nameservers." + msgstr "Traduce adresele IPv4 de la serverele DNS superioare." + +-#: option.c:430 ++#: option.c:447 + msgid "Attempt to allocate sequential IP addresses to DHCP clients." + msgstr "" + +-#: option.c:431 ++#: option.c:448 + msgid "Copy connection-track mark from queries to upstream connections." + msgstr "" + +-#: option.c:432 ++#: option.c:449 + msgid "Allow DHCP clients to do their own DDNS updates." + msgstr "" + +-#: option.c:433 ++#: option.c:450 + msgid "Send router-advertisements for interfaces doing DHCPv6" + msgstr "" + +-#: option.c:434 ++#: option.c:451 + msgid "Specify DUID_EN-type DHCPv6 server DUID" + msgstr "" + +-#: option.c:435 ++#: option.c:452 + #, fuzzy + msgid "Specify host (A/AAAA and PTR) records" + msgstr "Specifică o înregistrare MX." + +-#: option.c:436 ++#: option.c:453 + #, fuzzy + msgid "Specify arbitrary DNS resource record" + msgstr "Specifică o înregistrare TXT." + +-#: option.c:437 ++#: option.c:454 + #, fuzzy + msgid "Bind to interfaces in use - check for new interfaces" + msgstr "interfaţă necunoscută %s" + +-#: option.c:438 ++#: option.c:455 + msgid "Export local names to global DNS" + msgstr "" + +-#: option.c:439 ++#: option.c:456 + msgid "Domain to export to global DNS" + msgstr "" + +-#: option.c:440 ++#: option.c:457 + msgid "Set TTL for authoritative replies" + msgstr "" + +-#: option.c:441 ++#: option.c:458 + msgid "Set authoritive zone information" + msgstr "" + +-#: option.c:442 ++#: option.c:459 + msgid "Secondary authoritative nameservers for forward domains" + msgstr "" + +-#: option.c:443 ++#: option.c:460 + msgid "Peers which are allowed to do zone transfer" + msgstr "" + +-#: option.c:444 ++#: option.c:461 + msgid "Specify ipsets to which matching domains should be added" + msgstr "" + +-#: option.c:445 ++#: option.c:462 + msgid "Specify a domain and address range for synthesised names" + msgstr "" + +-#: option.c:446 ++#: option.c:463 + msgid "Activate DNSSEC validation" + msgstr "" + +-#: option.c:447 ++#: option.c:464 + msgid "Specify trust anchor key digest." + msgstr "" + +-#: option.c:448 ++#: option.c:465 + msgid "Disable upstream checking for DNSSEC debugging." + msgstr "" + +-#: option.c:449 ++#: option.c:466 + msgid "Ensure answers without DNSSEC are in unsigned zones." + msgstr "" + +-#: option.c:450 ++#: option.c:467 + msgid "Don't check DNSSEC signature timestamps until first cache-reload" + msgstr "" + +-#: option.c:452 ++#: option.c:468 ++msgid "Timestamp file to verify system clock for DNSSEC" ++msgstr "" ++ ++#: option.c:470 + msgid "Specify DHCPv6 prefix class" + msgstr "" + +-#: option.c:454 ++#: option.c:472 + msgid "Set priority, resend-interval and router-lifetime" + msgstr "" + +-#: option.c:455 ++#: option.c:473 + msgid "Do not log routine DHCP." + msgstr "" + +-#: option.c:456 ++#: option.c:474 + msgid "Do not log routine DHCPv6." + msgstr "" + +-#: option.c:457 ++#: option.c:475 + msgid "Do not log RA." + msgstr "" + +-#: option.c:458 ++#: option.c:476 + msgid "Accept queries only from directly-connected networks" + msgstr "" + +-#: option.c:459 ++#: option.c:477 + msgid "Detect and remove DNS forwarding loops" + msgstr "" + +-#: option.c:661 ++#: option.c:478 ++msgid "Ignore DNS responses containing ipaddr." ++msgstr "" ++ ++#: option.c:680 + #, c-format + msgid "" + "Usage: dnsmasq [options]\n" +@@ -720,332 +753,332 @@ msgstr "" + "Utilizare: dnsmasq [opÅ£iuni]\n" + "\n" + +-#: option.c:663 ++#: option.c:682 + #, c-format + msgid "Use short options only on the command line.\n" + msgstr "FolosiÅ£i opÅ£iunile prescurtate doar în linie de comandă.\n" + +-#: option.c:665 ++#: option.c:684 + #, fuzzy, c-format + msgid "Valid options are:\n" + msgstr "OpÅ£iunile valide sunt:\n" + +-#: option.c:722 option.c:726 ++#: option.c:741 option.c:745 + msgid "bad port" + msgstr "port invalid" + +-#: option.c:753 option.c:785 ++#: option.c:772 option.c:804 + msgid "interface binding not supported" + msgstr "" + +-#: option.c:762 option.c:3494 ++#: option.c:781 option.c:3570 + #, fuzzy + msgid "bad interface name" + msgstr "nume MX invalid" + +-#: option.c:792 ++#: option.c:811 + #, fuzzy + msgid "bad address" + msgstr "citesc %s - %d adrese" + +-#: option.c:974 ++#: option.c:993 + msgid "unsupported encapsulation for IPv6 option" + msgstr "" + +-#: option.c:988 ++#: option.c:1007 + msgid "bad dhcp-option" + msgstr "dhcp-option invalid" + +-#: option.c:1056 ++#: option.c:1075 + #, fuzzy + msgid "bad IP address" + msgstr "citesc %s - %d adrese" + +-#: option.c:1059 option.c:1197 option.c:2812 ++#: option.c:1078 option.c:1216 option.c:2888 + #, fuzzy + msgid "bad IPv6 address" + msgstr "citesc %s - %d adrese" + +-#: option.c:1224 option.c:1318 ++#: option.c:1243 option.c:1337 + msgid "bad domain in dhcp-option" + msgstr "domeniu DNS invalid în declaraÅ£ia dhcp-option" + +-#: option.c:1356 ++#: option.c:1375 + msgid "dhcp-option too long" + msgstr "declararea dhcp-option este prea lungă" + +-#: option.c:1363 ++#: option.c:1382 + msgid "illegal dhcp-match" + msgstr "" + +-#: option.c:1425 ++#: option.c:1444 + msgid "illegal repeated flag" + msgstr "" + +-#: option.c:1433 ++#: option.c:1452 + msgid "illegal repeated keyword" + msgstr "" + +-#: option.c:1495 option.c:4092 ++#: option.c:1517 option.c:4186 + #, fuzzy, c-format + msgid "cannot access directory %s: %s" + msgstr "nu pot citi %s: %s" + +-#: option.c:1541 tftp.c:493 ++#: option.c:1563 tftp.c:493 + #, fuzzy, c-format + msgid "cannot access %s: %s" + msgstr "nu pot citi %s: %s" + +-#: option.c:1588 ++#: option.c:1615 + msgid "setting log facility is not possible under Android" + msgstr "" + +-#: option.c:1597 ++#: option.c:1624 + msgid "bad log facility" + msgstr "" + +-#: option.c:1650 ++#: option.c:1677 + msgid "bad MX preference" + msgstr "preferinţă MX invalidă" + +-#: option.c:1655 ++#: option.c:1682 + msgid "bad MX name" + msgstr "nume MX invalid" + +-#: option.c:1669 ++#: option.c:1696 + msgid "bad MX target" + msgstr "Å£intă MX invalidă" + +-#: option.c:1681 ++#: option.c:1708 + msgid "cannot run scripts under uClinux" + msgstr "" + +-#: option.c:1683 ++#: option.c:1710 + msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" + msgstr "" + +-#: option.c:1687 ++#: option.c:1714 + msgid "recompile with HAVE_LUASCRIPT defined to enable Lua scripts" + msgstr "" + +-#: option.c:1928 option.c:1966 option.c:2015 ++#: option.c:1970 option.c:2015 option.c:2071 + #, fuzzy + msgid "bad prefix" + msgstr "port invalid" + +-#: option.c:2289 ++#: option.c:2352 + msgid "recompile with HAVE_IPSET defined to enable ipset directives" + msgstr "" + +-#: option.c:2469 ++#: option.c:2545 + #, fuzzy + msgid "bad port range" + msgstr "port invalid" + +-#: option.c:2485 ++#: option.c:2561 + msgid "bad bridge-interface" + msgstr "" + +-#: option.c:2545 ++#: option.c:2621 + msgid "only one tag allowed" + msgstr "" + +-#: option.c:2565 option.c:2577 option.c:2683 option.c:2724 ++#: option.c:2641 option.c:2653 option.c:2759 option.c:2800 + msgid "bad dhcp-range" + msgstr "dhcp-range invalid" + +-#: option.c:2592 ++#: option.c:2668 + msgid "inconsistent DHCP range" + msgstr "domeniu DHCP inconsistent" + +-#: option.c:2651 ++#: option.c:2727 + msgid "prefix length must be exactly 64 for RA subnets" + msgstr "" + +-#: option.c:2653 ++#: option.c:2729 + msgid "prefix length must be exactly 64 for subnet constructors" + msgstr "" + +-#: option.c:2657 ++#: option.c:2733 + msgid "prefix length must be at least 64" + msgstr "" + +-#: option.c:2660 ++#: option.c:2736 + #, fuzzy + msgid "inconsistent DHCPv6 range" + msgstr "domeniu DHCP inconsistent" + +-#: option.c:2671 ++#: option.c:2747 + msgid "prefix must be zero with \"constructor:\" argument" + msgstr "" + +-#: option.c:2782 option.c:2830 ++#: option.c:2858 option.c:2906 + #, fuzzy + msgid "bad hex constant" + msgstr "dhcp-host invalid" + +-#: option.c:2804 ++#: option.c:2880 + msgid "cannot match tags in --dhcp-host" + msgstr "" + +-#: option.c:2852 ++#: option.c:2928 + #, fuzzy, c-format + msgid "duplicate dhcp-host IP address %s" + msgstr "adresă IP duplicat %s în declaraÅ£ia dhcp-config." + +-#: option.c:2910 ++#: option.c:2986 + #, fuzzy + msgid "bad DHCP host name" + msgstr "nume MX invalid" + +-#: option.c:2992 ++#: option.c:3068 + #, fuzzy + msgid "bad tag-if" + msgstr "Å£intă MX invalidă" + +-#: option.c:3316 option.c:3710 ++#: option.c:3392 option.c:3786 + msgid "invalid port number" + msgstr "număr de port invalid" + +-#: option.c:3378 ++#: option.c:3454 + #, fuzzy + msgid "bad dhcp-proxy address" + msgstr "citesc %s - %d adrese" + +-#: option.c:3404 ++#: option.c:3480 + #, fuzzy + msgid "Bad dhcp-relay" + msgstr "dhcp-range invalid" + +-#: option.c:3430 ++#: option.c:3506 + msgid "bad RA-params" + msgstr "" + +-#: option.c:3439 ++#: option.c:3515 + msgid "bad DUID" + msgstr "" + +-#: option.c:3481 ++#: option.c:3557 + #, fuzzy + msgid "invalid alias range" + msgstr "pondere invalidă" + +-#: option.c:3535 ++#: option.c:3611 + msgid "bad CNAME" + msgstr "" + +-#: option.c:3540 ++#: option.c:3616 + msgid "duplicate CNAME" + msgstr "" + +-#: option.c:3560 ++#: option.c:3636 + #, fuzzy + msgid "bad PTR record" + msgstr "înregistrare SRV invalidă" + +-#: option.c:3591 ++#: option.c:3667 + #, fuzzy + msgid "bad NAPTR record" + msgstr "înregistrare SRV invalidă" + +-#: option.c:3625 ++#: option.c:3701 + #, fuzzy + msgid "bad RR record" + msgstr "înregistrare SRV invalidă" + +-#: option.c:3655 ++#: option.c:3731 + msgid "bad TXT record" + msgstr "înregistrare TXT invalidă" + +-#: option.c:3696 ++#: option.c:3772 + msgid "bad SRV record" + msgstr "înregistrare SRV invalidă" + +-#: option.c:3703 ++#: option.c:3779 + msgid "bad SRV target" + msgstr "Å£intă SRV invalidă" + +-#: option.c:3717 ++#: option.c:3793 + msgid "invalid priority" + msgstr "prioritate invalidă" + +-#: option.c:3724 ++#: option.c:3800 + msgid "invalid weight" + msgstr "pondere invalidă" + +-#: option.c:3748 ++#: option.c:3824 + #, fuzzy + msgid "Bad host-record" + msgstr "înregistrare SRV invalidă" + +-#: option.c:3765 ++#: option.c:3841 + #, fuzzy + msgid "Bad name in host-record" + msgstr "nume invalid în %s" + +-#: option.c:3826 ++#: option.c:3906 + #, fuzzy + msgid "bad trust anchor" + msgstr "port invalid" + +-#: option.c:3840 ++#: option.c:3920 + msgid "bad HEX in trust anchor" + msgstr "" + +-#: option.c:3850 ++#: option.c:3930 + msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" + msgstr "" + +-#: option.c:3909 ++#: option.c:3989 + msgid "missing \"" + msgstr "lipseşte \"" + +-#: option.c:3966 ++#: option.c:4046 + msgid "bad option" + msgstr "opÅ£iune invalidă" + +-#: option.c:3968 ++#: option.c:4048 + msgid "extraneous parameter" + msgstr "parametru nerecunoscut" + +-#: option.c:3970 ++#: option.c:4050 + msgid "missing parameter" + msgstr "parametru lipsa" + +-#: option.c:3972 ++#: option.c:4052 + #, fuzzy + msgid "illegal option" + msgstr "opÅ£iune invalidă" + +-#: option.c:3979 ++#: option.c:4059 + msgid "error" + msgstr "eroare" + +-#: option.c:3981 ++#: option.c:4061 + #, fuzzy, c-format + msgid " at line %d of %s" + msgstr "%s la linia %d din %%s" + +-#: option.c:4045 option.c:4168 tftp.c:667 +-#, c-format +-msgid "cannot read %s: %s" +-msgstr "nu pot citi %s: %s" +- +-#: option.c:4229 option.c:4265 ++#: option.c:4076 option.c:4323 option.c:4359 + #, fuzzy, c-format + msgid "read %s" + msgstr "citesc %s" + +-#: option.c:4331 ++#: option.c:4139 option.c:4262 tftp.c:667 ++#, c-format ++msgid "cannot read %s: %s" ++msgstr "nu pot citi %s: %s" ++ ++#: option.c:4425 + msgid "junk found in command line" + msgstr "" + +-#: option.c:4366 ++#: option.c:4460 + #, c-format + msgid "Dnsmasq version %s %s\n" + msgstr "dnsmasq versiunea %s %s\n" + +-#: option.c:4367 ++#: option.c:4461 + #, fuzzy, c-format + msgid "" + "Compile time options: %s\n" +@@ -1054,89 +1087,89 @@ msgstr "" + "OpÅ£iuni cu care a fost compilat %s\n" + "\n" + +-#: option.c:4368 ++#: option.c:4462 + #, c-format + msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" + msgstr "Acest program vine FĂRĂ NICI O GARANÅ¢IE.\n" + +-#: option.c:4369 ++#: option.c:4463 + #, c-format + msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" + msgstr "Dnsmasq este un program gratuit, sunteÅ£i invitaÅ£i să-l redistribuiÅ£i\n" + +-#: option.c:4370 ++#: option.c:4464 + #, fuzzy, c-format + msgid "under the terms of the GNU General Public License, version 2 or 3.\n" + msgstr "în termenii LicenÅ£ei publice generale GNU, versiunea 2.\n" + +-#: option.c:4381 ++#: option.c:4475 + msgid "try --help" + msgstr "" + +-#: option.c:4383 ++#: option.c:4477 + msgid "try -w" + msgstr "" + +-#: option.c:4385 ++#: option.c:4479 + #, fuzzy, c-format + msgid "bad command line options: %s" + msgstr "opÅ£iuni în linie de comandă invalide: %s." + +-#: option.c:4434 ++#: option.c:4535 + #, c-format + msgid "cannot get host-name: %s" + msgstr "nu pot citi numele maşinii: %s" + +-#: option.c:4462 ++#: option.c:4563 + msgid "only one resolv.conf file allowed in no-poll mode." + msgstr "se permite un singur fişier resolv.conf în modul no-poll" + +-#: option.c:4472 ++#: option.c:4573 + msgid "must have exactly one resolv.conf to read domain from." + msgstr "am nevoie de un singur resolv.conf din care să citesc numele domeniului." + +-#: option.c:4475 network.c:1506 dhcp.c:769 ++#: option.c:4576 network.c:1506 dhcp.c:774 + #, fuzzy, c-format + msgid "failed to read %s: %s" + msgstr "nu pot citi %s: %s" + +-#: option.c:4492 ++#: option.c:4593 + #, c-format + msgid "no search directive found in %s" + msgstr "nu s-a găsit nici un criteriu de căutare în %s" + +-#: option.c:4513 ++#: option.c:4614 + msgid "there must be a default domain when --dhcp-fqdn is set" + msgstr "" + +-#: option.c:4522 ++#: option.c:4623 + msgid "syntax check OK" + msgstr "" + +-#: forward.c:114 ++#: forward.c:111 + #, fuzzy, c-format + msgid "failed to send packet: %s" + msgstr "ascultarea pe socket a eşuat: %s" + +-#: forward.c:574 ++#: forward.c:572 + msgid "discarding DNS reply: subnet option mismatch" + msgstr "" + +-#: forward.c:597 ++#: forward.c:595 + #, c-format + msgid "nameserver %s refused to do a recursive query" + msgstr "serverul DNS %s refuză interogările recursive" + +-#: forward.c:629 ++#: forward.c:627 + #, c-format + msgid "possible DNS-rebind attack detected: %s" + msgstr "" + +-#: forward.c:1132 forward.c:1663 ++#: forward.c:1156 forward.c:1722 + msgid "Ignoring query from non-local network" + msgstr "" + +-#: forward.c:2101 ++#: forward.c:2178 + #, fuzzy, c-format + msgid "Maximum number of concurrent DNS queries reached (max: %d)" + msgstr "Specifică numărul maxim de împrumuturi DHCP (implicit %s)." +@@ -1226,273 +1259,286 @@ msgstr "folosim serverul DNS %s#%d" + msgid "using nameserver %s#%d" + msgstr "folosim serverul DNS %s#%d" + +-#: dnsmasq.c:154 +-msgid "No trust anchors provided for DNSSEC" ++#: dnsmasq.c:149 ++msgid "dhcp-hostsdir, dhcp-optsdir and hostsdir are not supported on this platform" + msgstr "" + +-#: dnsmasq.c:157 +-msgid "Cannot reduce cache size from default when DNSSEC enabled" ++#: dnsmasq.c:156 ++msgid "no trust anchors provided for DNSSEC" + msgstr "" + + #: dnsmasq.c:159 ++msgid "cannot reduce cache size from default when DNSSEC enabled" ++msgstr "" ++ ++#: dnsmasq.c:161 + #, fuzzy + msgid "DNSSEC not available: set HAVE_DNSSEC in src/config.h" + msgstr "DBus nu este disponibil: puneÅ£i HAVE_DBUS in src/config.h" + +-#: dnsmasq.c:165 ++#: dnsmasq.c:167 + #, fuzzy + msgid "TFTP server not available: set HAVE_TFTP in src/config.h" + msgstr "DBus nu este disponibil: puneÅ£i HAVE_DBUS in src/config.h" + +-#: dnsmasq.c:170 +-msgid "Cannot use --conntrack AND --query-port" ++#: dnsmasq.c:172 ++msgid "cannot use --conntrack AND --query-port" + msgstr "" + +-#: dnsmasq.c:173 ++#: dnsmasq.c:175 + #, fuzzy +-msgid "Conntrack support not available: set HAVE_CONNTRACK in src/config.h" ++msgid "conntrack support not available: set HAVE_CONNTRACK in src/config.h" + msgstr "DBus nu este disponibil: puneÅ£i HAVE_DBUS in src/config.h" + +-#: dnsmasq.c:178 ++#: dnsmasq.c:180 + msgid "asychronous logging is not available under Solaris" + msgstr "" + +-#: dnsmasq.c:183 ++#: dnsmasq.c:185 + msgid "asychronous logging is not available under Android" + msgstr "" + +-#: dnsmasq.c:188 ++#: dnsmasq.c:190 + #, fuzzy + msgid "authoritative DNS not available: set HAVE_AUTH in src/config.h" + msgstr "DBus nu este disponibil: puneÅ£i HAVE_DBUS in src/config.h" + +-#: dnsmasq.c:193 ++#: dnsmasq.c:195 + #, fuzzy +-msgid "Loop detection not available: set HAVE_LOOP in src/config.h" ++msgid "loop detection not available: set HAVE_LOOP in src/config.h" + msgstr "DBus nu este disponibil: puneÅ£i HAVE_DBUS in src/config.h" + +-#: dnsmasq.c:201 ++#: dnsmasq.c:203 + msgid "zone serial must be configured in --auth-soa" + msgstr "" + +-#: dnsmasq.c:219 ++#: dnsmasq.c:221 + msgid "dhcp-range constructor not available on this platform" + msgstr "" + +-#: dnsmasq.c:262 ++#: dnsmasq.c:264 + msgid "cannot set --bind-interfaces and --bind-dynamic" + msgstr "" + +-#: dnsmasq.c:265 ++#: dnsmasq.c:267 + #, c-format + msgid "failed to find list of interfaces: %s" + msgstr "enumerarea interfeÅ£elor a eşuat: %s" + +-#: dnsmasq.c:274 ++#: dnsmasq.c:276 + #, c-format + msgid "unknown interface %s" + msgstr "interfaţă necunoscută %s" + +-#: dnsmasq.c:330 dnsmasq.c:954 ++#: dnsmasq.c:340 dnsmasq.c:1004 + #, c-format + msgid "DBus error: %s" + msgstr "eroare DBus: %s" + +-#: dnsmasq.c:333 ++#: dnsmasq.c:343 + msgid "DBus not available: set HAVE_DBUS in src/config.h" + msgstr "DBus nu este disponibil: puneÅ£i HAVE_DBUS in src/config.h" + +-#: dnsmasq.c:361 ++#: dnsmasq.c:371 + #, c-format + msgid "unknown user or group: %s" + msgstr "" + +-#: dnsmasq.c:416 ++#: dnsmasq.c:426 + #, c-format + msgid "cannot chdir to filesystem root: %s" + msgstr "" + +-#: dnsmasq.c:653 ++#: dnsmasq.c:667 + #, fuzzy, c-format + msgid "started, version %s DNS disabled" + msgstr "am pornit, versiunea %s memorie temporară dezactivată" + +-#: dnsmasq.c:655 ++#: dnsmasq.c:669 + #, c-format + msgid "started, version %s cachesize %d" + msgstr "am ponit, versiunea %s memorie temporară %d" + +-#: dnsmasq.c:657 ++#: dnsmasq.c:671 + #, c-format + msgid "started, version %s cache disabled" + msgstr "am pornit, versiunea %s memorie temporară dezactivată" + +-#: dnsmasq.c:659 ++#: dnsmasq.c:673 + #, c-format + msgid "compile time options: %s" + msgstr "compilat cu opÅ£iunile: %s" + +-#: dnsmasq.c:665 ++#: dnsmasq.c:679 + msgid "DBus support enabled: connected to system bus" + msgstr "suportul DBus activ: sunt conectat la magistrala sistem" + +-#: dnsmasq.c:667 ++#: dnsmasq.c:681 + msgid "DBus support enabled: bus connection pending" + msgstr "suportul DBus activ: aştept conexiunea la magistrală" + +-#: dnsmasq.c:672 ++#: dnsmasq.c:686 + msgid "DNS service limited to local subnets" + msgstr "" + +-#: dnsmasq.c:677 ++#: dnsmasq.c:702 + msgid "DNSSEC validation enabled" + msgstr "" + +-#: dnsmasq.c:679 ++#: dnsmasq.c:705 + msgid "DNSSEC signature timestamps not checked until first cache reload" + msgstr "" + ++#: dnsmasq.c:708 ++msgid "DNSSEC signature timestamps not checked until system time valid" ++msgstr "" ++ + # for compatibility purposes the letters â, ă, ş, Å£ and î can be written as their look-alike correspondent. +-#: dnsmasq.c:684 ++#: dnsmasq.c:713 + #, fuzzy, c-format + msgid "warning: failed to change owner of %s: %s" + msgstr "încărcarea numelor din %s: %s a eşuat" + +-#: dnsmasq.c:688 ++#: dnsmasq.c:717 + msgid "setting --bind-interfaces option because of OS limitations" + msgstr "specific opÅ£iunea --bind-interfaces din cauza limitărilor SO" + +-#: dnsmasq.c:698 ++#: dnsmasq.c:727 + #, c-format + msgid "warning: interface %s does not currently exist" + msgstr "atenÅ£ie: interfaÅ£a %s nu există momentan" + +-#: dnsmasq.c:703 ++#: dnsmasq.c:732 + msgid "warning: ignoring resolv-file flag because no-resolv is set" + msgstr "" + +-#: dnsmasq.c:706 ++#: dnsmasq.c:735 + #, fuzzy + msgid "warning: no upstream servers configured" + msgstr "configurăm serverele superioare prin Dbus" + +-#: dnsmasq.c:710 ++#: dnsmasq.c:739 + #, c-format + msgid "asynchronous logging enabled, queue limit is %d messages" + msgstr "" + +-#: dnsmasq.c:731 ++#: dnsmasq.c:760 + msgid "IPv6 router advertisement enabled" + msgstr "" + +-#: dnsmasq.c:736 ++#: dnsmasq.c:765 + #, c-format + msgid "DHCP, sockets bound exclusively to interface %s" + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + msgid "root is " + msgstr "" + +-#: dnsmasq.c:753 ++#: dnsmasq.c:782 + #, fuzzy + msgid "enabled" + msgstr "dezactivat" + +-#: dnsmasq.c:755 ++#: dnsmasq.c:784 + msgid "secure mode" + msgstr "" + +-#: dnsmasq.c:781 ++#: dnsmasq.c:810 + #, c-format + msgid "restricting maximum simultaneous TFTP transfers to %d" + msgstr "" + +-#: dnsmasq.c:956 ++#: dnsmasq.c:1006 + msgid "connected to system DBus" + msgstr "magistrala sistem Dbus conectată" + +-#: dnsmasq.c:1106 ++#: dnsmasq.c:1156 + #, c-format + msgid "cannot fork into background: %s" + msgstr "" + +-#: dnsmasq.c:1109 ++#: dnsmasq.c:1159 + #, fuzzy, c-format + msgid "failed to create helper: %s" + msgstr "nu pot citi %s: %s" + +-#: dnsmasq.c:1112 ++#: dnsmasq.c:1162 + #, c-format + msgid "setting capabilities failed: %s" + msgstr "" + + # for compatibility purposes the letters â, ă, ş, Å£ and î can be written as their look-alike correspondent. +-#: dnsmasq.c:1115 ++#: dnsmasq.c:1165 + #, fuzzy, c-format + msgid "failed to change user-id to %s: %s" + msgstr "încărcarea numelor din %s: %s a eşuat" + + # for compatibility purposes the letters â, ă, ş, Å£ and î can be written as their look-alike correspondent. +-#: dnsmasq.c:1118 ++#: dnsmasq.c:1168 + #, fuzzy, c-format + msgid "failed to change group-id to %s: %s" + msgstr "încărcarea numelor din %s: %s a eşuat" + +-#: dnsmasq.c:1121 ++#: dnsmasq.c:1171 + #, fuzzy, c-format + msgid "failed to open pidfile %s: %s" + msgstr "nu pot citi %s: %s" + +-#: dnsmasq.c:1124 ++#: dnsmasq.c:1174 + #, fuzzy, c-format + msgid "cannot open log %s: %s" + msgstr "nu pot deschide %s:%s" + +-#: dnsmasq.c:1127 ++#: dnsmasq.c:1177 + #, fuzzy, c-format + msgid "failed to load Lua script: %s" + msgstr "nu pot încărca %s: %s" + +-#: dnsmasq.c:1130 ++#: dnsmasq.c:1180 + #, c-format + msgid "TFTP directory %s inaccessible: %s" + msgstr "" + +-#: dnsmasq.c:1151 ++#: dnsmasq.c:1183 ++#, fuzzy, c-format ++msgid "cannot create timestamp file %s: %s" ++msgstr "nu pot creea sau deschide fişierul cu împrumuturi: %s" ++ ++#: dnsmasq.c:1204 + msgid "now checking DNSSEC signature timestamps" + msgstr "" + +-#: dnsmasq.c:1218 ++#: dnsmasq.c:1271 + #, c-format + msgid "script process killed by signal %d" + msgstr "" + +-#: dnsmasq.c:1222 ++#: dnsmasq.c:1275 + #, c-format + msgid "script process exited with status %d" + msgstr "" + +-#: dnsmasq.c:1226 ++#: dnsmasq.c:1279 + #, fuzzy, c-format + msgid "failed to execute %s: %s" + msgstr "accesarea serverului %s a eşuat: %s" + +-#: dnsmasq.c:1281 ++#: dnsmasq.c:1334 + msgid "exiting on receipt of SIGTERM" + msgstr "am primit SIGTERM, am terminat" + +-#: dnsmasq.c:1309 ++#: dnsmasq.c:1362 + #, fuzzy, c-format + msgid "failed to access %s: %s" + msgstr "accesarea serverului %s a eşuat: %s" + +-#: dnsmasq.c:1339 ++#: dnsmasq.c:1392 + #, c-format + msgid "reading %s" + msgstr "citesc %s" + +-#: dnsmasq.c:1350 ++#: dnsmasq.c:1403 + #, fuzzy, c-format + msgid "no servers found in %s, will retry" + msgstr "nu s-a găsit nici un criteriu de căutare în %s" +@@ -1532,27 +1578,27 @@ msgstr "interfaţă necunoscută %s" + msgid "DHCP packet received on %s which has no address" + msgstr "" + +-#: dhcp.c:408 ++#: dhcp.c:412 + #, c-format + msgid "ARP-cache injection failed: %s" + msgstr "" + +-#: dhcp.c:506 ++#: dhcp.c:511 + #, c-format + msgid "DHCP range %s -- %s is not consistent with netmask %s" + msgstr "domeniu DHCP %s -- %s nu este consistent cu masca de reÅ£ea %s" + +-#: dhcp.c:807 ++#: dhcp.c:812 + #, c-format + msgid "bad line at %s line %d" + msgstr "linie invalidă în %s rândul %d" + +-#: dhcp.c:850 ++#: dhcp.c:855 + #, c-format + msgid "ignoring %s line %d, duplicate name or IP address" + msgstr "" + +-#: dhcp.c:994 rfc3315.c:2089 ++#: dhcp.c:999 rfc3315.c:2139 + #, c-format + msgid "DHCP relay %s -> %s" + msgstr "" +@@ -1623,12 +1669,12 @@ msgstr "eroare DBus: %s" + msgid "disabled" + msgstr "dezactivat" + +-#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:602 rfc3315.c:823 +-#: rfc3315.c:1095 ++#: rfc2131.c:539 rfc2131.c:967 rfc2131.c:1385 rfc3315.c:603 rfc3315.c:860 ++#: rfc3315.c:1139 + msgid "ignored" + msgstr "ignorat" + +-#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:873 ++#: rfc2131.c:554 rfc2131.c:1205 rfc3315.c:910 + msgid "address in use" + msgstr "adresa este folosită" + +@@ -1648,7 +1694,7 @@ msgstr "adresă lipsă" + msgid "no leases left" + msgstr "nu mai am de unde să împrumut" + +-#: rfc2131.c:691 rfc3315.c:475 ++#: rfc2131.c:691 rfc3315.c:476 + #, c-format + msgid "%u client provides name: %s" + msgstr "" +@@ -1657,7 +1703,7 @@ msgstr "" + msgid "PXE BIS not supported" + msgstr "" + +-#: rfc2131.c:935 rfc3315.c:1189 ++#: rfc2131.c:935 rfc3315.c:1233 + #, fuzzy, c-format + msgid "disabling DHCP static address %s for %s" + msgstr "dezactivăm adresele DHCP statice %s" +@@ -1693,7 +1739,7 @@ msgstr "" + msgid "wrong address" + msgstr "adresă greşită" + +-#: rfc2131.c:1143 rfc3315.c:969 ++#: rfc2131.c:1143 rfc3315.c:1006 + msgid "lease not found" + msgstr "împrumutul nu a fost găsit" + +@@ -1743,7 +1789,7 @@ msgstr "nu pot trimite opÅ£iunea DHCP %d: nu mai este loc în pachet" + msgid "PXE menu too large" + msgstr "" + +-#: rfc2131.c:2173 rfc3315.c:1456 ++#: rfc2131.c:2173 rfc3315.c:1506 + #, fuzzy, c-format + msgid "%u requested options: %s" + msgstr "compilat cu opÅ£iunile: %s" +@@ -1758,7 +1804,7 @@ msgstr "" + msgid "cannot create netlink socket: %s" + msgstr "nu pot să activez socket-ul netlink: %s" + +-#: netlink.c:347 ++#: netlink.c:348 + #, fuzzy, c-format + msgid "netlink returns error: %s" + msgstr "eroare DBus: %s" +@@ -1876,66 +1922,66 @@ msgstr "nici un domeniu de adrese disponibil pentru cererea DHCP %s %s" + msgid "%u available DHCPv6 subnet: %s/%d" + msgstr "nici un domeniu de adrese disponibil pentru cererea DHCP %s %s" + +-#: rfc3315.c:379 ++#: rfc3315.c:380 + #, fuzzy, c-format + msgid "%u vendor class: %u" + msgstr "eroare DBus: %s" + +-#: rfc3315.c:427 ++#: rfc3315.c:428 + #, fuzzy, c-format + msgid "%u client MAC address: %s" + msgstr "nu exista interfaţă pentru adresa %s" + +-#: rfc3315.c:659 ++#: rfc3315.c:660 + #, fuzzy, c-format + msgid "unknown prefix-class %d" + msgstr "împrumut necunoscut" + +-#: rfc3315.c:791 rfc3315.c:913 ++#: rfc3315.c:803 rfc3315.c:902 ++#, fuzzy ++msgid "address unavailable" ++msgstr "adresă indisponibilă" ++ ++#: rfc3315.c:815 rfc3315.c:950 rfc3315.c:1283 + msgid "success" + msgstr "" + +-#: rfc3315.c:806 rfc3315.c:808 rfc3315.c:921 rfc3315.c:923 ++#: rfc3315.c:843 rfc3315.c:845 rfc3315.c:958 rfc3315.c:960 + #, fuzzy + msgid "no addresses available" + msgstr "nici o adresă disponibilă" + +-#: rfc3315.c:865 +-#, fuzzy +-msgid "address unavailable" +-msgstr "adresă indisponibilă" +- +-#: rfc3315.c:900 ++#: rfc3315.c:937 + msgid "not on link" + msgstr "" + +-#: rfc3315.c:973 rfc3315.c:1151 rfc3315.c:1228 ++#: rfc3315.c:1010 rfc3315.c:1195 rfc3315.c:1272 + msgid "no binding found" + msgstr "" + +-#: rfc3315.c:1011 ++#: rfc3315.c:1048 + msgid "deprecated" + msgstr "" + +-#: rfc3315.c:1016 ++#: rfc3315.c:1053 + #, fuzzy + msgid "address invalid" + msgstr "adresa este folosită" + +-#: rfc3315.c:1061 ++#: rfc3315.c:1100 + msgid "confirm failed" + msgstr "" + +-#: rfc3315.c:1072 ++#: rfc3315.c:1116 + #, fuzzy + msgid "all addresses still on link" + msgstr "adresă greşită în %s, linia %d" + +-#: rfc3315.c:1160 ++#: rfc3315.c:1204 + msgid "release received" + msgstr "" + +-#: rfc3315.c:2080 ++#: rfc3315.c:2130 + msgid "Cannot multicast to DHCPv6 server without correct interface" + msgstr "" + +@@ -2028,7 +2074,7 @@ msgstr "" + msgid "cannot create ICMPv6 socket: %s" + msgstr "nu pot creea socket DHCP: %s" + +-#: auth.c:429 ++#: auth.c:436 + #, c-format + msgid "ignoring zone transfer request from %s" + msgstr "" +@@ -2043,54 +2089,89 @@ msgstr "activarea socket-ului server-ului DHCP a eşuat: %s" + msgid "failed to create IPset control socket: %s" + msgstr "creearea socket-ului de ascultare a eşuat: %s" + ++#: dnssec.c:425 dnssec.c:469 ++#, fuzzy, c-format ++msgid "failed to update mtime on %s: %s" ++msgstr "nu pot citi %s: %s" ++ + #: blockdata.c:58 + #, c-format + msgid "DNSSEC memory in use %u, max %u, allocated %u" + msgstr "" + +-#: tables.c:76 ++#: tables.c:80 + msgid "error: fill_addr missused" + msgstr "" + +-#: tables.c:105 ++#: tables.c:109 + #, fuzzy, c-format + msgid "failed to access pf devices: %s" + msgstr "accesarea serverului %s a eşuat: %s" + +-#: tables.c:119 ++#: tables.c:123 + #, fuzzy, c-format + msgid "warning: no opened pf devices %s" + msgstr "folosim adresele locale doar pentru %S %s" + +-#: tables.c:127 ++#: tables.c:131 + #, fuzzy, c-format + msgid "error: cannot use table name %s" + msgstr "nu pot citi numele maşinii: %s" + +-#: tables.c:135 ++#: tables.c:139 + #, c-format + msgid "error: cannot strlcpy table name %s" + msgstr "" + +-#: tables.c:141 ++#: tables.c:145 + #, c-format + msgid "warning: pfr_add_tables: %s(%d)" + msgstr "" + +-#: tables.c:147 ++#: tables.c:151 + msgid "info: table created" + msgstr "" + +-#: tables.c:158 ++#: tables.c:162 + #, c-format + msgid "warning: DIOCR%sADDRS: %s" + msgstr "" + +-#: tables.c:162 ++#: tables.c:166 + #, fuzzy, c-format + msgid "%d addresses %s" + msgstr "citesc %s - %d adrese" + ++#: inotify.c:46 ++#, fuzzy, c-format ++msgid "failed to create inotify: %s" ++msgstr "nu pot citi %s: %s" ++ ++#: inotify.c:60 ++#, fuzzy, c-format ++msgid "cannot cannonicalise resolv-file %s: %s" ++msgstr "nu pot creea sau deschide fişierul cu împrumuturi: %s" ++ ++#: inotify.c:72 ++#, c-format ++msgid "directory %s for resolv-file is missing, cannot poll" ++msgstr "" ++ ++#: inotify.c:75 inotify.c:112 ++#, fuzzy, c-format ++msgid "failed to create inotify for %s: %s" ++msgstr "creearea socket-ului de ascultare a eşuat: %s" ++ ++#: inotify.c:97 ++#, fuzzy, c-format ++msgid "bad dynamic directory %s: %s" ++msgstr "nu pot citi %s: %s" ++ ++#: inotify.c:197 ++#, c-format ++msgid "inotify, new or changed file %s" ++msgstr "" ++ + #~ msgid "duplicate IP address %s in dhcp-config directive." + #~ msgstr "adresă IP duplicat %s în declaraÅ£ia dhcp-config." + +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch b/src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch new file mode 100644 index 0000000000..3439cc19fb --- /dev/null +++ b/src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch @@ -0,0 +1,199 @@ +From 30d0879ed55cb67b1b735beab3d93f3bb3ef1dd2 Mon Sep 17 00:00:00 2001 +From: Stefan Tomanek +Date: Tue, 31 Mar 2015 22:32:11 +0100 +Subject: [PATCH 68/71] add --tftp-no-fail to ignore missing tftp root + +--- + CHANGELOG | 3 +++ + dnsmasq.conf.example | 3 +++ + man/dnsmasq.8 | 3 +++ + src/dnsmasq.c | 40 ++++++++++++++++++++++++++++++---------- + src/dnsmasq.h | 4 +++- + src/option.c | 3 +++ + 6 files changed, 45 insertions(+), 11 deletions(-) + +diff --git a/CHANGELOG b/CHANGELOG +index 4f4fa305deaa..34432ae4807f 100644 +--- a/CHANGELOG ++++ b/CHANGELOG +@@ -72,6 +72,9 @@ version 2.73 + on systems without an RTC, whilst allowing DNS queries before the + clock is valid so that NTP can run. Thanks to + Kevin Darbyshire-Bryant for developing this idea. ++ ++ Add --tftp-no-fail option. Thanks to Stefan Tomanek for ++ the patch. + + + version 2.72 +diff --git a/dnsmasq.conf.example b/dnsmasq.conf.example +index 1bd305dbdbad..67be99acb028 100644 +--- a/dnsmasq.conf.example ++++ b/dnsmasq.conf.example +@@ -486,6 +486,9 @@ + # Set the root directory for files available via FTP. + #tftp-root=/var/ftpd + ++# Do not abort if the tftp-root is unavailable ++#tftp-no-fail ++ + # Make the TFTP server more secure: with this set, only files owned by + # the user dnsmasq is running as will be send over the net. + #tftp-secure +diff --git a/man/dnsmasq.8 b/man/dnsmasq.8 +index 1f1dd7b69c53..6b4626cc0aad 100644 +--- a/man/dnsmasq.8 ++++ b/man/dnsmasq.8 +@@ -1711,6 +1711,9 @@ Absolute paths (starting with /) are allowed, but they must be within + the tftp-root. If the optional interface argument is given, the + directory is only used for TFTP requests via that interface. + .TP ++.B --tftp-no-fail ++Do not abort startup if specified tftp root directories are inaccessible. ++.TP + .B --tftp-unique-root + Add the IP address of the TFTP client as a path component on the end + of the TFTP-root (in standard dotted-quad format). Only valid if a +diff --git a/src/dnsmasq.c b/src/dnsmasq.c +index b784951950d4..0d4d4558a2e2 100644 +--- a/src/dnsmasq.c ++++ b/src/dnsmasq.c +@@ -58,6 +58,9 @@ int main (int argc, char **argv) + struct dhcp_context *context; + struct dhcp_relay *relay; + #endif ++#ifdef HAVE_TFTP ++ int tftp_prefix_missing = 0; ++#endif + + #ifdef LOCALEDIR + setlocale(LC_ALL, ""); +@@ -636,7 +639,7 @@ int main (int argc, char **argv) + #endif + + #ifdef HAVE_TFTP +- if (option_bool(OPT_TFTP)) ++ if (option_bool(OPT_TFTP)) + { + DIR *dir; + struct tftp_prefix *p; +@@ -645,24 +648,33 @@ int main (int argc, char **argv) + { + if (!((dir = opendir(daemon->tftp_prefix)))) + { +- send_event(err_pipe[1], EVENT_TFTP_ERR, errno, daemon->tftp_prefix); +- _exit(0); ++ tftp_prefix_missing = 1; ++ if (!option_bool(OPT_TFTP_NO_FAIL)) ++ { ++ send_event(err_pipe[1], EVENT_TFTP_ERR, errno, daemon->tftp_prefix); ++ _exit(0); ++ } + } + closedir(dir); + } +- ++ + for (p = daemon->if_prefix; p; p = p->next) + { ++ p->missing = 0; + if (!((dir = opendir(p->prefix)))) +- { +- send_event(err_pipe[1], EVENT_TFTP_ERR, errno, p->prefix); +- _exit(0); +- } ++ { ++ p->missing = 1; ++ if (!option_bool(OPT_TFTP_NO_FAIL)) ++ { ++ send_event(err_pipe[1], EVENT_TFTP_ERR, errno, p->prefix); ++ _exit(0); ++ } ++ } + closedir(dir); + } + } + #endif +- ++ + if (daemon->port == 0) + my_syslog(LOG_INFO, _("started, version %s DNS disabled"), VERSION); + else if (daemon->cachesize != 0) +@@ -772,7 +784,8 @@ int main (int argc, char **argv) + + #ifdef HAVE_TFTP + if (option_bool(OPT_TFTP)) +- { ++ { ++ struct tftp_prefix *p; + #ifdef FD_SETSIZE + if (FD_SETSIZE < (unsigned)max_fd) + max_fd = FD_SETSIZE; +@@ -782,7 +795,14 @@ int main (int argc, char **argv) + daemon->tftp_prefix ? _("root is ") : _("enabled"), + daemon->tftp_prefix ? daemon->tftp_prefix: "", + option_bool(OPT_TFTP_SECURE) ? _("secure mode") : ""); ++ ++ if (tftp_prefix_missing) ++ my_syslog(MS_TFTP | LOG_WARNING, _("warning: %s inaccessible"), daemon->tftp_prefix); + ++ for (p = daemon->if_prefix; p; p = p->next) ++ if (p->missing) ++ my_syslog(MS_TFTP | LOG_WARNING, _("warning: TFTP directory %s inaccessible"), p->prefix); ++ + /* This is a guess, it assumes that for small limits, + disjoint files might be served, but for large limits, + a single file will be sent to may clients (the file only needs +diff --git a/src/dnsmasq.h b/src/dnsmasq.h +index de95d0e875e3..42952fc76c7a 100644 +--- a/src/dnsmasq.h ++++ b/src/dnsmasq.h +@@ -240,7 +240,8 @@ struct event_desc { + #define OPT_LOCAL_SERVICE 49 + #define OPT_LOOP_DETECT 50 + #define OPT_EXTRALOG 51 +-#define OPT_LAST 52 ++#define OPT_TFTP_NO_FAIL 52 ++#define OPT_LAST 53 + + /* extra flags for my_syslog, we use a couple of facilities since they are known + not to occupy the same bits as priorities, no matter how syslog.h is set up. */ +@@ -901,6 +902,7 @@ struct addr_list { + struct tftp_prefix { + char *interface; + char *prefix; ++ int missing; + struct tftp_prefix *next; + }; + +diff --git a/src/option.c b/src/option.c +index 3009eb545fde..f91cfbb1aa54 100644 +--- a/src/option.c ++++ b/src/option.c +@@ -153,6 +153,7 @@ struct myoption { + #define LOPT_DHOPT_INOTIFY 341 + #define LOPT_HOST_INOTIFY 342 + #define LOPT_DNSSEC_STAMP 343 ++#define LOPT_TFTP_NO_FAIL 344 + + #ifdef HAVE_GETOPT_LONG + static const struct option opts[] = +@@ -235,6 +236,7 @@ static const struct myoption opts[] = + { "dhcp-ignore-names", 2, 0, LOPT_NO_NAMES }, + { "enable-tftp", 2, 0, LOPT_TFTP }, + { "tftp-secure", 0, 0, LOPT_SECURE }, ++ { "tftp-no-fail", 0, 0, LOPT_TFTP_NO_FAIL }, + { "tftp-unique-root", 0, 0, LOPT_APREF }, + { "tftp-root", 1, 0, LOPT_PREFIX }, + { "tftp-max", 1, 0, LOPT_TFTP_MAX }, +@@ -419,6 +421,7 @@ static struct { + { LOPT_PREFIX, ARG_DUP, "[,]", gettext_noop("Export files by TFTP only from the specified subtree."), NULL }, + { LOPT_APREF, OPT_TFTP_APREF, NULL, gettext_noop("Add client IP address to tftp-root."), NULL }, + { LOPT_SECURE, OPT_TFTP_SECURE, NULL, gettext_noop("Allow access only to files owned by the user running dnsmasq."), NULL }, ++ { LOPT_TFTP_NO_FAIL, OPT_TFTP_NO_FAIL, NULL, gettext_noop("Do not terminate the service if TFTP directories are inaccessible."), NULL }, + { LOPT_TFTP_MAX, ARG_ONE, "", gettext_noop("Maximum number of conncurrent TFTP transfers (defaults to %s)."), "#" }, + { LOPT_NOBLOCK, OPT_TFTP_NOBLOCK, NULL, gettext_noop("Disable the TFTP blocksize extension."), NULL }, + { LOPT_TFTP_LC, OPT_TFTP_LC, NULL, gettext_noop("Convert TFTP filenames to lowercase"), NULL }, +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0069-Whitespace-fixes.patch b/src/patches/dnsmasq/0069-Whitespace-fixes.patch new file mode 100644 index 0000000000..6784ee3982 --- /dev/null +++ b/src/patches/dnsmasq/0069-Whitespace-fixes.patch @@ -0,0 +1,85 @@ +From 7aa970e2c7043201663d86a4b5d8cd5c592cef39 Mon Sep 17 00:00:00 2001 +From: Stefan Tomanek +Date: Wed, 1 Apr 2015 17:55:07 +0100 +Subject: [PATCH 69/71] Whitespace fixes. + +--- + src/dnsmasq.c | 14 +++++++------- + src/tftp.c | 2 +- + 2 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/src/dnsmasq.c b/src/dnsmasq.c +index 0d4d4558a2e2..a7c5da8fbd01 100644 +--- a/src/dnsmasq.c ++++ b/src/dnsmasq.c +@@ -345,7 +345,7 @@ int main (int argc, char **argv) + #else + die(_("DBus not available: set HAVE_DBUS in src/config.h"), NULL, EC_BADCONF); + #endif +- ++ + if (daemon->port != 0) + pre_allocate_sfds(); + +@@ -657,7 +657,7 @@ int main (int argc, char **argv) + } + closedir(dir); + } +- ++ + for (p = daemon->if_prefix; p; p = p->next) + { + p->missing = 0; +@@ -669,12 +669,12 @@ int main (int argc, char **argv) + send_event(err_pipe[1], EVENT_TFTP_ERR, errno, p->prefix); + _exit(0); + } +- } ++ } + closedir(dir); + } + } + #endif +- ++ + if (daemon->port == 0) + my_syslog(LOG_INFO, _("started, version %s DNS disabled"), VERSION); + else if (daemon->cachesize != 0) +@@ -784,7 +784,7 @@ int main (int argc, char **argv) + + #ifdef HAVE_TFTP + if (option_bool(OPT_TFTP)) +- { ++ { + struct tftp_prefix *p; + #ifdef FD_SETSIZE + if (FD_SETSIZE < (unsigned)max_fd) +@@ -795,10 +795,10 @@ int main (int argc, char **argv) + daemon->tftp_prefix ? _("root is ") : _("enabled"), + daemon->tftp_prefix ? daemon->tftp_prefix: "", + option_bool(OPT_TFTP_SECURE) ? _("secure mode") : ""); +- ++ + if (tftp_prefix_missing) + my_syslog(MS_TFTP | LOG_WARNING, _("warning: %s inaccessible"), daemon->tftp_prefix); +- ++ + for (p = daemon->if_prefix; p; p = p->next) + if (p->missing) + my_syslog(MS_TFTP | LOG_WARNING, _("warning: TFTP directory %s inaccessible"), p->prefix); +diff --git a/src/tftp.c b/src/tftp.c +index a57a31514f44..d3fb6d7492e4 100644 +--- a/src/tftp.c ++++ b/src/tftp.c +@@ -236,7 +236,7 @@ void tftp_request(struct listener *listen, time_t now) + if (ioctl(listen->tftpfd, SIOCGIFMTU, &ifr) != -1) + mtu = ifr.ifr_mtu; + } +- ++ + if (name) + { + /* check for per-interface prefix */ +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch b/src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch new file mode 100644 index 0000000000..1350ca6b81 --- /dev/null +++ b/src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch @@ -0,0 +1,254 @@ +From fe3992f9fa69fa975ea31919c53933b5f6a63527 Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Fri, 3 Apr 2015 21:25:05 +0100 +Subject: [PATCH 70/71] Return INSECURE, rather than BOGUS when DS proved not + to exist. + +Return INSECURE when validating DNS replies which have RRSIGs, but +when a needed DS record in the trust chain is proved not to exist. +It's allowed for a zone to set up DNSKEY and RRSIG records first, then +add a DS later, completing the chain of trust. + +Also, since we don't have the infrastructure to track that these +non-validated replies have RRSIGS, don't cache them, so we don't +provide answers with missing RRSIGS from the cache. +--- + src/dnsmasq.h | 1 + + src/dnssec.c | 2 +- + src/forward.c | 87 +++++++++++++++++++++++++++++++++++++++++++++-------------- + 3 files changed, 69 insertions(+), 21 deletions(-) + +diff --git a/src/dnsmasq.h b/src/dnsmasq.h +index 42952fc76c7a..6fe4a4189188 100644 +--- a/src/dnsmasq.h ++++ b/src/dnsmasq.h +@@ -583,6 +583,7 @@ struct hostsfile { + #define STAT_NO_NS 10 + #define STAT_NEED_DS_NEG 11 + #define STAT_CHASE_CNAME 12 ++#define STAT_INSECURE_DS 13 + + #define FREC_NOREBIND 1 + #define FREC_CHECKING_DISABLED 2 +diff --git a/src/dnssec.c b/src/dnssec.c +index 14bae7e9bf75..05e0983cb251 100644 +--- a/src/dnssec.c ++++ b/src/dnssec.c +@@ -981,7 +981,7 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch + + /* If we've cached that DS provably doesn't exist, result must be INSECURE */ + if (crecp->flags & F_NEG) +- return STAT_INSECURE; ++ return STAT_INSECURE_DS; + + /* NOTE, we need to find ONE DNSKEY which matches the DS */ + for (valid = 0, j = ntohs(header->ancount); j != 0 && !valid; j--) +diff --git a/src/forward.c b/src/forward.c +index 985814c3aec5..e8cf615aa939 100644 +--- a/src/forward.c ++++ b/src/forward.c +@@ -521,7 +521,8 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr, + } + + static size_t process_reply(struct dns_header *header, time_t now, struct server *server, size_t n, int check_rebind, +- int no_cache, int cache_secure, int ad_reqd, int do_bit, int added_pheader, int check_subnet, union mysockaddr *query_source) ++ int no_cache, int cache_secure, int bogusanswer, int ad_reqd, int do_bit, int added_pheader, ++ int check_subnet, union mysockaddr *query_source) + { + unsigned char *pheader, *sizep; + char **sets = 0; +@@ -634,7 +635,7 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server + } + + #ifdef HAVE_DNSSEC +- if (no_cache && !(header->hb4 & HB4_CD)) ++ if (bogusanswer && !(header->hb4 & HB4_CD)) + { + if (!option_bool(OPT_DNSSEC_DEBUG)) + { +@@ -786,7 +787,7 @@ void reply_query(int fd, int family, time_t now) + everything is broken */ + if (forward->forwardall == 0 || --forward->forwardall == 1 || RCODE(header) != SERVFAIL) + { +- int check_rebind = 0, no_cache_dnssec = 0, cache_secure = 0; ++ int check_rebind = 0, no_cache_dnssec = 0, cache_secure = 0, bogusanswer = 0; + + if (option_bool(OPT_NO_REBIND)) + check_rebind = !(forward->flags & FREC_NOREBIND); +@@ -819,7 +820,13 @@ void reply_query(int fd, int family, time_t now) + else if (forward->flags & FREC_DS_QUERY) + { + status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class); +- if (status == STAT_NO_DS || status == STAT_NO_NS) ++ /* Provably no DS, everything below is insecure, even if signatures are offered */ ++ if (status == STAT_NO_DS) ++ /* We only cache sigs when we've validated a reply. ++ Avoid caching a reply with sigs if there's a vaildated break in the ++ DS chain, so we don't return replies from cache missing sigs. */ ++ status = STAT_INSECURE_DS; ++ else if (status == STAT_NO_NS) + status = STAT_BOGUS; + } + else if (forward->flags & FREC_CHECK_NOSIGN) +@@ -959,8 +966,14 @@ void reply_query(int fd, int family, time_t now) + else if (forward->flags & FREC_DS_QUERY) + { + status = dnssec_validate_ds(now, header, n, daemon->namebuff, daemon->keyname, forward->class); +- if (status == STAT_NO_DS || status == STAT_NO_NS) +- status = STAT_BOGUS; ++ /* Provably no DS, everything below is insecure, even if signatures are offered */ ++ if (status == STAT_NO_DS) ++ /* We only cache sigs when we've validated a reply. ++ Avoid caching a reply with sigs if there's a vaildated break in the ++ DS chain, so we don't return replies from cache missing sigs. */ ++ status = STAT_INSECURE_DS; ++ else if (status == STAT_NO_NS) ++ status = STAT_BOGUS; + } + else if (forward->flags & FREC_CHECK_NOSIGN) + { +@@ -985,6 +998,17 @@ void reply_query(int fd, int family, time_t now) + } + } + ++ no_cache_dnssec = 0; ++ ++ if (status == STAT_INSECURE_DS) ++ { ++ /* We only cache sigs when we've validated a reply. ++ Avoid caching a reply with sigs if there's a vaildated break in the ++ DS chain, so we don't return replies from cache missing sigs. */ ++ status = STAT_INSECURE; ++ no_cache_dnssec = 1; ++ } ++ + if (status == STAT_TRUNCATED) + header->hb3 |= HB3_TC; + else +@@ -1002,12 +1026,13 @@ void reply_query(int fd, int family, time_t now) + log_query(F_KEYTAG | F_SECSTAT, "result", NULL, result); + } + +- no_cache_dnssec = 0; +- + if (status == STAT_SECURE) + cache_secure = 1; + else if (status == STAT_BOGUS) +- no_cache_dnssec = 1; ++ { ++ no_cache_dnssec = 1; ++ bogusanswer = 1; ++ } + } + #endif + +@@ -1017,7 +1042,7 @@ void reply_query(int fd, int family, time_t now) + else + header->hb4 &= ~HB4_CD; + +- if ((nn = process_reply(header, now, server, (size_t)n, check_rebind, no_cache_dnssec, cache_secure, ++ if ((nn = process_reply(header, now, server, (size_t)n, check_rebind, no_cache_dnssec, cache_secure, bogusanswer, + forward->flags & FREC_AD_QUESTION, forward->flags & FREC_DO_QUESTION, + forward->flags & FREC_ADDED_PHEADER, forward->flags & FREC_HAS_SUBNET, &forward->source))) + { +@@ -1420,7 +1445,7 @@ static int do_check_sign(struct frec *forward, int status, time_t now, char *nam + } + } + +-/* Move toward the root, until we find a signed non-existance of a DS, in which case ++/* Move down from the root, until we find a signed non-existance of a DS, in which case + an unsigned answer is OK, or we find a signed DS, in which case there should be + a signature, and the answer is BOGUS */ + static int tcp_check_for_unsigned_zone(time_t now, struct dns_header *header, size_t plen, int class, char *name, +@@ -1570,8 +1595,13 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si + else if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG) + { + new_status = dnssec_validate_ds(now, header, n, name, keyname, class); +- if (status == STAT_NEED_DS && (new_status == STAT_NO_DS || new_status == STAT_NO_NS)) +- new_status = STAT_BOGUS; ++ if (status == STAT_NEED_DS) ++ { ++ if (new_status == STAT_NO_DS) ++ new_status = STAT_INSECURE_DS; ++ else if (new_status == STAT_NO_NS) ++ new_status = STAT_BOGUS; ++ } + } + else if (status == STAT_CHASE_CNAME) + new_status = dnssec_chase_cname(now, header, n, name, keyname); +@@ -1630,8 +1660,13 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si + else if (status == STAT_NEED_DS || status == STAT_NEED_DS_NEG) + { + new_status = dnssec_validate_ds(now, header, n, name, keyname, class); +- if (status == STAT_NEED_DS && (new_status == STAT_NO_DS || new_status == STAT_NO_NS)) +- new_status = STAT_BOGUS; /* Validated no DS */ ++ if (status == STAT_NEED_DS) ++ { ++ if (new_status == STAT_NO_DS) ++ new_status = STAT_INSECURE_DS; ++ else if (new_status == STAT_NO_NS) ++ new_status = STAT_BOGUS; /* Validated no DS */ ++ } + } + else if (status == STAT_CHASE_CNAME) + new_status = dnssec_chase_cname(now, header, n, name, keyname); +@@ -1652,7 +1687,7 @@ static int tcp_key_recurse(time_t now, int status, struct dns_header *header, si + goto another_tcp_key; + } + } +- ++ + free(packet); + } + return new_status; +@@ -1673,7 +1708,7 @@ unsigned char *tcp_request(int confd, time_t now, + int local_auth = 0; + #endif + int checking_disabled, ad_question, do_bit, added_pheader = 0; +- int check_subnet, no_cache_dnssec = 0, cache_secure = 0; ++ int check_subnet, no_cache_dnssec = 0, cache_secure = 0, bogusanswer = 0; + size_t m; + unsigned short qtype; + unsigned int gotname; +@@ -1941,6 +1976,15 @@ unsigned char *tcp_request(int confd, time_t now, + int status = tcp_key_recurse(now, STAT_TRUNCATED, header, m, 0, daemon->namebuff, daemon->keyname, last_server, &keycount); + char *result; + ++ if (status == STAT_INSECURE_DS) ++ { ++ /* We only cache sigs when we've validated a reply. ++ Avoid caching a reply with sigs if there's a vaildated break in the ++ DS chain, so we don't return replies from cache missing sigs. */ ++ status = STAT_INSECURE; ++ no_cache_dnssec = 1; ++ } ++ + if (keycount == 0) + { + result = "ABANDONED"; +@@ -1952,8 +1996,11 @@ unsigned char *tcp_request(int confd, time_t now, + log_query(F_KEYTAG | F_SECSTAT, "result", NULL, result); + + if (status == STAT_BOGUS) +- no_cache_dnssec = 1; +- ++ { ++ no_cache_dnssec = 1; ++ bogusanswer = 1; ++ } ++ + if (status == STAT_SECURE) + cache_secure = 1; + } +@@ -1987,7 +2034,7 @@ unsigned char *tcp_request(int confd, time_t now, + #endif + + m = process_reply(header, now, last_server, (unsigned int)m, +- option_bool(OPT_NO_REBIND) && !norebind, no_cache_dnssec, ++ option_bool(OPT_NO_REBIND) && !norebind, no_cache_dnssec, bogusanswer, + cache_secure, ad_question, do_bit, added_pheader, check_subnet, &peer_addr); + + break; +-- +2.1.0 + diff --git a/src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch b/src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch new file mode 100644 index 0000000000..83cdb0c812 --- /dev/null +++ b/src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch @@ -0,0 +1,26 @@ +From 982faf402487e265ed11ac03524531d42b03c966 Mon Sep 17 00:00:00 2001 +From: Simon Kelley +Date: Fri, 3 Apr 2015 21:42:30 +0100 +Subject: [PATCH 71/71] Fix compiler warning when not including DNSSEC. + +--- + src/forward.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/forward.c b/src/forward.c +index e8cf615aa939..3f6b9a23b6ab 100644 +--- a/src/forward.c ++++ b/src/forward.c +@@ -530,7 +530,8 @@ static size_t process_reply(struct dns_header *header, time_t now, struct server + size_t plen; + + (void)ad_reqd; +- (void) do_bit; ++ (void)do_bit; ++ (void)bogusanswer; + + #ifdef HAVE_IPSET + if (daemon->ipsets && extract_request(header, n, daemon->namebuff, NULL)) +-- +2.1.0 +