summaryrefslogtreecommitdiffstats
path: root/package/dropbear/S50dropbear
diff options
context:
space:
mode:
Diffstat (limited to 'package/dropbear/S50dropbear')
-rw-r--r--package/dropbear/S50dropbear14
1 files changed, 14 insertions, 0 deletions
diff --git a/package/dropbear/S50dropbear b/package/dropbear/S50dropbear
index 2694931d01..af50ccf254 100644
--- a/package/dropbear/S50dropbear
+++ b/package/dropbear/S50dropbear
@@ -11,6 +11,20 @@ start() {
echo -n "Starting dropbear sshd: "
umask 077
+
+ # If /etc/dropbear is not a directory, and
+ # - the filesystem is RO (i.e. we can not rm the symlink),
+ # create the directory pointed to by the symlink.
+ # - the filesystem is RW (i.e. we can rm the symlink),
+ # replace the symlink with an actual directory
+ if ! [ -d /etc/dropbear ]; then
+ if rm -f /etc/dropbear; then
+ mkdir -p /etc/dropbear
+ else
+ mkdir -p $(readlink /etc/dropbear)
+ fi
+ fi
+
start-stop-daemon -S -q -p /var/run/dropbear.pid \
--exec /usr/sbin/dropbear -- $DROPBEAR_ARGS
[ $? = 0 ] && echo "OK" || echo "FAIL"
OpenPOWER on IntegriCloud