From e5ff9675317436a5bb8eb7aa9504ce5ca540adcb Mon Sep 17 00:00:00 2001
From: Florian Fainelli <florian@openwrt.org>
Date: Mon, 2 Jan 2006 13:00:09 +0000
Subject: [PATCH] Corrected ticket #100

SVN-Revision: 2804
---
 openwrt/package/openssh/files/S50sshd         |  4 +--
 .../openssh/ipkg/openssh-server.postinst      | 32 +++++++++++++++++++
 2 files changed, 34 insertions(+), 2 deletions(-)
 create mode 100644 openwrt/package/openssh/ipkg/openssh-server.postinst

diff --git a/openwrt/package/openssh/files/S50sshd b/openwrt/package/openssh/files/S50sshd
index bb23691954..f1bc83366d 100755
--- a/openwrt/package/openssh/files/S50sshd
+++ b/openwrt/package/openssh/files/S50sshd
@@ -2,7 +2,7 @@
 
 for type in rsa dsa; do {
   # check for keys
-  key=/etc/ssh/ssh_${type}_host_key
+  key=/etc/ssh/ssh_host_${type}_key
   [ ! -f $key ] && {
     # generate missing keys
     [ -x /usr/bin/ssh-keygen ] && {
@@ -11,5 +11,5 @@ for type in rsa dsa; do {
     exit 0
   }
 }; done
-
+mkdir -p /var/emtpy
 /usr/sbin/sshd
diff --git a/openwrt/package/openssh/ipkg/openssh-server.postinst b/openwrt/package/openssh/ipkg/openssh-server.postinst
new file mode 100644
index 0000000000..b6e167f696
--- /dev/null
+++ b/openwrt/package/openssh/ipkg/openssh-server.postinst
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+name=sshd
+id=99
+
+# do not change below
+# check if we are on real system
+if [ -z "${IPKG_INSTROOT}" ]; then
+	# create copies of passwd and group, if we use squashfs
+	rootfs=`mount |awk '/root/ { print $5 }'`
+	if [ "$rootfs" = "squashfs" ]; then
+		if [ -h /etc/group ]; then
+			rm /etc/group
+			cp /rom/etc/group /etc/group
+		fi
+		if [ -h /etc/passwd ]; then
+			rm /etc/passwd
+			cp /rom/etc/passwd /etc/passwd
+		fi
+	fi
+fi
+
+echo ""
+if [ -z "$(grep ^\\${name}: ${IPKG_INSTROOT}/etc/group)" ]; then 
+	echo "adding group $name to /etc/group"
+	echo "${name}:x:${id}:" >> ${IPKG_INSTROOT}/etc/group  
+fi
+
+if [ -z "$(grep ^\\${name}: ${IPKG_INSTROOT}/etc/passwd)" ]; then 
+	echo "adding user $name to /etc/passwd"
+	echo "${name}:x:${id}:${id}:${name}:/var/empty/.${name}:/bin/false" >> ${IPKG_INSTROOT}/etc/passwd
+fi
-- 
2.30.2