Package: openssh Version: 5.3p1-1 Severity: important Tags: patch Justification: fails to build from source
Hi, when trying to build openssh with heimdal < 13.0 it fails because heimdal misses the krb5_free_unparsed_name() function, that gets called by OpenSSH since version 5.2p1. According to https://roundup.it.su.se/jira/browse/HEIMDAL-626 one possible solution is to simply call krb5_xfree() instead, as I did in the attchaed patch, that I have in use since 5.2p1 came out (sorry I was lazy in reporting it). Perhaps te better alternative is to depend on heimdal >= 1.3.0, as I do not know whether the aptch works for all architectures. Thanks for maintaining openssh in Debian Peter -- System Information: Debian Release: squeeze/sid APT prefers testing APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.32-trunk-amd64 (SMP w/2 CPU cores) Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
#! /bin/sh /usr/share/dpatch/dpatch-run ## openssh-5.3p1-heimdal.patch ## DP: avoid krb5_free_unparsed_name() with heimdal ## DP: in favour of krb5_xfree() # From: Peter Marschall <[email protected]> # Subject: avoid krb5_free_unparsed_name() with heimdal # Description: as heimdal < 1.3.0 does not provide krb5_free_unparsed_name(), # use krb5_xfree() instead. # According to heimdal upstream the difference only matters "on windows or # platforms that have diffrent memory pools for different libraries" only. # more info on: https://roundup.it.su.se/jira/browse/HEIMDAL-626 --- openssh-5.3p1/gss-serv-krb5.c +++ openssh-5.3p1/gss-serv-krb5.c 2010-01-06 13:02:03.000000000 +0100 @@ -228,10 +228,20 @@ debug("Name in local credentials cache differs. Not storing"); krb5_free_principal(krb_context, principal); krb5_cc_close(krb_context, ccache); +/* kludge to make it work with heimdal < 1.3.0 */ +#if HEIMDAL + krb5_xfree(name); +#else krb5_free_unparsed_name(krb_context, name); +#endif return 0; } +/* kludge to make it work with heimdal < 1.3.0 */ +#if HEIMDAL + krb5_xfree(name); +#else krb5_free_unparsed_name(krb_context, name); +#endif /* Name matches, so lets get on with it! */

