-#! /bin/sh
+#! /bin/bash
# Copyright (c) 1999-2001 Jason Gunthorpe <jgg@debian.org>
# Copyright (c) 2002-2003,2006 Ryan Murray <rmurray@debian.org>
# Copyright (c) 2004-2005 Joey Schulze <joey@infodrom.org>
+# Copyright (c) 2008 Peter Palfrader <peter@palfrader.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
if [ -z "$TERM" -o "$TERM" = "dumb" ]
then
exec > /dev/null 2>&1
+ sleep $(( $RANDOM % 120 ))
else
verbose=-v
fi
trap "rm -f lock" exit
case $HOST in
-*$LOCALSYNCON*)
+$LOCALSYNCON)
udhost=
;;
*)
;;
esac
-rsync ${verbose} -e ssh -rp "${udhost}/var/cache/userdir-ldap/hosts/$HOST" .
+rsync ${verbose} -e 'ssh -i /etc/ssh/ssh_host_rsa_key -o PreferredAuthentications=publickey' -rp "${udhost}/var/cache/userdir-ldap/hosts/$HOST" .
makedb "$HOST/passwd.tdb" -o passwd.db.t
if [ -s "$HOST/shadow.tdb" ]
ln -sf `pwd -P`/ssh-rsa-shadow /etc/ssh
ln -sf `pwd -P`/ssh_known_hosts /etc/ssh
+find $HOST -name "ssh-rsa-shadow-*" -type f | while read f
+do
+ user=$(echo $f | sed s@.*-@@)
+ id ${user} 2>/dev/null >/dev/null
+ if [ $? -eq 0 ]; then
+ chown $user $f
+ fi
+done
+
if [ -x /usr/bin/dchroot ]; then
CHROOTS=`dchroot --listpaths`
for c in $CHROOTS; do