summaryrefslogtreecommitdiff
path: root/sbin/update-ca-certificates
diff options
context:
space:
mode:
Diffstat (limited to 'sbin/update-ca-certificates')
-rwxr-xr-xsbin/update-ca-certificates8
1 files changed, 8 insertions, 0 deletions
diff --git a/sbin/update-ca-certificates b/sbin/update-ca-certificates
index bdf5b27..175035a 100755
--- a/sbin/update-ca-certificates
+++ b/sbin/update-ca-certificates
@@ -111,6 +111,14 @@ remove() {
fi
}
+# Remove all orphan symlinks found in ETCCERTSDIR, to prevent
+# `openssl rehash` from exiting with an error. See #895482, #895473.
+find $ETCCERTSDIR -type l ! -exec test -e {} \; -print | while read orphan
+do
+ rm -f "$orphan"
+ echo "Removed orphan symlink $orphan"
+done
+
cd "$ETCCERTSDIR"
if [ "$fresh" = 1 ]; then
echo "Clearing symlinks in $ETCCERTSDIR..."