Package: freeradius Version: 2.1.10+dfsg-2 Severity: normal Tags: patch I just got a bug report which I wanted to forward. The user tried to update (version before 2.1.8) and got following error:
Updating default SSL certificate settings, if any...
ln: creating symbolic link `/etc/freeradius/certs/random' to `/dev/urandom':
File exists
dpkg: error processing freeradius (--install):
subprocess post-installation script returned error exit status 1
Errors were encountered while processing:
freeradius
The problem is that the file already existed as a symlink. I would propose a
patch which changes the test to -e instead of -f.
--- System information. ---
Architecture: amd64
Kernel: Linux 2.6.38-1-amd64
Debian Release: wheezy/sid
500 unstable www.debian-multimedia.org
500 unstable ftp.debian.org
1 experimental www.debian-multimedia.org
1 experimental ftp.debian.org
--- Package information. ---
Depends (Version) | Installed
=========================================-+-====================
lsb-base (>= 3.1-23.2) | 3.2-27
libc6 (>= 2.4) | 2.11.2-13
libfreeradius2 (= 2.1.9+dfsg-1+b1) |
libgdbm3 (>= 1.8.3) | 1.8.3-9
libltdl7 (>= 2.2.6b) | 2.2.6b-2
libpam0g (>= 0.99.7.1) | 1.1.2-2
libperl5.10 (>= 5.10.1) | 5.10.1-18
libpython2.6 (>= 2.6) | 2.6.6-8+b1
libssl0.9.8 (>= 0.9.8m-1) | 0.9.8o-5
zlib1g (>= 1:1.1.4) | 1:1.2.3.4.dfsg-3
freeradius-common |
ssl-cert | 1.0.28
ca-certificates | 20090814+nmu2
adduser | 3.112+nmu2
Recommends (Version) | Installed
===============================-+-===========
freeradius-utils |
Suggests (Version) | Installed
====================================-+-===========
freeradius-ldap |
freeradius-postgresql |
freeradius-mysql |
freeradius-krb5 |
From da73e1c666ce008dbfae907d1af3c4769530ca8b Mon Sep 17 00:00:00 2001 From: Sven Eckelmann <[email protected]> Date: Fri, 25 Mar 2011 18:53:07 +0100 Subject: [PATCH] Test for existing file instead of regular file in postinst Signed-off-by: Sven Eckelmann <[email protected]> --- debian/freeradius.postinst | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/debian/freeradius.postinst b/debian/freeradius.postinst index 58ae9b4..179a824 100755 --- a/debian/freeradius.postinst +++ b/debian/freeradius.postinst @@ -137,7 +137,7 @@ case "$1" in make-ssl-cert generate-default-snakeoil fi if egrep -q '^[ ]*certificate_file = \${certdir}/server.pem' /etc/freeradius/eap.conf && \ - test ! -f /etc/freeradius/certs/server.pem + test ! -e /etc/freeradius/certs/server.pem then serverpem=wasnotthere ln -s /etc/ssl/certs/ssl-cert-snakeoil.pem /etc/freeradius/certs/server.pem @@ -146,7 +146,7 @@ case "$1" in [ "$serverpem" = "wasnotthere" ] ) \ || \ ( egrep -q '^[ ]*private_key_file = \${certdir}/server.key' /etc/freeradius/eap.conf && \ - test ! -f /etc/freeradius/certs/server.key ) + test ! -e /etc/freeradius/certs/server.key ) then ln -s /etc/ssl/private/ssl-cert-snakeoil.key /etc/freeradius/certs/server.key sed -i -e 's,^\([ ]*private_key_file = \${certdir}\)/server.pem$,\1/server.key,' /etc/freeradius/eap.conf @@ -156,17 +156,17 @@ case "$1" in fi fi if egrep -q '^[ ]*CA_file = \${cadir}/ca.pem' /etc/freeradius/eap.conf && \ - test ! -f /etc/freeradius/certs/ca.pem + test ! -e /etc/freeradius/certs/ca.pem then ln -s /etc/ssl/certs/ca-certificates.crt /etc/freeradius/certs/ca.pem fi if egrep -q '^[ ]*random_file = \${certdir}/random' /etc/freeradius/eap.conf && \ - test ! -f /etc/freeradius/certs/random + test ! -e /etc/freeradius/certs/random then sed -i -e 's,^\([ ]*random_file = \)\${certdir}/random$,\1/dev/urandom,' /etc/freeradius/eap.conf fi if egrep -q '^[ ]*dh_file = \${certdir}/dh' /etc/freeradius/eap.conf && \ - test ! -f /etc/freeradius/certs/dh + test ! -e /etc/freeradius/certs/dh then # ssl-cert dependency also provides us with openssl openssl dhparam -out /etc/freeradius/certs/dh 1024 -- 1.7.4.1
signature.asc
Description: This is a digitally signed message part.

