Package: libnspr4 Version: 2:4.10.3-1 Severity: important Tags: upstream patch
The libnspr4 library doesn't correctly identify the protocol family of an endpoint on Debian GNU/Hurd. This is caused by the presence of the sa_len member before sa_family in the definition of struct sockaddr. The problem can be tested with the following command from libnss3-tools : $ tstclnt -h <https_server> -p 443 tstclnt: read from socket failed: PR_ADDRESS_NOT_SUPPORTED_ERROR: Network address type not supported The library can be built with the _PR_HAVE_SOCKADDR_LEN macro defined so that code is enabled to fix the nspr equivalent of the sockaddr structure. The attached patch enables this definition for the Hurd. -- System Information: Debian Release: jessie/sid APT prefers unreleased APT policy: (500, 'unreleased'), (500, 'unstable') Architecture: hurd-i386 (i686-AT386) Kernel: GNU-Mach 1.4-486-dbg/Hurd-0.5 Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages libnspr4 depends on: ii libc0.3 2.17-98~1 ii multiarch-support 2.17-98~1 libnspr4 recommends no packages. libnspr4 suggests no packages. -- no debconf information
>From 02ebd3d67e780e92cd0b0438406679493525bc06 Mon Sep 17 00:00:00 2001 From: Richard Braun <rbr...@sceen.net> Date: Thu, 20 Feb 2014 20:50:46 +0100 Subject: [PATCH] Define _PR_HAVE_SOCKADDR_LEN for the Hurd --- nspr/pr/include/md/_linux.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nspr/pr/include/md/_linux.h b/nspr/pr/include/md/_linux.h index 906822f..cee6765 100644 --- a/nspr/pr/include/md/_linux.h +++ b/nspr/pr/include/md/_linux.h @@ -80,7 +80,7 @@ #define NO_DLOPEN_NULL #endif -#ifdef __FreeBSD_kernel__ +#if defined(__FreeBSD_kernel__) || defined(__GNU__) #define _PR_HAVE_SOCKADDR_LEN #endif -- 1.9.0