Package: libcurl3 Version: 7.51.0-1 Severity: serious Justification: Policy 8.1
Dear Maintainer, the curl ABI contains structs inherited from OpenSSL, e.g. in calls like: curl_easy_setopt(easy, CURLOPT_SSL_CTX_FUNCTION, &sslCtxFunction_cb); Here, sslCtxFunction_cb is a function which takes an SSL_CTX * as a parameter. (This is from zurl, one example of a package affected by this bug.) Since 7.51.0-1, curl links against OpenSSL 1.1 instead of OpenSSL 1.0 (implicitly caused by an update of libssl-dev, not by a change to the curl package). This changes the structure of SSL_CTX, which in turn changes the above mentioned ABI and breaks zurl (and possibly other packages). Such ABI changes require a SONAME change, according to policy 8.1, exactly to avoid breaking other packages which use the library. Therefore, please consider changing the SONAME (and the name of the binary package). Alternatively, build-depend on libssl1.0-dev, to link against OpenSSL 1.0 and keep the old ABI. (Set the severity to serious, to keep the package with the broken ABI from entering testing. IMHO this bug is a policy violation, but policy is not 100% clear here, as it only says 'the SONAME should change'. If you don't agree, please don't just lower the severity, but discuss the issue on debian-devel.) Thanks, Jan -- System Information: Debian Release: stretch/sid APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 4.9.0-rc4 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages libcurl3 depends on: ii libc6 2.24-5 ii libcomerr2 1.43.3-1 ii libgssapi-krb5-2 1.15~beta1-1 ii libk5crypto3 1.15~beta1-1 ii libkrb5-3 1.15~beta1-1 ii libldap-2.4-2 2.4.42+dfsg-2+b3 ii libnghttp2-14 1.16.0-1 ii librtmp1 2.4+20151223.gitfa8646d.1-1 ii libssh2-1 1.7.0-1 ii libssl1.1 1.1.0c-1 ii zlib1g 1:1.2.8.dfsg-2+b3 Versions of packages libcurl3 recommends: ii ca-certificates 20161102 libcurl3 suggests no packages. -- no debconf information