[pkg-dhcp-commits] [SCM] ISC DHCP packaging for Debian branch, master, updated. upstream/4.1.1-P1-106-ge2402da

Andrew Pollock apollock at debian.org
Fri Apr 29 04:51:08 UTC 2011


The following commit has been merged in the master branch:
commit e2402da26f79f8d3968af1ea6c70126f2c12cd3a
Author: Michael Gilbert <michael.s.gilbert at gmail.com>
Date:   Sat Apr 9 10:57:14 2011 -0400

    Imported Debian patch 4.1.1-P1-16.1

diff --git a/debian/changelog b/debian/changelog
index f46d0b0..7280db2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+isc-dhcp (4.1.1-P1-16.1) unstable; urgency=high
+
+  * Non-maintainer upload.
+  * Fix cve-2011-0997: remote code execution vulnerability in dhclient
+    (closes: #621099).
+  * Fix ftbfs with 'ld --no-as-needed' (closes: #602312).
+
+ -- Michael Gilbert <michael.s.gilbert at gmail.com>  Sat, 09 Apr 2011 10:57:14 -0400
+
 isc-dhcp (4.1.1-P1-16) unstable; urgency=high
 
   * Patch by Raphael Geissert from 4.1-ESV for CVE-2011-0413 (closes: #611217)
diff --git a/debian/patches/00list b/debian/patches/00list
index b0cf17c..33cbed6 100644
--- a/debian/patches/00list
+++ b/debian/patches/00list
@@ -13,6 +13,7 @@ no_loopback_checksum
 CVE-2010-3611
 # Ported from 4.1-ESV
 CVE-2011-0413
+CVE-2011-0997
 
 # must be applied before the LDAP stuff
 no-libcrypto
diff --git a/debian/patches/CVE-2010-3611.dpatch b/debian/patches/CVE-2010-3611.dpatch
old mode 100755
new mode 100644
diff --git a/debian/patches/CVE-2011-0413.dpatch b/debian/patches/CVE-2011-0413.dpatch
old mode 100755
new mode 100644
diff --git a/debian/patches/CVE-2011-0997.dpatch b/debian/patches/CVE-2011-0997.dpatch
new file mode 100644
index 0000000..6f8994b
--- /dev/null
+++ b/debian/patches/CVE-2011-0997.dpatch
@@ -0,0 +1,232 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## All lines beginning with `## DP:' are a description of the patch.
+## CVE-2011-0997.dpatch by Michael Gilbert <michael.s.gilbert at gmail.com>
+
+ at DPATCH@
+diff -pruN dhcp-4.1.1-P1.orig/client/dhclient.c dhcp-4.1.1-P1/client/dhclient.c
+--- dhcp-4.1.1-P1.orig/client/dhclient.c	2011-03-31 12:33:22.715696085 +0000
++++ dhcp-4.1.1-P1/client/dhclient.c	2011-03-31 12:36:42.451695492 +0000
+@@ -104,6 +104,11 @@ static void usage(void);
+ 
+ static isc_result_t write_duid(struct data_string *duid);
+ 
++static int check_domain_name(const char *ptr, size_t len, int dots);
++static int check_domain_name_list(const char *ptr, size_t len, int dots);
++static int check_option_values(struct universe *universe, unsigned int opt,
++			       const char *ptr, size_t len);
++
+ int
+ main(int argc, char **argv) {
+ 	int fd;
+@@ -3402,13 +3407,23 @@ void client_option_envadd (struct option
+ 		if (data.len) {
+ 			char name [256];
+ 			if (dhcp_option_ev_name (name, sizeof name,
+-						 oc -> option)) {
+-				client_envadd (es -> client, es -> prefix,
+-					       name, "%s",
+-					       (pretty_print_option
+-						(oc -> option,
+-						 data.data, data.len,
+-						 0, 0)));
++						 oc->option)) {
++				const char *value;
++				value = pretty_print_option(oc->option,
++							    data.data,
++							    data.len, 0, 0);
++				size_t length = strlen(value);
++
++				if (check_option_values(oc->option->universe,
++							oc->option->code,
++							value, length) == 0) {
++					client_envadd(es->client, es->prefix,
++						      name, "%s", value);
++				} else {
++					log_error("suspect value in %s "
++						  "option - discarded",
++						  name);
++				}
+ 				data_string_forget (&data, MDL);
+ 			}
+ 		}
+@@ -3486,12 +3501,32 @@ void script_write_params (client, prefix
+ 		data_string_forget (&data, MDL);
+ 	}
+ 
+-	if (lease -> filename)
+-		client_envadd (client,
+-			       prefix, "filename", "%s", lease -> filename);
+-	if (lease -> server_name)
+-		client_envadd (client, prefix, "server_name",
+-			       "%s", lease -> server_name);
++	if (lease->filename) {
++		if (check_option_values(NULL, DHO_ROOT_PATH,
++					lease->filename,
++					strlen(lease->filename)) == 0) {
++			client_envadd(client, prefix, "filename",
++				      "%s", lease->filename);
++		} else {
++			log_error("suspect value in %s "
++				  "option - discarded",
++				  "filename");
++		}
++	}
++
++	if (lease->server_name) {
++		if (check_option_values(NULL, DHO_HOST_NAME,
++					lease->server_name,
++					strlen(lease->server_name)) == 0 ) {
++			client_envadd (client, prefix, "server_name",
++				       "%s", lease->server_name);
++		} else {
++			log_error("suspect value in %s "
++				  "option - discarded",
++				  "server_name");
++		}
++	}
++				
+ 
+ 	for (i = 0; i < lease -> options -> universe_count; i++) {
+ 		option_space_foreach ((struct packet *)0, (struct lease *)0,
+@@ -4215,3 +4250,128 @@ dhcpv4_client_assignments(void)
+ 	} else
+ 		remote_port = htons (ntohs (local_port) - 1);   /* XXX */
+ }
++
++/*
++ * The following routines are used to check that certain
++ * strings are reasonable before we pass them to the scripts.
++ * This avoids some problems with scripts treating the strings
++ * as commands - see ticket 23722
++ * The domain checking code should be done as part of assembling
++ * the string but we are doing it here for now due to time
++ * constraints.
++ */
++
++static int check_domain_name(const char *ptr, size_t len, int dots)
++{
++	const char *p;
++
++	/* not empty or complete length not over 255 characters   */
++	if ((len == 0) || (len > 256))
++		return(-1);
++
++	/* consists of [[:alnum:]-]+ labels separated by [.]      */
++	/* a [_] is against RFC but seems to be "widely used"...  */
++	for (p=ptr; (*p != 0) && (len-- > 0); p++) {
++		if ((*p == '-') || (*p == '_')) {
++			/* not allowed at begin or end of a label */
++			if (((p - ptr) == 0) || (len == 0) || (p[1] == '.'))
++				return(-1);
++		} else if (*p == '.') {
++			/* each label has to be 1-63 characters;
++			   we allow [.] at the end ('foo.bar.')   */
++			size_t d = p - ptr;
++			if ((d <= 0) || (d >= 64))
++				return(-1);
++			ptr = p + 1; /* jump to the next label    */
++			if ((dots > 0) && (len > 0))
++				dots--;
++		} else if (isalnum((unsigned char)*p) == 0) {
++			/* also numbers at the begin are fine     */
++			return(-1);
++		}
++	}
++	return(dots ? -1 : 0);
++}
++
++static int check_domain_name_list(const char *ptr, size_t len, int dots)
++{
++	const char *p;
++	int ret = -1; /* at least one needed */
++
++	if ((ptr == NULL) || (len == 0))
++		return(-1);
++
++	for (p=ptr; (*p != 0) && (len > 0); p++, len--) {
++		if (*p != ' ')
++			continue;
++		if (p > ptr) {
++			if (check_domain_name(ptr, p - ptr, dots) != 0)
++				return(-1);
++			ret = 0;
++		}
++		ptr = p + 1;
++	}
++	if (p > ptr)
++		return(check_domain_name(ptr, p - ptr, dots));
++	else
++		return(ret);
++}
++
++static int check_option_values(struct universe *universe,
++			       unsigned int opt,
++			       const char *ptr,
++			       size_t len)
++{
++	if (ptr == NULL)
++		return(-1);
++
++	/* just reject options we want to protect, will be escaped anyway */
++	if ((universe == NULL) || (universe == &dhcp_universe)) {
++		switch(opt) {
++		      case DHO_HOST_NAME:
++		      case DHO_NIS_DOMAIN:
++		      case DHO_NETBIOS_SCOPE:
++			return check_domain_name(ptr, len, 0);
++			break;
++		      case DHO_DOMAIN_NAME: /* accept a list for compatibiliy */
++		      case DHO_DOMAIN_SEARCH:
++			return check_domain_name_list(ptr, len, 0);
++			break;
++		      case DHO_ROOT_PATH:
++			if (len == 0)
++				return(-1);
++			for (; (*ptr != 0) && (len-- > 0); ptr++) {
++				if(!(isalnum((unsigned char)*ptr) ||
++				     *ptr == '#'  || *ptr == '%' ||
++				     *ptr == '+'  || *ptr == '-' ||
++				     *ptr == '_'  || *ptr == ':' ||
++				     *ptr == '.'  || *ptr == ',' ||
++				     *ptr == '@'  || *ptr == '~' ||
++				     *ptr == '\\' || *ptr == '/' ||
++				     *ptr == '['  || *ptr == ']' ||
++				     *ptr == '='  || *ptr == ' '))
++					return(-1);
++			}
++			return(0);
++			break;
++		}
++	}
++
++#ifdef DHCPv6
++	if (universe == &dhcpv6_universe) {
++		switch(opt) {
++		      case D6O_SIP_SERVERS_DNS:
++		      case D6O_DOMAIN_SEARCH:
++		      case D6O_NIS_DOMAIN_NAME:
++		      case D6O_NISP_DOMAIN_NAME:
++			return check_domain_name_list(ptr, len, 0);
++			break;
++		}
++	}
++#endif
++
++	return(0);
++}
++ 
++
++
+diff -pruN dhcp-4.1.1-P1.orig/common/options.c dhcp-4.1.1-P1/common/options.c
+--- dhcp-4.1.1-P1.orig/common/options.c	2009-07-23 19:02:09.000000000 +0000
++++ dhcp-4.1.1-P1/common/options.c	2011-03-31 12:36:42.453695760 +0000
+@@ -3907,7 +3907,8 @@ pretty_escape(char **dst, char *dend, co
+ 				count += 4;
+ 			}
+ 		} else if (**src == '"' || **src == '\'' || **src == '$' ||
+-			   **src == '`' || **src == '\\') {
++			   **src == '`' || **src == '\\' || **src == '|' ||
++			   **src == '&') {
+ 			if (*dst + 2 > dend)
+ 				return -1;
+ 
diff --git a/debian/patches/dhclient-script-exit-status.dpatch b/debian/patches/dhclient-script-exit-status.dpatch
old mode 100755
new mode 100644
diff --git a/debian/patches/dhcp-4.1.0-ldap-code.dpatch b/debian/patches/dhcp-4.1.0-ldap-code.dpatch
old mode 100755
new mode 100644
index b230caf..8a283da
--- a/debian/patches/dhcp-4.1.0-ldap-code.dpatch
+++ b/debian/patches/dhcp-4.1.0-ldap-code.dpatch
@@ -2754,7 +2754,7 @@ diff -urNad isc-dhcp.orig/server/Makefile.am isc-dhcp/server/Makefile.am
 diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' isc-dhcp-4.1.1-P1~/configure.ac isc-dhcp-4.1.1-P1/configure.ac
 --- isc-dhcp-4.1.1-P1~/configure.ac	2010-10-20 22:14:33.694570303 +0100
 +++ isc-dhcp-4.1.1-P1/configure.ac	2010-10-20 22:17:15.682086336 +0100
-@@ -419,6 +419,74 @@
+@@ -419,6 +419,75 @@
  # Look for optional headers.
  AC_CHECK_HEADERS(sys/socket.h net/if_dl.h net/if6.h regex.h)
  
@@ -2775,6 +2775,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
 +	AC_SEARCH_LIBS([ber_init], [ldap], [
 +		LDAP_LIBS="-lldap"
 +	],[
++               AS_UNSET([ac_cv_search_ber_init])
 +		AC_SEARCH_LIBS([ber_init], [lber], [
 +			LDAP_LIBS="-lldap -llber"
 +		], [
diff --git a/debian/patches/dhcp-4.1.0-ldap-docs.dpatch b/debian/patches/dhcp-4.1.0-ldap-docs.dpatch
old mode 100755
new mode 100644
diff --git a/debian/patches/fix_exit_hook_doc_manpage.dpatch b/debian/patches/fix_exit_hook_doc_manpage.dpatch
old mode 100755
new mode 100644
diff --git a/debian/patches/fix_groff_warnings.dpatch b/debian/patches/fix_groff_warnings.dpatch
old mode 100755
new mode 100644
diff --git a/debian/patches/no-libcrypto.dpatch b/debian/patches/no-libcrypto.dpatch
old mode 100755
new mode 100644
diff --git a/debian/patches/no_loopback_checksum.dpatch b/debian/patches/no_loopback_checksum.dpatch
old mode 100755
new mode 100644
diff --git a/debian/po/cs.po b/debian/po/cs.po
index 72e3e06..53e24e8 100644
--- a/debian/po/cs.po
+++ b/debian/po/cs.po
@@ -19,10 +19,10 @@ msgstr ""
 "PO-Revision-Date: 2010-08-16 15:31+0200\n"
 "Last-Translator: Michal Simunek <michal.simunek at gmail.com>\n"
 "Language-Team: Czech <debian-l10n-czech at lists.debian.org>\n"
+"Language: cs\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: cs\n"
 
 #. Type: string
 #. Description
diff --git a/debian/po/da.po b/debian/po/da.po
index 7f5be4a..4ff4af8 100644
--- a/debian/po/da.po
+++ b/debian/po/da.po
@@ -11,10 +11,10 @@ msgstr ""
 "PO-Revision-Date: 2010-10-19 19:21+0100\n"
 "Last-Translator: Joe Hansen <joedalton2 at yahoo.dk>\n"
 "Language-Team: Danish <debian-l10n-danish at lists.debian.org>\n"
+"Language: da\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: da\n"
 
 #. Type: string
 #. Description
diff --git a/debian/po/de.po b/debian/po/de.po
index 9b191a8..8453260 100644
--- a/debian/po/de.po
+++ b/debian/po/de.po
@@ -19,10 +19,10 @@ msgstr ""
 "PO-Revision-Date: 2010-07-18 21:01+0200\n"
 "Last-Translator: Erik Schanze <eriks at debian.org>\n"
 "Language-Team: German <debian-l10n-german at lists.debian.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: de\n"
 "X-Generator: KBabel 1.11.4\n"
 
 #. Type: string
diff --git a/debian/po/es.po b/debian/po/es.po
index 1139a60..2da71a7 100644
--- a/debian/po/es.po
+++ b/debian/po/es.po
@@ -35,10 +35,10 @@ msgstr ""
 "PO-Revision-Date: 2010-11-11 02:56+0100\n"
 "Last-Translator: Javier Fernández-Sanguino <jfs at debian.org>\n"
 "Language-Team: Debian l10n spanish <debian-l10n-spanish at lists.debian.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
 "X-POFile-SpellExtra: dhcpd personalizarse replace conf interface dhcp\n"
 
 #. Type: string
@@ -134,7 +134,12 @@ msgid ""
 "After the DHCP server is installed, you will need to manually configure it "
 "by editing the file /etc/dhcp/dhcpd.conf. Please note that the dhcpd.conf "
 "supplied is just a sample, and must be adapted to the network environment."
-msgstr "Después de instalar el servidor de DHCP necesitará configurarlo manualmente editando el fichero «/etc/dhcp/dhcpd.conf». Tenga en cuenta que se proporciona un fichero dhcpd.conf de ejemplo, pero que la configuración que lleva es sólo un ejemplo que debe personalizar para que se adapte a su propio entorno de red."
+msgstr ""
+"Después de instalar el servidor de DHCP necesitará configurarlo manualmente "
+"editando el fichero «/etc/dhcp/dhcpd.conf». Tenga en cuenta que se "
+"proporciona un fichero dhcpd.conf de ejemplo, pero que la configuración que "
+"lleva es sólo un ejemplo que debe personalizar para que se adapte a su "
+"propio entorno de red."
 
 #. Type: note
 #. Description
@@ -259,9 +264,9 @@ msgstr ""
 #~ msgstr ""
 #~ "Como siempre, no se ha reinstalado dhclient al hacer la actualización, "
 #~ "por lo que aún está ejecutando la versión anterior de este programa. "
-#~ "Puede reiniciarlo si ejecuta «ifdown» seguido de «ifup» para la/s interface/"
-#~ "s que tiene configuradas para que utilicen DHCP o bien explícitamente "
-#~ "matando y rearrancando dhclient."
+#~ "Puede reiniciarlo si ejecuta «ifdown» seguido de «ifup» para la/s "
+#~ "interface/s que tiene configuradas para que utilicen DHCP o bien "
+#~ "explícitamente matando y rearrancando dhclient."
 
 #~ msgid ""
 #~ "Naturally, you should exercise caution if you are managing a remote "
diff --git a/debian/po/eu.po b/debian/po/eu.po
index a70291d..48f11fc 100644
--- a/debian/po/eu.po
+++ b/debian/po/eu.po
@@ -12,10 +12,10 @@ msgstr ""
 "PO-Revision-Date: 2007-12-21 11:01+0100\n"
 "Last-Translator: Piarres Beobide <pi at beobide.net>\n"
 "Language-Team: Euskara <Librezale at librezale.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
 "X-Generator: KBabel 1.11.4\n"
 
 #. Type: string
diff --git a/debian/po/fi.po b/debian/po/fi.po
index aef818e..aaaf1a3 100644
--- a/debian/po/fi.po
+++ b/debian/po/fi.po
@@ -6,10 +6,10 @@ msgstr ""
 "PO-Revision-Date: 2007-10-20 22:30+0200\n"
 "Last-Translator: Esko Arajärvi <edu at iki.fi>\n"
 "Language-Team: Finnish <debian-l10n-finnish at lists.debian.org>\n"
+"Language: fi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: fi\n"
 "X-Poedit-Language: Finnish\n"
 "X-Poedit-Country: FINLAND\n"
 
diff --git a/debian/po/fr.po b/debian/po/fr.po
index 7348b0e..310cc0a 100644
--- a/debian/po/fr.po
+++ b/debian/po/fr.po
@@ -11,10 +11,10 @@ msgstr ""
 "PO-Revision-Date: 2007-06-06 20:37+0200\n"
 "Last-Translator: Christian Perrier <bubulle at debian.org>\n"
 "Language-Team: French <debian-l10n-french at lists.debian.org>\n"
+"Language: fr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: fr\n"
 "X-Generator: KBabel 1.11.4\n"
 "X-Poedit-Country: SWITZERLAND\n"
 "X-Poedit-SourceCharset: utf-8\n"
diff --git a/debian/po/gl.po b/debian/po/gl.po
index 7e27278..85af6cf 100644
--- a/debian/po/gl.po
+++ b/debian/po/gl.po
@@ -12,10 +12,10 @@ msgstr ""
 "PO-Revision-Date: 2010-08-13 02:14+0200\n"
 "Last-Translator: Jorge Barreiro <yortx.barry at gmail.com>\n"
 "Language-Team: Galician <proxecto at trasno.net>\n"
+"Language: gl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: gl\n"
 "X-Generator: KBabel 1.11.4\n"
 
 #. Type: string
diff --git a/debian/po/it.po b/debian/po/it.po
index 4e8bfbe..2228a74 100644
--- a/debian/po/it.po
+++ b/debian/po/it.po
@@ -10,10 +10,10 @@ msgstr ""
 "PO-Revision-Date: 2007-06-03 10:46+0200\n"
 "Last-Translator: Luca Monducci <luca.mo at tiscali.it>\n"
 "Language-Team: Italian <debian-l10n-italian at lists.debian.org>\n"
+"Language: it\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: it\n"
 
 #. Type: string
 #. Description
diff --git a/debian/po/ja.po b/debian/po/ja.po
index 0145797..2421c40 100644
--- a/debian/po/ja.po
+++ b/debian/po/ja.po
@@ -20,10 +20,10 @@ msgstr ""
 "PO-Revision-Date: 2010-07-25 14:19+0900\n"
 "Last-Translator: Hideki Yamane <henrich at debian.org>\n"
 "Language-Team: Japanese <debian-japanese at lists.debian.org>\n"
+"Language: ja\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: ja\n"
 
 #. Type: string
 #. Description
diff --git a/debian/po/ko.po b/debian/po/ko.po
index 61e2867..b76b576 100644
--- a/debian/po/ko.po
+++ b/debian/po/ko.po
@@ -12,10 +12,10 @@ msgstr ""
 "PO-Revision-Date: 2007-06-19 23:09-0500\n"
 "Last-Translator: Sunjae Park <darehanl at gmail.com>\n"
 "Language-Team: Korean <debian-l10n-korean at lists.debian.org>\n"
+"Language: ko\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: ko\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 
 #. Type: string
diff --git a/debian/po/nl.po b/debian/po/nl.po
index d605db7..ff9884a 100644
--- a/debian/po/nl.po
+++ b/debian/po/nl.po
@@ -20,10 +20,10 @@ msgstr ""
 "PO-Revision-Date: 2007-06-01 13:56+0200\n"
 "Last-Translator: Frans Pop <elendil at planet.nl>\n"
 "Language-Team: Dutch <debian-l10n-dutch at lists.debian.org>\n"
+"Language: nl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: nl\n"
 "X-Generator: KBabel 1.11.4\n"
 
 #. Type: string
diff --git a/debian/po/pt.po b/debian/po/pt.po
index 8f9175f..55744e3 100644
--- a/debian/po/pt.po
+++ b/debian/po/pt.po
@@ -11,10 +11,10 @@ msgstr ""
 "PO-Revision-Date: 2010-09-12 22:43+0100\n"
 "Last-Translator: Pedro Ribeiro <p.m42.ribeiro at gmail.com>\n"
 "Language-Team: Portuguese <traduz at debianpt.org>\n"
+"Language: pt\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: pt\n"
 
 #. Type: string
 #. Description
diff --git a/debian/po/pt_BR.po b/debian/po/pt_BR.po
index 8719253..59bcff9 100644
--- a/debian/po/pt_BR.po
+++ b/debian/po/pt_BR.po
@@ -23,10 +23,10 @@ msgstr ""
 "Last-Translator: Felipe Augusto van de Wiel (faw) <faw at debian.org>\n"
 "Language-Team: Brazilian Portuguese <debian-l10n-portuguese at lists.debian."
 "org>\n"
+"Language: pt_BR\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: pt_BR\n"
 "pt_BR utf-8\n"
 
 #. Type: string
diff --git a/debian/po/ru.po b/debian/po/ru.po
index 5437ae0..ada3a7d 100644
--- a/debian/po/ru.po
+++ b/debian/po/ru.po
@@ -22,13 +22,13 @@ msgstr ""
 "PO-Revision-Date: 2010-08-01 17:03+0400\n"
 "Last-Translator: Yuri Kozlov <yuray at komyakino.ru>\n"
 "Language-Team: Russian <debian-l10n-russian at lists.debian.org>\n"
+"Language: ru\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: ru\n"
 "X-Generator: Lokalize 1.0\n"
-"Plural-Forms:  nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
-"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms:  nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
 #. Type: string
 #. Description
diff --git a/debian/po/sk.po b/debian/po/sk.po
index 79eb604..97c87f5 100644
--- a/debian/po/sk.po
+++ b/debian/po/sk.po
@@ -6,10 +6,10 @@ msgstr ""
 "PO-Revision-Date: 2007-08-17 23:36+0100\n"
 "Last-Translator: Ivan Masár <helix84 at centrum.sk>\n"
 "Language-Team: Slovak <sk-i18n at lists.linux.sk>\n"
+"Language: sk\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: sk\n"
 
 #. Type: string
 #. Description
diff --git a/debian/po/sv.po b/debian/po/sv.po
index a74080b..6fbd0dc 100644
--- a/debian/po/sv.po
+++ b/debian/po/sv.po
@@ -12,10 +12,10 @@ msgstr ""
 "PO-Revision-Date: 2010-08-07 04:56+0100\n"
 "Last-Translator: Martin Bagge / brother <brother at bsnet.se>\n"
 "Language-Team: Swedish <debian-l10n-swedish at lists.debian.org>\n"
+"Language: sv\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: sv\n"
 "X-Poedit-Language: Swedish\n"
 "X-Poedit-Country: SWEDEN\n"
 
diff --git a/debian/po/ta.po b/debian/po/ta.po
index 03f1762..1eed6fa 100644
--- a/debian/po/ta.po
+++ b/debian/po/ta.po
@@ -11,10 +11,10 @@ msgstr ""
 "PO-Revision-Date: 2007-06-09 14:38+0530\n"
 "Last-Translator: Dr.T.Vasudevan <agnihot3 at gmail.com>\n"
 "Language-Team: TAMIL <ubuntu-l10n-tam at lists.ubuntu.com>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: \n"
 "X-Generator: KBabel 1.11.4\n"
 
 #. Type: string
diff --git a/debian/po/tr.po b/debian/po/tr.po
index c22c1ab..ed1a624 100644
--- a/debian/po/tr.po
+++ b/debian/po/tr.po
@@ -10,10 +10,10 @@ msgstr ""
 "PO-Revision-Date: 2007-05-31 15:22+0300\n"
 "Last-Translator: Mehmet Türker <mturker at innova.com.tr>\n"
 "Language-Team: Turkish <debian-l10n-turkish at lists.debian.org>\n"
+"Language: tr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: tr\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 
 #. Type: string
diff --git a/debian/po/vi.po b/debian/po/vi.po
index b9a28cb..b57a24a 100644
--- a/debian/po/vi.po
+++ b/debian/po/vi.po
@@ -10,6 +10,7 @@ msgstr ""
 "PO-Revision-Date: 2010-10-27 15:29+1030\n"
 "Last-Translator: Clytie Siddall <clytie at riverland.net.au>\n"
 "Language-Team: Vietnamese <vi-VN at googlegroups.com>\n"
+"Language: vi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -113,9 +114,9 @@ msgid ""
 "supplied is just a sample, and must be adapted to the network environment."
 msgstr ""
 "Một khi cài đặt trình phục vụ DHCP thì bạn cần phải tự cấu hình nó bằng cách "
-"chỉnh sửa tập tin « /etc/dhcp/dhcpd.conf ». Ghi chú rằng tập tin « dhcpd.conf "
-"» có sẵn chỉ là một mẫu thí dụ mà bạn cần phải điều chỉnh để thích hợp với "
-"môi trường mạng."
+"chỉnh sửa tập tin « /etc/dhcp/dhcpd.conf ». Ghi chú rằng tập tin « dhcpd."
+"conf » có sẵn chỉ là một mẫu thí dụ mà bạn cần phải điều chỉnh để thích hợp "
+"với môi trường mạng."
 
 #. Type: note
 #. Description

-- 
ISC DHCP packaging for Debian



More information about the pkg-dhcp-commits mailing list