summaryrefslogtreecommitdiff
path: root/debian/openssh-client.postinst
diff options
context:
space:
mode:
Diffstat (limited to 'debian/openssh-client.postinst')
-rw-r--r--debian/openssh-client.postinst21
1 files changed, 18 insertions, 3 deletions
diff --git a/debian/openssh-client.postinst b/debian/openssh-client.postinst
index 2168dc1f1..4744a34a1 100644
--- a/debian/openssh-client.postinst
+++ b/debian/openssh-client.postinst
@@ -59,13 +59,28 @@ set_ssh_permissions() {
59 fi 59 fi
60 fi 60 fi
61 61
62 # libexecdir changed, so migrate old statoverrides.
63 if [ -x /usr/sbin/dpkg-statoverride ] &&
64 override="$(dpkg-statoverride --list /usr/lib/ssh-keysign)"; then
65 override_user="${override%% *}"
66 override="${override#* }"
67 override_group="${override%% *}"
68 override="${override#* }"
69 override_mode="${override%% *}"
70 if dpkg-statoverride --update --add \
71 "$override_user" "$override_group" "$override_mode" \
72 /usr/lib/openssh/ssh-keysign; then
73 dpkg-statoverride --remove /usr/lib/ssh-keysign || true
74 fi
75 fi
76
62 if [ ! -x /usr/sbin/dpkg-statoverride ] || \ 77 if [ ! -x /usr/sbin/dpkg-statoverride ] || \
63 ! dpkg-statoverride --list /usr/lib/ssh-keysign >/dev/null ; then 78 ! dpkg-statoverride --list /usr/lib/openssh/ssh-keysign >/dev/null; then
64 db_get ssh/SUID_client 79 db_get ssh/SUID_client
65 if [ "$RET" = "false" ] ; then 80 if [ "$RET" = "false" ] ; then
66 chmod 0755 /usr/lib/ssh-keysign 81 chmod 0755 /usr/lib/openssh/ssh-keysign
67 elif [ "$RET" = "true" ] ; then 82 elif [ "$RET" = "true" ] ; then
68 chmod 4755 /usr/lib/ssh-keysign 83 chmod 4755 /usr/lib/openssh/ssh-keysign
69 fi 84 fi
70 fi 85 fi
71} 86}