Bug#861276: unblock: heimdal/7.1.0+dfsg-13
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package heimdal
Re-add base64_decode and base64_encode back into libroken, solving
backward compatability issues. See #848694.
Tested by compiling base64-test.c (supplied with Heimdal source) in
Jessie, and running in Stretch environment (version -12) - it doesn't
work, and then running against this version - it does work.
diff -Nru heimdal-7.1.0+dfsg/debian/changelog heimdal-7.1.0+dfsg/debian/changelog
--- heimdal-7.1.0+dfsg/debian/changelog 2017-04-10 17:21:35.000000000 +1000
+++ heimdal-7.1.0+dfsg/debian/changelog 2017-04-26 19:38:20.000000000 +1000
@@ -1,3 +1,10 @@
+heimdal (7.1.0+dfsg-13) unstable; urgency=medium
+
+ * Add missing symbols base64_decode and base64_encode back into
+ libroken. Closes: #848694.
+
+ -- Brian May <bam@debian.org> Wed, 26 Apr 2017 19:38:20 +1000
+
heimdal (7.1.0+dfsg-12) unstable; urgency=high
* Fix transit path validation CVE-2017-6594.
diff -Nru heimdal-7.1.0+dfsg/debian/libroken18-heimdal.symbols heimdal-7.1.0+dfsg/debian/libroken18-heimdal.symbols
--- heimdal-7.1.0+dfsg/debian/libroken18-heimdal.symbols 2017-04-10 17:18:37.000000000 +1000
+++ heimdal-7.1.0+dfsg/debian/libroken18-heimdal.symbols 2017-04-26 17:02:15.000000000 +1000
@@ -2,6 +2,8 @@
HEIMDAL_ROKEN_1.0@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
arg_printusage@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
arg_printusage_i18n@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
+ base64_decode@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
+ base64_encode@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
cgetcap@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
cgetclose@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
cgetmatch@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
diff -Nru heimdal-7.1.0+dfsg/debian/patches/0018-Add-back-in-base64_encode-and-base64_decode.patch heimdal-7.1.0+dfsg/debian/patches/0018-Add-back-in-base64_encode-and-base64_decode.patch
--- heimdal-7.1.0+dfsg/debian/patches/0018-Add-back-in-base64_encode-and-base64_decode.patch 1970-01-01 10:00:00.000000000 +1000
+++ heimdal-7.1.0+dfsg/debian/patches/0018-Add-back-in-base64_encode-and-base64_decode.patch 2017-04-26 08:43:47.000000000 +1000
@@ -0,0 +1,69 @@
+From: Brian May <brian@linuxpenguins.xyz>
+Date: Wed, 26 Apr 2017 06:34:52 +1000
+Subject: Add back in base64_encode and base64_decode
+
+These functions were removed upstream. See
+https://github.com/heimdal/heimdal/issues/107
+
+Unfortunately the SONAME was not incremented for libroken. This could
+cause breakage. This change reintroduces the old names until the SONAME
+can be incremented.
+---
+ lib/roken/base64.c | 12 ++++++++++++
+ lib/roken/base64.h | 6 ++++++
+ lib/roken/version-script.map | 2 ++
+ 3 files changed, 20 insertions(+)
+
+diff --git a/lib/roken/base64.c b/lib/roken/base64.c
+index 6ee4899..76364a5 100644
+--- a/lib/roken/base64.c
++++ b/lib/roken/base64.c
+@@ -52,6 +52,18 @@ pos(char c)
+ }
+
+ ROKEN_LIB_FUNCTION int ROKEN_LIB_CALL
++base64_encode(const void *data, int size, char **str)
++{
++ return rk_base64_encode(data, size, str);
++}
++
++ROKEN_LIB_FUNCTION int ROKEN_LIB_CALL
++base64_decode(const char *str, void *data)
++{
++ return rk_base64_decode(str, data);
++}
++
++ROKEN_LIB_FUNCTION int ROKEN_LIB_CALL
+ rk_base64_encode(const void *data, int size, char **str)
+ {
+ char *s, *p;
+diff --git a/lib/roken/base64.h b/lib/roken/base64.h
+index 734a6b5..f5d094f 100644
+--- a/lib/roken/base64.h
++++ b/lib/roken/base64.h
+@@ -47,6 +47,12 @@
+ #endif
+
+ ROKEN_LIB_FUNCTION int ROKEN_LIB_CALL
++base64_encode(const void *, int, char **);
++
++ROKEN_LIB_FUNCTION int ROKEN_LIB_CALL
++base64_decode(const char *, void *);
++
++ROKEN_LIB_FUNCTION int ROKEN_LIB_CALL
+ rk_base64_encode(const void *, int, char **);
+
+ ROKEN_LIB_FUNCTION int ROKEN_LIB_CALL
+diff --git a/lib/roken/version-script.map b/lib/roken/version-script.map
+index ccd5925..1929732 100644
+--- a/lib/roken/version-script.map
++++ b/lib/roken/version-script.map
+@@ -2,6 +2,8 @@ HEIMDAL_ROKEN_1.0 {
+ global:
+ arg_printusage;
+ arg_printusage_i18n;
++ base64_decode;
++ base64_encode;
+ cgetcap;
+ cgetclose;
+ cgetmatch;
diff -Nru heimdal-7.1.0+dfsg/debian/patches/series heimdal-7.1.0+dfsg/debian/patches/series
--- heimdal-7.1.0+dfsg/debian/patches/series 2017-04-10 17:21:35.000000000 +1000
+++ heimdal-7.1.0+dfsg/debian/patches/series 2017-04-26 08:43:47.000000000 +1000
@@ -15,3 +15,4 @@
disable_iprop
canonical_host
CVE-2017-6594
+0018-Add-back-in-base64_encode-and-base64_decode.patch
unblock heimdal/7.1.0+dfsg-13
-- System Information:
Debian Release: 9.0
APT prefers testing
APT policy: (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (100, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.9.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Reply to: