diff options
-rwxr-xr-x | cmdline/apt-key | 5 | ||||
-rw-r--r-- | debian/apt.postinst | 5 | ||||
-rw-r--r-- | debian/changelog | 6 |
3 files changed, 14 insertions, 2 deletions
diff --git a/cmdline/apt-key b/cmdline/apt-key index 843163f82..8a995dadd 100755 --- a/cmdline/apt-key +++ b/cmdline/apt-key @@ -5,9 +5,12 @@ unset GREP_OPTIONS # We don't use a secret keyring, of course, but gpg panics and # implodes if there isn't one available -GPG_CMD='gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /etc/apt/secring.gpg' +SECRETKEYRING="$(mktemp)" +trap "rm -f '${SECRETKEYRING}'" 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM +GPG_CMD="gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring '${SECRETKEYRING}'" if [ "$(id -u)" -eq 0 ]; then + # we could use a tmpfile here too, but creation of this tends to be time-consuming GPG_CMD="$GPG_CMD --trustdb-name /etc/apt/trustdb.gpg" fi diff --git a/debian/apt.postinst b/debian/apt.postinst index cc0d8b1fe..4d87c4e25 100644 --- a/debian/apt.postinst +++ b/debian/apt.postinst @@ -15,6 +15,11 @@ set -e case "$1" in configure) + SECRING='/etc/apt/secring.gpg' + # test if secring is an empty normal file + if test -f $SECRING -a ! -s $SECRING; then + rm -f $SECRING + fi apt-key update ;; diff --git a/debian/changelog b/debian/changelog index 2e22e64d8..914c53801 100644 --- a/debian/changelog +++ b/debian/changelog @@ -21,8 +21,12 @@ apt (0.8.15.3) UNRELEASED; urgency=low - use CndSet in pkgInitConfig (Closes: #629617) * apt-pkg/depcache.cc: - change default of APT::AutoRemove::SuggestsImportant to true + * cmdline/apt-key: + - use a tmpfile instead of /etc/apt/secring.gpg (Closes: #632596) + * debian/apt.postinst: + - remove /etc/apt/secring.gpg if it is an empty file - -- David Kalnischkies <kalnischkies@gmail.com> Fri, 15 Jul 2011 09:29:37 +0200 + -- David Kalnischkies <kalnischkies@gmail.com> Sat, 16 Jul 2011 14:19:51 +0200 apt (0.8.15.2) unstable; urgency=high |