Your message dated Sun, 08 Mar 2020 03:19:28 +0000 with message-id <[email protected]> and subject line Bug#932841: fixed in dpkg 1.20.0 has caused the Debian Bug report #932841, regarding libdpkg-perl: Dpkg::Source::Package installs a permanent SIGINT handler to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 932841: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=932841 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: libdpkg-perl Version: 1.18.25 Severity: normal $ perl -we 'use Data::Dumper; print Dumper($SIG{INT})' $VAR1 = undef; $ perl -we 'use Data::Dumper; use Dpkg::Source::Package; print Dumper($SIG{INT})' $VAR1 = sub { "DUMMY" }; $ This is a problem because when a SIGINT handler is installed, perl will not immediately exit when it is in some other C library. For example, $ perl -we 'use Data::Dumper; use WWW::Curl::Easy; my $curl = WWW::Curl::Easy->new; $curl->setopt(CURLOPT_URL, "http://192.0.2.1"); $curl->perform()' ^C [returns prompt immediately] $ perl -we 'use Data::Dumper; use WWW::Curl::Easy; use Dpkg::Source::Package; my $curl = WWW::Curl::Easy->new; $curl->setopt(CURLOPT_URL, "http://192.0.2.1"); $curl->perform()' ^C [hangs] If libdpkg-perl needs a signal handler it should install it only during its own operations, probably localising it and arranging to chain to the original handler (if any) when it has done its own work. But I doubt the necessity. Thanks, Ian. -- System Information: Debian Release: 9.9 APT prefers oldstable-debug APT policy: (500, 'oldstable-debug'), (500, 'oldstable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.19.0-0.bpo.5-amd64 (SMP w/4 CPU cores) Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE=C.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init) Versions of packages libdpkg-perl depends on: ii dpkg 1.18.25 ii perl 5.24.1-3+deb9u5 Versions of packages libdpkg-perl recommends: ii bzip2 1.0.6-8.1 ii libfile-fcntllock-perl 0.22-3+b2 ii liblocale-gettext-perl 1.07-3+b1 ii xz-utils 5.2.2-1.2+b1 Versions of packages libdpkg-perl suggests: ii bcc [c-compiler] 0.16.17-3.2 ii binutils 2.28-5 ii debian-keyring 2017.05.28 ii gcc [c-compiler] 4:6.3.0-4 ii gcc-5 [c-compiler] 5.4.1-4 ii gcc-6 [c-compiler] 6.3.0-18+deb9u1 ii gnupg 2.1.18-8~deb9u4 ii gnupg2 2.1.18-8~deb9u4 ii gpgv 2.1.18-8~deb9u4 ii patch 2.7.5-1+deb9u1 -- no debconf information
--- End Message ---
--- Begin Message ---Source: dpkg Source-Version: 1.20.0 Done: Guillem Jover <[email protected]> We believe that the bug you reported is fixed in the latest version of dpkg, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [email protected], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Guillem Jover <[email protected]> (supplier of updated dpkg package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [email protected]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 1.8 Date: Sun, 08 Mar 2020 03:31:40 +0100 Source: dpkg Architecture: source Version: 1.20.0 Distribution: experimental Urgency: medium Maintainer: Dpkg Developers <[email protected]> Changed-By: Guillem Jover <[email protected]> Closes: 43573 343578 637060 647911 843776 900071 920878 923475 926472 926669 927752 930317 931135 932841 932967 933152 934980 935695 939516 939969 942195 945776 946780 948291 951614 Changes: dpkg (1.20.0) experimental; urgency=medium . [ Guillem Jover ] * libdpkg: Do not generate a backup file for the available database. Closes: #343578 * perl: Switch Getopt::Long from bundling to bundling_values. This means the few scripts using Getopt::Long will stop accepting options in the form «-ab» for «-a -b», which is not future-proof, as it does not allow these options to get new arguments without making them abiguous. * dpkg-buildpackage: Remove transient backwards R³ compatibility code. * buildtools.mk: Add support for nostrip in DEB_BUILD_OPTIONS when setting the STRIP variable. * dpkg-genbuildinfo: Do not include irrelevant packages in the Binary field. * dpkg: Do not clear selections for unknown packages. Closes: #927752 * dpkg-shlibdeps: Add support for new Build-Depends-Packages, to be able to specify multiple packages. Closes: #926669 Based on a patch by Frank Schaefer <[email protected]>. * perl: Remove support for versioned GnuPG 2 program and packages. * libdpkg: Clarify lock contender error message. Print the PID of the lock contender, and add a warning explaining that removing the lock file is never the correct solution. * dpkg-genchanges, dpkg-mergechangelogs: Remove support for ~vola versioning, as volatile.debian.org was decommissioned some time ago. * dpkg-genchanges, dpkg-mergechangelogs: Match ~deb also as a backport marker in versions. Closes: #934980 * libdpkg, dpkg: Use new versiondescribe_c() for non-localizable call sites, such as when writing to a log, which should not be localized. Reported by Julien Cristau <[email protected]>. * dpkg-query: Try to use the package synopsis from the available file if not installed. Closes: #43573 * dpkg-gencontrol: Take into account hardlinks when computing the Installed-Size substvar. Closes: #923475 Patch co-authored with Sven Joachim <[email protected]>. * dpkg: Fix and clarify behavior for packages marked to be on “hold”. These need to be processed for configuration and triggers. Closes: #926472 * dpkg: Use DPKG_ADMINDIR to set the admindir. Closes: #900071 * dpkg-source: Remove backwards compatibility code for legacy build-profiles. * perl: Give more context on field parsing errors. Closes: #637060 * dpkg-buildpackage: Add option to sanitize environment. Closes: #843776 * update-alternatives: Cope with a missing administrative directory. * update-alternatives: Create the administrative directory on demand. * dpkg-split: Cope with a missing parts/ database directory. * dpkg-split: Create the parts/ database directory on demand. * libdpkg: Consider msdbrw_needsuperuser equivalent to msdbrw_write, so the same checks are performed on normal non --force-not-root operation. * libdpkg: Add support for bootstrapping the installation of dpkg: - Create the logfile with correct permissions, and remove the code setting up the logfile from the dpkg postinst. - Allow missing status and available databases, so that they get created on write, and remove the code setting them up from the dpkg postinst. Closes: #647911 - Do not change the ownership of the triggers database directory. Either we are running as root:root which means the ownership should be correct already, or we are not which means we cannot change it anyway. - Create the dpkg database directory on demand. - Create the updates/ database directory on demand. - Create the info/ database directory on demand. * dpkg-architecture: Fix handling of exec failing in --command. Reported by Helmut Grohne <[email protected]>. * dpkg-buildpackage: Do not accept equal signs as part of the hook names. Reported by Daniel Shahaf <[email protected]>. Closes: #948291 * dselect: Mark a string for translation. * dselect: Cleanup access methods: - Remove harddisk methods, as they were non-functional due to fdisk interface changes, and do not make sense anymore as we can expect users to mount any such filesystem on their own, to then use a filesystem method instead. Prompted by Helmut Grohne <[email protected]>. - Remove cdrom method superseded by the multi_cd method. - Remove nfs methods, as there is nothing special about NFS, and mounting these should just be left to the local admin, who can mount any other remote filesystem too. - Remove multi_mount method, as the multi_cd method can take care of mounting the necessary images or devices. - Replace changelog with correct copyright in file header. * dpkg, dselect: Stop using first-person singular in output messages. * libdpkg: Fix memory leak in parsedb context close. * buildtools.mk: Add QMAKE variable. Closes: #920878 * po: Fix translation of --compare-versions. Closes: #951614 Thanks to Boyuan Yang <[email protected]>. * Perl modules: - Dpkg::Source::Package: Verify original tarball signatures at build time. - Dpkg::BuildFlags: Add new unset() method. Requested by Daniel Schepler <[email protected]>. - Dpkg::Source::Package::V2: Emit a special patch header on single-debian-patch. Closes: #933152 - Dpkg::Vendor::Debian: Only scan /usr/local/ directories that exist. Closes: #932967 - Dpkg::Vendor::Debian: Do not set -Werror=implicit-function-declaration for C++. Closes: #939969 - Dpkg::Deps: Check for valid virtual package version relations. Do not allow non-equal version relations in virtual provides. Closes: #930317 - Dpkg: Remove internal lowercase variables $version, $progname, $admindir, $dpkglibdir and $pkgdatadir. - Dpkg::Changelog: Remove obsolete methods dpkg() and rfc822(). - Dpkg::Changelog::Entry::Debian: Remove obsolete methods check_header() and check_trailer(). Hide variables $regex_header and $regex_trailer. - Dpkg::Changelog::Parse: Remove warnings of obsolete options forceplugin and libdir. Remove obsolete functions changelog_parse_debian() and changelog_parse_plugin(). - Dpkg::Compression: Hide internal lowercase variables $default_compression, $default_compression_level and $compression_re_file_ext. - Dpkg::Deps::KnownFacts: Remove obsolete check_package() method. - Dpkg::Exit: Hide internal lowercase @handlers variable. - Dpkg::Gettext: Remove obsolete _g() function. - Dpkg::Source::Package: Hide internal lowercase variable @tar_ignore_default_pattern. Remove iternal lowercase variable alias $diff_ignore_default_regexp. - Dpkg::Substvars: Remove obsolete no_warn() method. - Dpkg::Index: Change default value for unique_tuple_key to 1. - Dpkg::Version: Remove deprecation warning from semantic change in bool overload. - Dpkg::Checksums: Remove obsolete 'program' property warning. - Dpkg::Conf: Remove obsolete methods and obsolete croak for method option. - Dpkg::Vendor: Remove obsolete 'keyrings' hook. - Dpkg::Exit: Unregister all signal handlers once we have executed them. Closes: #932841 - Dpkg::Exit: Register exit handlers also for __DIE__. - Dpkg::Source::Package::V3::Native: Do not say v1.0 for 3.0 formats. - Dpkg::Dist::Files: On filename parse error say file instead of package. - Dpkg::Substvars: Add new vendor:Name and vendor:Id substvars. - Dpkg::Source::Package: Detect directory traversals under debian directory. Reported by Felix Lechner <[email protected]>. * Documentation: - man: Fix uncommon wording constructs. - man: Use a minus sign for a literal string. - man: Clarify that the pager is called via «$SHELL -c». - dpkg-shlibdeps: Document split_soname() function. Prompted by Christopher Crim <[email protected]>. - Dpkg::Changelog: Document methods provided by subclasses. Reported by Felix Lechner <[email protected]>. - man: Globally adjust left and disable hyphenation. - man: Split dselect(1) --color from --colour option items. - man: Describe the SONAME formats supported in deb-shlibs(5). - man: Move template symbol documentation into new deb-src-symbols(5). - Dpkg::Changelog::Parse: Remove $ sigil from option names in POD. - Dpkg: Say class instead of object when appropriate. - Dpkg::Changelog: Clarify that these classes inherit from some other base class, which will contain the missing documentation. Prompted by intrigeri <[email protected]>. - man: Clarify deb-changelog(5) format. Closes: #946780 - man: Clarify debian/source/include-binaries format in dpkg-source(1). Prompted by Felix Lechner <[email protected]>. - man, doc: Clarify that the postinst "triggered" argument gets the trigger-name(s) as a space-separated list in the second argument. Prompted by Michael Biebl <[email protected]>. - dselect: Update the multicd README file. - doc, man: Mark T and I package instances to avoid misreadings. * Code internals: - Dpkg::Source::Package: Refactor original tarball handling. - perl: Use File::Copy instead of spawning mv/cp commands. - Dpkg::OpenPGP: Refactor signature verification into a new function. - Dpkg::OpenPGP: Make it possible to verify detached signatures. - Dpkg::OpenPGP: Add support for importing an OpenPGP key into a keyring. - Dpkg::BuildFlags: Remove unused hash keys. - libdpkg: Use the variable instead of a type as sizeof() argument. - libdpkg: Use the totalwritten variable for a consistency check. - dselect: Reduce scope of variable, to avoid it being unused in a branch. - dpkg-deb: Fold two adjacent if conditionals into a single one. - dpkg: Initialize flagdeppossi in check_conflict(). - libdpkg: Add new C locale switch over support. - libdpkg: Add new versiondescribe_c() to force a C locale. - dselect: Make baselist::draw_column_*() col arguments const. - libdpkg: Use p instead of name in dpkg_arch_name_is_illegal(). - dpkg: Remove redudant condition for sourcefile in updateavailable(). - dpkg, update-alternatives: Make variables static. - libdpkg: Add missing symbols to the version map. - libdpkg: Fix fiemap memory layout usage that confuses gcc 10 to emit a warning. - libdpkg: Only use varbuf_printf() in pkg_format_show() when necessary. This should speed up «dpkg-query --show» formatting. - libdpkg: Fix package format string to be a string literal. This suppresses a gcc warning. - dpkg: Fix short lived memory leak in --force-help handling. - dpkg-split: Fix short lived file descriptor leak in --auto. - start-stop-daemon: Explicitly ignore uninmportant function return values. - start-stop-daemon: Fix memory leak on multiple --chuid arguments. - start-stop-daemon: Close the notification socket in the child. - libdpkg: Fix memory leaks in zlib and bz2 decompression functions. - libdpkg: Add new dir_make_path() and dir_make_path_parent() functions. - libdpkg: Add new atomic file flag to create the base path when missing. - libdpkg: Fix modstatdb_rw enum comments. - libdpkg, dpkg-query: Optimize db-fsys:Files virtual variable loading. We load either the entire db-fsys for all packages, possibly optimized per platform (such as by using fiemap), or the specific ones for the requested packages. This also fixes a problematic cast removing the constness of a variable. - Dpkg::Dist::Files: Document the two filename pattern formats. - update-alternatives: Remove redundant condition in argument parser. - update-alternatives: Move error context setup before calling setjmp(), so that cppcheck stops being confused. - test: Reformat 200_Dpkg_Shlibs.cpp for coding style conformance. - dpkg: Make it possible for the compiler to check printf() format string arguments on dependency printer. - dselect: Reorder branches in packagelist::deselect_one_of so that they are not duplicated. - dselect: Use nullptr instead of NULL. - dselect: Use static_cast<> instead of old-style type qualifier cast. - dselect: Do not use unnecessary old-style casts. - dselect: Fix variable types to avoid needing old-style casts. - libcompat: Disarm libselinux setexecfilecon() declaration for libcompat-test. - libdpkg: Define new VARBUF_OBJECT macro. - libdpkg: Add new ATOMIC_FILE_NORMAL enum value to avoid a cast in C++. - libdpkg: Use a new DPKG_NULL macro that works in C and C++. - libdpkg: Use a new DPKG_STATIC_CAST macro that works in C and C++. - libdpkg: Move printing of errno into dpkg_error_set(). - libdpkg: Use a varbuf to store the problem messages per parsedb context. - libdpkg: Fix Doxygen comments. * Build system: - Bump minimal Perl version to 5.24.1. - Add a serial versioning to the m4 files. - Install m4 files into system aclocal directory. - Bump minimal gettext version to 0.19.8, to get the m4 files that can cross-build for musl-based systems. - Enable more compiler warnings. - Update Doxygen configuration from version 1.8.16. * Packaging: - Remove obsolete Breaks satisfied since oldstable. - Replace custom rule for 'configure' with call to dh_autoreconf. Thanks to Dan Streetman <[email protected]>. Closes: #939516 - dselect: Remove methods state files on purge. Spotted by Sven Joachim <[email protected]>. - Switch to debhelper compatibility level 12. - Switch from debian/compat to debhelper-commpat in Build-Depends. - Bump Standards-Version to 4.5.0 (no changes required). * Test suite: - Remove perlcritic Documentation::RequirePodLinksIncludeText suppression. - Clarify cppcheck va_list_usedBeforeStarted suppression. - Skip build directories from codespell check. - Update stopwords for codespell 1.16.0. - Suppress new bogus cppcheck 1.90 false positives. - libdpkg: Remove redundant assignment in t-ehandle unit test. - Skip backup files from codespell check. - Ignore python-3.8 runtime warnings in codespell. . [ Updated programs translations ] * German (Sven Joachim). * Portuguese (Miguel Figueiredo). Closes: #935695 * Simplified Chinese (Mo Zhou). Closes: #942195, #945776 . [ Updated dselect translations ] * German (Sven Joachim). . [ Updated scripts translations ] * German (Helge Kreutzmann). . [ Updated man pages translations ] * German (Helge Kreutzmann). Closes: #931135 Checksums-Sha1: a35ba1ce1b348ea72d16a1bc2042ea6a48118b15 2109 dpkg_1.20.0.dsc eda82352ba507bc7d7749b44579983ace07064c8 4738556 dpkg_1.20.0.tar.xz cce7aaa4ad2cf52f4fd7bb9002df4248c8709919 7430 dpkg_1.20.0_amd64.buildinfo Checksums-Sha256: 817d80805303aa1c5a02c37cb1a40df25d6ced25a0f03868719b894278f41650 2109 dpkg_1.20.0.dsc b633cc2b0e030efb61e11029d8a3fb1123f719864c9992da2e52b471c96d0900 4738556 dpkg_1.20.0.tar.xz 4d36ff4093ae61b0b6b48ce6ea25cfaa69570e46862a8d524e3401f022e6e686 7430 dpkg_1.20.0_amd64.buildinfo Files: 9faeaa49be1e6aeaaafe320941f7c206 2109 admin required dpkg_1.20.0.dsc f88f077236a3ff3decae3b25c989893d 4738556 admin required dpkg_1.20.0.tar.xz a550e984256025a8b49a3cd96f2e4fb1 7430 admin required dpkg_1.20.0_amd64.buildinfo -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEETz509DYFDBD1aWV0uXK/PqSuV6MFAl5kXjgACgkQuXK/PqSu V6Pv8g//bodJZKKKWUSbTBAS0itG1TpKa/BsY1zV1itAQvY+ZBhxO9M/4kZJ482B j17+Am/7XPV47zmxTEAwMbkHWA3vIPJCN+I1wps1rdv4wc5Lcom2ZPTsZTyacvkX RMUX92/3CF3/yKcFte6z85cTSQcUCdldPBB1qlTJBB9ecZrLNYkLHX69uTkbGUew ku2sjokVX1407EmcLta1WfZuYmKyNGWtvFiWgkxZYr84oWqHouLXmrBPjFgdO5kx MpOw8ez0pHbrqmAr+xt5WR/o2vyquiYE9LGTpxa2F0lShRiGruOxmg57DZNsYlzh KNEEWYhnpUDahFxrw3ZlgGKXjVOeGxozmH36Qb+VRGvz1rYxdNOINLjDTsvEk9rw btUGdwUa2SceZeVGSmRK4BxMot1gtcY91yXuAzejtywlswxxKPcl3FaXhFtXRl9h 35HVjWotCOGdLQDO/MG+KIbq0D6STE4x6Prgek5PEDhohiIVSim1SO9mcMxgUcY3 ohamUcN++A5f1RqwMTdGNrFo1PJYOUiSmbiautjsz2LPVd4OXnWRMA/rmX6zoPGE Y9WsSIs0W/GsKEjjQTpS3ueuE/fAfpUfab8DhaRB0g0oWWcuady4l+rgUc978iSa SCHtjYu+kPajCWMcpSLeHqNlSUru6Bi5cwBmzm38DQdzieLKgnw= =oxT9 -----END PGP SIGNATURE-----
--- End Message ---

