Package: fai-client
Severity: wishlist
Tags: patch

To have a "secure" method to get the configuration space with subversion
you should have a password. I have patched the get-config-dir-svn file
to enable support for this.
Index: lib/get-config-dir-svn
===================================================================
--- lib/get-config-dir-svn      (revision 5003)
+++ lib/get-config-dir-svn      (working copy)
@@ -9,9 +9,11 @@
 # Short-Description: get $FAI from an svn repository.
 ### END SUBROUTINE INFO
 
-# matched string: "svn://[EMAIL PROTECTED]/svnpath"
+# matched string: "svn://user:[EMAIL PROTECTED]/svnpath"
 protocol=$(expr match "$FAI_CONFIG_SRC" '\([^:]*\)://')
-username=$(expr match "$FAI_CONFIG_SRC" '[^:]*://\([EMAIL PROTECTED])@')
+username=$(expr match "$FAI_CONFIG_SRC" '[^:]*://\([^@:]*\)[@:]')
+password=$(expr match "$FAI_CONFIG_SRC" '[^:]*://[^:]*:\([EMAIL PROTECTED])@')
+
 svnpath=$(expr match "$FAI_CONFIG_SRC" '[^:]*://[EMAIL 
PROTECTED]@\([^[:space:]]\+\)')
 
 case $protocol in
@@ -39,15 +41,16 @@
 esac
                
 [ -n "$username" ] && user="--username $username"
+[ -n "$password" ] && pass="--password $password"
 [ -z "$username" ] && svnurl=$FAI_CONFIG_SRC
 
 if [ -d "$FAI/.svn" ] ; then
    echo "Updating SVN in $FAI"
    cd $FAI
-   svn up $user | grep -v 'Updated to revision' > $LOGDIR/getconf.log
+   svn up $user $pass | grep -v 'Updated to revision' > $LOGDIR/getconf.log
    task_error 701
 else 
    echo "Checking out SVN"
-   svn co $user $svnurl $FAI | grep -v 'Checked out revision' > 
$LOGDIR/getconf.log
+   svn co $user $pass $svnurl $FAI | grep -v 'Checked out revision' > 
$LOGDIR/getconf.log
    task_error 702
 fi

Reply via email to