[Cupt-devel] Bug#764238: libcupt3-0: Version selectors are exposed to external tools, breaking pinning
James McCoy
jamessan at debian.org
Mon Oct 6 15:08:58 UTC 2014
Package: libcupt3-0
Version: 2.8.3
Severity: important
Doing an update today, apt-listbugs showed a bugs that seemed worth
pinning the packages over, so I did that. This resulted in
/etc/apt/preferences.d/apt-listbug containing pins like
Pin: version 1.17.13^installed
Any tool other than cupt doesn't understand that version, which means
that e.g. a pinned package related to a security upgrade may get
upgraded when it shouldn't (unattended-upgrades).
$ cupt policy dpkg-dev
dpkg-dev:
Installed: 1.17.13^installed
Preferred: 1.17.13^installed
Version table:
*** 1.17.13^installed 1000
/var/lib/dpkg/status installed/ (unsigned)
1.17.15 501
http://http.debian.net/debian unstable/main (signed)
$ apt-cache policy dpkg-dev
dpkg-dev:
Installed: 1.17.13
Candidate: 1.17.15
Package pin: (not found)
Version table:
1.17.15 1000
500 http://http.debian.net/debian/ sid/main i386 Packages
*** 1.17.13 1000
100 /var/lib/dpkg/status
Removing the version selector from the pin causes apt to understand the
pin again, but now cupt doesn't:
$ cupt policy dpkg-dev
dpkg-dev:
Installed: 1.17.13^installed
Preferred: 1.17.15
Version table:
1.17.15 501
http://http.debian.net/debian unstable/main (signed)
*** 1.17.13^installed 100
/var/lib/dpkg/status installed/ (unsigned)
$ apt-cache policy dpkg-dev
dpkg-dev:
Installed: 1.17.13
Candidate: 1.17.13
Package pin: 1.17.13
Version table:
1.17.15 1000
500 http://http.debian.net/debian/ sid/main i386 Packages
*** 1.17.13 1000
100 /var/lib/dpkg/status
Regardless of how the pin is specified, cupt still decides to upgrade
dpkg-dev due to libdpkg-perl having a lock-step Depends on dpkg-dev,
although at different scores.
With the version selector in the pin:
D: (0:0) problem (3:1): <user requests> <not installed>: custom: upgrade libdpkg-perl
D: (0:0) -> (1,Δ:[uw=-460]) trying: '' -> 'unsatisfied custom: upgrade libdpkg-perl'
D: (0:0) -> (2,Δ:[401v/u/pp=539]) trying: 'libdpkg-perl 1.17.13^installed' -> 'libdpkg-perl 1.17.15'
D: (0:0) -> (3,Δ:[-200v/r/ra/2pp=-764]) trying: 'libdpkg-perl 1.17.13^installed' -> 'libdpkg-perl <not installed>'
D: (2:539) problem (5:2): dpkg-dev 1.17.13^installed: depends 'libdpkg-perl (= 1.17.13)'
D: ignoring soft dependency relation: dpkg-dev 1.17.15: recommends 'libalgorithm-merge-perl'
D: (2:539) -> (4,Δ:[-499v/u=-359]) trying: 'dpkg-dev 1.17.13^installed' -> 'dpkg-dev 1.17.15'
D: (4:180) finished
Without the version selector:
D: (0:0) problem (3:1): <user requests> <not installed>: custom: upgrade libdpkg-perl
D: (0:0) -> (1,Δ:[uw=-460]) trying: '' -> 'unsatisfied custom: upgrade libdpkg-perl'
D: (0:0) -> (2,Δ:[401v/u/pp=539]) trying: 'libdpkg-perl 1.17.13^installed' -> 'libdpkg-perl 1.17.15'
D: (0:0) -> (3,Δ:[-200v/r/ra/2pp=-764]) trying: 'libdpkg-perl 1.17.13^installed' -> 'libdpkg-perl <not installed>'
D: (2:539) problem (5:2): dpkg-dev 1.17.13^installed: depends 'libdpkg-perl (= 1.17.13)'
D: ignoring soft dependency relation: dpkg-dev 1.17.15: recommends 'libalgorithm-merge-perl'
D: (2:539) -> (4,Δ:[-200v/r=-1960]) trying: 'dpkg-dev 1.17.13^installed' -> 'dpkg-dev <not installed>'
D: (2:539) -> (5,Δ:[401v/u/pp=539]) trying: 'dpkg-dev 1.17.13^installed' -> 'dpkg-dev 1.17.15'
I can split this part out to a separate bug if you'd like.
-- System Information:
Debian Release: jessie/sid
APT prefers unstable
APT policy: (500, 'unstable'), (200, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 3.16-2-486
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 libcupt3-0 depends on:
ii libc6 2.19-11
ii libcupt-common 2.8.3
ii libgcc1 1:4.9.1-16
ii libgcrypt20 1.6.2-4
ii libstdc++6 4.9.1-16
Versions of packages libcupt3-0 recommends:
ii bzip2 1.0.6-7
ii ed 1.10-2
ii gpgv 1.4.18-4
ii libcupt3-0-downloadmethod-curl 2.8.3
Versions of packages libcupt3-0 suggests:
ii cupt 2.8.3
pn debdelta <none>
ii dpkg-dev 1.17.13
pn dpkg-repack <none>
ii xz-utils [lzma] 5.1.1alpha+20120614-2
-- no debconf information
More information about the Cupt-devel
mailing list