diff options
author | Simon Kelley <simon@thekelleys.org.uk> | 2011-02-18 18:11:18 +0000 |
---|---|---|
committer | Simon Kelley <simon@thekelleys.org.uk> | 2012-01-05 17:31:15 +0000 |
commit | 572b41eb503fd765b5a195abd799043989363791 (patch) | |
tree | fbeaa561c35e5a80bf1e3994cce2bcfc99455fe6 | |
parent | 28866e9567f1ef1cb12d19e78e0e5d5a0335c059 (diff) | |
download | dnsmasq-572b41eb503fd765b5a195abd799043989363791.tar.gz |
import of dnsmasq-2.57.tar.gzv2.57
-rw-r--r-- | Android.mk | 3 | ||||
-rw-r--r-- | CHANGELOG | 32 | ||||
-rw-r--r-- | Makefile | 8 | ||||
-rw-r--r-- | bld/Android.mk | 18 | ||||
-rw-r--r-- | dnsmasq.conf.example | 7 | ||||
-rw-r--r-- | po/de.po | 315 | ||||
-rw-r--r-- | po/es.po | 315 | ||||
-rw-r--r-- | po/fi.po | 314 | ||||
-rw-r--r-- | po/fr.po | 315 | ||||
-rw-r--r-- | po/id.po | 314 | ||||
-rw-r--r-- | po/it.po | 314 | ||||
-rw-r--r-- | po/no.po | 314 | ||||
-rw-r--r-- | po/pl.po | 315 | ||||
-rw-r--r-- | po/pt_BR.po | 314 | ||||
-rw-r--r-- | po/ro.po | 314 | ||||
-rw-r--r-- | src/config.h | 39 | ||||
-rw-r--r-- | src/dhcp_protocol.h | 91 | ||||
-rw-r--r-- | src/dns_protocol.h | 111 | ||||
-rw-r--r-- | src/dnsmasq.c | 16 | ||||
-rw-r--r-- | src/dnsmasq.h | 57 | ||||
-rw-r--r-- | src/forward.c | 61 | ||||
-rw-r--r-- | src/log.c | 30 | ||||
-rw-r--r-- | src/option.c | 33 | ||||
-rw-r--r-- | src/rfc1035.c | 112 | ||||
-rw-r--r-- | src/rfc2131.c | 64 | ||||
-rw-r--r-- | src/tftp.c | 6 | ||||
-rw-r--r-- | src/util.c | 24 |
27 files changed, 2097 insertions, 1759 deletions
diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..ba187a6 --- /dev/null +++ b/Android.mk @@ -0,0 +1,3 @@ +ifneq ($(TARGET_SIMULATOR),true) +include $(call all-subdir-makefiles) +endif @@ -1,3 +1,29 @@ +version 2.57 + Add patches to allow build under Android. + + Provide our own header for the DNS protocol, rather than + relying on arpa/nameser.h. This has proved more or less + defective over the years and the final straw is that it's + effectively empty on Android. + + Fix regression in 2.56 which caused hex constants in + configuration to be rejected if they contain the '*' + wildcard. + + Correct wrong casts of arguments to ctype.h functions, + isdigit(), isxdigit() etc. Thanks to Matthias Andree for + spotting this. + + Allow build with IDN support independently from i18n. + IDN support continues to be included automatically + when i18n is included. + 'make COPTS=-DHAVE_IDN' is the magic incantation. + + Modify check on extraneous command line junk (added in + 2.56) so that it doesn't complain about extra _empty_ + arguments. Otherwise this breaks libvirt. + + version 2.56 Add a patch to allow dnsmasq to get interface names right in a Solaris zone. Thanks to Dj Padzensky for this. @@ -117,9 +143,9 @@ version 2.56 request meant for another DHCP server. NAKing this is wrong. Thanks to Brad D'Hondt for assistance with this. - Fix cosmetic bug which produced strange output when - dumping cache statistics with some configurations. Thanks - to Fedor Kozhevnikov for spotting this. + Fix cosmetic bug which produced strange output when + dumping cache statistics with some configurations. Thanks + to Fedor Kozhevnikov for spotting this. version 2.55 @@ -1,4 +1,4 @@ -# dnsmasq is Copyright (c) 2000-2010 Simon Kelley +# dnsmasq is Copyright (c) 2000-2011 Simon Kelley # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -34,6 +34,8 @@ MAN = man DNSMASQ_CFLAGS=`echo $(COPTS) | ../bld/pkg-wrapper HAVE_DBUS $(PKG_CONFIG) --cflags dbus-1` DNSMASQ_LIBS= `echo $(COPTS) | ../bld/pkg-wrapper HAVE_DBUS $(PKG_CONFIG) --libs dbus-1` +IDN_CFLAGS=`echo $(COPTS) | ../bld/pkg-wrapper HAVE_IDN $(PKG_CONFIG) --cflags libidn` +IDN_LIBS= `echo $(COPTS) | ../bld/pkg-wrapper HAVE_IDN $(PKG_CONFIG) --libs libidn` SUNOS_LIBS= `if uname | grep SunOS 2>&1 >/dev/null; then echo -lsocket -lnsl -lposix4; fi` OBJS = cache.o rfc1035.o util.o option.o forward.o network.o \ @@ -42,8 +44,8 @@ OBJS = cache.o rfc1035.o util.o option.o forward.o network.o \ all : @cd $(SRC) && $(MAKE) \ - BUILD_CFLAGS="$(DNSMASQ_CFLAGS)" \ - BUILD_LIBS="$(DNSMASQ_LIBS) $(SUNOS_LIBS)" \ + BUILD_CFLAGS="$(DNSMASQ_CFLAGS) $(IDN_CFLAGS)" \ + BUILD_LIBS="$(DNSMASQ_LIBS) $(IDN_LIBS) $(SUNOS_LIBS)" \ -f ../Makefile dnsmasq clean : diff --git a/bld/Android.mk b/bld/Android.mk new file mode 100644 index 0000000..373a783 --- /dev/null +++ b/bld/Android.mk @@ -0,0 +1,18 @@ +LOCAL_PATH := external/dnsmasq/src + +######################### + +include $(CLEAR_VARS) +LOCAL_SRC_FILES := bpf.c cache.c dbus.c dhcp.c dnsmasq.c \ + forward.c helper.c lease.c log.c \ + netlink.c network.c option.c rfc1035.c \ + rfc2131.c tftp.c util.c + +LOCAL_MODULE := dnsmasq + +LOCAL_C_INCLUDES := external/dnsmasq/src + +LOCAL_CFLAGS := -O2 -g -W -Wall -D__ANDROID__ -DNO_IPV6 -DNO_TFTP -DNO_SCRIPT +LOCAL_SYSTEM_SHARED_LIBRARIES := libc libcutils + +include $(BUILD_EXECUTABLE) diff --git a/dnsmasq.conf.example b/dnsmasq.conf.example index f7ea58b..719dcff 100644 --- a/dnsmasq.conf.example +++ b/dnsmasq.conf.example @@ -7,8 +7,8 @@ # The following two options make you a better netizen, since they # tell dnsmasq to filter out queries which the public DNS cannot # answer, and which load the servers (especially the root servers) -# necessarily. If you have a dial-on-demand link they also stop -# these requests from bringing up the link necessarily. +# unnecessarily. If you have a dial-on-demand link they also stop +# these requests from bringing up the link unnecessarily. # Never forward plain names (without a dot or domain part) #domain-needed @@ -161,7 +161,8 @@ # of valid alternatives, so we will give examples of each. Note that # IP addresses DO NOT have to be in the range given above, they just # need to be on the same network. The order of the parameters in these -# do not matter, it's permissible to give name,address and MAC in any order +# do not matter, it's permissible to give name, address and MAC in any +# order. # Always allocate the host with Ethernet address 11:22:33:44:55:66 # The IP address 192.168.0.60 @@ -74,31 +74,31 @@ msgstr "%u weitergeleitete Anfragen, %u lokal beantwortete Anfragen" msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "Server %s#%d: %u Anfragen gesendet, %u erneut versucht oder fehlgeschlagen" -#: util.c:59 +#: util.c:57 #, c-format msgid "failed to seed the random number generator: %s" msgstr "Konnte den Zufallszahlengenerator nicht initialisieren: %s" -#: util.c:191 +#: util.c:189 msgid "failed to allocate memory" msgstr "Konnte Speicher nicht belegen" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "Speicher nicht verfügbar" -#: util.c:239 +#: util.c:237 #, c-format msgid "cannot create pipe: %s" msgstr "Konnte Pipe nicht erzeugen: %s" -#: util.c:247 +#: util.c:245 #, c-format msgid "failed to allocate %d bytes" msgstr "Konnte %d Bytes nicht belegen" # @Simon: not perfect but I cannot get nearer right now. -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "unendlich" @@ -587,197 +587,205 @@ msgstr "Fehlerhafte DHCP-Option" msgid "bad IP address" msgstr "Fehlerhafte IP-Adresse" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "Fehlerhafte Domäne in DHCP-Option" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "DHCP-Option zu lang" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "Unzulässige dhcp-match-Option" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "unzulässig wiederholte Markierung" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "unzulässig wiederholtes Schlüsselwort" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, c-format msgid "cannot access directory %s: %s" msgstr "Kann auf Verzeichnis %s nicht zugreifen: %s" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, c-format msgid "cannot access %s: %s" msgstr "Kann auf %s nicht zugreifen: %s" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "unzulässige MX-Präferenz-Angabe" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "unzulässiger MX-Name" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "unzulässiges MX-Ziel" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "unter uClinux ist die Skriptausführung nicht möglich" -#: option.c:1290 +#: option.c:1296 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:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "unzulässiger Port" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "Schnittstellenbindung nicht unterstützt" -#: option.c:1785 +#: option.c:1791 msgid "bad port range" msgstr "unzulässiger Portbereich" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "unzulässige Brücken-Schnittstelle" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "unzulässiger DHCP-Bereich" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "nur eine Marke zulässig" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "inkonsistenter DHCP-Bereich" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 msgid "bad hex constant" msgstr "" -#: option.c:2101 +#: option.c:2107 msgid "bad DHCP host name" msgstr "unzulässiger DHCP-Hostname" -#: option.c:2182 +#: option.c:2188 msgid "bad tag-if" msgstr "unzulässige bedingte Marke (tag-if)" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "unzulässige Portnummer" -#: option.c:2523 +#: option.c:2529 msgid "bad dhcp-proxy address" msgstr "Fehlerhafte DHCP-Proxy-Adresse" -#: option.c:2563 +#: option.c:2569 msgid "invalid alias range" msgstr "unzulässiger Alias-Bereich" -#: option.c:2576 +#: option.c:2582 msgid "bad interface name" msgstr "unzulässiger Schnittestellenname" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "unzulässiger CNAME" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "doppelter CNAME" -#: option.c:2626 +#: option.c:2632 msgid "bad PTR record" msgstr "unzulässiger PTR-Eintrag" -#: option.c:2657 +#: option.c:2663 msgid "bad NAPTR record" msgstr "unzulässiger NAPTR-Eintrag" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "unzulässiger TXT-Eintrag" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "unzulässiger SRV-Eintrag" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "unzulässiges SRV-Ziel" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "unzulässige Priorität" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "unzulässige Wichtung" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "unzulässige Option (prüfen Sie, ob dnsmasq mit DHCP/TFTP/DBus-Unterstützt übersetzt wurde)" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "fehlende \\\"" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "unzulässige Option" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "überschüssiger Parameter" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "fehler Parameter" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "Fehler" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "%s in Zeile %d von %%s" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "kann %s nicht lesen: %s" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, c-format msgid "read %s" msgstr "%s gelesen" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "Dnsmasq Version %s %s\n" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" @@ -786,64 +794,64 @@ msgstr "" "Ãœbersetzungs-Optionen %s\n" "\n" -#: option.c:3260 +#: option.c:3271 #, 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:3261 +#: option.c:3272 #, c-format msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" msgstr "" -#: option.c:3262 +#: option.c:3273 #, c-format msgid "under the terms of the GNU General Public License, version 2 or 3.\n" msgstr "" -#: option.c:3273 +#: option.c:3284 msgid "try --help" msgstr "versuchen Sie --help" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "versuchen Sie -w" -#: option.c:3278 +#: option.c:3289 #, c-format msgid "bad command line options: %s" msgstr "unzulässige Optionen auf der Befehlszeile: %s" -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "kann Hostnamen nicht ermitteln: %s" -#: option.c:3347 +#: option.c:3358 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:3357 +#: option.c:3368 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:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, c-format msgid "failed to read %s: %s" msgstr "konnte %s nicht lesen: %s" -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "keine \"search\"-Anweisung in %s gefunden" -#: option.c:3398 +#: option.c:3409 #, fuzzy msgid "there must be a default domain when --dhcp-fqdn is set" msgstr "für --dhcp-fqdn muss eine Domäne vorausgewählt werden" -#: option.c:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "Syntaxprüfung OK" @@ -924,205 +932,210 @@ msgstr "" msgid "using nameserver %s#%d" msgstr "" -#: dnsmasq.c:145 +#: dnsmasq.c:148 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:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "asynchrone Protokollierung unter Solaris nicht verfügbar" -#: dnsmasq.c:169 +#: dnsmasq.c:158 +#, fuzzy +msgid "asychronous logging is not available under Android" +msgstr "asynchrone Protokollierung unter Solaris nicht verfügbar" + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "konnte Schnitstellenliste nicht beziehen: %s" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "unbekannte Schnittstelle %s" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "keine Schnittstelle mit Adresse %s" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "DBus-Fehler: %s" -#: dnsmasq.c:202 +#: dnsmasq.c:210 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:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "Unbekannter Benutzer oder Gruppe: %s" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, 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:447 +#: dnsmasq.c:455 #, c-format msgid "started, version %s DNS disabled" msgstr "gestartet, Version %s, DNS abgeschaltet" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "gestartet, Version %s, Cachegröße %d" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "Ãœbersetzungsoptionen: %s" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "DBus-Unterstützung eingeschaltet: mit Systembus verbunden" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "DBus-Unterstützung eingeschaltet: warte auf Systembus-Verbindung" -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, c-format msgid "warning: failed to change owner of %s: %s" msgstr "Warnung: konnte den Besitzer von %s nicht ändern: %s" -#: dnsmasq.c:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "Aktiviere --bind-interfaces wegen Einschränkungen des Betriebssystems" -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "Warnung: Schnittstelle %s existiert derzeit nicht" -#: dnsmasq.c:480 +#: dnsmasq.c:488 msgid "warning: ignoring resolv-file flag because no-resolv is set" msgstr "Warnung: Ignoriere \"resolv-file\", weil \"no-resolv\" aktiv ist" -#: dnsmasq.c:483 +#: dnsmasq.c:491 msgid "warning: no upstream servers configured" msgstr "Warnung: keine vorgelagerten (Upstream) Server konfiguriert" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, c-format msgid "asynchronous logging enabled, queue limit is %d messages" msgstr "asynchrone Protokollierung eingeschaltet, Warteschlange fasst %d Nachrichten" -#: dnsmasq.c:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "DHCP, nur statische Leases auf %.0s%s, Lease-Zeit %s" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "DHCP, Proxy im Subnetz %.0s%s%.0s" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "DHCP, IP-Bereich %s - %s, Lease-Zeit %s " -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "FIXME: this and the next few must be full strings to be translatable - do not assemble in code" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "enabled" msgstr "" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "Begrenze gleichzeitige TFTP-Ãœbertragungen auf maximal %d" -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "Mit System-DBus verbunden" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "kann nicht in den Hintergrund abspalten: %s" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, c-format msgid "failed to create helper: %s" msgstr "kann Helfer nicht erzeugen: %s" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "kann \"capabilities\" nicht setzen: %s" -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, c-format msgid "failed to change user-id to %s: %s" msgstr "Kann nicht Benutzerrechte %s annehmen: %s" -#: dnsmasq.c:782 +#: dnsmasq.c:790 #, c-format msgid "failed to change group-id to %s: %s" msgstr "Kann nicht Gruppenrechte %s annehmen: %s" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, c-format msgid "failed to open pidfile %s: %s" msgstr "kann die Prozessidentifikations-(PID)-Datei %s nicht öffnen: %s" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, c-format msgid "cannot open %s: %s" msgstr "kann %s nicht öffnen: %s" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "Tochterprozess durch Signal %d zerstört" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "Tochterprozess beendete sich mit Status %d" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, c-format msgid "failed to execute %s: %s" msgstr "konnte %s nicht ausführen: %s" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "beende nach Empfang von SIGTERM" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, c-format msgid "failed to access %s: %s" msgstr "konnte auf %s nicht zugreifen: %s" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "lese %s" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, c-format msgid "no servers found in %s, will retry" msgstr "keine Server in %s gefunden, werde es später neu versuchen" @@ -1219,181 +1232,181 @@ msgstr "Konnte %s nicht schreiben: %s (Neuversuch in %u s)" # FIXME: this and the next few are not translatable. Please provide full # strings, do not programmatically assemble them. -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "" -#: rfc2131.c:393 +#: rfc2131.c:331 #, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "%u verfügbare(s) DHCP-Subnetz: %s/%s" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "%u verfügbare(r) DHCP-Bereich: %s - %s" # FIXME: do not programmatically assemble strings - untranslatable -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "%u Klient stellt Name bereit: %s" -#: rfc2131.c:762 +#: rfc2131.c:700 #, c-format msgid "%u vendor class: %s" msgstr "%u \"Vendor class\": %s" -#: rfc2131.c:764 +#: rfc2131.c:702 #, c-format msgid "%u user class: %s" msgstr "%u Benutzerklasse: %s" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "PXE BIS nicht unterstützt" -#: rfc2131.c:948 +#: rfc2131.c:886 #, c-format msgid "disabling DHCP static address %s for %s" msgstr "schalte statische DHCP-Adresse %s für %s ab" # FIXME: do not assemble -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "benutze konfigurierte Adresse %s nicht, weil sie an %s verleast ist" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "benutze konfigurierte Adresse %s nicht, weil sie von Server/Relais verwendet wird" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "benutze konfigurierte Adresse %s nicht, weil sie zuvor abgelehnt wurde" # FIXME: do not assemble -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "Gebe Lease von %2$s an %1$s auf" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "%u Marken: %s" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "%u Name der Bootdatei: %s" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, c-format msgid "%u server name: %s" msgstr "%u Servername: %s" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, c-format msgid "%u next server: %s" msgstr "%u nächster Server: %s" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "%u Antwort per Rundsendung" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "kann DHCP/BOOTP-Opition %d nicht setzen: kein Platz mehr im Paket" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "PXE-Menüeintrag zu groß" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "Ignoriere Domäne %s für DHCP-Hostnamen %s" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, c-format msgid "%u requested options: %s" msgstr "%u angeforderte Optionen: %s" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "Kann RFC3925-Option nicht senden: zu viele Optionen für Unternehmen Nr. %d" @@ -1459,17 +1472,17 @@ msgstr "konnte %s nicht an %s senden" msgid "sent %s to %s" msgstr "%s an %s verschickt" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "Ãœberlauf: %d Protokolleinträge verloren" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "Protokollierung fehlgeschlagen: %s" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "Start fehlgeschlagen" @@ -69,31 +69,31 @@ msgstr "búsquedas reenviadas %u, búsquedas respondidas localmente %u" msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "servidor %s#%d: búsquedas enviadas %u, reintentadas o fallidas %u" -#: util.c:59 +#: util.c:57 #, fuzzy, c-format msgid "failed to seed the random number generator: %s" msgstr "no se pudo crear valor semilla para el generador de números aleatorios: %s" -#: util.c:191 +#: util.c:189 #, fuzzy msgid "failed to allocate memory" msgstr "no se pudo asignar memoria" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "no se pudo adquirir memoria" -#: util.c:239 +#: util.c:237 #, fuzzy, c-format msgid "cannot create pipe: %s" msgstr "no se puede crear pipe: %s" -#: util.c:247 +#: util.c:245 #, fuzzy, c-format msgid "failed to allocate %d bytes" msgstr "no se pudo asignar %d bytes" -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "infinito" @@ -590,206 +590,214 @@ msgstr "opción dhcp-option errónea" msgid "bad IP address" msgstr "dirección IP errónea" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "dominio erróneo en dhcp-option" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "opción dhcp-option demasiado larga" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "dhcp-match ilegal" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "opción repetida ilegal" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "palabra clave repetida ilegal" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, fuzzy, c-format msgid "cannot access directory %s: %s" msgstr "no se puede accesar directorio %s: %s" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, fuzzy, c-format msgid "cannot access %s: %s" msgstr "no se puede accesar %s: %s" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "preferencia MX errónea" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "nombre MX erróneo" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "destino MX erróneo" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "no se pueden correr archivos guiónes bajo uClinux" -#: option.c:1290 +#: option.c:1296 msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" msgstr "recompilar con HAVE_SCRIPT definido para habilitar guiónes de cambio de arriendo" -#: option.c:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "puerto erróneo" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "vinculación de interface no está soportado" -#: option.c:1785 +#: option.c:1791 #, fuzzy msgid "bad port range" msgstr "rango de puertos erróneo" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "opción bridge-interface (interface puente) errónea" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "opción dhcp-range (rango DHCP) errónea" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "solo una etiqueta permitida" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "rango DHCP inconsistente" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 #, fuzzy msgid "bad hex constant" msgstr "opción dhcp-host errónea" -#: option.c:2101 +#: option.c:2107 #, fuzzy msgid "bad DHCP host name" msgstr "nombre de host DHCP erróneo" -#: option.c:2182 +#: option.c:2188 #, fuzzy msgid "bad tag-if" msgstr "destino MX erróneo" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "número de puerto inválido" -#: option.c:2523 +#: option.c:2529 #, fuzzy msgid "bad dhcp-proxy address" msgstr "dirección IP errónea" -#: option.c:2563 +#: option.c:2569 #, fuzzy msgid "invalid alias range" msgstr "rango alias inválido" -#: option.c:2576 +#: option.c:2582 #, fuzzy msgid "bad interface name" msgstr "nombre de interface erróneo" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "CNAME erróneo" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "CNAME duplicado" -#: option.c:2626 +#: option.c:2632 #, fuzzy msgid "bad PTR record" msgstr "expediente PTR erróneo" -#: option.c:2657 +#: option.c:2663 #, fuzzy msgid "bad NAPTR record" msgstr "expediente NAPTR erróneo" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "expediente TXT erróneo" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "expediente SRV erróneo" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "destino SRV erróneo" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "prioridad inválida" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "peso inválido" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "opción no soportada (verificar que dnsmasq fue compilado con soporte para DHCP/TFTP/DBus)" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "falta \"" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "opción errónea" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "parámetro extraño" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "parámetro ausente" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "error" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "%s en línea %d de %%s" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "no se puede leer %s: %s" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, fuzzy, c-format msgid "read %s" msgstr "leyendo %s" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "Dnsmasq versión %s %s\n" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" @@ -798,63 +806,63 @@ msgstr "" "Opciones de compilación %s\n" "\n" -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "Este software viene SIN NINGUNA GARANTIA.\n" -#: option.c:3261 +#: option.c:3272 #, c-format msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" msgstr "Dnsmasq es software libre, y usted está bienvenido a redistribuirlo\n" -#: option.c:3262 +#: option.c:3273 #, 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:3273 +#: option.c:3284 msgid "try --help" msgstr "pruebe --help" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "pruebe -w" -#: option.c:3278 +#: option.c:3289 #, fuzzy, c-format msgid "bad command line options: %s" msgstr "opciones de línea de comandos erróneas: %s" -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "no se puede obtener host-name (nombre de host): %s" -#: option.c:3347 +#: option.c:3358 msgid "only one resolv.conf file allowed in no-poll mode." msgstr "solo un archivo resolv.conf permitido en modo no-poll." -#: option.c:3357 +#: option.c:3368 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:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, fuzzy, c-format msgid "failed to read %s: %s" msgstr "no se pudo leer %s: %s" -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "ninguna directiva de búsqueda encontrada en %s" -#: option.c:3398 +#: option.c:3409 #, 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:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "revisión de sintaxis OK" @@ -934,208 +942,213 @@ msgstr "usando servidor DNS %s#%d(vía %s)" msgid "using nameserver %s#%d" msgstr "usando servidor DNS %s#%d" -#: dnsmasq.c:145 +#: dnsmasq.c:148 #, 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:150 +#: dnsmasq.c:153 #, fuzzy msgid "asychronous logging is not available under Solaris" msgstr "bitacoreo asincrónico no está disponible bajo Solaris" -#: dnsmasq.c:169 +#: dnsmasq.c:158 +#, fuzzy +msgid "asychronous logging is not available under Android" +msgstr "bitacoreo asincrónico no está disponible bajo Solaris" + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "no se pudo encontrar lista de interfaces: %s" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "interface desconocida %s" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "ninguna interface con dirección %s" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "error DBus: %s" -#: dnsmasq.c:202 +#: dnsmasq.c:210 msgid "DBus not available: set HAVE_DBUS in src/config.h" msgstr "DBus no disponible: fijar HAVE_DBUS en src/config.h" -#: dnsmasq.c:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "usuario o grupo desconocido: %s" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, 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:447 +#: dnsmasq.c:455 #, fuzzy, c-format msgid "started, version %s DNS disabled" msgstr "iniciado, versión %s DNS deshabilitado" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "iniciado, versión %s tamaño de caché %d" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "iniciado, versión %s caché deshabilitado" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "opciones de compilación: %s" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "soporte DBus habilitado: conectado a bus de sistema" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "soporte DBus habilitado: conección a bus pendiente" -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, fuzzy, c-format msgid "warning: failed to change owner of %s: %s" msgstr "advertencia: no se pudo cambiar dueño de %s: %s" -#: dnsmasq.c:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "fijando opción --bind-interfaces debido a limitaciones de sistema operativo" -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "advertencia: interface %s no existe actuálmente" -#: dnsmasq.c:480 +#: dnsmasq.c:488 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:483 +#: dnsmasq.c:491 #, fuzzy msgid "warning: no upstream servers configured" msgstr "advertencia: ningún servidor upstream configurado" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, c-format msgid "asynchronous logging enabled, queue limit is %d messages" msgstr "bitacoreo asincrónico habilitado, límite de cola es %d mensajes" -#: dnsmasq.c:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "DHCP, arriendos estáticos solo en %.0s%s, tiempo de arriendo %s" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "DHCP, proxy en subred %.0s%s%.0s" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "DHCP, rango de IPs %s -- %s, tiempo de arriendo %s" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "root es " -#: dnsmasq.c:518 +#: dnsmasq.c:526 #, fuzzy msgid "enabled" msgstr "habilitado" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "modo seguro" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, 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:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "conectado a DBus de sistema" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "no se puede hacer fork hacia el fondo: %s" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, fuzzy, c-format msgid "failed to create helper: %s" msgstr "no se pudo crear ayudante: %s" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, fuzzy, c-format msgid "setting capabilities failed: %s" msgstr "configuración de capacidades ha fallado: %s" -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, fuzzy, c-format msgid "failed to change user-id to %s: %s" msgstr "no se pudo cambiar user-id a %s: %s" -#: dnsmasq.c:782 +#: dnsmasq.c:790 #, fuzzy, c-format msgid "failed to change group-id to %s: %s" msgstr "no se pudo cambiar group-id a %s: %s" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, fuzzy, c-format msgid "failed to open pidfile %s: %s" msgstr "no se pudo abrir archivo PID %s: %s" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, fuzzy, c-format msgid "cannot open %s: %s" msgstr "no se puede abrir %s: %s" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "proceso hijo eliminado por señal %d" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "proceso hijo hizo exit con estado %d" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, fuzzy, c-format msgid "failed to execute %s: %s" msgstr "no se pudo ejecutar %s: %s" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "saliendo al recibir SIGTERM" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, fuzzy, c-format msgid "failed to access %s: %s" msgstr "no se pudo accesar %s: %s" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "leyendo %s" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, fuzzy, c-format msgid "no servers found in %s, will retry" msgstr "ningún servidor encontrado en %s, se reintentará" @@ -1229,178 +1242,178 @@ msgstr "archivo guión lease-init retornó exit code %s" msgid "failed to write %s: %s (retry in %us)" msgstr "error al escribir %s: %s (reintentar en %us)" -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "ningún rango de direcciónes disponible para pedido DHCP %s %s" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "con selector de subred" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "vía" -#: rfc2131.c:393 +#: rfc2131.c:331 #, fuzzy, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "%u Subred DHCP disponible: %s/%s" -#: rfc2131.c:396 +#: rfc2131.c:334 #, fuzzy, c-format msgid "%u available DHCP range: %s -- %s" msgstr "%u Rango DHCP disponible: %s -- %s" -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "deshabilitado" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "ignorado" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "dirección en uso" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "ninguna dirección disponible" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "red equivocada" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "ninguna dirección configurada" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "no sobra ningún arriendo" -#: rfc2131.c:607 +#: rfc2131.c:545 #, fuzzy, c-format msgid "%u client provides name: %s" msgstr "%u cliente provee nombre: %s" -#: rfc2131.c:762 +#: rfc2131.c:700 #, fuzzy, c-format msgid "%u vendor class: %s" msgstr "%u Clase de vendedor: %s" -#: rfc2131.c:764 +#: rfc2131.c:702 #, fuzzy, c-format msgid "%u user class: %s" msgstr "%u Clase de usuario: %s" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "no hay soporte para BIS PXE" -#: rfc2131.c:948 +#: rfc2131.c:886 #, fuzzy, c-format msgid "disabling DHCP static address %s for %s" msgstr "deshabilitando dirección DHCP estática %s para %s" -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "arriendo desconocido" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "no usando dirección configurada %s porque está arrendada a %s" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, fuzzy, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "no usando dirección configurada %s porque está en uso por el servidor o relay" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, fuzzy, c-format msgid "not using configured address %s because it was previously declined" msgstr "no usando dirección configurada %s porque fué previamente denegada" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "ningún unique-id (identificación única)" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "ID de servidor equivocada" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "dirección equivocada" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "arriendo no encontrado" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "dirección no disponible" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "arriendo estático disponible" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "dirección reservada" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "abandonando arriendo a %s de %s" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "%u etiquetas: %s" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "%u nombre de bootfile: %s" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, c-format msgid "%u server name: %s" msgstr "%u nombre de servidor: %s" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, fuzzy, c-format msgid "%u next server: %s" msgstr "%u siguiente servidor: %s" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, fuzzy, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "no se puede enviar opción DHCP/BOOTP %d: no queda espacio en paquete" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "menú PXE demasiado grande" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "Ignorando dominio %s para nombre de host DHCP %s" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, fuzzy, c-format msgid "%u requested options: %s" msgstr "%u opciones solicitadas: %s" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "no se puede enviar opción RFC3925: demasiadas opciones para número enterprise %d" @@ -1466,17 +1479,17 @@ msgstr "TFTP no pudo enviar %s a %s" msgid "sent %s to %s" msgstr "TFTP envió %s a %s" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "desbordamiento: %d entradas de bitácora perdidas" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "bitácora falló: %s" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "el inicio ha FALLADO" @@ -69,30 +69,30 @@ msgstr "" msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "" -#: util.c:59 +#: util.c:57 #, c-format msgid "failed to seed the random number generator: %s" msgstr "" -#: util.c:191 +#: util.c:189 msgid "failed to allocate memory" msgstr "" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "" -#: util.c:239 +#: util.c:237 #, c-format msgid "cannot create pipe: %s" msgstr "" -#: util.c:247 +#: util.c:245 #, c-format msgid "failed to allocate %d bytes" msgstr "" -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "" @@ -568,259 +568,267 @@ msgstr "" msgid "bad IP address" msgstr "" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, c-format msgid "cannot access directory %s: %s" msgstr "" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, c-format msgid "cannot access %s: %s" msgstr "" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "" -#: option.c:1290 +#: option.c:1296 msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" msgstr "" -#: option.c:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "" -#: option.c:1785 +#: option.c:1791 msgid "bad port range" msgstr "" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 msgid "bad hex constant" msgstr "" -#: option.c:2101 +#: option.c:2107 msgid "bad DHCP host name" msgstr "" -#: option.c:2182 +#: option.c:2188 msgid "bad tag-if" msgstr "" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "" -#: option.c:2523 +#: option.c:2529 msgid "bad dhcp-proxy address" msgstr "" -#: option.c:2563 +#: option.c:2569 msgid "invalid alias range" msgstr "" -#: option.c:2576 +#: option.c:2582 msgid "bad interface name" msgstr "" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "" -#: option.c:2626 +#: option.c:2632 msgid "bad PTR record" msgstr "" -#: option.c:2657 +#: option.c:2663 msgid "bad NAPTR record" msgstr "" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, c-format msgid "read %s" msgstr "" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" "\n" msgstr "" -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "" -#: option.c:3261 +#: option.c:3272 #, c-format msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" msgstr "" -#: option.c:3262 +#: option.c:3273 #, c-format msgid "under the terms of the GNU General Public License, version 2 or 3.\n" msgstr "" -#: option.c:3273 +#: option.c:3284 msgid "try --help" msgstr "" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "" -#: option.c:3278 +#: option.c:3289 #, c-format msgid "bad command line options: %s" msgstr "" -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "" -#: option.c:3347 +#: option.c:3358 msgid "only one resolv.conf file allowed in no-poll mode." msgstr "" -#: option.c:3357 +#: option.c:3368 msgid "must have exactly one resolv.conf to read domain from." msgstr "" -#: option.c:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, c-format msgid "failed to read %s: %s" msgstr "" -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "" -#: option.c:3398 +#: option.c:3409 msgid "there must be a default domain when --dhcp-fqdn is set" msgstr "" -#: option.c:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "" @@ -900,204 +908,208 @@ msgstr "" msgid "using nameserver %s#%d" msgstr "" -#: dnsmasq.c:145 +#: dnsmasq.c:148 msgid "TFTP server not available: set HAVE_TFTP in src/config.h" msgstr "" -#: dnsmasq.c:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "" -#: dnsmasq.c:169 +#: dnsmasq.c:158 +msgid "asychronous logging is not available under Android" +msgstr "" + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "" -#: dnsmasq.c:202 +#: dnsmasq.c:210 msgid "DBus not available: set HAVE_DBUS in src/config.h" msgstr "" -#: dnsmasq.c:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, c-format msgid "cannot chdir to filesystem root: %s" msgstr "" -#: dnsmasq.c:447 +#: dnsmasq.c:455 #, c-format msgid "started, version %s DNS disabled" msgstr "" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "" -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, c-format msgid "warning: failed to change owner of %s: %s" msgstr "" -#: dnsmasq.c:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "" -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "" -#: dnsmasq.c:480 +#: dnsmasq.c:488 msgid "warning: ignoring resolv-file flag because no-resolv is set" msgstr "" -#: dnsmasq.c:483 +#: dnsmasq.c:491 msgid "warning: no upstream servers configured" msgstr "" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, c-format msgid "asynchronous logging enabled, queue limit is %d messages" msgstr "" -#: dnsmasq.c:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "enabled" msgstr "" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "" -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, c-format msgid "failed to create helper: %s" msgstr "" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "" -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, c-format msgid "failed to change user-id to %s: %s" msgstr "" -#: dnsmasq.c:782 +#: dnsmasq.c:790 #, c-format msgid "failed to change group-id to %s: %s" msgstr "" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, c-format msgid "failed to open pidfile %s: %s" msgstr "" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, c-format msgid "cannot open %s: %s" msgstr "" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, c-format msgid "failed to execute %s: %s" msgstr "" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, c-format msgid "failed to access %s: %s" msgstr "" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, c-format msgid "no servers found in %s, will retry" msgstr "" @@ -1191,178 +1203,178 @@ msgstr "" msgid "failed to write %s: %s (retry in %us)" msgstr "" -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "" -#: rfc2131.c:393 +#: rfc2131.c:331 #, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "" -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "" -#: rfc2131.c:762 +#: rfc2131.c:700 #, c-format msgid "%u vendor class: %s" msgstr "" -#: rfc2131.c:764 +#: rfc2131.c:702 #, c-format msgid "%u user class: %s" msgstr "" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "" -#: rfc2131.c:948 +#: rfc2131.c:886 #, c-format msgid "disabling DHCP static address %s for %s" msgstr "" -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, c-format msgid "%u server name: %s" msgstr "" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, c-format msgid "%u next server: %s" msgstr "" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, c-format msgid "%u requested options: %s" msgstr "" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "" @@ -1428,16 +1440,16 @@ msgstr "" msgid "sent %s to %s" msgstr "" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "" @@ -68,30 +68,30 @@ msgstr "requêtes transmises %u, requêtes résolues localement %u" 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" -#: util.c:59 +#: util.c:57 #, c-format msgid "failed to seed the random number generator: %s" msgstr "impossible d'initialiser le générateur de nombre aléatoire : %s" -#: util.c:191 +#: util.c:189 msgid "failed to allocate memory" msgstr "impossible d'allouer la mémoire" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "impossible d'allouer de la mémoire" -#: util.c:239 +#: util.c:237 #, c-format msgid "cannot create pipe: %s" msgstr "Ne peut pas créer le tube %s : %s" -#: util.c:247 +#: util.c:245 #, c-format msgid "failed to allocate %d bytes" msgstr "impossible d'allouer %d octets" -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "illimité(e)" @@ -584,204 +584,212 @@ msgstr "mauvaise valeur de 'dhcp-option'" msgid "bad IP address" msgstr "mauvaise adresse IP" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "mauvais domaine dans dhcp-option" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "dhcp-option trop long" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "valeur illégale pour 'dhcp-match'" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "Une option ne pouvant être spécifié qu'une seule fois à été donnée plusieurs fois" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "Mot-clef ne pouvant être répété" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, c-format msgid "cannot access directory %s: %s" msgstr "Ne peut pas lire le répertoire %s : %s" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, c-format msgid "cannot access %s: %s" msgstr "Ne peut pas lire %s : %s" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "préference MX incorrecte" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "nom MX incorrect" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "valeur MX cible incorrecte" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "ne peut exécuter de script sous uClinux" -#: option.c:1290 +#: option.c:1296 msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" msgstr "pour permettre l'exécution de scripts au changement de bail (lease-change), recompiler en définissant HAVE_SCRIPT" -#: option.c:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "numéro de port incorrect" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "association d'interface non supportée" # -#: option.c:1785 +#: option.c:1791 msgid "bad port range" msgstr "gamme de ports incorrecte" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "interface-pont incorrecte" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "plage d'adresses DHCP (dhcp-range) incorrecte" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "une seule étiquette est autorisée" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "plage d'adresses DHCP incohérente" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 msgid "bad hex constant" msgstr "mauvaise constante hexadecimale" # -#: option.c:2101 +#: option.c:2107 msgid "bad DHCP host name" msgstr "nom d'hôte DHCP incorrect" -#: option.c:2182 +#: option.c:2188 msgid "bad tag-if" msgstr "mauvaise étiquette tag-if" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "numéro de port invalide" # -#: option.c:2523 +#: option.c:2529 msgid "bad dhcp-proxy address" msgstr "adresse dhcp-proxy incorrecte" # -#: option.c:2563 +#: option.c:2569 msgid "invalid alias range" msgstr "poids invalide" # -#: option.c:2576 +#: option.c:2582 msgid "bad interface name" msgstr "nom d'interface invalide" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "mauvais CNAME" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "ce CNAME existe déja" # -#: option.c:2626 +#: option.c:2632 msgid "bad PTR record" msgstr "mauvais champ PTR" # -#: option.c:2657 +#: option.c:2663 msgid "bad NAPTR record" msgstr "mauvais champ NAPTR" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "champ TXT invalide" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "champ SRV invalide" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "cible SRV invalide" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "priorité invalide" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "poids invalide" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "option non supportée (vérifier que Dnsmasq a été compilé avec le support DHCP/TFTP/DBus)" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "il manque \"" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "mauvaise option" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "paramètre en trop" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "paramètre manquant" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "erreur" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "%s à la ligne %d de %%s" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "Ne peut pas lire %s : %s" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, c-format msgid "read %s" msgstr "Lecture de %s" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "la ligne de commande contient des éléments indésirables ou incompréhensibles" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "Version de Dnsmasq %s %s\n" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" @@ -790,62 +798,62 @@ msgstr "" "Options à la compilation %s\n" "\n" -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "Ce logiciel est fourni sans AUCUNE GARANTIE.\n" -#: option.c:3261 +#: option.c:3272 #, 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:3262 +#: option.c:3273 #, 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:3273 +#: option.c:3284 msgid "try --help" msgstr "essayez avec --help" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "essayez avec -w" -#: option.c:3278 +#: option.c:3289 #, c-format msgid "bad command line options: %s" msgstr "mauvaises options en ligne de commande : %s." -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "ne peut pas obtenir le nom de la machine : %s" -#: option.c:3347 +#: option.c:3358 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:3357 +#: option.c:3368 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:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, c-format msgid "failed to read %s: %s" msgstr "impossible de lire %s : %s" -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "pas de directive de recherche trouvée dans %s" -#: option.c:3398 +#: option.c:3409 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:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "vérification de syntaxe OK" @@ -926,206 +934,211 @@ msgid "using nameserver %s#%d" msgstr "utilise le serveur de nom %s#%d" # -#: dnsmasq.c:145 +#: dnsmasq.c:148 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:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "l'écriture de traces en mode asynchrone n'est pas disponible sous Solaris." -#: dnsmasq.c:169 +#: dnsmasq.c:158 +#, fuzzy +msgid "asychronous logging is not available under Android" +msgstr "l'écriture de traces en mode asynchrone n'est pas disponible sous Solaris." + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "impossible de trouver la liste des interfaces : %s" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "interface %s inconnue" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "pas d'interface avec l'adresse %s" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "Erreur DBus : %s" -#: dnsmasq.c:202 +#: dnsmasq.c:210 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:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "utilisateur ou groupe inconnu : %s" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, 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:447 +#: dnsmasq.c:455 #, c-format msgid "started, version %s DNS disabled" msgstr "démarrage avec le DNS désactivé (version %s)" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "demarré, version %s (taille de cache %d)" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "démarrage avec le cache désactivé (version %s)" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "options à la compilation : %s" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "Support DBus autorisé : connecté au bus système" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "Support DBus autorisé : connexion au bus en attente" -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, c-format msgid "warning: failed to change owner of %s: %s" msgstr "Impossible de changer pour l'utilisateur %s : %s" -#: dnsmasq.c:470 +#: dnsmasq.c:478 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:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "attention : l'interface %s n'existe pas actuellement" -#: dnsmasq.c:480 +#: dnsmasq.c:488 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:483 +#: dnsmasq.c:491 msgid "warning: no upstream servers configured" msgstr "attention : aucun serveur amont n'est configuré" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, 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:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "baux statiques DHCP seulement sur %.0s%s, durée de validité de bail %s" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "DHCP, proxy sur le sous-réseau %.0s%s%.0s" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "DHCP, plage d'adresses %s -- %s, durée de bail %s" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "root est" # -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "enabled" msgstr "activé" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "mode sécurisé" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "le nombre maximum de transferts TFTP simultanés sera restreint à %d" -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "connecté au systeme DBus" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "Ne peut se lancer en tâche de fond : %s" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, c-format msgid "failed to create helper: %s" msgstr "impossible de créer le 'helper' : %s" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "impossible de configurer la capacité %s" -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, c-format msgid "failed to change user-id to %s: %s" msgstr "Impossible de changer l'identifiant utilisateur pour %s : %s" -#: dnsmasq.c:782 +#: dnsmasq.c:790 #, c-format msgid "failed to change group-id to %s: %s" msgstr "Impossible de changer l'identifiant de groupe pour %s : %s" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, c-format msgid "failed to open pidfile %s: %s" msgstr "impossible de lire le fichier de PID %s : %s" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, c-format msgid "cannot open %s: %s" msgstr "Ne peut pas lire %s : %s" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "Le processus fils a été terminé par le signal %d" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "Le processus fils s'est terminé avec le statut %d" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, c-format msgid "failed to execute %s: %s" msgstr "impossible d'exécuter à %s : %s" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "sortie sur réception du signal SIGTERM" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, c-format msgid "failed to access %s: %s" msgstr "impossible d'accéder à %s : %s" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "Lecture de %s" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, c-format msgid "no servers found in %s, will retry" msgstr "aucun serveur trouvé dans %s, va réessayer" @@ -1219,178 +1232,178 @@ msgstr "le script lease-init a retourné le code %s" msgid "failed to write %s: %s (retry in %us)" msgstr "impossible de lire %s : %s (prochain essai dans %us)" -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "pas de plage d'adresse disponible pour la requête DHCP %s %s" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "avec sélecteur de sous-reseau" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "par l'intermédiaire de" -#: rfc2131.c:393 +#: rfc2131.c:331 #, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "%u sous-réseaux DHCP disponibles : %s/%s" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "%u la gamme DHCP disponible est : %s -- %s" -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "désactivé" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "ignoré" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "adresse déjà utilisée" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "pas d'adresse disponible" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "mauvais réseau" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "pas d'adresse configurée" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "plus aucun bail disponible" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "le client %u fourni le nom : %s" -#: rfc2131.c:762 +#: rfc2131.c:700 #, c-format msgid "%u vendor class: %s" msgstr "%u Classe de vendeur ('Vendor Class') : %s" -#: rfc2131.c:764 +#: rfc2131.c:702 #, c-format msgid "%u user class: %s" msgstr "%u Classe d'utilisateur : %s" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "Service PXE BIS (Boot Integrity Services) non supporté" -#: rfc2131.c:948 +#: rfc2131.c:886 #, c-format msgid "disabling DHCP static address %s for %s" msgstr "désactive l'adresse statique DHCP %s pour %s" -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "bail inconnu" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "L'adresse statique %s ne sera pas utilisée car un bail est déjà attribué à %s" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "L'adresse statique %s ne sera pas utilisée car elle est utilisée par le serveur ou un relai" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "L'adresse statique %s ne sera pas utilisée car elle a préalablement été refusée" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "pas d'identifiant unique" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "mauvais identifiant de serveur" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "mauvaise adresse" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "bail non trouvé" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "adresse non disponible" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "bail statique disponible" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "adresse reservée" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "abandon du bail de %s pour %s" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "%u options: %s" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "%u nom de fichier 'bootfile' : %s" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, c-format msgid "%u server name: %s" msgstr "%u nom du serveur : %s" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, c-format msgid "%u next server: %s" msgstr "%u serveur suivant : %s" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "%u réponse broadcast" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "Impossible d'envoyer l'option DHCP/BOOTP %d : pas assez d'espace dans le paquet" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "menu PXE trop grand" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "Le domaine %s est ignoré pour l'hôte DHCP %s" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, c-format msgid "%u requested options: %s" msgstr "%u options demandées : %s" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "ne peux envoyer l'option RFC3925 : trop d'options pour le numéro d'entreprise %d" @@ -1456,17 +1469,17 @@ msgstr "impossible d'envoyer %s à %s" msgid "sent %s to %s" msgstr "envoyé %s à %s" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "débordement : %d traces perdues" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "trace perdue : %s" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "IMPOSSIBLE de démarrer" @@ -76,36 +76,36 @@ msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "" # OK -#: util.c:59 +#: util.c:57 #, fuzzy, c-format msgid "failed to seed the random number generator: %s" msgstr "gagal mendengarkan di socket: %s" # OK -#: util.c:191 +#: util.c:189 #, fuzzy msgid "failed to allocate memory" msgstr "gagal memuat %S: %m" # OK -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "tidak bisa mendapatkan memory" # OK -#: util.c:239 +#: util.c:237 #, fuzzy, c-format msgid "cannot create pipe: %s" msgstr "tidak bisa membaca %s: %s" # OK -#: util.c:247 +#: util.c:245 #, fuzzy, c-format msgid "failed to allocate %d bytes" msgstr "gagal memuat %S: %m" # OK -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "tak terbatas" @@ -672,240 +672,248 @@ msgid "bad IP address" msgstr "membaca %s - %d alamat" # OK -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "domain dalam dhcp-option salah" # OK -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "dhcp-option terlalu panjang" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "" # OK -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, fuzzy, c-format msgid "cannot access directory %s: %s" msgstr "tidak bisa membaca %s: %s" # OK -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, fuzzy, c-format msgid "cannot access %s: %s" msgstr "tidak bisa membaca %s: %s" +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + # OK -#: option.c:1259 +#: option.c:1265 msgid "bad MX preference" msgstr "kesukaan MX salah" # OK -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "nama MX salah" # OK -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "target MX salah" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "" -#: option.c:1290 +#: option.c:1296 msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" msgstr "" # OK -#: option.c:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "port salah" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "" # OK -#: option.c:1785 +#: option.c:1791 #, fuzzy msgid "bad port range" msgstr "port salah" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "" # OK -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "dhcp-range salah" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "" # OK -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "jangkauan DHCP tidak konsisten" # OK -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 #, fuzzy msgid "bad hex constant" msgstr "dhcp-host salah" # OK -#: option.c:2101 +#: option.c:2107 #, fuzzy msgid "bad DHCP host name" msgstr "nama MX salah" # OK -#: option.c:2182 +#: option.c:2188 #, fuzzy msgid "bad tag-if" msgstr "target MX salah" # OK -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "nomor port tidak benar" # OK -#: option.c:2523 +#: option.c:2529 #, fuzzy msgid "bad dhcp-proxy address" msgstr "membaca %s - %d alamat" # OK -#: option.c:2563 +#: option.c:2569 #, fuzzy msgid "invalid alias range" msgstr "weight tidak benar" # OK -#: option.c:2576 +#: option.c:2582 #, fuzzy msgid "bad interface name" msgstr "nama MX salah" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "" # OK -#: option.c:2626 +#: option.c:2632 #, fuzzy msgid "bad PTR record" msgstr "rekord SRV salah" # OK -#: option.c:2657 +#: option.c:2663 #, fuzzy msgid "bad NAPTR record" msgstr "rekord SRV salah" # OK -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "rekord TXT salah" # OK -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "rekord SRV salah" # OK -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "target SRV salah" # OK -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "prioritas tidak benar" # OK -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "weight tidak benar" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "" # OK -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "kurang \"" # OK -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "pilihan salah" # OK -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "parameter berlebihan" # OK -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "parameter kurang" # OK -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "kesalahan" # OK -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "%s pada baris %d dari %%s" # OK -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "tidak bisa membaca %s: %s" # OK -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, fuzzy, c-format msgid "read %s" msgstr "membaca %s" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "" # OK -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "Dnsmasq versi %s %s\n" # OK -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" @@ -915,70 +923,70 @@ msgstr "" "\n" # OK -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "Perangkat lunak ini tersedia TANPA JAMINAN SEDIKITPUN.\n" # OK -#: option.c:3261 +#: option.c:3272 #, 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:3262 +#: option.c:3273 #, 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:3273 +#: option.c:3284 msgid "try --help" msgstr "" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "" # OK -#: option.c:3278 +#: option.c:3289 #, fuzzy, c-format msgid "bad command line options: %s" msgstr "pilihan baris perintah salah: %s." # OK -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "tidak bisa mendapatkan host-name: %s" # OK -#: option.c:3347 +#: option.c:3358 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:3357 +#: option.c:3368 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:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, fuzzy, c-format msgid "failed to read %s: %s" msgstr "gagal membaca %s: %s" # OK -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "tidak ditemukan direktif search di %s" -#: option.c:3398 +#: option.c:3409 msgid "there must be a default domain when --dhcp-fqdn is set" msgstr "" -#: option.c:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "" @@ -1071,235 +1079,239 @@ msgid "using nameserver %s#%d" msgstr "menggunakan nameserver %s#%d" # OK -#: dnsmasq.c:145 +#: dnsmasq.c:148 #, 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:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "" +#: dnsmasq.c:158 +msgid "asychronous logging is not available under Android" +msgstr "" + # OK -#: dnsmasq.c:169 +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "gagal mendapatkan daftar antarmuka: %s" # OK -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "antarmuka tidak dikenal %s" # OK -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "tidak ada antarmuka dengan alamat %s" # OK -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "DBus error: %s" # OK -#: dnsmasq.c:202 +#: dnsmasq.c:210 msgid "DBus not available: set HAVE_DBUS in src/config.h" msgstr "DBus tidak tersedia: setel HAVE_DBUS dalam src/config.h" -#: dnsmasq.c:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, c-format msgid "cannot chdir to filesystem root: %s" msgstr "" # OK -#: dnsmasq.c:447 +#: dnsmasq.c:455 #, fuzzy, c-format msgid "started, version %s DNS disabled" msgstr "dimulai, cache versi %s di disable" # OK -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "dimulai, versi %s ukuran cache %d" # OK -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "dimulai, cache versi %s di disable" # OK -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "pilihan-pilihan saat kompilasi: %s" # OK -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "dukungan DBus dimungkinkan: terkoneksi pada bus sistem" # OK -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "dukungan DBus dimungkinkan: koneksi bus ditunda" # OK -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, fuzzy, c-format msgid "warning: failed to change owner of %s: %s" msgstr "gagal memuat nama-nama dari %s: %s" # OK -#: dnsmasq.c:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "setelan opsi --bind-interfaces disebabkan keterbatasan OS" # OK -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "peringatan: antarmuka %s tidak ada" -#: dnsmasq.c:480 +#: dnsmasq.c:488 msgid "warning: ignoring resolv-file flag because no-resolv is set" msgstr "" # OK -#: dnsmasq.c:483 +#: dnsmasq.c:491 #, fuzzy msgid "warning: no upstream servers configured" msgstr "menyetel server-server di atas dengan DBus" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, c-format msgid "asynchronous logging enabled, queue limit is %d messages" msgstr "" # OK -#: dnsmasq.c:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "DHCP, lease static pada %.0s%s, waktu lease %s" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "" # OK -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "DHCP, jangkaun IP %s -- %s, waktu lease %s" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "" # OK -#: dnsmasq.c:518 +#: dnsmasq.c:526 #, fuzzy msgid "enabled" msgstr "di disable" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "" # OK -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "terhubung ke sistem DBus" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "" # OK -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, fuzzy, c-format msgid "failed to create helper: %s" msgstr "gagal membaca %s: %s" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "" # OK -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, fuzzy, c-format msgid "failed to change user-id to %s: %s" msgstr "gagal memuat nama-nama dari %s: %s" # OK -#: dnsmasq.c:782 +#: dnsmasq.c:790 #, fuzzy, c-format msgid "failed to change group-id to %s: %s" msgstr "gagal memuat nama-nama dari %s: %s" # OK -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, fuzzy, c-format msgid "failed to open pidfile %s: %s" msgstr "gagal membaca %s: %s" # OK -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, fuzzy, c-format msgid "cannot open %s: %s" msgstr "tidak bisa membuka %s:%s" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "" # OK -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, fuzzy, c-format msgid "failed to execute %s: %s" msgstr "gagal mengakses %s: %s" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "keluar karena menerima SIGTERM" # OK -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, fuzzy, c-format msgid "failed to access %s: %s" msgstr "gagal mengakses %s: %s" # OK -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "membaca %s" # OK -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, fuzzy, c-format msgid "no servers found in %s, will retry" msgstr "tidak ditemukan direktif search di %s" @@ -1408,200 +1420,200 @@ msgid "failed to write %s: %s (retry in %us)" msgstr "gagal membaca %s: %s" # OK -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "tidak ada alamat yang bisa dipakai untuk permintaan DHCP %s %s" # OK -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "dengan pemilih subnet" # OK -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "lewat" # OK -#: rfc2131.c:393 +#: rfc2131.c:331 #, fuzzy, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "tidak ada alamat yang bisa dipakai untuk permintaan DHCP %s %s" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "" # OK -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "di disable" # OK -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "diabaikan" # OK -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "alamat telah digunakan" # OK -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "tak ada alamat yang tersedia" # OK -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "jaringan yang salah" # OK -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "tak ada alamat yang disetel" # OK -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "tak ada lease yang tersisa" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "" # OK -#: rfc2131.c:762 +#: rfc2131.c:700 #, fuzzy, c-format msgid "%u vendor class: %s" msgstr "DBus error: %s" # OK -#: rfc2131.c:764 +#: rfc2131.c:702 #, fuzzy, c-format msgid "%u user class: %s" msgstr "DBus error: %s" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "" # OK -#: rfc2131.c:948 +#: rfc2131.c:886 #, fuzzy, c-format msgid "disabling DHCP static address %s for %s" msgstr "men-disable alamat statik DHCP %s" # OK -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "lease tidak diketahui" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "" # OK -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "alamat salah" # OK -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "lease tak ditemukan" # OK -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "alamat tak tersedia" # OK -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "lease statik tak tersedia" # OK -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "alamat telah dipesan" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "" # OK -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, fuzzy, c-format msgid "%u server name: %s" msgstr "DBus error: %s" # OK -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, fuzzy, c-format msgid "%u next server: %s" msgstr "DBus error: %s" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "" # OK -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, fuzzy, c-format msgid "%u requested options: %s" msgstr "pilihan-pilihan saat kompilasi: %s" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "" @@ -1676,18 +1688,18 @@ msgstr "gagal membaca %s: %s" msgid "sent %s to %s" msgstr "" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "" # OK -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "GAGAL untuk memulai" @@ -69,30 +69,30 @@ msgstr "" msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "" -#: util.c:59 +#: util.c:57 #, c-format msgid "failed to seed the random number generator: %s" msgstr "" -#: util.c:191 +#: util.c:189 msgid "failed to allocate memory" msgstr "" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "" -#: util.c:239 +#: util.c:237 #, c-format msgid "cannot create pipe: %s" msgstr "" -#: util.c:247 +#: util.c:245 #, c-format msgid "failed to allocate %d bytes" msgstr "" -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "" @@ -568,259 +568,267 @@ msgstr "" msgid "bad IP address" msgstr "" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, c-format msgid "cannot access directory %s: %s" msgstr "" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, c-format msgid "cannot access %s: %s" msgstr "" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "" -#: option.c:1290 +#: option.c:1296 msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" msgstr "" -#: option.c:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "" -#: option.c:1785 +#: option.c:1791 msgid "bad port range" msgstr "" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 msgid "bad hex constant" msgstr "" -#: option.c:2101 +#: option.c:2107 msgid "bad DHCP host name" msgstr "" -#: option.c:2182 +#: option.c:2188 msgid "bad tag-if" msgstr "" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "" -#: option.c:2523 +#: option.c:2529 msgid "bad dhcp-proxy address" msgstr "" -#: option.c:2563 +#: option.c:2569 msgid "invalid alias range" msgstr "" -#: option.c:2576 +#: option.c:2582 msgid "bad interface name" msgstr "" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "" -#: option.c:2626 +#: option.c:2632 msgid "bad PTR record" msgstr "" -#: option.c:2657 +#: option.c:2663 msgid "bad NAPTR record" msgstr "" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, c-format msgid "read %s" msgstr "" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" "\n" msgstr "" -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "" -#: option.c:3261 +#: option.c:3272 #, c-format msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" msgstr "" -#: option.c:3262 +#: option.c:3273 #, c-format msgid "under the terms of the GNU General Public License, version 2 or 3.\n" msgstr "" -#: option.c:3273 +#: option.c:3284 msgid "try --help" msgstr "" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "" -#: option.c:3278 +#: option.c:3289 #, c-format msgid "bad command line options: %s" msgstr "" -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "" -#: option.c:3347 +#: option.c:3358 msgid "only one resolv.conf file allowed in no-poll mode." msgstr "" -#: option.c:3357 +#: option.c:3368 msgid "must have exactly one resolv.conf to read domain from." msgstr "" -#: option.c:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, c-format msgid "failed to read %s: %s" msgstr "" -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "" -#: option.c:3398 +#: option.c:3409 msgid "there must be a default domain when --dhcp-fqdn is set" msgstr "" -#: option.c:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "" @@ -900,204 +908,208 @@ msgstr "" msgid "using nameserver %s#%d" msgstr "" -#: dnsmasq.c:145 +#: dnsmasq.c:148 msgid "TFTP server not available: set HAVE_TFTP in src/config.h" msgstr "" -#: dnsmasq.c:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "" -#: dnsmasq.c:169 +#: dnsmasq.c:158 +msgid "asychronous logging is not available under Android" +msgstr "" + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "" -#: dnsmasq.c:202 +#: dnsmasq.c:210 msgid "DBus not available: set HAVE_DBUS in src/config.h" msgstr "" -#: dnsmasq.c:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, c-format msgid "cannot chdir to filesystem root: %s" msgstr "" -#: dnsmasq.c:447 +#: dnsmasq.c:455 #, c-format msgid "started, version %s DNS disabled" msgstr "" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "" -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, c-format msgid "warning: failed to change owner of %s: %s" msgstr "" -#: dnsmasq.c:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "" -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "" -#: dnsmasq.c:480 +#: dnsmasq.c:488 msgid "warning: ignoring resolv-file flag because no-resolv is set" msgstr "" -#: dnsmasq.c:483 +#: dnsmasq.c:491 msgid "warning: no upstream servers configured" msgstr "" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, c-format msgid "asynchronous logging enabled, queue limit is %d messages" msgstr "" -#: dnsmasq.c:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "enabled" msgstr "" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "" -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, c-format msgid "failed to create helper: %s" msgstr "" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "" -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, c-format msgid "failed to change user-id to %s: %s" msgstr "" -#: dnsmasq.c:782 +#: dnsmasq.c:790 #, c-format msgid "failed to change group-id to %s: %s" msgstr "" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, c-format msgid "failed to open pidfile %s: %s" msgstr "" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, c-format msgid "cannot open %s: %s" msgstr "" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, c-format msgid "failed to execute %s: %s" msgstr "" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, c-format msgid "failed to access %s: %s" msgstr "" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, c-format msgid "no servers found in %s, will retry" msgstr "" @@ -1191,178 +1203,178 @@ msgstr "" msgid "failed to write %s: %s (retry in %us)" msgstr "" -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "" -#: rfc2131.c:393 +#: rfc2131.c:331 #, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "" -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "" -#: rfc2131.c:762 +#: rfc2131.c:700 #, c-format msgid "%u vendor class: %s" msgstr "" -#: rfc2131.c:764 +#: rfc2131.c:702 #, c-format msgid "%u user class: %s" msgstr "" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "" -#: rfc2131.c:948 +#: rfc2131.c:886 #, c-format msgid "disabling DHCP static address %s for %s" msgstr "" -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, c-format msgid "%u server name: %s" msgstr "" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, c-format msgid "%u next server: %s" msgstr "" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, c-format msgid "%u requested options: %s" msgstr "" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "" @@ -1428,16 +1440,16 @@ msgstr "" msgid "sent %s to %s" msgstr "" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "" @@ -71,31 +71,31 @@ msgstr "" msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "" -#: util.c:59 +#: util.c:57 #, fuzzy, c-format msgid "failed to seed the random number generator: %s" msgstr "feilet å lytte på socket: %s" -#: util.c:191 +#: util.c:189 #, fuzzy msgid "failed to allocate memory" msgstr "feilet å laste %d bytes" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "kunne ikke få minne" -#: util.c:239 +#: util.c:237 #, fuzzy, c-format msgid "cannot create pipe: %s" msgstr "kan ikke lese %s: %s" -#: util.c:247 +#: util.c:245 #, fuzzy, c-format msgid "failed to allocate %d bytes" msgstr "feilet å laste %d bytes" -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "uendelig" @@ -590,206 +590,214 @@ msgstr "dårlig dhcp-opsjon" msgid "bad IP address" msgstr "les %s - %d adresser" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "dårlig domene i dhcp-opsjon" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "dhcp-opsjon for lang" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, fuzzy, c-format msgid "cannot access directory %s: %s" msgstr "kan ikke lese %s: %s" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, fuzzy, c-format msgid "cannot access %s: %s" msgstr "kan ikke lese %s: %s" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "dårlig MX preferanse" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "dårlig MX navn" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "dårlig MX mål" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "" -#: option.c:1290 +#: option.c:1296 msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" msgstr "" -#: option.c:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "dårlig port" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "" -#: option.c:1785 +#: option.c:1791 #, fuzzy msgid "bad port range" msgstr "dårlig port" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "dårlig dhcp-område" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "ikke konsistent DHCP område" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 #, fuzzy msgid "bad hex constant" msgstr "dårlig dhcp-vert" -#: option.c:2101 +#: option.c:2107 #, fuzzy msgid "bad DHCP host name" msgstr "dårlig MX navn" -#: option.c:2182 +#: option.c:2188 #, fuzzy msgid "bad tag-if" msgstr "dårlig MX mål" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "ugyldig portnummer" -#: option.c:2523 +#: option.c:2529 #, fuzzy msgid "bad dhcp-proxy address" msgstr "les %s - %d adresser" -#: option.c:2563 +#: option.c:2569 #, fuzzy msgid "invalid alias range" msgstr "ugyldig vekt" -#: option.c:2576 +#: option.c:2582 #, fuzzy msgid "bad interface name" msgstr "dårlig MX navn" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "" -#: option.c:2626 +#: option.c:2632 #, fuzzy msgid "bad PTR record" msgstr "dårlig SRV post" -#: option.c:2657 +#: option.c:2663 #, fuzzy msgid "bad NAPTR record" msgstr "dårlig SRV post" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "dårlig TXT post" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "dårlig SRV post" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "dårlig SRV mål" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "ugyldig prioritet" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "ugyldig vekt" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "mangler \"" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "dårlig opsjon" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "overflødig parameter" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "mangler parameter" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "feil" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "%s på linje %d av %%s" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "kan ikke lese %s: %s" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, fuzzy, c-format msgid "read %s" msgstr "leser %s" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "Dnsmasq versjon %s %s\n" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" @@ -798,62 +806,62 @@ msgstr "" "Kompileringsopsjoner %s\n" "\n" -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "Denne programvaren kommer med ABSOLUTT INGEN GARANTI.\n" -#: option.c:3261 +#: option.c:3272 #, 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:3262 +#: option.c:3273 #, 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:3273 +#: option.c:3284 msgid "try --help" msgstr "" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "" -#: option.c:3278 +#: option.c:3289 #, fuzzy, c-format msgid "bad command line options: %s" msgstr "dårlige kommandlinje opsjoner: %s." -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "klarer ikke å få vertsnavn: %s" -#: option.c:3347 +#: option.c:3358 msgid "only one resolv.conf file allowed in no-poll mode." msgstr "kun en resolv.conf fil tillat i no-poll modus." -#: option.c:3357 +#: option.c:3368 msgid "must have exactly one resolv.conf to read domain from." msgstr "må ha nøyaktig en resolv.conf å lese domene fra." -#: option.c:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, fuzzy, c-format msgid "failed to read %s: %s" msgstr "feilet å lese %s: %s" -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "intet søke direktiv funnet i %s" -#: option.c:3398 +#: option.c:3409 msgid "there must be a default domain when --dhcp-fqdn is set" msgstr "" -#: option.c:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "" @@ -933,207 +941,211 @@ msgstr "benytter navnetjener %s#%d" msgid "using nameserver %s#%d" msgstr "benytter navnetjener %s#%d" -#: dnsmasq.c:145 +#: dnsmasq.c:148 #, 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:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "" -#: dnsmasq.c:169 +#: dnsmasq.c:158 +msgid "asychronous logging is not available under Android" +msgstr "" + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "feilet å finne liste av tilknytninger (interfaces): %s" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "ukjent tilknytning (interface) %s" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "ingen tilknytning (interface) med adresse %s" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "DBus feil: %s" -#: dnsmasq.c:202 +#: dnsmasq.c:210 msgid "DBus not available: set HAVE_DBUS in src/config.h" msgstr "DBus ikke tilgjengelig: sett HAVE_DBUS i src/config.h" -#: dnsmasq.c:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, c-format msgid "cannot chdir to filesystem root: %s" msgstr "" -#: dnsmasq.c:447 +#: dnsmasq.c:455 #, fuzzy, c-format msgid "started, version %s DNS disabled" msgstr "startet, versjon %s mellomlager deaktivert" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "startet, versjon %s mellomlager størrelse %d" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "startet, versjon %s mellomlager deaktivert" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "kompilerings opsjoner: %s" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "DBus støtte aktivert: koblet til system buss" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "DBus støtte aktivert: avventer buss tilkobling" -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, fuzzy, c-format msgid "warning: failed to change owner of %s: %s" msgstr "feilet å laste navn fra %s: %s" -#: dnsmasq.c:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "setter --bind-interfaces opsjon på grunn av OS begrensninger" -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "advarsel: nettverkskort %s eksisterer ikke for tiden" -#: dnsmasq.c:480 +#: dnsmasq.c:488 msgid "warning: ignoring resolv-file flag because no-resolv is set" msgstr "" -#: dnsmasq.c:483 +#: dnsmasq.c:491 #, fuzzy msgid "warning: no upstream servers configured" msgstr "setter oppstrøms tjener fra DBus" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, c-format msgid "asynchronous logging enabled, queue limit is %d messages" msgstr "" -#: dnsmasq.c:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "DHCP, statisk leie kun på %.0s%s, leie tid %s" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "DHCP, IP område %s -- %s, leie tid %s" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "" -#: dnsmasq.c:518 +#: dnsmasq.c:526 #, fuzzy msgid "enabled" msgstr "deaktivert" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "" -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "tilkoblet til system DBus" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, fuzzy, c-format msgid "failed to create helper: %s" msgstr "feilet å lese %s: %s" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "" -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, fuzzy, c-format msgid "failed to change user-id to %s: %s" msgstr "feilet å laste navn fra %s: %s" -#: dnsmasq.c:782 +#: dnsmasq.c:790 #, fuzzy, c-format msgid "failed to change group-id to %s: %s" msgstr "feilet å laste navn fra %s: %s" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, fuzzy, c-format msgid "failed to open pidfile %s: %s" msgstr "feilet å lese %s: %s" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, fuzzy, c-format msgid "cannot open %s: %s" msgstr "kan ikke åpne %s:%s" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, fuzzy, c-format msgid "failed to execute %s: %s" msgstr "feilet å få tilgang til %s: %s" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "avslutter etter mottak av SIGTERM" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, fuzzy, c-format msgid "failed to access %s: %s" msgstr "feilet å få tilgang til %s: %s" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "leser %s" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, fuzzy, c-format msgid "no servers found in %s, will retry" msgstr "intet søke direktiv funnet i %s" @@ -1227,178 +1239,178 @@ msgstr "" msgid "failed to write %s: %s (retry in %us)" msgstr "feilet å lese %s: %s" -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "ingen adresse område tilgjengelig for DHCP krav %s %s" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "med subnet velger" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "via" -#: rfc2131.c:393 +#: rfc2131.c:331 #, fuzzy, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "ingen adresse område tilgjengelig for DHCP krav %s %s" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "" -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "deaktivert" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "oversett" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "adresse i bruk" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "ingen adresse tilgjengelig" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "galt nettverk" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "ingen adresse konfigurert" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "ingen leier igjen" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "" -#: rfc2131.c:762 +#: rfc2131.c:700 #, fuzzy, c-format msgid "%u vendor class: %s" msgstr "DBus feil: %s" -#: rfc2131.c:764 +#: rfc2131.c:702 #, fuzzy, c-format msgid "%u user class: %s" msgstr "DBus feil: %s" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "" -#: rfc2131.c:948 +#: rfc2131.c:886 #, fuzzy, c-format msgid "disabling DHCP static address %s for %s" msgstr "deaktiverer DHCP statisk adresse %s" -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "ukjent leie" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "gal adresse" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "leie ikke funnet" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "adresse ikke tilgjengelig" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "statisk leie tilgjengelig" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "adresse reservert" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, fuzzy, c-format msgid "%u server name: %s" msgstr "DBus feil: %s" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, fuzzy, c-format msgid "%u next server: %s" msgstr "DBus feil: %s" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, fuzzy, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "kan ikke sende DHCP opsjon %d: ikke mer plass i pakken" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, fuzzy, c-format msgid "%u requested options: %s" msgstr "kompilerings opsjoner: %s" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "" @@ -1464,17 +1476,17 @@ msgstr "feilet å lese %s: %s" msgid "sent %s to %s" msgstr "" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "FEILET å starte opp" @@ -74,30 +74,30 @@ msgstr "%u zapytañ przes³anych dalej, %u odpowiedzi udzielonych samodzielnie" msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "serwer %s#%d: %u zapytañ wys³anych, %u ponowionych lub nieudanych" -#: util.c:59 +#: util.c:57 #, c-format msgid "failed to seed the random number generator: %s" msgstr "brak mo¿liwo¶ci u¿ycia generatora liczb losowych: %s" -#: util.c:191 +#: util.c:189 msgid "failed to allocate memory" msgstr "nie uda³o siê przydzieliæ pamiêci" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "nie mo¿na dostaæ pamiêci" -#: util.c:239 +#: util.c:237 #, c-format msgid "cannot create pipe: %s" msgstr "b³±d podczas próby utworzenia potoku: %s" -#: util.c:247 +#: util.c:245 #, c-format msgid "failed to allocate %d bytes" msgstr "niemo¿liwo¶æ przydzielenia %d bajtów pamiêci" -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "nieskoñczona" @@ -575,197 +575,205 @@ msgstr "b³±d w dhcp-option" msgid "bad IP address" msgstr "z³y adres IP" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "nieprawid³owa nazwa domeny w dhcp-option" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "zbyt d³uga dhcp-option (>255 znaków)" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "niedopuszczalne dhcp-match" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "wielokrotne u¿ycie opcji niedozwolone (pojawi³a siê wcze¶niej w linii poleceñ)" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "wielokrotne u¿ycie opcji niedozwolone (pojawi³a siê wsze¶niej w pliku konfiguracyjnym)" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, c-format msgid "cannot access directory %s: %s" msgstr "brak dostêpu do katalogu %s: %s" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, c-format msgid "cannot access %s: %s" msgstr "brak dostêpu do %s: %s" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "nieprawid³owa warto¶æ preferencji MX" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "nieprawid³owa nazwa MX" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "nieprawid³owa warto¶æ celu MX" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "w uClinuksie nie ma mo¿liwo¶ci uruchamiania skryptów" -#: option.c:1290 +#: option.c:1296 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:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "nieprawid³owy numer portu" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "nie ma mo¿liwo¶ci dowi±zywania do interfejsu" -#: option.c:1785 +#: option.c:1791 msgid "bad port range" msgstr "nieprawid³owy zakres numerów portów" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "nieprawid³owa nazwa urz±dzenia w bridge-interface" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "nieprawid³owy zakres dhcp-range" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "mo¿na wskazaæ tylko jeden znacznik sieci" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "niespójny zakres adresów DHCP" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 msgid "bad hex constant" msgstr "zapis niezgodny z formatem szesnastkowym" -#: option.c:2101 +#: option.c:2107 msgid "bad DHCP host name" msgstr "niedopuszczalna nazwa komputera w dhcp-host" -#: option.c:2182 +#: option.c:2188 msgid "bad tag-if" msgstr "nieprawid³owa sk³adnia 'tag-if'" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "nieprawid³owy numer portu" -#: option.c:2523 +#: option.c:2529 msgid "bad dhcp-proxy address" msgstr "z³y adres dhcp-proxy" -#: option.c:2563 +#: option.c:2569 msgid "invalid alias range" msgstr "nieprawid³owy zakres adresów w --alias" -#: option.c:2576 +#: option.c:2582 msgid "bad interface name" msgstr "nieprawid³owa nazwa interfejsu" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "z³a CNAME" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "powtórzona CNAME" -#: option.c:2626 +#: option.c:2632 msgid "bad PTR record" msgstr "nieprawid³owy zapis rekordu PTR" -#: option.c:2657 +#: option.c:2663 msgid "bad NAPTR record" msgstr "nieprawid³owy zapis rekordu NAPTR" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "nieprawid³owy zapis rekordu TXT" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "nieprawid³owy zapis rekordu SRV" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "nieprawid³owa warto¶æ celu SRV" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "nieprawid³owy priorytet" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "nieprawid³owa waga" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "nieobs³ugiwana opcja (sprawd¼, czy obs³uga DHCP/TFTP/DBus zosta³a wkompilowana)" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "brakuje \"" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "nieprawid³owa opcja" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "nadwy¿kowy parametr" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "brak parametru" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "b³±d" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "%s w linii %d pliku %%s" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "b³±d odczytu z pliku %s: %s" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, c-format msgid "read %s" msgstr "przeczyta³em %s" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "jakie¶ ¶mieci w linii poleceñ" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "Dnsmasq, wersja %s %s\n" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" @@ -774,63 +782,63 @@ msgstr "" "Wkompilowane opcje %s\n" "\n" -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "Autor nie daje ¯ADNYCH GWARANCJI egzekwowalnych prawnie.\n" -#: option.c:3261 +#: option.c:3272 #, 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:3262 +#: option.c:3273 #, 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:3273 +#: option.c:3284 msgid "try --help" msgstr "spróbuj: --help" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "spróbuj: -w" -#: option.c:3278 +#: option.c:3289 #, c-format msgid "bad command line options: %s" msgstr "nieprawid³owa opcja w linii poleceñ %s" -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "nie mo¿na pobraæ nazwy hosta: %s" -#: option.c:3347 +#: option.c:3358 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:3357 +#: option.c:3368 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:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, c-format msgid "failed to read %s: %s" msgstr "nie uda³o siê odczytaæ %s: %s" -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "brak wytycznych wyszukiwania w %s" -#: option.c:3398 +#: option.c:3409 #, fuzzy 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:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "sk³adnia sprawdzona, jest prawid³owa" @@ -910,204 +918,209 @@ msgstr "u¿ywam serwera nazw %s#%d (przez %s)" msgid "using nameserver %s#%d" msgstr "u¿ywam serwera nazw %s#%d" -#: dnsmasq.c:145 +#: dnsmasq.c:148 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:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "zapis do logów w trybie asynchronicznym nie jest dostêpny w Solarisie" -#: dnsmasq.c:169 +#: dnsmasq.c:158 +#, fuzzy +msgid "asychronous logging is not available under Android" +msgstr "zapis do logów w trybie asynchronicznym nie jest dostêpny w Solarisie" + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "b³±d podczas tworzenia listy interfejsów sieciowych: %s" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "nieznany interfejs %s" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "brak interfejsu z adresem %s" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "b³±d DBus: %s" -#: dnsmasq.c:202 +#: dnsmasq.c:210 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:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "nieznany u¿ytkownik lub grupa: %s" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, c-format msgid "cannot chdir to filesystem root: %s" msgstr "nie potrafiê wej¶æ do g³ównego katalogu: %s" -#: dnsmasq.c:447 +#: dnsmasq.c:455 #, c-format msgid "started, version %s DNS disabled" msgstr "uruchomiony, wersja %s, DNS wy³±czony" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "uruchomiony, wersja %s, %d miejsc w pamiêci podrêcznej" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "uruchomiony, wersja %s, pamiêæ podrêczna wy³±czona" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "opcje kompilacji: %s" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "obs³uga DBus w³±czona, pod³±czono do serwera DBus" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "obs³uga DBus w³±czona, trwa pod³±czanie do serwera DBus" -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, 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:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "ustawiam --bind-interfaces z powodu ograniczeñ systemu operacyjnego" -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "uwaga: interfejs %s nie jest w³±czony" -#: dnsmasq.c:480 +#: dnsmasq.c:488 msgid "warning: ignoring resolv-file flag because no-resolv is set" msgstr "uwaga: ignorujê opcjê resolv-file, poniewa¿ wybrano tryb no-resolv" -#: dnsmasq.c:483 +#: dnsmasq.c:491 msgid "warning: no upstream servers configured" msgstr "uwaga: nie wskazano nadrzêdnych serwerów DNS" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, 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:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "DHCP: tylko statyczne dzier¿awy na %.0s%s, czas dzier¿awy %s" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "DHCP: po¶rednik na podsieci %.0s%s%.0s" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "DHCP: zakres IP %s -- %s, czas dzier¿awy %s" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "z g³ównym katalogiem w " -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "enabled" msgstr "w³±czony" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "w trybie bezpiecznym" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "ograniczam ilo¶æ jednoczesnych przes³añ TFTP do %d" -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "pod³±czono do DBus-a" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "nie potrafiê prze³±czyæ siê do pracy w tle: %s" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, c-format msgid "failed to create helper: %s" msgstr "nie uda³o siê utworzyæ procesu pomocniczego: %s" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "nie powiod³o siê ustawianie ograniczeñ (capabilities): %s" -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, 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:782 +#: dnsmasq.c:790 #, c-format msgid "failed to change group-id to %s: %s" msgstr "nie uda³o siê zmieniæ grupy procesu na %s: %s" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, c-format msgid "failed to open pidfile %s: %s" msgstr "nie uda³o siê otworzyæ pliku z PID-em %s: %s" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, c-format msgid "cannot open %s: %s" msgstr "nie mo¿na otworzyæ %s: %s" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "proces potomny zabity sygna³em %d" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "proces potomny zakoñczy³ siê z kodem powrotu %d" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, c-format msgid "failed to execute %s: %s" msgstr "nie uda³o siê uruchomiæ %s: %s" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "zakoñczy³em dzia³anie z powodu odebrania SIGTERM" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, c-format msgid "failed to access %s: %s" msgstr "brak dostêpu do %s: %s" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "czytanie %s" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, c-format msgid "no servers found in %s, will retry" msgstr "w %s nie znalaz³em serwerów, spróbujê ponownie pó¼niej" @@ -1201,178 +1214,178 @@ msgstr "skrypt zakoñczy³ siê z kodem powrotu %s" msgid "failed to write %s: %s (retry in %us)" msgstr "b³±d zapisu do %s: %s (spróbujê ponownie za %us)" -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "nie zdefiniowano zakresu adresów odpowiedniego dla ¿±dania %s %s" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "z wyborem podsieci" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "przez" -#: rfc2131.c:393 +#: rfc2131.c:331 #, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "%u dostêpna podsieæ DHCP: %s/%s" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "%u dostêpny zakres adresów DHCP: %s -- %s" -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "wy³±czony(a)" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "ignorujê" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "adres jest w u¿yciu" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "brak dostêpnego adresu" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "nieprawid³owa sieæ" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "brak skonfigurowanego adresu" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "brak wolnych dzier¿aw" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "klient %u przedstawia siê jako %s" -#: rfc2131.c:762 +#: rfc2131.c:700 #, c-format msgid "%u vendor class: %s" msgstr "%u klasa dostawcy: %s" -#: rfc2131.c:764 +#: rfc2131.c:702 #, c-format msgid "%u user class: %s" msgstr "%u klasa u¿ytkownika: %s" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "PXE BIS nie jest obs³ugiwane" -#: rfc2131.c:948 +#: rfc2131.c:886 #, c-format msgid "disabling DHCP static address %s for %s" msgstr "wy³±czam statyczne przypisanie adresu %s dla %s" -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "nieznana dzier¿awa" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "nie proponujê zak³adanego w konfiguracji adresu %s, bo jest on ju¿ wydzier¿awiony komputerowi %s" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "nie proponujê zak³adanego w konfiguracji adresu %s, bo u¿ywa go który¶ z serwerów" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "nie proponujê zak³adanego w konfiguracji adresu %s, bo ju¿ poprzednio zosta³ odrzucony" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "brak unikalnego id" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "nieprawid³owy identyfikator serwera (server-ID)" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "b³êdny adres" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "dzier¿awa nieznaleziona" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "adres niedostêpny" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "dostêpna statyczna dzier¿awa" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "adres zarezerwowany" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "porzucam przypisanie do %s nazwy %s" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "%u cechy: %s" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "%u nazwa pliku bootowania: %s" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, c-format msgid "%u server name: %s" msgstr "%u nazwa serwera: %s" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, c-format msgid "%u next server: %s" msgstr "%u nastêpny serwer: %s" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "%u odpowied¼ rozg³oszeniowa" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "nie mam mo¿liwo¶ci wys³ania opcji %d DHCP/BOOTP: niedostateczna ilo¶æ miejsca w pakiecie" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "menu PXE zbyt du¿e" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "Nie uwzglêdniam czê¶ci domenowej (%s) dla komputera %s" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, c-format msgid "%u requested options: %s" msgstr "%u za¿±dano: %s" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "nie mogê wys³aæ opcji RFC3925: za d³ugi ³añcuch opcji przy numerze %d" @@ -1438,17 +1451,17 @@ msgstr "b³±d wysy³ania pliku %s do komputera %s" msgid "sent %s to %s" msgstr "plik %s przes³ano do %s" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "przepe³nienie: stracono %d wpisów do logów" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "nie uda³o siê zapisaæ komunikatów do %s" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "B£¡D: nie uda³o siê uruchomiæ dnsmasq-a" diff --git a/po/pt_BR.po b/po/pt_BR.po index c08d2d0..5fe209e 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -69,30 +69,30 @@ msgstr "" msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "" -#: util.c:59 +#: util.c:57 #, c-format msgid "failed to seed the random number generator: %s" msgstr "" -#: util.c:191 +#: util.c:189 msgid "failed to allocate memory" msgstr "" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "" -#: util.c:239 +#: util.c:237 #, c-format msgid "cannot create pipe: %s" msgstr "" -#: util.c:247 +#: util.c:245 #, c-format msgid "failed to allocate %d bytes" msgstr "" -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "" @@ -568,259 +568,267 @@ msgstr "" msgid "bad IP address" msgstr "" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, c-format msgid "cannot access directory %s: %s" msgstr "" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, c-format msgid "cannot access %s: %s" msgstr "" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "" -#: option.c:1290 +#: option.c:1296 msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" msgstr "" -#: option.c:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "" -#: option.c:1785 +#: option.c:1791 msgid "bad port range" msgstr "" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 msgid "bad hex constant" msgstr "" -#: option.c:2101 +#: option.c:2107 msgid "bad DHCP host name" msgstr "" -#: option.c:2182 +#: option.c:2188 msgid "bad tag-if" msgstr "" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "" -#: option.c:2523 +#: option.c:2529 msgid "bad dhcp-proxy address" msgstr "" -#: option.c:2563 +#: option.c:2569 msgid "invalid alias range" msgstr "" -#: option.c:2576 +#: option.c:2582 msgid "bad interface name" msgstr "" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "" -#: option.c:2626 +#: option.c:2632 msgid "bad PTR record" msgstr "" -#: option.c:2657 +#: option.c:2663 msgid "bad NAPTR record" msgstr "" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, c-format msgid "read %s" msgstr "" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" "\n" msgstr "" -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "" -#: option.c:3261 +#: option.c:3272 #, c-format msgid "Dnsmasq is free software, and you are welcome to redistribute it\n" msgstr "" -#: option.c:3262 +#: option.c:3273 #, c-format msgid "under the terms of the GNU General Public License, version 2 or 3.\n" msgstr "" -#: option.c:3273 +#: option.c:3284 msgid "try --help" msgstr "" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "" -#: option.c:3278 +#: option.c:3289 #, c-format msgid "bad command line options: %s" msgstr "" -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "" -#: option.c:3347 +#: option.c:3358 msgid "only one resolv.conf file allowed in no-poll mode." msgstr "" -#: option.c:3357 +#: option.c:3368 msgid "must have exactly one resolv.conf to read domain from." msgstr "" -#: option.c:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, c-format msgid "failed to read %s: %s" msgstr "" -#: option.c:3377 +#: option.c:3388 #, c-format msgid "no search directive found in %s" msgstr "" -#: option.c:3398 +#: option.c:3409 msgid "there must be a default domain when --dhcp-fqdn is set" msgstr "" -#: option.c:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "" @@ -900,204 +908,208 @@ msgstr "" msgid "using nameserver %s#%d" msgstr "" -#: dnsmasq.c:145 +#: dnsmasq.c:148 msgid "TFTP server not available: set HAVE_TFTP in src/config.h" msgstr "" -#: dnsmasq.c:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "" -#: dnsmasq.c:169 +#: dnsmasq.c:158 +msgid "asychronous logging is not available under Android" +msgstr "" + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "" -#: dnsmasq.c:202 +#: dnsmasq.c:210 msgid "DBus not available: set HAVE_DBUS in src/config.h" msgstr "" -#: dnsmasq.c:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, c-format msgid "cannot chdir to filesystem root: %s" msgstr "" -#: dnsmasq.c:447 +#: dnsmasq.c:455 #, c-format msgid "started, version %s DNS disabled" msgstr "" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "" -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, c-format msgid "warning: failed to change owner of %s: %s" msgstr "" -#: dnsmasq.c:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "" -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "" -#: dnsmasq.c:480 +#: dnsmasq.c:488 msgid "warning: ignoring resolv-file flag because no-resolv is set" msgstr "" -#: dnsmasq.c:483 +#: dnsmasq.c:491 msgid "warning: no upstream servers configured" msgstr "" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, c-format msgid "asynchronous logging enabled, queue limit is %d messages" msgstr "" -#: dnsmasq.c:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "enabled" msgstr "" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "" -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, c-format msgid "failed to create helper: %s" msgstr "" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "" -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, c-format msgid "failed to change user-id to %s: %s" msgstr "" -#: dnsmasq.c:782 +#: dnsmasq.c:790 #, c-format msgid "failed to change group-id to %s: %s" msgstr "" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, c-format msgid "failed to open pidfile %s: %s" msgstr "" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, c-format msgid "cannot open %s: %s" msgstr "" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, c-format msgid "failed to execute %s: %s" msgstr "" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, c-format msgid "failed to access %s: %s" msgstr "" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, c-format msgid "no servers found in %s, will retry" msgstr "" @@ -1191,178 +1203,178 @@ msgstr "" msgid "failed to write %s: %s (retry in %us)" msgstr "" -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "" -#: rfc2131.c:393 +#: rfc2131.c:331 #, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "" -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "" -#: rfc2131.c:762 +#: rfc2131.c:700 #, c-format msgid "%u vendor class: %s" msgstr "" -#: rfc2131.c:764 +#: rfc2131.c:702 #, c-format msgid "%u user class: %s" msgstr "" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "" -#: rfc2131.c:948 +#: rfc2131.c:886 #, c-format msgid "disabling DHCP static address %s for %s" msgstr "" -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, c-format msgid "%u server name: %s" msgstr "" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, c-format msgid "%u next server: %s" msgstr "" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, c-format msgid "%u requested options: %s" msgstr "" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "" @@ -1428,16 +1440,16 @@ msgstr "" msgid "sent %s to %s" msgstr "" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "" @@ -69,31 +69,31 @@ msgstr "" msgid "server %s#%d: queries sent %u, retried or failed %u" msgstr "" -#: util.c:59 +#: util.c:57 #, fuzzy, c-format msgid "failed to seed the random number generator: %s" msgstr "ascultarea pe socket a eÅŸuat: %s" -#: util.c:191 +#: util.c:189 #, fuzzy msgid "failed to allocate memory" msgstr "nu pot încărca %d bytes" -#: util.c:229 option.c:573 +#: util.c:227 option.c:573 msgid "could not get memory" msgstr "nu am putut aloca memorie" -#: util.c:239 +#: util.c:237 #, fuzzy, c-format msgid "cannot create pipe: %s" msgstr "nu pot citi %s: %s" -#: util.c:247 +#: util.c:245 #, fuzzy, c-format msgid "failed to allocate %d bytes" msgstr "nu pot încărca %d bytes" -#: util.c:352 +#: util.c:350 #, c-format msgid "infinite" msgstr "infinit" @@ -588,206 +588,214 @@ msgstr "dhcp-option invalid" msgid "bad IP address" msgstr "citesc %s - %d adrese" -#: option.c:966 +#: option.c:968 msgid "bad domain in dhcp-option" msgstr "domeniu DNS invalid în declaraÅ£ia dhcp-option" -#: option.c:1032 +#: option.c:1034 msgid "dhcp-option too long" msgstr "declararea dhcp-option este prea lungă" -#: option.c:1041 +#: option.c:1043 msgid "illegal dhcp-match" msgstr "" -#: option.c:1085 +#: option.c:1087 msgid "illegal repeated flag" msgstr "" -#: option.c:1093 +#: option.c:1095 msgid "illegal repeated keyword" msgstr "" -#: option.c:1145 option.c:3024 +#: option.c:1147 option.c:3030 #, fuzzy, c-format msgid "cannot access directory %s: %s" msgstr "nu pot citi %s: %s" -#: option.c:1176 tftp.c:460 +#: option.c:1178 tftp.c:460 #, fuzzy, c-format msgid "cannot access %s: %s" msgstr "nu pot citi %s: %s" -#: option.c:1259 +#: option.c:1207 +msgid "setting log facility is not possible under Android" +msgstr "" + +#: option.c:1216 +msgid "bad log facility" +msgstr "" + +#: option.c:1265 msgid "bad MX preference" msgstr "preferinţă MX invalidă" -#: option.c:1264 +#: option.c:1270 msgid "bad MX name" msgstr "nume MX invalid" -#: option.c:1278 +#: option.c:1284 msgid "bad MX target" msgstr "Å£intă MX invalidă" -#: option.c:1288 +#: option.c:1294 msgid "cannot run scripts under uClinux" msgstr "" -#: option.c:1290 +#: option.c:1296 msgid "recompile with HAVE_SCRIPT defined to enable lease-change scripts" msgstr "" -#: option.c:1591 option.c:1595 +#: option.c:1597 option.c:1601 msgid "bad port" msgstr "port invalid" -#: option.c:1614 option.c:1639 +#: option.c:1620 option.c:1645 msgid "interface binding not supported" msgstr "" -#: option.c:1785 +#: option.c:1791 #, fuzzy msgid "bad port range" msgstr "port invalid" -#: option.c:1802 +#: option.c:1808 msgid "bad bridge-interface" msgstr "" -#: option.c:1844 +#: option.c:1850 msgid "bad dhcp-range" msgstr "dhcp-range invalid" -#: option.c:1872 +#: option.c:1878 msgid "only one tag allowed" msgstr "" -#: option.c:1919 +#: option.c:1925 msgid "inconsistent DHCP range" msgstr "domeniu DHCP inconsistent" -#: option.c:2013 option.c:2039 +#: option.c:2019 option.c:2045 #, fuzzy msgid "bad hex constant" msgstr "dhcp-host invalid" -#: option.c:2101 +#: option.c:2107 #, fuzzy msgid "bad DHCP host name" msgstr "nume MX invalid" -#: option.c:2182 +#: option.c:2188 #, fuzzy msgid "bad tag-if" msgstr "Å£intă MX invalidă" -#: option.c:2461 option.c:2746 +#: option.c:2467 option.c:2752 msgid "invalid port number" msgstr "număr de port invalid" -#: option.c:2523 +#: option.c:2529 #, fuzzy msgid "bad dhcp-proxy address" msgstr "citesc %s - %d adrese" -#: option.c:2563 +#: option.c:2569 #, fuzzy msgid "invalid alias range" msgstr "pondere invalidă" -#: option.c:2576 +#: option.c:2582 #, fuzzy msgid "bad interface name" msgstr "nume MX invalid" -#: option.c:2601 +#: option.c:2607 msgid "bad CNAME" msgstr "" -#: option.c:2606 +#: option.c:2612 msgid "duplicate CNAME" msgstr "" -#: option.c:2626 +#: option.c:2632 #, fuzzy msgid "bad PTR record" msgstr "înregistrare SRV invalidă" -#: option.c:2657 +#: option.c:2663 #, fuzzy msgid "bad NAPTR record" msgstr "înregistrare SRV invalidă" -#: option.c:2689 +#: option.c:2695 msgid "bad TXT record" msgstr "înregistrare TXT invalidă" -#: option.c:2732 +#: option.c:2738 msgid "bad SRV record" msgstr "înregistrare SRV invalidă" -#: option.c:2739 +#: option.c:2745 msgid "bad SRV target" msgstr "Å£intă SRV invalidă" -#: option.c:2753 +#: option.c:2759 msgid "invalid priority" msgstr "prioritate invalidă" -#: option.c:2760 +#: option.c:2766 msgid "invalid weight" msgstr "pondere invalidă" -#: option.c:2779 +#: option.c:2785 msgid "unsupported option (check that dnsmasq was compiled with DHCP/TFTP/DBus support)" msgstr "" -#: option.c:2843 +#: option.c:2849 msgid "missing \"" msgstr "lipseÅŸte \"" -#: option.c:2902 +#: option.c:2908 msgid "bad option" msgstr "opÅ£iune invalidă" -#: option.c:2904 +#: option.c:2910 msgid "extraneous parameter" msgstr "parametru nerecunoscut" -#: option.c:2906 +#: option.c:2912 msgid "missing parameter" msgstr "parametru lipsa" -#: option.c:2910 +#: option.c:2916 msgid "error" msgstr "eroare" -#: option.c:2915 +#: option.c:2921 #, c-format msgid "%s at line %d of %%s" msgstr "%s la linia %d din %%s" -#: option.c:2979 tftp.c:624 +#: option.c:2985 tftp.c:624 #, c-format msgid "cannot read %s: %s" msgstr "nu pot citi %s: %s" -#: option.c:3145 option.c:3181 +#: option.c:3151 option.c:3187 #, fuzzy, c-format msgid "read %s" msgstr "citesc %s" -#: option.c:3229 +#: option.c:3239 msgid "junk found in command line" msgstr "" -#: option.c:3258 +#: option.c:3269 #, c-format msgid "Dnsmasq version %s %s\n" msgstr "dnsmasq versiunea %s %s\n" -#: option.c:3259 +#: option.c:3270 #, c-format msgid "" "Compile time options %s\n" @@ -796,62 +804,62 @@ msgstr "" "OpÅ£iuni cu care a fost compilat %s\n" "\n" -#: option.c:3260 +#: option.c:3271 #, c-format msgid "This software comes with ABSOLUTELY NO WARRANTY.\n" msgstr "Acest program vine FÄ‚RÄ‚ NICI O GARANÅ¢IE.\n" -#: option.c:3261 +#: option.c:3272 #, 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:3262 +#: option.c:3273 #, 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:3273 +#: option.c:3284 msgid "try --help" msgstr "" -#: option.c:3275 +#: option.c:3286 msgid "try -w" msgstr "" -#: option.c:3278 +#: option.c:3289 #, fuzzy, c-format msgid "bad command line options: %s" msgstr "opÅ£iuni în linie de comandă invalide: %s." -#: option.c:3319 +#: option.c:3330 #, c-format msgid "cannot get host-name: %s" msgstr "nu pot citi numele maÅŸinii: %s" -#: option.c:3347 +#: option.c:3358 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:3357 +#: option.c:3368 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:3360 network.c:848 dhcp.c:814 +#: option.c:3371 network.c:848 dhcp.c:814 #, fuzzy, c-format msgid "failed to read %s: %s" msgstr "nu pot citi %s: %s" -#: option.c:3377 +#: option.c:3388 #, 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:3398 +#: option.c:3409 msgid "there must be a default domain when --dhcp-fqdn is set" msgstr "" -#: option.c:3402 +#: option.c:3413 msgid "syntax check OK" msgstr "" @@ -931,210 +939,214 @@ msgstr "folosim serverul DNS %s#%d" msgid "using nameserver %s#%d" msgstr "folosim serverul DNS %s#%d" -#: dnsmasq.c:145 +#: dnsmasq.c:148 #, 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:150 +#: dnsmasq.c:153 msgid "asychronous logging is not available under Solaris" msgstr "" -#: dnsmasq.c:169 +#: dnsmasq.c:158 +msgid "asychronous logging is not available under Android" +msgstr "" + +#: dnsmasq.c:177 #, c-format msgid "failed to find list of interfaces: %s" msgstr "enumerarea interfeÅ£elor a eÅŸuat: %s" -#: dnsmasq.c:177 +#: dnsmasq.c:185 #, c-format msgid "unknown interface %s" msgstr "interfaţă necunoscută %s" -#: dnsmasq.c:183 +#: dnsmasq.c:191 #, c-format msgid "no interface with address %s" msgstr "nu exista interfaţă pentru adresa %s" -#: dnsmasq.c:199 dnsmasq.c:670 +#: dnsmasq.c:207 dnsmasq.c:678 #, c-format msgid "DBus error: %s" msgstr "eroare DBus: %s" -#: dnsmasq.c:202 +#: dnsmasq.c:210 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:228 +#: dnsmasq.c:236 #, c-format msgid "unknown user or group: %s" msgstr "" -#: dnsmasq.c:283 +#: dnsmasq.c:291 #, c-format msgid "cannot chdir to filesystem root: %s" msgstr "" -#: dnsmasq.c:447 +#: dnsmasq.c:455 #, fuzzy, c-format msgid "started, version %s DNS disabled" msgstr "am pornit, versiunea %s memorie temporară dezactivată" -#: dnsmasq.c:449 +#: dnsmasq.c:457 #, c-format msgid "started, version %s cachesize %d" msgstr "am ponit, versiunea %s memorie temporară %d" -#: dnsmasq.c:451 +#: dnsmasq.c:459 #, c-format msgid "started, version %s cache disabled" msgstr "am pornit, versiunea %s memorie temporară dezactivată" -#: dnsmasq.c:453 +#: dnsmasq.c:461 #, c-format msgid "compile time options: %s" msgstr "compilat cu opÅ£iunile: %s" -#: dnsmasq.c:459 +#: dnsmasq.c:467 msgid "DBus support enabled: connected to system bus" msgstr "suportul DBus activ: sunt conectat la magistrala sistem" -#: dnsmasq.c:461 +#: dnsmasq.c:469 msgid "DBus support enabled: bus connection pending" msgstr "suportul DBus activ: aÅŸtept conexiunea la magistrală" # for compatibility purposes the letters â, ă, ÅŸ, Å£ and î can be written as their look-alike correspondent. -#: dnsmasq.c:466 +#: dnsmasq.c:474 #, fuzzy, c-format msgid "warning: failed to change owner of %s: %s" msgstr "încărcarea numelor din %s: %s a eÅŸuat" -#: dnsmasq.c:470 +#: dnsmasq.c:478 msgid "setting --bind-interfaces option because of OS limitations" msgstr "specific opÅ£iunea --bind-interfaces din cauza limitărilor SO" -#: dnsmasq.c:475 +#: dnsmasq.c:483 #, c-format msgid "warning: interface %s does not currently exist" msgstr "atenÅ£ie: interfaÅ£a %s nu există momentan" -#: dnsmasq.c:480 +#: dnsmasq.c:488 msgid "warning: ignoring resolv-file flag because no-resolv is set" msgstr "" -#: dnsmasq.c:483 +#: dnsmasq.c:491 #, fuzzy msgid "warning: no upstream servers configured" msgstr "configurăm serverele superioare prin Dbus" -#: dnsmasq.c:487 +#: dnsmasq.c:495 #, c-format msgid "asynchronous logging enabled, queue limit is %d messages" msgstr "" -#: dnsmasq.c:500 +#: dnsmasq.c:508 #, c-format msgid "DHCP, static leases only on %.0s%s, lease time %s" msgstr "DHCP, împrumuturi statice doar către %.0s%s, timpul reînoirii %s" -#: dnsmasq.c:502 +#: dnsmasq.c:510 #, c-format msgid "DHCP, proxy on subnet %.0s%s%.0s" msgstr "" -#: dnsmasq.c:503 +#: dnsmasq.c:511 #, c-format msgid "DHCP, IP range %s -- %s, lease time %s" msgstr "DHCP, domeniu IP %s -- %s, timpul reînoirii %s" -#: dnsmasq.c:518 +#: dnsmasq.c:526 msgid "root is " msgstr "" -#: dnsmasq.c:518 +#: dnsmasq.c:526 #, fuzzy msgid "enabled" msgstr "dezactivat" -#: dnsmasq.c:520 +#: dnsmasq.c:528 msgid "secure mode" msgstr "" -#: dnsmasq.c:546 +#: dnsmasq.c:554 #, c-format msgid "restricting maximum simultaneous TFTP transfers to %d" msgstr "" -#: dnsmasq.c:672 +#: dnsmasq.c:680 msgid "connected to system DBus" msgstr "magistrala sistem Dbus conectată" -#: dnsmasq.c:767 +#: dnsmasq.c:775 #, c-format msgid "cannot fork into background: %s" msgstr "" -#: dnsmasq.c:770 +#: dnsmasq.c:778 #, fuzzy, c-format msgid "failed to create helper: %s" msgstr "nu pot citi %s: %s" -#: dnsmasq.c:773 +#: dnsmasq.c:781 #, c-format msgid "setting capabilities failed: %s" msgstr "" # for compatibility purposes the letters â, ă, ÅŸ, Å£ and î can be written as their look-alike correspondent. -#: dnsmasq.c:777 +#: dnsmasq.c:785 #, 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:782 +#: dnsmasq.c:790 #, fuzzy, c-format msgid "failed to change group-id to %s: %s" msgstr "încărcarea numelor din %s: %s a eÅŸuat" -#: dnsmasq.c:785 +#: dnsmasq.c:793 #, fuzzy, c-format msgid "failed to open pidfile %s: %s" msgstr "nu pot citi %s: %s" -#: dnsmasq.c:788 +#: dnsmasq.c:796 #, fuzzy, c-format msgid "cannot open %s: %s" msgstr "nu pot deschide %s:%s" -#: dnsmasq.c:843 +#: dnsmasq.c:851 #, c-format msgid "child process killed by signal %d" msgstr "" -#: dnsmasq.c:847 +#: dnsmasq.c:855 #, c-format msgid "child process exited with status %d" msgstr "" -#: dnsmasq.c:851 +#: dnsmasq.c:859 #, fuzzy, c-format msgid "failed to execute %s: %s" msgstr "accesarea serverului %s a eÅŸuat: %s" -#: dnsmasq.c:895 +#: dnsmasq.c:903 msgid "exiting on receipt of SIGTERM" msgstr "am primit SIGTERM, am terminat" -#: dnsmasq.c:923 +#: dnsmasq.c:931 #, fuzzy, c-format msgid "failed to access %s: %s" msgstr "accesarea serverului %s a eÅŸuat: %s" -#: dnsmasq.c:953 +#: dnsmasq.c:961 #, c-format msgid "reading %s" msgstr "citesc %s" -#: dnsmasq.c:964 +#: dnsmasq.c:972 #, 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" @@ -1228,178 +1240,178 @@ msgstr "" msgid "failed to write %s: %s (retry in %us)" msgstr "nu pot citi %s: %s" -#: rfc2131.c:377 +#: rfc2131.c:315 #, c-format msgid "no address range available for DHCP request %s %s" msgstr "nici un domeniu de adrese disponibil pentru cererea DHCP %s %s" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "with subnet selector" msgstr "cu selectorul de subreÅ£ea" -#: rfc2131.c:378 +#: rfc2131.c:316 msgid "via" msgstr "prin" -#: rfc2131.c:393 +#: rfc2131.c:331 #, fuzzy, c-format msgid "%u available DHCP subnet: %s/%s" msgstr "nici un domeniu de adrese disponibil pentru cererea DHCP %s %s" -#: rfc2131.c:396 +#: rfc2131.c:334 #, c-format msgid "%u available DHCP range: %s -- %s" msgstr "" -#: rfc2131.c:425 +#: rfc2131.c:363 msgid "disabled" msgstr "dezactivat" -#: rfc2131.c:466 rfc2131.c:978 rfc2131.c:1350 +#: rfc2131.c:404 rfc2131.c:916 rfc2131.c:1288 msgid "ignored" msgstr "ignorat" -#: rfc2131.c:481 rfc2131.c:1197 +#: rfc2131.c:419 rfc2131.c:1135 msgid "address in use" msgstr "adresa este folosită" -#: rfc2131.c:495 rfc2131.c:1032 +#: rfc2131.c:433 rfc2131.c:970 msgid "no address available" msgstr "nici o adresă disponibilă" -#: rfc2131.c:502 rfc2131.c:1160 +#: rfc2131.c:440 rfc2131.c:1098 msgid "wrong network" msgstr "reÅ£ea greÅŸită" -#: rfc2131.c:516 +#: rfc2131.c:454 msgid "no address configured" msgstr "adresă lipsă" -#: rfc2131.c:522 rfc2131.c:1210 +#: rfc2131.c:460 rfc2131.c:1148 msgid "no leases left" msgstr "nu mai am de unde să împrumut" -#: rfc2131.c:607 +#: rfc2131.c:545 #, c-format msgid "%u client provides name: %s" msgstr "" -#: rfc2131.c:762 +#: rfc2131.c:700 #, fuzzy, c-format msgid "%u vendor class: %s" msgstr "eroare DBus: %s" -#: rfc2131.c:764 +#: rfc2131.c:702 #, fuzzy, c-format msgid "%u user class: %s" msgstr "eroare DBus: %s" -#: rfc2131.c:823 +#: rfc2131.c:761 msgid "PXE BIS not supported" msgstr "" -#: rfc2131.c:948 +#: rfc2131.c:886 #, fuzzy, c-format msgid "disabling DHCP static address %s for %s" msgstr "dezactivăm adresele DHCP statice %s" -#: rfc2131.c:969 +#: rfc2131.c:907 msgid "unknown lease" msgstr "împrumut necunoscut" -#: rfc2131.c:1001 +#: rfc2131.c:939 #, c-format msgid "not using configured address %s because it is leased to %s" msgstr "" -#: rfc2131.c:1011 +#: rfc2131.c:949 #, c-format msgid "not using configured address %s because it is in use by the server or relay" msgstr "" -#: rfc2131.c:1014 +#: rfc2131.c:952 #, c-format msgid "not using configured address %s because it was previously declined" msgstr "" -#: rfc2131.c:1030 rfc2131.c:1203 +#: rfc2131.c:968 rfc2131.c:1141 msgid "no unique-id" msgstr "" -#: rfc2131.c:1099 +#: rfc2131.c:1037 msgid "wrong server-ID" msgstr "" -#: rfc2131.c:1117 +#: rfc2131.c:1055 msgid "wrong address" msgstr "adresă greÅŸită" -#: rfc2131.c:1135 +#: rfc2131.c:1073 msgid "lease not found" msgstr "împrumutul nu a fost găsit" -#: rfc2131.c:1168 +#: rfc2131.c:1106 msgid "address not available" msgstr "adresă indisponibilă" -#: rfc2131.c:1179 +#: rfc2131.c:1117 msgid "static lease available" msgstr "împrumut static este disponibil" -#: rfc2131.c:1183 +#: rfc2131.c:1121 msgid "address reserved" msgstr "adresă rezervată" -#: rfc2131.c:1191 +#: rfc2131.c:1129 #, c-format msgid "abandoning lease to %s of %s" msgstr "" -#: rfc2131.c:1772 +#: rfc2131.c:1710 #, c-format msgid "%u tags: %s" msgstr "" -#: rfc2131.c:1785 +#: rfc2131.c:1723 #, c-format msgid "%u bootfile name: %s" msgstr "" -#: rfc2131.c:1794 +#: rfc2131.c:1732 #, fuzzy, c-format msgid "%u server name: %s" msgstr "eroare DBus: %s" -#: rfc2131.c:1808 +#: rfc2131.c:1746 #, fuzzy, c-format msgid "%u next server: %s" msgstr "eroare DBus: %s" -#: rfc2131.c:1811 +#: rfc2131.c:1749 #, c-format msgid "%u broadcast response" msgstr "" -#: rfc2131.c:1874 +#: rfc2131.c:1812 #, fuzzy, c-format msgid "cannot send DHCP/BOOTP option %d: no space left in packet" msgstr "nu pot trimite opÅ£iunea DHCP %d: nu mai este loc în pachet" -#: rfc2131.c:2120 +#: rfc2131.c:2058 msgid "PXE menu too large" msgstr "" -#: rfc2131.c:2233 +#: rfc2131.c:2171 #, c-format msgid "Ignoring domain %s for DHCP host name %s" msgstr "" -#: rfc2131.c:2251 +#: rfc2131.c:2189 #, fuzzy, c-format msgid "%u requested options: %s" msgstr "compilat cu opÅ£iunile: %s" -#: rfc2131.c:2518 +#: rfc2131.c:2456 #, c-format msgid "cannot send RFC3925 option: too many options for enterprise number %d" msgstr "" @@ -1465,17 +1477,17 @@ msgstr "nu pot citi %s: %s" msgid "sent %s to %s" msgstr "" -#: log.c:173 +#: log.c:177 #, c-format msgid "overflow: %d log entries lost" msgstr "" -#: log.c:250 +#: log.c:254 #, c-format msgid "log failed: %s" msgstr "" -#: log.c:436 +#: log.c:462 msgid "FAILED to start up" msgstr "pornirea A EÅžUAT" diff --git a/src/config.h b/src/config.h index 11aa17e..7394253 100644 --- a/src/config.h +++ b/src/config.h @@ -14,7 +14,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ -#define VERSION "2.56" +#define VERSION "2.57" #define FTABSIZ 150 /* max number of outstanding requests (default) */ #define MAX_PROCS 20 /* max no children for TCP requests */ @@ -46,6 +46,8 @@ # define LEASEFILE "/var/db/dnsmasq.leases" # elif defined(__sun__) || defined (__sun) # define LEASEFILE "/var/cache/dnsmasq.leases" +# elif defined(__ANDROID__) +# define LEASEFILE "/data/misc/dhcp/dnsmasq.leases" # else # define LEASEFILE "/var/lib/misc/dnsmasq.leases" # endif @@ -62,6 +64,7 @@ #define DEFLEASE 3600 /* default lease time, 1 hour */ #define CHUSER "nobody" #define CHGRP "dip" +#define NAMESERVER_PORT 53 #define DHCP_SERVER_PORT 67 #define DHCP_CLIENT_PORT 68 #define DHCP_SERVER_ALTPORT 1067 @@ -78,29 +81,6 @@ #define DNSMASQ_SERVICE "uk.org.thekelleys.dnsmasq" #define DNSMASQ_PATH "/uk/org/thekelleys/dnsmasq" -/* A small collection of RR-types which are missing on some platforms */ - -#ifndef T_SIG -# define T_SIG 24 -#endif - -#ifndef T_SRV -# define T_SRV 33 -#endif - -#ifndef T_OPT -# define T_OPT 41 -#endif - -#ifndef T_TKEY -# define T_TKEY 249 -#endif - -#ifndef T_TSIG -# define T_TSIG 250 -#endif - - /* Follows system specific switches. If you run on a new system, you may want to edit these. May replace this with Autoconf one day. @@ -144,10 +124,16 @@ HAVE_SOCKADDR_SA_LEN define this if struct sockaddr has sa_len field (*BSD) HAVE_DBUS - Define this if you want to link against libdbus, and have dnsmasq - define some methods to allow (re)configuration of the upstream DNS + define this if you want to link against libdbus, and have dnsmasq + support some methods to allow (re)configuration of the upstream DNS servers via DBus. +HAVE_IDN + define this if you want international domain name support. + NOTE: for backwards compatibility, IDN support is automatically + included when internationalisation support is built, using the + *-i18n makefile targets, even if HAVE_IDN is not explicitly set. + NOTES: For Linux you should define HAVE_LINUX_NETWORK @@ -172,6 +158,7 @@ NOTES: #define HAVE_SCRIPT /* #define HAVE_BROKEN_RTC */ /* #define HAVE_DBUS */ +/* #define HAVE_IDN */ /* Allow TFTP to be disabled with COPTS=-DNO_TFTP */ #ifdef NO_TFTP diff --git a/src/dhcp_protocol.h b/src/dhcp_protocol.h new file mode 100644 index 0000000..e09cad8 --- /dev/null +++ b/src/dhcp_protocol.h @@ -0,0 +1,91 @@ +/* dnsmasq is Copyright (c) 2000-2011 Simon Kelley + + This program 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; version 2 dated June, 1991, or + (at your option) version 3 dated 29 June, 2007. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#define BOOTREQUEST 1 +#define BOOTREPLY 2 +#define DHCP_COOKIE 0x63825363 + +/* The Linux in-kernel DHCP client silently ignores any packet + smaller than this. Sigh........... */ +#define MIN_PACKETSZ 300 + +#define OPTION_PAD 0 +#define OPTION_NETMASK 1 +#define OPTION_ROUTER 3 +#define OPTION_DNSSERVER 6 +#define OPTION_HOSTNAME 12 +#define OPTION_DOMAINNAME 15 +#define OPTION_BROADCAST 28 +#define OPTION_VENDOR_CLASS_OPT 43 +#define OPTION_REQUESTED_IP 50 +#define OPTION_LEASE_TIME 51 +#define OPTION_OVERLOAD 52 +#define OPTION_MESSAGE_TYPE 53 +#define OPTION_SERVER_IDENTIFIER 54 +#define OPTION_REQUESTED_OPTIONS 55 +#define OPTION_MESSAGE 56 +#define OPTION_MAXMESSAGE 57 +#define OPTION_T1 58 +#define OPTION_T2 59 +#define OPTION_VENDOR_ID 60 +#define OPTION_CLIENT_ID 61 +#define OPTION_SNAME 66 +#define OPTION_FILENAME 67 +#define OPTION_USER_CLASS 77 +#define OPTION_CLIENT_FQDN 81 +#define OPTION_AGENT_ID 82 +#define OPTION_ARCH 93 +#define OPTION_PXE_UUID 97 +#define OPTION_SUBNET_SELECT 118 +#define OPTION_DOMAIN_SEARCH 119 +#define OPTION_SIP_SERVER 120 +#define OPTION_VENDOR_IDENT 124 +#define OPTION_VENDOR_IDENT_OPT 125 +#define OPTION_END 255 + +#define SUBOPT_CIRCUIT_ID 1 +#define SUBOPT_REMOTE_ID 2 +#define SUBOPT_SUBNET_SELECT 5 /* RFC 3527 */ +#define SUBOPT_SUBSCR_ID 6 /* RFC 3393 */ +#define SUBOPT_SERVER_OR 11 /* RFC 5107 */ + +#define SUBOPT_PXE_BOOT_ITEM 71 /* PXE standard */ +#define SUBOPT_PXE_DISCOVERY 6 +#define SUBOPT_PXE_SERVERS 8 +#define SUBOPT_PXE_MENU 9 +#define SUBOPT_PXE_MENU_PROMPT 10 + +#define DHCPDISCOVER 1 +#define DHCPOFFER 2 +#define DHCPREQUEST 3 +#define DHCPDECLINE 4 +#define DHCPACK 5 +#define DHCPNAK 6 +#define DHCPRELEASE 7 +#define DHCPINFORM 8 + +#define BRDBAND_FORUM_IANA 3561 /* Broadband forum IANA enterprise */ + +#define DHCP_CHADDR_MAX 16 + +struct dhcp_packet { + u8 op, htype, hlen, hops; + u32 xid; + u16 secs, flags; + struct in_addr ciaddr, yiaddr, siaddr, giaddr; + u8 chaddr[DHCP_CHADDR_MAX], sname[64], file[128]; + u8 options[312]; +}; diff --git a/src/dns_protocol.h b/src/dns_protocol.h new file mode 100644 index 0000000..bc18e79 --- /dev/null +++ b/src/dns_protocol.h @@ -0,0 +1,111 @@ +/* dnsmasq is Copyright (c) 2000-2011 Simon Kelley + + This program 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; version 2 dated June, 1991, or + (at your option) version 3 dated 29 June, 2007. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#define IN6ADDRSZ 16 +#define INADDRSZ 4 + +#define PACKETSZ 512 /* maximum packet size */ +#define MAXDNAME 1025 /* maximum presentation domain name */ +#define RRFIXEDSZ 10 /* #/bytes of fixed data in r record */ +#define MAXLABEL 63 /* maximum length of domain label */ + +#define NOERROR 0 /* no error */ +#define FORMERR 1 /* format error */ +#define SERVFAIL 2 /* server failure */ +#define NXDOMAIN 3 /* non existent domain */ +#define NOTIMP 4 /* not implemented */ +#define REFUSED 5 /* query refused */ + +#define QUERY 0 /* opcode */ + +#define C_IN 1 /* the arpa internet */ +#define C_CHAOS 3 /* for chaos net (MIT) */ +#define C_ANY 255 /* wildcard match */ + +#define T_A 1 +#define T_NS 2 +#define T_CNAME 5 +#define T_SOA 6 +#define T_PTR 12 +#define T_MX 15 +#define T_TXT 16 +#define T_SIG 24 +#define T_AAAA 28 +#define T_SRV 33 +#define T_NAPTR 35 +#define T_OPT 41 +#define T_TKEY 249 +#define T_TSIG 250 +#define T_MAILB 253 +#define T_ANY 255 + +struct dns_header { + u16 id; + u8 hb3,hb4; + u16 qdcount,ancount,nscount,arcount; +} ; + +#define HB3_QR 0x80 +#define HB3_OPCODE 0x78 +#define HB3_AA 0x04 +#define HB3_TC 0x02 +#define HB3_RD 0x01 + +#define HB4_RA 0x80 +#define HB4_AD 0x20 +#define HB4_CD 0x10 +#define HB4_RCODE 0x0f + +#define OPCODE(x) (((x)->hb3 & HB3_OPCODE) >> 3) +#define RCODE(x) ((x)->hb4 & HB4_RCODE) +#define SET_RCODE(x, code) (x)->hb4 = ((x)->hb4 & ~HB4_RCODE) | code + +#define GETSHORT(s, cp) { \ + unsigned char *t_cp = (unsigned char *)(cp); \ + (s) = ((u16)t_cp[0] << 8) \ + | ((u16)t_cp[1]) \ + ; \ + (cp) += 2; \ +} + +#define GETLONG(l, cp) { \ + unsigned char *t_cp = (unsigned char *)(cp); \ + (l) = ((u32)t_cp[0] << 24) \ + | ((u32)t_cp[1] << 16) \ + | ((u32)t_cp[2] << 8) \ + | ((u32)t_cp[3]) \ + ; \ + (cp) += 4; \ +} + +#define PUTSHORT(s, cp) { \ + u16 t_s = (u16)(s); \ + unsigned char *t_cp = (unsigned char *)(cp); \ + *t_cp++ = t_s >> 8; \ + *t_cp = t_s; \ + (cp) += 2; \ +} + +#define PUTLONG(l, cp) { \ + u32 t_l = (u32)(l); \ + unsigned char *t_cp = (unsigned char *)(cp); \ + *t_cp++ = t_l >> 24; \ + *t_cp++ = t_l >> 16; \ + *t_cp++ = t_l >> 8; \ + *t_cp = t_l; \ + (cp) += 4; \ +} + diff --git a/src/dnsmasq.c b/src/dnsmasq.c index 689a86b..827b0dc 100644 --- a/src/dnsmasq.c +++ b/src/dnsmasq.c @@ -51,8 +51,11 @@ static char *compile_opts = #ifndef HAVE_TFTP "no-" #endif -"TFTP"; - +"TFTP " +#if !defined(LOCALEDIR) && !defined(HAVE_IDN) +"no-" +#endif +"IDN"; static volatile pid_t pid = 0; @@ -150,6 +153,11 @@ int main (int argc, char **argv) die(_("asychronous logging is not available under Solaris"), NULL, EC_BADCONF); #endif +#ifdef __ANDROID__ + if (daemon->max_logs != 0) + die(_("asychronous logging is not available under Android"), NULL, EC_BADCONF); +#endif + rand_init(); now = dnsmasq_time(); @@ -384,7 +392,7 @@ int main (int argc, char **argv) (1 << CAP_NET_ADMIN) | (1 << CAP_NET_RAW) | (1 << CAP_SETUID); /* Tell kernel to not clear capabilities when dropping root */ - if (capset(hdr, data) == -1 || prctl(PR_SET_KEEPCAPS, 1) == -1) + if (capset(hdr, data) == -1 || prctl(PR_SET_KEEPCAPS, 1, 0, 0, 0) == -1) bad_capabilities = errno; #elif defined(HAVE_SOLARIS_NETWORK) @@ -440,7 +448,7 @@ int main (int argc, char **argv) #ifdef HAVE_LINUX_NETWORK if (option_bool(OPT_DEBUG)) - prctl(PR_SET_DUMPABLE, 1); + prctl(PR_SET_DUMPABLE, 1, 0, 0, 0); #endif if (daemon->port == 0) diff --git a/src/dnsmasq.h b/src/dnsmasq.h index 10e7eef..a386a31 100644 --- a/src/dnsmasq.h +++ b/src/dnsmasq.h @@ -24,7 +24,9 @@ /* Get linux C library versions and define _GNU_SOURCE for kFreeBSD. */ #if defined(__linux__) || defined(__GLIBC__) -# define _GNU_SOURCE +# ifndef __ANDROID__ +# define _GNU_SOURCE +# endif # include <features.h> #endif @@ -39,18 +41,18 @@ #include <sys/socket.h> #include <netinet/in.h> -#ifdef __APPLE__ -# include <nameser.h> -# include <arpa/nameser_compat.h> -#else -# include <arpa/nameser.h> -#endif - /* and this. */ #include <getopt.h> #include "config.h" +typedef unsigned char u8; +typedef unsigned short u16; +typedef unsigned int u32; + +#include "dns_protocol.h" +#include "dhcp_protocol.h" + #define gettext_noop(S) (S) #ifndef LOCALEDIR # define _(S) (S) @@ -89,7 +91,7 @@ #include <pwd.h> #include <grp.h> #include <stdarg.h> -#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__sun__) || defined (__sun) +#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__sun__) || defined (__sun) || defined (__ANDROID__) # include <netinet/if_ether.h> #else # include <net/ethernet.h> @@ -163,7 +165,7 @@ struct event_desc { */ #define DNSMASQ_PACKETSZ PACKETSZ+MAXDNAME+RRFIXEDSZ -/* Trust the compiler dead-code elimator.... */ +/* Trust the compiler dead-code eliminator.... */ #define option_bool(x) (((x) < 32) ? daemon->options & (1u << (x)) : daemon->options2 & (1u << ((x) - 32))) #define OPT_BOGUSPRIV 0 @@ -422,8 +424,6 @@ struct frec { #define ACTION_OLD 3 #define ACTION_ADD 4 -#define DHCP_CHADDR_MAX 16 - struct dhcp_lease { int clid_len; /* length of client identifier */ unsigned char *clid; /* clientid */ @@ -582,21 +582,6 @@ struct dhcp_context { #define CONTEXT_BRDCAST 4 #define CONTEXT_PROXY 8 - -typedef unsigned char u8; -typedef unsigned short u16; -typedef unsigned int u32; - - -struct dhcp_packet { - u8 op, htype, hlen, hops; - u32 xid; - u16 secs, flags; - struct in_addr ciaddr, yiaddr, siaddr, giaddr; - u8 chaddr[DHCP_CHADDR_MAX], sname[64], file[128]; - u8 options[312]; -}; - struct ping_result { struct in_addr addr; time_t time; @@ -763,24 +748,24 @@ char *cache_get_name(struct crec *crecp); char *get_domain(struct in_addr addr); /* rfc1035.c */ -unsigned int extract_request(HEADER *header, size_t qlen, +unsigned int extract_request(struct dns_header *header, size_t qlen, char *name, unsigned short *typep); -size_t setup_reply(HEADER *header, size_t qlen, +size_t setup_reply(struct dns_header *header, size_t qlen, struct all_addr *addrp, unsigned int flags, unsigned long local_ttl); -int extract_addresses(HEADER *header, size_t qlen, char *namebuff, +int extract_addresses(struct dns_header *header, size_t qlen, char *namebuff, time_t now, int is_sign, int checkrebind, int checking_disabled); -size_t answer_request(HEADER *header, char *limit, size_t qlen, +size_t answer_request(struct dns_header *header, char *limit, size_t qlen, struct in_addr local_addr, struct in_addr local_netmask, time_t now); -int check_for_bogus_wildcard(HEADER *header, size_t qlen, char *name, +int check_for_bogus_wildcard(struct dns_header *header, size_t qlen, char *name, struct bogus_addr *addr, time_t now); -unsigned char *find_pseudoheader(HEADER *header, size_t plen, +unsigned char *find_pseudoheader(struct dns_header *header, size_t plen, size_t *len, unsigned char **p, int *is_sign); int check_for_local_domain(char *name, time_t now); -unsigned int questions_crc(HEADER *header, size_t plen, char *buff); -size_t resize_packet(HEADER *header, size_t plen, +unsigned int questions_crc(struct dns_header *header, size_t plen, char *buff); +size_t resize_packet(struct dns_header *header, size_t plen, unsigned char *pheader, size_t hlen); -size_t add_mac(HEADER *header, size_t plen, char *limit, union mysockaddr *l3); +size_t add_mac(struct dns_header *header, size_t plen, char *limit, union mysockaddr *l3); /* util.c */ void rand_init(void); diff --git a/src/forward.c b/src/forward.c index c37ede3..92bc6b0 100644 --- a/src/forward.c +++ b/src/forward.c @@ -234,7 +234,7 @@ static unsigned int search_servers(time_t now, struct all_addr **addrpp, static int forward_query(int udpfd, union mysockaddr *udpaddr, struct all_addr *dst_addr, unsigned int dst_iface, - HEADER *header, size_t plen, time_t now, struct frec *forward) + struct dns_header *header, size_t plen, time_t now, struct frec *forward) { char *domain = NULL; int type = 0, norebind = 0; @@ -245,8 +245,8 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr, struct server *start = NULL; /* RFC 4035: sect 4.6 para 2 */ - header->ad = 0; - + header->hb4 &= ~HB4_AD; + /* may be no servers available. */ if (!daemon->servers) forward = NULL; @@ -286,7 +286,7 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr, forward->forwardall = 0; if (norebind) forward->flags |= FREC_NOREBIND; - if (header->cd) + if (header->hb4 & HB4_CD) forward->flags |= FREC_CHECKING_DISABLED; header->id = htons(forward->new_id); @@ -425,7 +425,7 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr, return 0; } -static size_t process_reply(HEADER *header, time_t now, +static size_t process_reply(struct dns_header *header, time_t now, struct server *server, size_t n, int check_rebind, int checking_disabled) { unsigned char *pheader, *sizep; @@ -448,13 +448,13 @@ static size_t process_reply(HEADER *header, time_t now, /* RFC 4035 sect 4.6 para 3 */ if (!is_sign && !option_bool(OPT_DNSSEC)) - header->ad = 0; + header->hb4 &= ~HB4_AD; - if (header->opcode != QUERY || (header->rcode != NOERROR && header->rcode != NXDOMAIN)) + if (OPCODE(header) != QUERY || (RCODE(header) != NOERROR && RCODE(header) != NXDOMAIN)) return n; /* Complain loudly if the upstream server is non-recursive. */ - if (!header->ra && header->rcode == NOERROR && ntohs(header->ancount) == 0 && + if (!(header->hb4 & HB4_RA) && RCODE(header) == NOERROR && ntohs(header->ancount) == 0 && server && !(server->flags & SERV_WARNED_RECURSIVE)) { prettyprint_addr(&server->addr, daemon->namebuff); @@ -463,16 +463,16 @@ static size_t process_reply(HEADER *header, time_t now, server->flags |= SERV_WARNED_RECURSIVE; } - if (daemon->bogus_addr && header->rcode != NXDOMAIN && + if (daemon->bogus_addr && RCODE(header) != NXDOMAIN && check_for_bogus_wildcard(header, n, daemon->namebuff, daemon->bogus_addr, now)) { munged = 1; - header->rcode = NXDOMAIN; - header->aa = 0; + SET_RCODE(header, NXDOMAIN); + header->hb3 &= ~HB3_AA; } else { - if (header->rcode == NXDOMAIN && + if (RCODE(header) == NXDOMAIN && extract_request(header, n, daemon->namebuff, NULL) && check_for_local_domain(daemon->namebuff, now)) { @@ -480,8 +480,8 @@ static size_t process_reply(HEADER *header, time_t now, an unknown type) and the answer is NXDOMAIN, convert that to NODATA, since we know that the domain exists, even if upstream doesn't */ munged = 1; - header->aa = 1; - header->rcode = NOERROR; + header->hb3 |= HB3_AA; + SET_RCODE(header, NOERROR); } if (extract_addresses(header, n, daemon->namebuff, now, is_sign, check_rebind, checking_disabled)) @@ -512,7 +512,7 @@ void reply_query(int fd, int family, time_t now) { /* packet from peer server, extract data for cache, and send to original requester */ - HEADER *header; + struct dns_header *header; union mysockaddr serveraddr; struct frec *forward; socklen_t addrlen = sizeof(serveraddr); @@ -536,16 +536,16 @@ void reply_query(int fd, int family, time_t now) sockaddr_isequal(&server->addr, &serveraddr)) break; - header = (HEADER *)daemon->packet; + header = (struct dns_header *)daemon->packet; if (!server || - n < (int)sizeof(HEADER) || !header->qr || + n < (int)sizeof(struct dns_header) || !(header->hb3 & HB3_QR) || !(forward = lookup_frec(ntohs(header->id), questions_crc(header, n, daemon->namebuff)))) return; server = forward->sentto; - if ((header->rcode == SERVFAIL || header->rcode == REFUSED) && + if ((RCODE(header) == SERVFAIL || RCODE(header) == REFUSED) && !option_bool(OPT_ORDER) && forward->forwardall == 0) /* for broken servers, attempt to send to another one. */ @@ -563,8 +563,7 @@ void reply_query(int fd, int family, time_t now) header->arcount = htons(0); if ((nn = resize_packet(header, (size_t)n, pheader, plen))) { - header->qr = 0; - header->tc = 0; + header->hb3 &= ~(HB3_QR | HB3_TC); forward_query(-1, NULL, NULL, 0, header, nn, now, forward); return; } @@ -573,7 +572,7 @@ void reply_query(int fd, int family, time_t now) if ((forward->sentto->flags & SERV_TYPE) == 0) { - if (header->rcode == SERVFAIL || header->rcode == REFUSED) + if (RCODE(header) == SERVFAIL || RCODE(header) == REFUSED) server = NULL; else { @@ -597,7 +596,7 @@ void reply_query(int fd, int family, time_t now) had replies from all to avoid filling the forwarding table when everything is broken */ if (forward->forwardall == 0 || --forward->forwardall == 1 || - (header->rcode != REFUSED && header->rcode != SERVFAIL)) + (RCODE(header) != REFUSED && RCODE(header) != SERVFAIL)) { int check_rebind = !(forward->flags & FREC_NOREBIND); @@ -607,7 +606,7 @@ void reply_query(int fd, int family, time_t now) if ((nn = process_reply(header, now, server, (size_t)n, check_rebind, forward->flags & FREC_CHECKING_DISABLED))) { header->id = htons(forward->orig_id); - header->ra = 1; /* recursion if available */ + header->hb4 |= HB4_RA; /* recursion if available */ send_from(forward->fd, option_bool(OPT_NOWILD), daemon->packet, nn, &forward->source, &forward->dest, forward->iface); } @@ -618,7 +617,7 @@ void reply_query(int fd, int family, time_t now) void receive_query(struct listener *listen, time_t now) { - HEADER *header = (HEADER *)daemon->packet; + struct dns_header *header = (struct dns_header *)daemon->packet; union mysockaddr source_addr; unsigned short type; struct all_addr dst_addr; @@ -673,9 +672,9 @@ void receive_query(struct listener *listen, time_t now) if ((n = recvmsg(listen->fd, &msg, 0)) == -1) return; - if (n < (int)sizeof(HEADER) || + if (n < (int)sizeof(struct dns_header) || (msg.msg_flags & MSG_TRUNC) || - header->qr) + (header->hb3 & HB3_QR)) return; source_addr.sa.sa_family = listen->family; @@ -808,7 +807,7 @@ unsigned char *tcp_request(int confd, time_t now, unsigned char c1, c2; /* Max TCP packet + slop */ unsigned char *packet = whine_malloc(65536 + MAXDNAME + RRFIXEDSZ); - HEADER *header; + struct dns_header *header; struct server *last_server; while (1) @@ -819,16 +818,16 @@ unsigned char *tcp_request(int confd, time_t now, !read_write(confd, packet, size, 1)) return packet; - if (size < (int)sizeof(HEADER)) + if (size < (int)sizeof(struct dns_header)) continue; - header = (HEADER *)packet; + header = (struct dns_header *)packet; /* save state of "cd" flag in query */ - checking_disabled = header->cd; + checking_disabled = header->hb4 & HB4_CD; /* RFC 4035: sect 4.6 para 2 */ - header->ad = 0; + header->hb4 &= ~HB4_AD; if ((gotname = extract_request(header, (unsigned int)size, daemon->namebuff, &qtype))) { @@ -16,6 +16,10 @@ #include "dnsmasq.h" +#ifdef __ANDROID__ +# include <android/log.h> +#endif + /* Implement logging to /dev/log asynchronously. If syslogd is making DNS lookups through dnsmasq, and dnsmasq blocks awaiting syslogd, then the two daemons can deadlock. We get around this @@ -117,7 +121,7 @@ int log_reopen(char *log_file) log_fd = open(log_file, O_WRONLY|O_CREAT|O_APPEND, S_IRUSR|S_IWUSR|S_IRGRP); else { -#ifdef HAVE_SOLARIS_NETWORK +#if defined(HAVE_SOLARIS_NETWORK) || defined(__ANDROID__) /* Solaris logging is "different", /dev/log is not unix-domain socket. Just leave log_fd == -1 and use the vsyslog call for everything.... */ # define _PATH_LOG "" /* dummy */ @@ -289,8 +293,28 @@ void my_syslog(int priority, const char *format, ...) if (log_fd == -1) { - /* fall-back to syslog if we die during startup or fail during running. */ +#ifdef __ANDROID__ + /* do android-specific logging. + log_fd is always -1 on Android except when logging to a file. */ + int alog_lvl; + + if (priority <= LOG_ERR) + alog_lvl = ANDROID_LOG_ERROR; + else if (priority == LOG_WARNING) + alog_lvl = ANDROID_LOG_WARN; + else if (priority <= LOG_INFO) + alog_lvl = ANDROID_LOG_INFO; + else + alog_lvl = ANDROID_LOG_DEBUG; + + va_start(ap, format); + __android_log_vprint(alog_lvl, "dnsmasq", format, ap); + va_end(ap); +#else + /* fall-back to syslog if we die during startup or + fail during running (always on Solaris). */ static int isopen = 0; + if (!isopen) { openlog("dnsmasq", LOG_PID, log_fac); @@ -299,6 +323,8 @@ void my_syslog(int priority, const char *format, ...) va_start(ap, format); vsyslog(priority, format, ap); va_end(ap); +#endif + return; } diff --git a/src/option.c b/src/option.c index 214fd91..4cee0a2 100644 --- a/src/option.c +++ b/src/option.c @@ -906,7 +906,8 @@ static char *parse_dhcp_opt(char *arg, int flags) new->val = op = opt_malloc((5 * addrs) + 1); new->flags |= DHOPT_ADDR; - if (!(new->flags & (DHOPT_ENCAPSULATE | DHOPT_VENDOR | DHOPT_RFC3925)) && new->opt == 120) + if (!(new->flags & (DHOPT_ENCAPSULATE | DHOPT_VENDOR | DHOPT_RFC3925)) && + new->opt == OPTION_SIP_SERVER) { *(op++) = 1; /* RFC 3361 "enc byte" */ new->flags &= ~DHOPT_ADDR; @@ -943,13 +944,14 @@ static char *parse_dhcp_opt(char *arg, int flags) else if (is_string) { /* text arg */ - if ((new->opt == 119 || new->opt == 120) && !(new->flags & (DHOPT_ENCAPSULATE | DHOPT_VENDOR | DHOPT_RFC3925))) + if ((new->opt == OPTION_DOMAIN_SEARCH || new->opt == OPTION_SIP_SERVER) && + !(new->flags & (DHOPT_ENCAPSULATE | DHOPT_VENDOR | DHOPT_RFC3925))) { /* dns search, RFC 3397, or SIP, RFC 3361 */ unsigned char *q, *r, *tail; unsigned char *p, *m = NULL, *newp; size_t newlen, len = 0; - int header_size = (new->opt == 119) ? 0 : 1; + int header_size = (new->opt == OPTION_DOMAIN_SEARCH) ? 0 : 1; arg = comma; comma = split(arg); @@ -1011,7 +1013,7 @@ static char *parse_dhcp_opt(char *arg, int flags) } /* RFC 3361, enc byte is zero for names */ - if (new->opt == 120) + if (new->opt == OPTION_SIP_SERVER) m[0] = 0; new->len = (int) len + header_size; new->val = m; @@ -1201,6 +1203,9 @@ static char *one_opt(int option, char *arg, char *gen_prob, int command_line) daemon->log_file = opt_string_alloc(arg); else { +#ifdef __ANDROID__ + problem = _("setting log facility is not possible under Android"); +#else for (i = 0; facilitynames[i].c_name; i++) if (hostname_isequal((char *)facilitynames[i].c_name, arg)) break; @@ -1208,7 +1213,8 @@ static char *one_opt(int option, char *arg, char *gen_prob, int command_line) if (facilitynames[i].c_name) daemon->log_fac = facilitynames[i].c_val; else - problem = "bad log facility"; + problem = _("bad log facility"); +#endif } break; @@ -2080,7 +2086,7 @@ static char *one_opt(int option, char *arg, char *gen_prob, int command_line) } for (cp = a[j]; *cp; cp++) - if (!isdigit((int)*cp) && *cp != ' ') + if (!isdigit((unsigned char)*cp) && *cp != ' ') break; if (*cp) @@ -2398,14 +2404,14 @@ static char *one_opt(int option, char *arg, char *gen_prob, int command_line) option = '?'; else { - char *p; + unsigned char *p; int dig = 0; struct dhcp_vendor *new = opt_malloc(sizeof(struct dhcp_vendor)); new->netid.net = opt_string_alloc(set_prefix(arg)); /* check for hex string - must digits may include : must not have nothing else, only allowed for agent-options. */ - for (p = comma; *p; p++) - if (isxdigit((int)*p)) + for (p = (unsigned char *)comma; *p; p++) + if (isxdigit(*p)) dig = 1; else if (*p != ':') break; @@ -3225,8 +3231,13 @@ void read_opts(int argc, char **argv, char *compile_opts) if (option == -1) { - if (optind < argc) - die(_("junk found in command line"), NULL, EC_BADCONF); + for (; optind < argc; optind++) + { + unsigned char *c = (unsigned char *)argv[optind]; + for (; *c != 0; c++) + if (!isspace(*c)) + die(_("junk found in command line"), NULL, EC_BADCONF); + } break; } diff --git a/src/rfc1035.c b/src/rfc1035.c index 93f855c..889c1f0 100644 --- a/src/rfc1035.c +++ b/src/rfc1035.c @@ -16,7 +16,7 @@ #include "dnsmasq.h" -static int add_resource_record(HEADER *header, char *limit, int *truncp, +static int add_resource_record(struct dns_header *header, char *limit, int *truncp, unsigned int nameoffset, unsigned char **pp, unsigned long ttl, unsigned int *offset, unsigned short type, unsigned short class, char *format, ...); @@ -27,7 +27,7 @@ static int add_resource_record(HEADER *header, char *limit, int *truncp, #define ADD_RDLEN(header, pp, plen, len) \ (!CHECK_LEN(header, pp, plen, len) ? 0 : (long)((pp) += (len)), 1) -static int extract_name(HEADER *header, size_t plen, unsigned char **pp, +static int extract_name(struct dns_header *header, size_t plen, unsigned char **pp, char *name, int isExtract, int extrabytes) { unsigned char *cp = (unsigned char *)name, *p = *pp, *p1 = NULL; @@ -217,7 +217,7 @@ static int in_arpa_name_2_addr(char *namein, struct all_addr *addrp) as CNAME targets according to RFC 2317 */ char *cp; for (cp = cp1; *cp; cp++) - if (!isdigit((int)*cp)) + if (!isdigit((unsigned char)*cp)) return 0; addr[3] = addr[2]; @@ -244,7 +244,7 @@ static int in_arpa_name_2_addr(char *namein, struct all_addr *addrp) if (*name == '\\' && *(name+1) == '[' && (*(name+2) == 'x' || *(name+2) == 'X')) { - for (j = 0, cp1 = name+3; *cp1 && isxdigit((int) *cp1) && j < 32; cp1++, j++) + for (j = 0, cp1 = name+3; *cp1 && isxdigit((unsigned char) *cp1) && j < 32; cp1++, j++) { char xdig[2]; xdig[0] = *cp1; @@ -262,7 +262,7 @@ static int in_arpa_name_2_addr(char *namein, struct all_addr *addrp) { for (cp1 = name; cp1 != penchunk; cp1 += strlen(cp1)+1) { - if (*(cp1+1) || !isxdigit((int)*cp1)) + if (*(cp1+1) || !isxdigit((unsigned char)*cp1)) return 0; for (j = sizeof(struct all_addr)-1; j>0; j--) @@ -278,7 +278,7 @@ static int in_arpa_name_2_addr(char *namein, struct all_addr *addrp) return 0; } -static unsigned char *skip_name(unsigned char *ansp, HEADER *header, size_t plen, int extrabytes) +static unsigned char *skip_name(unsigned char *ansp, struct dns_header *header, size_t plen, int extrabytes) { while(1) { @@ -333,7 +333,7 @@ static unsigned char *skip_name(unsigned char *ansp, HEADER *header, size_t plen return ansp; } -static unsigned char *skip_questions(HEADER *header, size_t plen) +static unsigned char *skip_questions(struct dns_header *header, size_t plen) { int q; unsigned char *ansp = (unsigned char *)(header+1); @@ -348,7 +348,7 @@ static unsigned char *skip_questions(HEADER *header, size_t plen) return ansp; } -static unsigned char *skip_section(unsigned char *ansp, int count, HEADER *header, size_t plen) +static unsigned char *skip_section(unsigned char *ansp, int count, struct dns_header *header, size_t plen) { int i, rdlen; @@ -371,7 +371,7 @@ static unsigned char *skip_section(unsigned char *ansp, int count, HEADER *heade than CRC the raw bytes, since replies might be compressed differently. We ignore case in the names for the same reason. Return all-ones if there is not question section. */ -unsigned int questions_crc(HEADER *header, size_t plen, char *name) +unsigned int questions_crc(struct dns_header *header, size_t plen, char *name) { int q; unsigned int crc = 0xffffffff; @@ -413,7 +413,7 @@ unsigned int questions_crc(HEADER *header, size_t plen, char *name) } -size_t resize_packet(HEADER *header, size_t plen, unsigned char *pheader, size_t hlen) +size_t resize_packet(struct dns_header *header, size_t plen, unsigned char *pheader, size_t hlen) { unsigned char *ansp = skip_questions(header, plen); @@ -437,7 +437,7 @@ size_t resize_packet(HEADER *header, size_t plen, unsigned char *pheader, size_t return ansp - (unsigned char *)header; } -unsigned char *find_pseudoheader(HEADER *header, size_t plen, size_t *len, unsigned char **p, int *is_sign) +unsigned char *find_pseudoheader(struct dns_header *header, size_t plen, size_t *len, unsigned char **p, int *is_sign) { /* See if packet has an RFC2671 pseudoheader, and if so return a pointer to it. also return length of pseudoheader in *len and pointer to the UDP size in *p @@ -453,7 +453,7 @@ unsigned char *find_pseudoheader(HEADER *header, size_t plen, size_t *len, unsi { *is_sign = 0; - if (header->opcode == QUERY) + if (OPCODE(header) == QUERY) { for (i = ntohs(header->qdcount); i != 0; i--) { @@ -513,7 +513,7 @@ unsigned char *find_pseudoheader(HEADER *header, size_t plen, size_t *len, unsi struct macparm { unsigned char *limit; - HEADER *header; + struct dns_header *header; size_t plen; union mysockaddr *l3; }; @@ -523,7 +523,7 @@ static int filter_mac(int family, char *addrp, char *mac, size_t maclen, void *p struct macparm *parm = parmv; int match = 0; unsigned short rdlen; - HEADER *header = parm->header; + struct dns_header *header = parm->header; unsigned char *lenp, *datap, *p; if (family == parm->l3->sa.sa_family) @@ -605,7 +605,7 @@ static int filter_mac(int family, char *addrp, char *mac, size_t maclen, void *p } -size_t add_mac(HEADER *header, size_t plen, char *limit, union mysockaddr *l3) +size_t add_mac(struct dns_header *header, size_t plen, char *limit, union mysockaddr *l3) { struct macparm parm; @@ -639,7 +639,7 @@ static int private_net(struct in_addr addr, int ban_localhost) ((ip_addr & 0xFFFF0000) == 0xA9FE0000) /* 169.254.0.0/16 (zeroconf) */ ; } -static unsigned char *do_doctor(unsigned char *p, int count, HEADER *header, size_t qlen, char *name) +static unsigned char *do_doctor(unsigned char *p, int count, struct dns_header *header, size_t qlen, char *name) { int i, qtype, qclass, rdlen; unsigned long ttl; @@ -684,7 +684,7 @@ static unsigned char *do_doctor(unsigned char *p, int count, HEADER *header, siz addr.s_addr &= ~doctor->mask.s_addr; addr.s_addr |= (doctor->out.s_addr & doctor->mask.s_addr); /* Since we munged the data, the server it came from is no longer authoritative */ - header->aa = 0; + header->hb3 &= ~HB3_AA; memcpy(p, &addr, INADDRSZ); break; } @@ -721,7 +721,7 @@ static unsigned char *do_doctor(unsigned char *p, int count, HEADER *header, siz return p; } -static int find_soa(HEADER *header, size_t qlen, char *name) +static int find_soa(struct dns_header *header, size_t qlen, char *name) { unsigned char *p; int qtype, qclass, rdlen; @@ -779,7 +779,7 @@ static int find_soa(HEADER *header, size_t qlen, char *name) either because of lack of memory, or lack of SOA records. These are treated by the cache code as expired and cleaned out that way. Return 1 if we reject an address because it look like part of dns-rebinding attack. */ -int extract_addresses(HEADER *header, size_t qlen, char *name, time_t now, +int extract_addresses(struct dns_header *header, size_t qlen, char *name, time_t now, int is_sign, int check_rebind, int checking_disabled) { unsigned char *p, *p1, *endrr, *namep; @@ -803,7 +803,7 @@ int extract_addresses(HEADER *header, size_t qlen, char *name, time_t now, { int found = 0, cname_count = 5; struct crec *cpp = NULL; - int flags = header->rcode == NXDOMAIN ? F_NXDOMAIN : 0; + int flags = RCODE(header) == NXDOMAIN ? F_NXDOMAIN : 0; unsigned long cttl = ULONG_MAX, attl; namep = p; @@ -844,7 +844,7 @@ int extract_addresses(HEADER *header, size_t qlen, char *name, time_t now, GETLONG(attl, p1); if ((daemon->max_ttl != 0) && (attl > daemon->max_ttl) && !is_sign) { - (p1) -= NS_INT32SZ; + (p1) -= 4; PUTLONG(daemon->max_ttl, p1); } GETSHORT(ardlen, p1); @@ -924,7 +924,7 @@ int extract_addresses(HEADER *header, size_t qlen, char *name, time_t now, GETLONG(attl, p1); if ((daemon->max_ttl != 0) && (attl > daemon->max_ttl) && !is_sign) { - (p1) -= NS_INT32SZ; + (p1) -= 4; PUTLONG(daemon->max_ttl, p1); } GETSHORT(ardlen, p1); @@ -1007,7 +1007,7 @@ int extract_addresses(HEADER *header, size_t qlen, char *name, time_t now, /* Don't put stuff from a truncated packet into the cache, also don't cache replies where DNSSEC validation was turned off, either the upstream server told us so, or the original query specified it. */ - if (!header->tc && !header->cd && !checking_disabled) + if (!(header->hb3 & HB3_TC) && !(header->hb4 & HB4_CD) && !checking_disabled) cache_end_insert(); return 0; @@ -1016,7 +1016,7 @@ int extract_addresses(HEADER *header, size_t qlen, char *name, time_t now, /* If the packet holds exactly one query return F_IPV4 or F_IPV6 and leave the name from the query in name */ -unsigned int extract_request(HEADER *header, size_t qlen, char *name, unsigned short *typep) +unsigned int extract_request(struct dns_header *header, size_t qlen, char *name, unsigned short *typep) { unsigned char *p = (unsigned char *)(header+1); int qtype, qclass; @@ -1024,7 +1024,7 @@ unsigned int extract_request(HEADER *header, size_t qlen, char *name, unsigned s if (typep) *typep = 0; - if (ntohs(header->qdcount) != 1 || header->opcode != QUERY) + if (ntohs(header->qdcount) != 1 || OPCODE(header) != QUERY) return 0; /* must be exactly one query. */ if (!extract_name(header, qlen, &p, name, 1, 4)) @@ -1052,42 +1052,43 @@ unsigned int extract_request(HEADER *header, size_t qlen, char *name, unsigned s } -size_t setup_reply(HEADER *header, size_t qlen, +size_t setup_reply(struct dns_header *header, size_t qlen, struct all_addr *addrp, unsigned int flags, unsigned long ttl) { unsigned char *p = skip_questions(header, qlen); - header->qr = 1; /* response */ - header->aa = 0; /* authoritive */ - header->ra = 1; /* recursion if available */ - header->tc = 0; /* not truncated */ + /* clear authoritative and truncated flags, set QR flag */ + header->hb3 = (header->hb3 & ~(HB3_AA | HB3_TC)) | HB3_QR; + /* set RA flag */ + header->hb4 |= HB4_RA; + header->nscount = htons(0); header->arcount = htons(0); header->ancount = htons(0); /* no answers unless changed below */ if (flags == F_NEG) - header->rcode = SERVFAIL; /* couldn't get memory */ + SET_RCODE(header, SERVFAIL); /* couldn't get memory */ else if (flags == F_NOERR) - header->rcode = NOERROR; /* empty domain */ + SET_RCODE(header, NOERROR); /* empty domain */ else if (flags == F_NXDOMAIN) - header->rcode = NXDOMAIN; + SET_RCODE(header, NXDOMAIN); else if (p && flags == F_IPV4) { /* we know the address */ - header->rcode = NOERROR; + SET_RCODE(header, NOERROR); header->ancount = htons(1); - header->aa = 1; - add_resource_record(header, NULL, NULL, sizeof(HEADER), &p, ttl, NULL, T_A, C_IN, "4", addrp); + header->hb3 |= HB3_AA; + add_resource_record(header, NULL, NULL, sizeof(struct dns_header), &p, ttl, NULL, T_A, C_IN, "4", addrp); } #ifdef HAVE_IPV6 else if (p && flags == F_IPV6) { - header->rcode = NOERROR; + SET_RCODE(header, NOERROR); header->ancount = htons(1); - header->aa = 1; - add_resource_record(header, NULL, NULL, sizeof(HEADER), &p, ttl, NULL, T_AAAA, C_IN, "6", addrp); + header->hb3 |= HB3_AA; + add_resource_record(header, NULL, NULL, sizeof(struct dns_header), &p, ttl, NULL, T_AAAA, C_IN, "6", addrp); } #endif else /* nowhere to forward to */ - header->rcode = REFUSED; + SET_RCODE(header, REFUSED); return p - (unsigned char *)header; } @@ -1127,7 +1128,7 @@ int check_for_local_domain(char *name, time_t now) /* Is the packet a reply with the answer address equal to addr? If so mung is into an NXDOMAIN reply and also put that information in the cache. */ -int check_for_bogus_wildcard(HEADER *header, size_t qlen, char *name, +int check_for_bogus_wildcard(struct dns_header *header, size_t qlen, char *name, struct bogus_addr *baddr, time_t now) { unsigned char *p; @@ -1174,7 +1175,7 @@ int check_for_bogus_wildcard(HEADER *header, size_t qlen, char *name, return 0; } -static int add_resource_record(HEADER *header, char *limit, int *truncp, unsigned int nameoffset, unsigned char **pp, +static int add_resource_record(struct dns_header *header, char *limit, int *truncp, unsigned int nameoffset, unsigned char **pp, unsigned long ttl, unsigned int *offset, unsigned short type, unsigned short class, char *format, ...) { va_list ap; @@ -1284,7 +1285,7 @@ static unsigned long crec_ttl(struct crec *crecp, time_t now) /* return zero if we can't answer from cache, or packet size if we can */ -size_t answer_request(HEADER *header, char *limit, size_t qlen, +size_t answer_request(struct dns_header *header, char *limit, size_t qlen, struct in_addr local_addr, struct in_addr local_netmask, time_t now) { char *name = daemon->namebuff; @@ -1327,7 +1328,7 @@ size_t answer_request(HEADER *header, char *limit, size_t qlen, dryrun = 1; } - if (ntohs(header->qdcount) == 0 || header->opcode != QUERY ) + if (ntohs(header->qdcount) == 0 || OPCODE(header) != QUERY ) return 0; for (rec = daemon->mxnames; rec; rec = rec->next) @@ -1496,7 +1497,7 @@ size_t answer_request(HEADER *header, char *limit, size_t qlen, for (cp = name, i = 0, a = 0; *cp; i++) { - if (!isdigit(*cp) || (x = strtol(cp, &cp, 10)) > 255) + if (!isdigit((unsigned char)*cp) || (x = strtol(cp, &cp, 10)) > 255) { i = 5; break; @@ -1785,14 +1786,23 @@ size_t answer_request(HEADER *header, char *limit, size_t qlen, } /* done all questions, set up header and return length of result */ - header->qr = 1; /* response */ - header->aa = auth; /* authoritive - only hosts and DHCP derived names. */ - header->ra = 1; /* recursion if available */ - header->tc = trunc; /* truncation */ + /* clear authoritative and truncated flags, set QR flag */ + header->hb3 = (header->hb3 & ~(HB3_AA | HB3_TC)) | HB3_QR; + /* set RA flag */ + header->hb4 |= HB4_RA; + + /* authoritive - only hosts and DHCP derived names. */ + if (auth) + header->hb3 |= HB3_AA; + + /* truncation */ + if (trunc) + header->hb3 |= HB3_TC; + if (anscount == 0 && nxdomain) - header->rcode = NXDOMAIN; + SET_RCODE(header, NXDOMAIN); else - header->rcode = NOERROR; /* no error */ + SET_RCODE(header, NOERROR); /* no error */ header->ancount = htons(anscount); header->nscount = htons(0); header->arcount = htons(addncount); diff --git a/src/rfc2131.c b/src/rfc2131.c index 67e6dd6..ed9af7f 100644 --- a/src/rfc2131.c +++ b/src/rfc2131.c @@ -18,69 +18,6 @@ #ifdef HAVE_DHCP -#define BOOTREQUEST 1 -#define BOOTREPLY 2 -#define DHCP_COOKIE 0x63825363 - -/* The Linux in-kernel DHCP client silently ignores any packet - smaller than this. Sigh........... */ -#define MIN_PACKETSZ 300 - -#define OPTION_PAD 0 -#define OPTION_NETMASK 1 -#define OPTION_ROUTER 3 -#define OPTION_DNSSERVER 6 -#define OPTION_HOSTNAME 12 -#define OPTION_DOMAINNAME 15 -#define OPTION_BROADCAST 28 -#define OPTION_VENDOR_CLASS_OPT 43 -#define OPTION_REQUESTED_IP 50 -#define OPTION_LEASE_TIME 51 -#define OPTION_OVERLOAD 52 -#define OPTION_MESSAGE_TYPE 53 -#define OPTION_SERVER_IDENTIFIER 54 -#define OPTION_REQUESTED_OPTIONS 55 -#define OPTION_MESSAGE 56 -#define OPTION_MAXMESSAGE 57 -#define OPTION_T1 58 -#define OPTION_T2 59 -#define OPTION_VENDOR_ID 60 -#define OPTION_CLIENT_ID 61 -#define OPTION_SNAME 66 -#define OPTION_FILENAME 67 -#define OPTION_USER_CLASS 77 -#define OPTION_CLIENT_FQDN 81 -#define OPTION_AGENT_ID 82 -#define OPTION_ARCH 93 -#define OPTION_PXE_UUID 97 -#define OPTION_SUBNET_SELECT 118 -#define OPTION_VENDOR_IDENT 124 -#define OPTION_VENDOR_IDENT_OPT 125 -#define OPTION_END 255 - -#define SUBOPT_CIRCUIT_ID 1 -#define SUBOPT_REMOTE_ID 2 -#define SUBOPT_SUBNET_SELECT 5 /* RFC 3527 */ -#define SUBOPT_SUBSCR_ID 6 /* RFC 3393 */ -#define SUBOPT_SERVER_OR 11 /* RFC 5107 */ - -#define SUBOPT_PXE_BOOT_ITEM 71 /* PXE standard */ -#define SUBOPT_PXE_DISCOVERY 6 -#define SUBOPT_PXE_SERVERS 8 -#define SUBOPT_PXE_MENU 9 -#define SUBOPT_PXE_MENU_PROMPT 10 - -#define DHCPDISCOVER 1 -#define DHCPOFFER 2 -#define DHCPREQUEST 3 -#define DHCPDECLINE 4 -#define DHCPACK 5 -#define DHCPNAK 6 -#define DHCPRELEASE 7 -#define DHCPINFORM 8 - -#define BRDBAND_FORUM_IANA 3561 /* Broadband forum IANA enterprise */ - #define have_config(config, mask) ((config) && ((config)->flags & (mask))) #define option_len(opt) ((int)(((unsigned char *)(opt))[1])) #define option_ptr(opt, i) ((void *)&(((unsigned char *)(opt))[2u+(unsigned int)(i)])) @@ -89,6 +26,7 @@ static void add_extradata_data(struct dhcp_lease *lease, unsigned char *data, size_t len, int delim); static void add_extradata_opt(struct dhcp_lease *lease, unsigned char *opt); #endif + static int match_bytes(struct dhcp_opt *o, unsigned char *p, int len); static int sanitise(unsigned char *opt, char *buf); static struct in_addr server_id(struct dhcp_context *context, struct in_addr override, struct in_addr fallback); @@ -512,9 +512,9 @@ void check_tftp_listeners(fd_set *rset, time_t now) err = ""; else { - char *q, *r; - for (q = r = err; *r; r++) - if (isprint((int)*r)) + unsigned char *q, *r; + for (q = r = (unsigned char *)err; *r; r++) + if (isprint(*r)) *(q++) = *r; *q = 0; } @@ -24,7 +24,7 @@ #include <sys/times.h> #endif -#ifdef LOCALEDIR +#if defined(LOCALEDIR) || defined(HAVE_IDN) #include <idna.h> #endif @@ -43,11 +43,9 @@ unsigned short rand16(void) /* SURF random number generator */ -typedef unsigned int uint32; - -static uint32 seed[32]; -static uint32 in[12]; -static uint32 out[8]; +static u32 seed[32]; +static u32 in[12]; +static u32 out[8]; void rand_init() { @@ -66,7 +64,7 @@ void rand_init() static void surf(void) { - uint32 t[12]; uint32 x; uint32 sum = 0; + u32 t[12]; u32 x; u32 sum = 0; int r; int i; int loop; for (i = 0;i < 12;++i) t[i] = in[i] ^ seed[12 + i]; @@ -120,11 +118,11 @@ static int check_name(char *in) dotgap = 0; else if (++dotgap > MAXLABEL) return 0; - else if (isascii(c) && iscntrl(c)) + else if (isascii((unsigned char)c) && iscntrl((unsigned char)c)) /* iscntrl only gives expected results for ascii */ return 0; -#ifndef LOCALEDIR - else if (!isascii(c)) +#if !defined(LOCALEDIR) && !defined(HAVE_IDN) + else if (!isascii((unsigned char)c)) return 0; #endif else if (c != ' ') @@ -170,7 +168,7 @@ int legal_hostname(char *name) char *canonicalise(char *in, int *nomem) { char *ret = NULL; -#ifdef LOCALEDIR +#if defined(LOCALEDIR) || defined(HAVE_IDN) int rc; #endif @@ -180,7 +178,7 @@ char *canonicalise(char *in, int *nomem) if (!check_name(in)) return NULL; -#ifdef LOCALEDIR +#if defined(LOCALEDIR) || defined(HAVE_IDN) if ((rc = idna_to_ascii_lz(in, &ret, 0)) != IDNA_SUCCESS) { if (ret) @@ -379,7 +377,7 @@ int parse_hex(char *in, unsigned char *out, int maxlen, while (maxlen == -1 || i < maxlen) { for (r = in; *r != 0 && *r != ':' && *r != '-'; r++) - if (!isxdigit((int)*r)) + if (*r != '*' && !isxdigit((unsigned char)*r)) return -1; if (*r == 0) |