This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree".
The branch, master has been updated via d2dabe5eba89eafbade352ad25a3742f790ac7ef (commit) via b525629a465a12ac737f547871f1f9d495ba711b (commit) via 263d0a71a9064cf646f87cfbddb55013729dfd93 (commit) from 979c8463434c6deddd7b61f3e665983ba3b04308 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit d2dabe5eba89eafbade352ad25a3742f790ac7ef Author: Arne Fitzenreiter arne_f@ipfire.org Date: Tue Mar 31 10:09:46 2015 +0200
dnsmasq: fix initskript
-add timestamp filename -pull user config after define default parameter
commit b525629a465a12ac737f547871f1f9d495ba711b Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Apr 4 14:38:38 2015 +0200
haproxy: Provide a better example configuration that works
commit 263d0a71a9064cf646f87cfbddb55013729dfd93 Author: Michael Tremer michael.tremer@ipfire.org Date: Sat Apr 4 15:23:17 2015 +0200
dnsmasq: Import latest patches from upstream
-----------------------------------------------------------------------
Summary of changes: config/haproxy/haproxy.cfg | 4 +- lfs/dnsmasq | 14 + lfs/haproxy | 2 +- src/initscripts/init.d/dnsmasq | 13 +- src/paks/{nagiosql => haproxy}/install.sh | 7 +- src/paks/{git => haproxy}/uninstall.sh | 2 +- src/paks/{xinetd => haproxy}/update.sh | 0 ...newline-at-the-end-of-example-config-file.patch | 2 +- ...artup-when-an-empty-suffix-is-supplied-to.patch | 2 +- .../0003-Debian-build-fixes-for-kFreeBSD.patch | 2 +- ...04-Set-conntrack-mark-before-connect-call.patch | 2 +- .../dnsmasq/0005-Fix-typo-in-new-Dbus-code.patch | 2 +- .../dnsmasq/0006-Fit-example-conf-file-typo.patch | 2 +- ...-compliance-when-unable-to-supply-address.patch | 2 +- .../0008-Fix-conntrack-with-bind-interfaces.patch | 2 +- ...9-Use-inotify-instead-of-polling-on-Linux.patch | 2 +- ...Teach-the-new-inotify-code-about-symlinks.patch | 2 +- ...ve-floor-on-EDNS0-packet-size-with-DNSSEC.patch | 2 +- .../dnsmasq/0012-CHANGELOG-re.-inotify.patch | 2 +- ...ix-breakage-of-domain-domain-subnet-local.patch | 2 +- ...ve-redundant-IN6_IS_ADDR_ULA-a-macro-defn.patch | 2 +- ...Pv6-privacy-addresses-from-interface-name.patch | 2 +- ...-width-in-cache-dump-to-avoid-truncating-.patch | 2 +- ...n-DNSSEC-code-when-attempting-to-verify-l.patch | 2 +- ...g-work-for-CNAMEs-pointing-to-A-AAAA-reco.patch | 2 +- ...x-problems-validating-NSEC3-and-wildcards.patch | 2 +- .../dnsmasq/0020-Initialise-return-value.patch | 2 +- .../dnsmasq/0021-Add-ignore-address-option.patch | 2 +- .../dnsmasq/0022-Bad-packet-protection.patch | 2 +- ...-build-failure-in-new-inotify-code-on-BSD.patch | 2 +- ...t-makefile-dependencies-on-COPTS-variable.patch | 2 +- ...0025-Fix-race-condition-issue-in-makefile.patch | 2 +- ...op-down-search-for-limit-of-secure-delega.patch | 2 +- ...ries-extra-option-for-more-complete-loggi.patch | 2 +- .../dnsmasq/0028-Add-min-cache-ttl-option.patch | 2 +- ...ort-of-requestor-when-doing-extra-logging.patch | 2 +- ...r-from-cache-RRsets-from-wildcards-as-we-.patch | 2 +- .../0031-Logs-for-DS-records-consistent.patch | 2 +- ...ultiple-interfaces-with-the-same-LL-addre.patch | 2 +- ...n-t-treat-SERVFAIL-as-a-recoverable-error.patch | 2 +- .../0034-Add-dhcp-hostsdir-config-option.patch | 2 +- .../dnsmasq/0035-Update-German-translation.patch | 2 +- ...-to-DHCPv6-SOLICIT-messages-when-not-conf.patch | 2 +- ...fy-to-be-disabled-at-compile-time-on-Linu.patch | 2 +- ...ify-code-to-dhcp-hostsdir-dhcp-optsdir-an.patch | 2 +- .../0039-Update-copyrights-for-dawn-of-2015.patch | 2 +- .../0040-inotify-documentation-updates.patch | 2 +- .../0041-Fix-broken-ECDSA-DNSSEC-signatures.patch | 2 +- src/patches/dnsmasq/0042-BSD-make-support.patch | 2 +- .../0043-Fix-build-failure-on-openBSD.patch | 2 +- src/patches/dnsmasq/0044-Manpage-typo-fix.patch | 2 +- ...configs-after-reading-extra-hostfiles-wit.patch | 2 +- .../0046-Extra-logging-for-inotify-code.patch | 2 +- src/patches/dnsmasq/0047-man-page-typo.patch | 2 +- ...sion-script-which-returned-wrong-tag-in-s.patch | 2 +- src/patches/dnsmasq/0049-Typos.patch | 2 +- ...ynamic-hosts-files-work-when-no-hosts-set.patch | 2 +- ...-trivial-memory-leaks-to-quieten-valgrind.patch | 2 +- ...ninitialized-value-used-in-get_client_mac.patch | 2 +- ...-Log-parsing-utils-in-contrib-reverse-dns.patch | 41 +- ...-Add-dnssec-timestamp-option-and-facility.patch | 2 +- ...mmit-to-not-crash-if-uid-changing-not-con.patch | 2 +- .../0056-New-version-of-contrib-reverse-dns.patch | 2 +- ...C-timestamp-code-to-create-file-later-rem.patch | 2 +- ...late-code-for-re-running-system-calls-on-.patch | 458 + ...s-example.com-equivalent-to-server-exampl.patch | 75 + ...tbound-interface-via-cmsg-in-unicast-repl.patch | 80 + ...DNSSEC-when-a-signed-CNAME-dangles-into-a.patch | 27 + ...Return-SERVFAIL-when-validation-abandoned.patch | 48 + ...3-Protect-against-broken-DNSSEC-upstreams.patch | 37 + ...EC-fix-for-non-ascii-characters-in-labels.patch | 197 + ...ol-characters-in-names-in-the-cache-handl.patch | 246 + .../dnsmasq/0066-Fix-crash-in-last-commit.patch | 30 + .../dnsmasq/0067-Merge-message-translations.patch | 20329 +++++++++++++++++++ ...-tftp-no-fail-to-ignore-missing-tftp-root.patch | 199 + src/patches/dnsmasq/0069-Whitespace-fixes.patch | 85 + ...CURE-rather-than-BOGUS-when-DS-proved-not.patch | 254 + ...ompiler-warning-when-not-including-DNSSEC.patch | 26 + 78 files changed, 22178 insertions(+), 108 deletions(-) copy src/paks/{nagiosql => haproxy}/install.sh (90%) copy src/paks/{git => haproxy}/uninstall.sh (98%) copy src/paks/{xinetd => haproxy}/update.sh (100%) create mode 100644 src/patches/dnsmasq/0058-Fix-boilerplate-code-for-re-running-system-calls-on-.patch create mode 100644 src/patches/dnsmasq/0059-Make-address-example.com-equivalent-to-server-exampl.patch create mode 100644 src/patches/dnsmasq/0060-dhcp-set-outbound-interface-via-cmsg-in-unicast-repl.patch create mode 100644 src/patches/dnsmasq/0061-Don-t-fail-DNSSEC-when-a-signed-CNAME-dangles-into-a.patch create mode 100644 src/patches/dnsmasq/0062-Return-SERVFAIL-when-validation-abandoned.patch create mode 100644 src/patches/dnsmasq/0063-Protect-against-broken-DNSSEC-upstreams.patch create mode 100644 src/patches/dnsmasq/0064-DNSSEC-fix-for-non-ascii-characters-in-labels.patch create mode 100644 src/patches/dnsmasq/0065-Allow-control-characters-in-names-in-the-cache-handl.patch create mode 100644 src/patches/dnsmasq/0066-Fix-crash-in-last-commit.patch create mode 100644 src/patches/dnsmasq/0067-Merge-message-translations.patch create mode 100644 src/patches/dnsmasq/0068-add-tftp-no-fail-to-ignore-missing-tftp-root.patch create mode 100644 src/patches/dnsmasq/0069-Whitespace-fixes.patch create mode 100644 src/patches/dnsmasq/0070-Return-INSECURE-rather-than-BOGUS-when-DS-proved-not.patch create mode 100644 src/patches/dnsmasq/0071-Fix-compiler-warning-when-not-including-DNSSEC.patch
Difference in files: diff --git a/config/haproxy/haproxy.cfg b/config/haproxy/haproxy.cfg index 324ad5e..9d372f6 100644 --- a/config/haproxy/haproxy.cfg +++ b/config/haproxy/haproxy.cfg @@ -28,8 +28,8 @@ global chroot /var/lib/haproxy pidfile /var/run/haproxy.pid maxconn 4000 - user haproxy - group haproxy + user nobody + group nobody daemon
# turn on stats unix socket diff --git a/lfs/dnsmasq b/lfs/dnsmasq index 4bb7f9f..15a86a5 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/lfs/haproxy b/lfs/haproxy index febb65a..4af2273 100644 --- a/lfs/haproxy +++ b/lfs/haproxy @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = haproxy -PAK_VER = 1 +PAK_VER = 2
DEPS = ""
diff --git a/src/initscripts/init.d/dnsmasq b/src/initscripts/init.d/dnsmasq index 4e37925..ce7689f 100644 --- a/src/initscripts/init.d/dnsmasq +++ b/src/initscripts/init.d/dnsmasq @@ -15,18 +15,19 @@ . /etc/sysconfig/rc . ${rc_functions}
-# Pull custom configuration file -if [ -e "/etc/sysconfig/dnsmasq" ]; then - . /etc/sysconfig/dnsmasq -fi - CACHE_SIZE=2500 ENABLE_DNSSEC=1 SHOW_SRV=1 TRUST_ANCHOR=".,19036,8,2,49AAC11D7B6F6446702E54A1607371607A1A41855200FD2CE1CDDE32F24E8FB5" +TIMESTAMP_FILE="/var/ipfire/dns/dnssec-timestamp" + +# Pull custom configuration file +if [ -e "/etc/sysconfig/dnsmasq" ]; then + . /etc/sysconfig/dnsmasq +fi
function dnssec_args() { - local cmdline="--dnssec --dnssec-timestamp" + local cmdline="--dnssec --dnssec-timestamp ${TIMESTAMP_FILE}"
if [ -n "${TRUST_ANCHOR}" ]; then cmdline="${cmdline} --trust-anchor=${TRUST_ANCHOR}" diff --git a/src/paks/haproxy/install.sh b/src/paks/haproxy/install.sh new file mode 100644 index 0000000..45b2161 --- /dev/null +++ b/src/paks/haproxy/install.sh @@ -0,0 +1,30 @@ +#!/bin/bash +############################################################################ +# # +# This file is part of the IPFire Firewall. # +# # +# IPFire is free software; you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation; either version 2 of the License, or # +# (at your option) any later version. # +# # +# IPFire is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with IPFire; if not, write to the Free Software # +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +# # +# Copyright (C) 2007 IPFire-Team info@ipfire.org. # +# # +############################################################################ +# +. /opt/pakfire/lib/functions.sh +extract_files + +# Enable autostart +ln -sf ../init.d/haproxy /etc/rc.d/rc0.d/K25haproxy +ln -sf ../init.d/haproxy /etc/rc.d/rc3.d/S35haproxy +ln -sf ../init.d/haproxy /etc/rc.d/rc6.d/K25haproxy diff --git a/src/paks/haproxy/uninstall.sh b/src/paks/haproxy/uninstall.sh new file mode 100644 index 0000000..b01ee11 --- /dev/null +++ b/src/paks/haproxy/uninstall.sh @@ -0,0 +1,26 @@ +#!/bin/bash +############################################################################ +# # +# This file is part of the IPFire Firewall. # +# # +# IPFire is free software; you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation; either version 2 of the License, or # +# (at your option) any later version. # +# # +# IPFire is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with IPFire; if not, write to the Free Software # +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +# # +# Copyright (C) 2007 IPFire-Team info@ipfire.org. # +# # +############################################################################ +# +. /opt/pakfire/lib/functions.sh +remove_files +rm -rfv /etc/rc.d/rc*.d/*haproxy diff --git a/src/paks/haproxy/update.sh b/src/paks/haproxy/update.sh new file mode 100644 index 0000000..89c40d0 --- /dev/null +++ b/src/paks/haproxy/update.sh @@ -0,0 +1,26 @@ +#!/bin/bash +############################################################################ +# # +# This file is part of the IPFire Firewall. # +# # +# IPFire is free software; you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation; either version 2 of the License, or # +# (at your option) any later version. # +# # +# IPFire is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with IPFire; if not, write to the Free Software # +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +# # +# Copyright (C) 2007 IPFire-Team info@ipfire.org. # +# # +############################################################################ +# +. /opt/pakfire/lib/functions.sh +./uninstall.sh +./install.sh 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 adcb44f..09e3858 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 simon@thekelleys.org.uk 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 b84440b..bcaac85 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 simon@thekelleys.org.uk 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 fe73acd..a7ef611 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 simon@thekelleys.org.uk 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 5d7c3c4..e64e314 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 karl.vogel@gmail.com 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 80c55f6..48ed92e 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 daniel.collins@smoothwall.net 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 5f9f572..c8c5169 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 thozza@redhat.com 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 370d106..c21ece4 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 themiron@mail.ru 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 3f8bad3..227cab7 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 dedeckeh@gmail.com 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 8193920..7773e0b 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 simon@thekelleys.org.uk 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 70fc5c3..f5e0ccd 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 simon@thekelleys.org.uk 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 095253b..800cfb6 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 simon@thekelleys.org.uk 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 b71e58b..1a0925a 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 simon@thekelleys.org.uk 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 2ff5acd..d467a9e 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 simon@thekelleys.org.uk Date: Tue, 16 Dec 2014 18:25:17 +0000 -Subject: [PATCH 13/55] Fix breakage of --domain=<domain>,<subnet>,local +Subject: [PATCH 13/71] Fix breakage of --domain=<domain>,<subnet>,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 a0e647f..b77acce 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 simon@thekelleys.org.uk 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 114a4f3..0680423 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 simon@thekelleys.org.uk 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 d072c03..6b35378 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 simon@thekelleys.org.uk 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 944afaf..01095a2 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 simon@thekelleys.org.uk 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 de66adb..49adf85 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 simon@thekelleys.org.uk 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 0ee2e65..33e5180 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 simon@thekelleys.org.uk 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 2f70ee5..c0493df 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 simon@thekelleys.org.uk 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 6c88f2d..e5422a1 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 curvedmark@gmail.com 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 1b37202..1fbe54c 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 simon@thekelleys.org.uk 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 3bc3f79..6e57877 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 matthias.andree@gmx.de 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 e3074fa..867a95d 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 yszhou4tech@gmail.com 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 b1c42ae..4a379c1 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 yszhou4tech@gmail.com 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 7f01ee7..837c124 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 simon@thekelleys.org.uk 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 e258d56..23b9471 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 simon@thekelleys.org.uk 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 e8a61b7..6f7f27c 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 aa65535@live.com 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 d3c4847..4834269 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 simon@thekelleys.org.uk 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 5f489e2..fef0e11 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 simon@thekelleys.org.uk 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 1a2d3e4..8ebe469 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 simon@thekelleys.org.uk 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 81b02cc..60a44b9 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 simon@thekelleys.org.uk 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 e88a94b..f426e8f 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 simon@thekelleys.org.uk 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 c6b6703..53780b2 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 simon@thekelleys.org.uk 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 af45a1c..2d18e76 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 ck@conrad-kostecki.de 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 25007de..ffe4cf6 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 pinwing+dnsmasq@gmail.com 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 7318688..3cd7999 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 simon@thekelleys.org.uk 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 7514034..08eb5b5 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 simon@thekelleys.org.uk 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 11bde00..7303df4 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 simon@thekelleys.org.uk 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 981e553..9c3ac9c 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 simon@thekelleys.org.uk 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 0c8aa9b..1fc1c73 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 simon@thekelleys.org.uk 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 76f76ef..750f113 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 simon@thekelleys.org.uk 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 a3df61b..aa55fe2 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 simon@thekelleys.org.uk 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 e0e384f..bbc4d48 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?= thiebaud@weksteen.fr 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 fc1b98a..2d43b93 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 simon@thekelleys.org.uk 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 803174a..8b173f2 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 simon@thekelleys.org.uk 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 6606a7a..9710dfb 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 simon@thekelleys.org.uk 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 5633d9d..fb7753c 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 shantanugadgil@yahoo.com 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 8f64b39..c843bf2 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 simon@thekelleys.org.uk 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 af79802..7b9a1b3 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 simon@thekelleys.org.uk 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 2c38cfc..a65ed21 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 weichen302@icloud.com 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 46277fb..69aeb92 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 thozza@redhat.com 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 9527030..b37498e 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 jz-2014@heute-morgen.de 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 2ff79d5..5073440 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 simon@thekelleys.org.uk 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 54bb5d5..768e14a 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 simon@thekelleys.org.uk 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 9a05215..d39a058 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 simon@thekelleys.org.uk 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 df47cd0..462d572 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 simon@thekelleys.org.uk 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 0000000..aa30241 --- /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 simon@thekelleys.org.uk +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 0000000..6a2a0f4 --- /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 simon@thekelleys.org.uk +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>/[domain/]<ipaddr> ++.B -A, --address=/<domain>/[domain/][<ipaddr>] + 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>/[domain/]<ipset>[,<ipset>] + 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 0000000..1eb504b --- /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 changlp@cs.nctu.edu.tw +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 0000000..b566ebf --- /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 simon@thekelleys.org.uk +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 0000000..a660450 --- /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 simon@thekelleys.org.uk +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 0000000..93161d0 --- /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 simon@thekelleys.org.uk +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 0000000..389beee --- /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 simon@thekelleys.org.uk +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 0000000..69f6081 --- /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 simon@thekelleys.org.uk +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 "<name unprintable>"; ++ ++ 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 = "<Root>"; +- 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 0000000..04a865f --- /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 simon@thekelleys.org.uk +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 "<name unprintable>"; ++ if (name) ++ for (r = (unsigned char *)name; *r; r++) ++ if (!isprint((int)*r)) ++ return "<name unprintable>"; + + 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 0000000..090da5c --- /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 simon@thekelleys.org.uk +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 0000000..3439cc1 --- /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 stefan.tomanek+dnsmasq@wertarbyte.de +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, "<dir>[,<iface>]", 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, "<integer>", 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 0000000..6784ee3 --- /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 stefan.tomanek+dnsmasq@wertarbyte.de +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 0000000..1350ca6 --- /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 simon@thekelleys.org.uk +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 0000000..83cdb0c --- /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 simon@thekelleys.org.uk +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 +
hooks/post-receive -- IPFire 2.x development tree