Package: release.debian.org
User: release.debian....@packages.debian.org
Usertags: pu
Tags: stretch
Severity: normal

El 13/12/19 a las 23:39, Salvatore Bonaccorso escribió:
> Hi Santiago,
> 
> On Mon, Jul 09, 2018 at 07:54:39PM +0200, Santiago R.R. wrote:
> > El 27/06/18 a las 00:01, Santiago R.R. escribió:
> > > El 10/06/18 a las 14:49, Moritz Mühlenhoff escribió:
> > > > On Sun, Jun 10, 2018 at 10:24:29AM +0200, Santiago R.R. wrote:
> > > > > El 30/04/18 a las 12:20, Santiago escribió:
> > > > > > On Tue, 12 Sep 2017 10:05:25 +0000 =?utf-8?b?T25kxZllaiBTdXLDvQ==?= 
> > > > > > <ond...@debian.org> wrote:
> > > > > …
> > > > > > 
> > > > > > Hi Ondřey, security team,
> > > > > > 
> > > > > > CVE-2017-14062 has been fixed in wheezy, but still open in jessie 
> > > > > > and
> > > > > > stretch. Are you willing to fix it? Would you like some help?
> > > > > 
> > > > > Dear security-team,
> > > > > 
> > > > > Please, find attached the debdiffs (s/santiago-//) for both jessie and
> > > > > stretch. Could you please review it and let me know if it's OK to be
> > > > > uploaded?
> > > > 
> > > > debdiffs per se are not really saving us any work. What's more important
> > > > is a description of all the tests you made with a build of your patches
> > > > in oldstable and stable.
> > > 
...
> > > AFAIU, the decode_digit function, modified by the patch, is used by
> > > punycode_decode, and in turn, by idna.c's idna_to_unicode_internal, and
> > > this by different public functions.
> > > 
> > > I am not aware of any PoC to test the issue. So to test the patch I
> > > tried the libidn idn tool, and queried encoded/decoded internationalized
> > > qnames against local resolvers.
> > > 
> > > idn can encode to and decode from punycode:
> > > 
> > >     santiago@stretch:~$ idn -e árbol
> > >     rbol-4na
> > > 
> > > And to confirm the encoded punycode is reversible:
> > > 
> > >     santiago@stretch:~$ idn -e árbol | idn -d
> > >     árbol
> > > 
> > > I tested two local resolvers that depend on libidn11: dnsmasq in jessie,
> > > and getdns in stretch. I have accessed via elinks (that also depends on
> > > libidn11) to different internationalized qnames, in both UTF-8 and
> > > ACE (ASCII Compatible Encoding) encoded form, e.g. xn--j1ay.xn--p1ai.
> > > Just to be sure, I rebuild those three packages: dnsmasq, getdns and
> > > elinks.
> > > 
> > > Should that be OK?
> > > 
> > > Please, tell me if you think any further testing is needed, or if you
> > > have any other concern.
> > 
...
> 
> While reviewing some older issues I re-encoutered CVE-2017-14062.
> 
> Could you fix this via upcoming stretch point release?
> 
> Regards,
> Salvatore

Dear release team,

as suggested by Salvatore, I would like to propose fixing CVE-2017-14062
(#873903) in libidn via an update to stretch. Please find the debdiff
attached. The tests I have made are described above.

Please, let me know if it's OK to upload it.

Cheers,

 -- Santiago
diff -Nru libidn-1.33/debian/changelog libidn-1.33/debian/changelog
--- libidn-1.33/debian/changelog        2016-07-21 10:25:59.000000000 +0200
+++ libidn-1.33/debian/changelog        2020-01-14 15:42:19.000000000 +0100
@@ -1,3 +1,15 @@
+libidn (1.33-1+deb9u1) stretch; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix CVE-2017-14062: An integer overflow vulnerability in libidn's Punycode
+    handling (an encoding used to convert Unicode characters to ASCII) which
+    would have allowed remote attackers to cause a denial of service.
+  * Import 0004-Update-Makefile.gdoc-to-use-GDOC_BIN-instead-of-hard.patch
+    from unstable to avoid a FTBFS.
+    - Add textinfo to Build-Deps.
+
+ -- Santiago R.R. <santiag...@riseup.net>  Tue, 14 Jan 2020 15:42:19 +0100
+
 libidn (1.33-1) unstable; urgency=low
 
   * New upstream release.
diff -Nru libidn-1.33/debian/control libidn-1.33/debian/control
--- libidn-1.33/debian/control  2016-07-21 10:22:20.000000000 +0200
+++ libidn-1.33/debian/control  2020-01-14 15:28:51.000000000 +0100
@@ -4,7 +4,7 @@
 Maintainer: Debian Libidn Team <help-lib...@gnu.org>
 Uploaders: Anibal Monsalve Salazar <ani...@debian.org>, Simon Josefsson 
<si...@josefsson.org>
 Standards-Version: 3.9.8
-Build-Depends: debhelper (>= 9), gcj-jdk [!arm !hppa !hurd-i386 !mips64el], 
fastjar [!arm !hppa !hurd-i386 !mips64el], dh-autoreconf, autopoint (>= 0.19.3)
+Build-Depends: debhelper (>= 9), gcj-jdk [!arm !hppa !hurd-i386 !mips64el], 
fastjar [!arm !hppa !hurd-i386 !mips64el], dh-autoreconf, autopoint (>= 
0.19.3), texinfo
 Homepage: https://www.gnu.org/software/libidn/
 Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/libidn.git
 Vcs-Git: https://anonscm.debian.org/git/collab-maint/libidn.git
diff -Nru 
libidn-1.33/debian/patches/0004-Update-Makefile.gdoc-to-use-GDOC_BIN-instead-of-hard.patch
 
libidn-1.33/debian/patches/0004-Update-Makefile.gdoc-to-use-GDOC_BIN-instead-of-hard.patch
--- 
libidn-1.33/debian/patches/0004-Update-Makefile.gdoc-to-use-GDOC_BIN-instead-of-hard.patch
  1970-01-01 01:00:00.000000000 +0100
+++ 
libidn-1.33/debian/patches/0004-Update-Makefile.gdoc-to-use-GDOC_BIN-instead-of-hard.patch
  2020-01-14 15:28:51.000000000 +0100
@@ -0,0 +1,748 @@
+From: =?utf-8?q?Ond=C5=99ej_Sur=C3=BD?= <ond...@debian.org>
+Date: Tue, 12 Sep 2017 11:18:11 +0200
+Subject: Update Makefile.gdoc to use $(GDOC_BIN) instead of hardcoded path
+
+---
+ doc/Makefile.gdoc | 216 +++++++++++++++++++++++++++---------------------------
+ 1 file changed, 108 insertions(+), 108 deletions(-)
+
+diff --git a/doc/Makefile.gdoc b/doc/Makefile.gdoc
+index e4e269b..61f7b9f 100644
+--- a/doc/Makefile.gdoc
++++ b/doc/Makefile.gdoc
+@@ -9,117 +9,117 @@ gdoc_MANS =
+ gdoc_TEXINFOS += texi/idna.c.texi
+ texi/idna.c.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # idna.c: idna_to_ascii_4i
+ gdoc_TEXINFOS += texi/idna_to_ascii_4i.texi
+ texi/idna_to_ascii_4i.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_ascii_4i $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_ascii_4i $< > $@
+ 
+ gdoc_MANS += man/idna_to_ascii_4i.3
+ man/idna_to_ascii_4i.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function idna_to_ascii_4i 
$< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_ascii_4i $< > $@
+ 
+ # idna.c: idna_to_unicode_44i
+ gdoc_TEXINFOS += texi/idna_to_unicode_44i.texi
+ texi/idna_to_unicode_44i.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_44i $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_44i $< > $@
+ 
+ gdoc_MANS += man/idna_to_unicode_44i.3
+ man/idna_to_unicode_44i.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_44i $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_44i $< > $@
+ 
+ # idna.c: idna_to_ascii_4z
+ gdoc_TEXINFOS += texi/idna_to_ascii_4z.texi
+ texi/idna_to_ascii_4z.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_ascii_4z $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_ascii_4z $< > $@
+ 
+ gdoc_MANS += man/idna_to_ascii_4z.3
+ man/idna_to_ascii_4z.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function idna_to_ascii_4z 
$< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_ascii_4z $< > $@
+ 
+ # idna.c: idna_to_ascii_8z
+ gdoc_TEXINFOS += texi/idna_to_ascii_8z.texi
+ texi/idna_to_ascii_8z.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_ascii_8z $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_ascii_8z $< > $@
+ 
+ gdoc_MANS += man/idna_to_ascii_8z.3
+ man/idna_to_ascii_8z.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function idna_to_ascii_8z 
$< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_ascii_8z $< > $@
+ 
+ # idna.c: idna_to_ascii_lz
+ gdoc_TEXINFOS += texi/idna_to_ascii_lz.texi
+ texi/idna_to_ascii_lz.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_ascii_lz $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_ascii_lz $< > $@
+ 
+ gdoc_MANS += man/idna_to_ascii_lz.3
+ man/idna_to_ascii_lz.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function idna_to_ascii_lz 
$< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_ascii_lz $< > $@
+ 
+ # idna.c: idna_to_unicode_4z4z
+ gdoc_TEXINFOS += texi/idna_to_unicode_4z4z.texi
+ texi/idna_to_unicode_4z4z.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_4z4z $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_4z4z $< > $@
+ 
+ gdoc_MANS += man/idna_to_unicode_4z4z.3
+ man/idna_to_unicode_4z4z.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_4z4z $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_4z4z $< > $@
+ 
+ # idna.c: idna_to_unicode_8z4z
+ gdoc_TEXINFOS += texi/idna_to_unicode_8z4z.texi
+ texi/idna_to_unicode_8z4z.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_8z4z $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_8z4z $< > $@
+ 
+ gdoc_MANS += man/idna_to_unicode_8z4z.3
+ man/idna_to_unicode_8z4z.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_8z4z $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_8z4z $< > $@
+ 
+ # idna.c: idna_to_unicode_8z8z
+ gdoc_TEXINFOS += texi/idna_to_unicode_8z8z.texi
+ texi/idna_to_unicode_8z8z.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_8z8z $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_8z8z $< > $@
+ 
+ gdoc_MANS += man/idna_to_unicode_8z8z.3
+ man/idna_to_unicode_8z8z.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_8z8z $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_8z8z $< > $@
+ 
+ # idna.c: idna_to_unicode_8zlz
+ gdoc_TEXINFOS += texi/idna_to_unicode_8zlz.texi
+ texi/idna_to_unicode_8zlz.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_8zlz $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_8zlz $< > $@
+ 
+ gdoc_MANS += man/idna_to_unicode_8zlz.3
+ man/idna_to_unicode_8zlz.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_8zlz $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_8zlz $< > $@
+ 
+ # idna.c: idna_to_unicode_lzlz
+ gdoc_TEXINFOS += texi/idna_to_unicode_lzlz.texi
+ texi/idna_to_unicode_lzlz.texi: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_lzlz $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_to_unicode_lzlz $< > $@
+ 
+ gdoc_MANS += man/idna_to_unicode_lzlz.3
+ man/idna_to_unicode_lzlz.3: ../lib/idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_lzlz $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
idna_to_unicode_lzlz $< > $@
+ 
+ 
+ #
+@@ -128,73 +128,73 @@ man/idna_to_unicode_lzlz.3: ../lib/idna.c
+ gdoc_TEXINFOS += texi/nfkc.c.texi
+ texi/nfkc.c.texi: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # nfkc.c: stringprep_utf8_to_unichar
+ gdoc_TEXINFOS += texi/stringprep_utf8_to_unichar.texi
+ texi/stringprep_utf8_to_unichar.texi: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_utf8_to_unichar $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_utf8_to_unichar $< > $@
+ 
+ gdoc_MANS += man/stringprep_utf8_to_unichar.3
+ man/stringprep_utf8_to_unichar.3: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_utf8_to_unichar $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_utf8_to_unichar $< > $@
+ 
+ # nfkc.c: stringprep_unichar_to_utf8
+ gdoc_TEXINFOS += texi/stringprep_unichar_to_utf8.texi
+ texi/stringprep_unichar_to_utf8.texi: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_unichar_to_utf8 $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_unichar_to_utf8 $< > $@
+ 
+ gdoc_MANS += man/stringprep_unichar_to_utf8.3
+ man/stringprep_unichar_to_utf8.3: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_unichar_to_utf8 $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_unichar_to_utf8 $< > $@
+ 
+ # nfkc.c: stringprep_utf8_to_ucs4
+ gdoc_TEXINFOS += texi/stringprep_utf8_to_ucs4.texi
+ texi/stringprep_utf8_to_ucs4.texi: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_utf8_to_ucs4 $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_utf8_to_ucs4 $< > $@
+ 
+ gdoc_MANS += man/stringprep_utf8_to_ucs4.3
+ man/stringprep_utf8_to_ucs4.3: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_utf8_to_ucs4 $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_utf8_to_ucs4 $< > $@
+ 
+ # nfkc.c: stringprep_ucs4_to_utf8
+ gdoc_TEXINFOS += texi/stringprep_ucs4_to_utf8.texi
+ texi/stringprep_ucs4_to_utf8.texi: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_ucs4_to_utf8 $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_ucs4_to_utf8 $< > $@
+ 
+ gdoc_MANS += man/stringprep_ucs4_to_utf8.3
+ man/stringprep_ucs4_to_utf8.3: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_ucs4_to_utf8 $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_ucs4_to_utf8 $< > $@
+ 
+ # nfkc.c: stringprep_utf8_nfkc_normalize
+ gdoc_TEXINFOS += texi/stringprep_utf8_nfkc_normalize.texi
+ texi/stringprep_utf8_nfkc_normalize.texi: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_utf8_nfkc_normalize $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_utf8_nfkc_normalize $< > $@
+ 
+ gdoc_MANS += man/stringprep_utf8_nfkc_normalize.3
+ man/stringprep_utf8_nfkc_normalize.3: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_utf8_nfkc_normalize $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_utf8_nfkc_normalize $< > $@
+ 
+ # nfkc.c: stringprep_ucs4_nfkc_normalize
+ gdoc_TEXINFOS += texi/stringprep_ucs4_nfkc_normalize.texi
+ texi/stringprep_ucs4_nfkc_normalize.texi: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_ucs4_nfkc_normalize $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_ucs4_nfkc_normalize $< > $@
+ 
+ gdoc_MANS += man/stringprep_ucs4_nfkc_normalize.3
+ man/stringprep_ucs4_nfkc_normalize.3: ../lib/nfkc.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_ucs4_nfkc_normalize $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_ucs4_nfkc_normalize $< > $@
+ 
+ 
+ #
+@@ -203,40 +203,40 @@ man/stringprep_ucs4_nfkc_normalize.3: ../lib/nfkc.c
+ gdoc_TEXINFOS += texi/pr29.c.texi
+ texi/pr29.c.texi: ../lib/pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # pr29.c: pr29_4
+ gdoc_TEXINFOS += texi/pr29_4.texi
+ texi/pr29_4.texi: ../lib/pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function pr29_4 $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function pr29_4 
$< > $@
+ 
+ gdoc_MANS += man/pr29_4.3
+ man/pr29_4.3: ../lib/pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function pr29_4 $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function pr29_4 $< > $@
+ 
+ # pr29.c: pr29_4z
+ gdoc_TEXINFOS += texi/pr29_4z.texi
+ texi/pr29_4z.texi: ../lib/pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function pr29_4z $< > 
$@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function pr29_4z 
$< > $@
+ 
+ gdoc_MANS += man/pr29_4z.3
+ man/pr29_4z.3: ../lib/pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function pr29_4z $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function pr29_4z $< > 
$@
+ 
+ # pr29.c: pr29_8z
+ gdoc_TEXINFOS += texi/pr29_8z.texi
+ texi/pr29_8z.texi: ../lib/pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function pr29_8z $< > 
$@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function pr29_8z 
$< > $@
+ 
+ gdoc_MANS += man/pr29_8z.3
+ man/pr29_8z.3: ../lib/pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function pr29_8z $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function pr29_8z $< > 
$@
+ 
+ 
+ #
+@@ -245,29 +245,29 @@ man/pr29_8z.3: ../lib/pr29.c
+ gdoc_TEXINFOS += texi/punycode.c.texi
+ texi/punycode.c.texi: ../lib/punycode.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # punycode.c: punycode_encode
+ gdoc_TEXINFOS += texi/punycode_encode.texi
+ texi/punycode_encode.texi: ../lib/punycode.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
punycode_encode $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
punycode_encode $< > $@
+ 
+ gdoc_MANS += man/punycode_encode.3
+ man/punycode_encode.3: ../lib/punycode.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function punycode_encode $< 
> $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
punycode_encode $< > $@
+ 
+ # punycode.c: punycode_decode
+ gdoc_TEXINFOS += texi/punycode_decode.texi
+ texi/punycode_decode.texi: ../lib/punycode.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
punycode_decode $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
punycode_decode $< > $@
+ 
+ gdoc_MANS += man/punycode_decode.3
+ man/punycode_decode.3: ../lib/punycode.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function punycode_decode $< 
> $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
punycode_decode $< > $@
+ 
+ 
+ #
+@@ -276,51 +276,51 @@ man/punycode_decode.3: ../lib/punycode.c
+ gdoc_TEXINFOS += texi/stringprep.c.texi
+ texi/stringprep.c.texi: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # stringprep.c: stringprep_4i
+ gdoc_TEXINFOS += texi/stringprep_4i.texi
+ texi/stringprep_4i.texi: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function stringprep_4i 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_4i $< > $@
+ 
+ gdoc_MANS += man/stringprep_4i.3
+ man/stringprep_4i.3: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function stringprep_4i $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function stringprep_4i 
$< > $@
+ 
+ # stringprep.c: stringprep_4zi
+ gdoc_TEXINFOS += texi/stringprep_4zi.texi
+ texi/stringprep_4zi.texi: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_4zi $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_4zi $< > $@
+ 
+ gdoc_MANS += man/stringprep_4zi.3
+ man/stringprep_4zi.3: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function stringprep_4zi $< 
> $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_4zi $< > $@
+ 
+ # stringprep.c: stringprep
+ gdoc_TEXINFOS += texi/stringprep.texi
+ texi/stringprep.texi: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function stringprep $< 
> $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep $< > $@
+ 
+ gdoc_MANS += man/stringprep.3
+ man/stringprep.3: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function stringprep $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function stringprep $< 
> $@
+ 
+ # stringprep.c: stringprep_profile
+ gdoc_TEXINFOS += texi/stringprep_profile.texi
+ texi/stringprep_profile.texi: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_profile $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_profile $< > $@
+ 
+ gdoc_MANS += man/stringprep_profile.3
+ man/stringprep_profile.3: ../lib/stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function stringprep_profile 
$< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_profile $< > $@
+ 
+ 
+ #
+@@ -329,128 +329,128 @@ man/stringprep_profile.3: ../lib/stringprep.c
+ gdoc_TEXINFOS += texi/tld.c.texi
+ texi/tld.c.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # tld.c: tld_get_table
+ gdoc_TEXINFOS += texi/tld_get_table.texi
+ texi/tld_get_table.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_get_table 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_get_table $< > $@
+ 
+ gdoc_MANS += man/tld_get_table.3
+ man/tld_get_table.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_get_table $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_get_table 
$< > $@
+ 
+ # tld.c: tld_default_table
+ gdoc_TEXINFOS += texi/tld_default_table.texi
+ texi/tld_default_table.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_default_table $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_default_table $< > $@
+ 
+ gdoc_MANS += man/tld_default_table.3
+ man/tld_default_table.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_default_table 
$< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
tld_default_table $< > $@
+ 
+ # tld.c: tld_get_4
+ gdoc_TEXINFOS += texi/tld_get_4.texi
+ texi/tld_get_4.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_get_4 $< 
> $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_get_4 $< > $@
+ 
+ gdoc_MANS += man/tld_get_4.3
+ man/tld_get_4.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_get_4 $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_get_4 $< 
> $@
+ 
+ # tld.c: tld_get_4z
+ gdoc_TEXINFOS += texi/tld_get_4z.texi
+ texi/tld_get_4z.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_get_4z $< 
> $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_get_4z $< > $@
+ 
+ gdoc_MANS += man/tld_get_4z.3
+ man/tld_get_4z.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_get_4z $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_get_4z $< 
> $@
+ 
+ # tld.c: tld_get_z
+ gdoc_TEXINFOS += texi/tld_get_z.texi
+ texi/tld_get_z.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_get_z $< 
> $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_get_z $< > $@
+ 
+ gdoc_MANS += man/tld_get_z.3
+ man/tld_get_z.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_get_z $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_get_z $< 
> $@
+ 
+ # tld.c: tld_check_4t
+ gdoc_TEXINFOS += texi/tld_check_4t.texi
+ texi/tld_check_4t.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_check_4t 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_check_4t $< > $@
+ 
+ gdoc_MANS += man/tld_check_4t.3
+ man/tld_check_4t.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_4t $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_4t 
$< > $@
+ 
+ # tld.c: tld_check_4tz
+ gdoc_TEXINFOS += texi/tld_check_4tz.texi
+ texi/tld_check_4tz.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_check_4tz 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_check_4tz $< > $@
+ 
+ gdoc_MANS += man/tld_check_4tz.3
+ man/tld_check_4tz.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_4tz $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_4tz 
$< > $@
+ 
+ # tld.c: tld_check_4
+ gdoc_TEXINFOS += texi/tld_check_4.texi
+ texi/tld_check_4.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_check_4 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_check_4 $< > $@
+ 
+ gdoc_MANS += man/tld_check_4.3
+ man/tld_check_4.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_4 $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_4 
$< > $@
+ 
+ # tld.c: tld_check_4z
+ gdoc_TEXINFOS += texi/tld_check_4z.texi
+ texi/tld_check_4z.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_check_4z 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_check_4z $< > $@
+ 
+ gdoc_MANS += man/tld_check_4z.3
+ man/tld_check_4z.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_4z $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_4z 
$< > $@
+ 
+ # tld.c: tld_check_8z
+ gdoc_TEXINFOS += texi/tld_check_8z.texi
+ texi/tld_check_8z.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_check_8z 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_check_8z $< > $@
+ 
+ gdoc_MANS += man/tld_check_8z.3
+ man/tld_check_8z.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_8z $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_8z 
$< > $@
+ 
+ # tld.c: tld_check_lz
+ gdoc_TEXINFOS += texi/tld_check_lz.texi
+ texi/tld_check_lz.texi: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_check_lz 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_check_lz $< > $@
+ 
+ gdoc_MANS += man/tld_check_lz.3
+ man/tld_check_lz.3: ../lib/tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_lz $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_check_lz 
$< > $@
+ 
+ 
+ #
+@@ -459,51 +459,51 @@ man/tld_check_lz.3: ../lib/tld.c
+ gdoc_TEXINFOS += texi/toutf8.c.texi
+ texi/toutf8.c.texi: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # toutf8.c: stringprep_locale_charset
+ gdoc_TEXINFOS += texi/stringprep_locale_charset.texi
+ texi/stringprep_locale_charset.texi: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_locale_charset $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_locale_charset $< > $@
+ 
+ gdoc_MANS += man/stringprep_locale_charset.3
+ man/stringprep_locale_charset.3: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_locale_charset $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_locale_charset $< > $@
+ 
+ # toutf8.c: stringprep_convert
+ gdoc_TEXINFOS += texi/stringprep_convert.texi
+ texi/stringprep_convert.texi: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_convert $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_convert $< > $@
+ 
+ gdoc_MANS += man/stringprep_convert.3
+ man/stringprep_convert.3: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function stringprep_convert 
$< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_convert $< > $@
+ 
+ # toutf8.c: stringprep_locale_to_utf8
+ gdoc_TEXINFOS += texi/stringprep_locale_to_utf8.texi
+ texi/stringprep_locale_to_utf8.texi: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_locale_to_utf8 $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_locale_to_utf8 $< > $@
+ 
+ gdoc_MANS += man/stringprep_locale_to_utf8.3
+ man/stringprep_locale_to_utf8.3: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_locale_to_utf8 $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_locale_to_utf8 $< > $@
+ 
+ # toutf8.c: stringprep_utf8_to_locale
+ gdoc_TEXINFOS += texi/stringprep_utf8_to_locale.texi
+ texi/stringprep_utf8_to_locale.texi: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_utf8_to_locale $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_utf8_to_locale $< > $@
+ 
+ gdoc_MANS += man/stringprep_utf8_to_locale.3
+ man/stringprep_utf8_to_locale.3: ../lib/toutf8.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_utf8_to_locale $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_utf8_to_locale $< > $@
+ 
+ 
+ #
+@@ -512,18 +512,18 @@ man/stringprep_utf8_to_locale.3: ../lib/toutf8.c
+ gdoc_TEXINFOS += texi/version.c.texi
+ texi/version.c.texi: ../lib/version.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # version.c: stringprep_check_version
+ gdoc_TEXINFOS += texi/stringprep_check_version.texi
+ texi/stringprep_check_version.texi: ../lib/version.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_check_version $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_check_version $< > $@
+ 
+ gdoc_MANS += man/stringprep_check_version.3
+ man/stringprep_check_version.3: ../lib/version.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_check_version $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_check_version $< > $@
+ 
+ 
+ #
+@@ -532,18 +532,18 @@ man/stringprep_check_version.3: ../lib/version.c
+ gdoc_TEXINFOS += texi/idn-free.c.texi
+ texi/idn-free.c.texi: ../lib/idn-free.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # idn-free.c: idn_free
+ gdoc_TEXINFOS += texi/idn_free.texi
+ texi/idn_free.texi: ../lib/idn-free.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function idn_free $< > 
$@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function idn_free 
$< > $@
+ 
+ gdoc_MANS += man/idn_free.3
+ man/idn_free.3: ../lib/idn-free.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function idn_free $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function idn_free $< > 
$@
+ 
+ 
+ #
+@@ -552,18 +552,18 @@ man/idn_free.3: ../lib/idn-free.c
+ gdoc_TEXINFOS += texi/strerror-idna.c.texi
+ texi/strerror-idna.c.texi: ../lib/strerror-idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # strerror-idna.c: idna_strerror
+ gdoc_TEXINFOS += texi/idna_strerror.texi
+ texi/idna_strerror.texi: ../lib/strerror-idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function idna_strerror 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
idna_strerror $< > $@
+ 
+ gdoc_MANS += man/idna_strerror.3
+ man/idna_strerror.3: ../lib/strerror-idna.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function idna_strerror $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function idna_strerror 
$< > $@
+ 
+ 
+ #
+@@ -572,18 +572,18 @@ man/idna_strerror.3: ../lib/strerror-idna.c
+ gdoc_TEXINFOS += texi/strerror-pr29.c.texi
+ texi/strerror-pr29.c.texi: ../lib/strerror-pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # strerror-pr29.c: pr29_strerror
+ gdoc_TEXINFOS += texi/pr29_strerror.texi
+ texi/pr29_strerror.texi: ../lib/strerror-pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function pr29_strerror 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
pr29_strerror $< > $@
+ 
+ gdoc_MANS += man/pr29_strerror.3
+ man/pr29_strerror.3: ../lib/strerror-pr29.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function pr29_strerror $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function pr29_strerror 
$< > $@
+ 
+ 
+ #
+@@ -592,18 +592,18 @@ man/pr29_strerror.3: ../lib/strerror-pr29.c
+ gdoc_TEXINFOS += texi/strerror-punycode.c.texi
+ texi/strerror-punycode.c.texi: ../lib/strerror-punycode.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # strerror-punycode.c: punycode_strerror
+ gdoc_TEXINFOS += texi/punycode_strerror.texi
+ texi/punycode_strerror.texi: ../lib/strerror-punycode.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
punycode_strerror $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
punycode_strerror $< > $@
+ 
+ gdoc_MANS += man/punycode_strerror.3
+ man/punycode_strerror.3: ../lib/strerror-punycode.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function punycode_strerror 
$< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
punycode_strerror $< > $@
+ 
+ 
+ #
+@@ -612,18 +612,18 @@ man/punycode_strerror.3: ../lib/strerror-punycode.c
+ gdoc_TEXINFOS += texi/strerror-stringprep.c.texi
+ texi/strerror-stringprep.c.texi: ../lib/strerror-stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # strerror-stringprep.c: stringprep_strerror
+ gdoc_TEXINFOS += texi/stringprep_strerror.texi
+ texi/stringprep_strerror.texi: ../lib/strerror-stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_strerror $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
stringprep_strerror $< > $@
+ 
+ gdoc_MANS += man/stringprep_strerror.3
+ man/stringprep_strerror.3: ../lib/strerror-stringprep.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_strerror $< > $@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function 
stringprep_strerror $< > $@
+ 
+ 
+ #
+@@ -632,17 +632,17 @@ man/stringprep_strerror.3: ../lib/strerror-stringprep.c
+ gdoc_TEXINFOS += texi/strerror-tld.c.texi
+ texi/strerror-tld.c.texi: ../lib/strerror-tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) $< > $@
+ 
+ # strerror-tld.c: tld_strerror
+ gdoc_TEXINFOS += texi/tld_strerror.texi
+ texi/tld_strerror.texi: ../lib/strerror-tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function tld_strerror 
$< > $@
++      $(PERL) $(GDOC_BIN) -texinfo $(GDOC_TEXI_EXTRA_ARGS) -function 
tld_strerror $< > $@
+ 
+ gdoc_MANS += man/tld_strerror.3
+ man/tld_strerror.3: ../lib/strerror-tld.c
+       mkdir -p `dirname $@`
+-      $(PERL) ./gdoc -man $(GDOC_MAN_EXTRA_ARGS) -function tld_strerror $< > 
$@
++      $(PERL) $(GDOC_BIN) -man $(GDOC_MAN_EXTRA_ARGS) -function tld_strerror 
$< > $@
+ 
+ 
diff -Nru 
libidn-1.33/debian/patches/CVE-2017-14062-lib-puny_decode-Fix-buffer-overflow.patch
 
libidn-1.33/debian/patches/CVE-2017-14062-lib-puny_decode-Fix-buffer-overflow.patch
--- 
libidn-1.33/debian/patches/CVE-2017-14062-lib-puny_decode-Fix-buffer-overflow.patch
 1970-01-01 01:00:00.000000000 +0100
+++ 
libidn-1.33/debian/patches/CVE-2017-14062-lib-puny_decode-Fix-buffer-overflow.patch
 2020-01-14 15:28:42.000000000 +0100
@@ -0,0 +1,33 @@
+Index: libidn/lib/punycode.c
+===================================================================
+--- libidn.orig/lib/punycode.c
++++ libidn/lib/punycode.c
+@@ -88,11 +88,11 @@ enum
+ /* point (for use in representing integers) in the range 0 to */
+ /* base-1, or base if cp does not represent a value.          */
+ 
+-static punycode_uint
+-decode_digit (punycode_uint cp)
++static unsigned
++decode_digit(int cp)
+ {
+-  return cp - 48 < 10 ? cp - 22 : cp - 65 < 26 ? cp - 65 :
+-    cp - 97 < 26 ? cp - 97 : base;
++  return (unsigned) (cp - 48 < 10 ? cp - 22 : cp - 65 < 26 ? cp - 65 :
++    cp - 97 < 26 ? cp - 97 : base);
+ }
+ 
+ /* encode_digit(d,flag) returns the basic code point whose value      */
+Index: libidn/tests/tst_idna.c
+===================================================================
+--- libidn.orig/tests/tst_idna.c
++++ libidn/tests/tst_idna.c
+@@ -211,7 +211,7 @@ static const struct idna idna[] = {
+     'x', 'n', '-', '-', 'f', 'o', 0x3067},
+    IDNA_ACE_PREFIX "too long too long too long too long too long too "
+    "long too long too long too long too long ", 0,
+-   IDNA_CONTAINS_ACE_PREFIX, IDNA_PUNYCODE_ERROR}
++   IDNA_CONTAINS_ACE_PREFIX, IDNA_INVALID_LENGTH}
+ };
+ 
+ void
diff -Nru libidn-1.33/debian/patches/series libidn-1.33/debian/patches/series
--- libidn-1.33/debian/patches/series   1970-01-01 01:00:00.000000000 +0100
+++ libidn-1.33/debian/patches/series   2020-01-14 15:28:51.000000000 +0100
@@ -0,0 +1,2 @@
+CVE-2017-14062-lib-puny_decode-Fix-buffer-overflow.patch
+0004-Update-Makefile.gdoc-to-use-GDOC_BIN-instead-of-hard.patch

Attachment: signature.asc
Description: PGP signature

Reply via email to