|
From: <di...@us...> - 2007-01-26 16:26:21
|
Revision: 299
http://safekeep.svn.sourceforge.net/safekeep/?rev=299&view=rev
Author: dimi
Date: 2007-01-26 08:26:12 -0800 (Fri, 26 Jan 2007)
Log Message:
-----------
Be a little more careful when accessing environment variables, provide fallbacks in case they are not defined
Modified Paths:
--------------
safekeep/trunk/safekeep
Modified: safekeep/trunk/safekeep
===================================================================
--- safekeep/trunk/safekeep 2007-01-26 11:04:57 UTC (rev 298)
+++ safekeep/trunk/safekeep 2007-01-26 16:26:12 UTC (rev 299)
@@ -100,6 +100,11 @@
if path.startswith('/'): return root + path
return os.path.join(root, path)
+def getenv(var, defval=None):
+ val = os.environ.get(var)
+ if val is None: return defval
+ return val
+
######################################################################
# Configuration file parser
######################################################################
@@ -163,10 +168,11 @@
host = user = key_ctrl = key_data = None
if host and not user:
user = 'root'
+ home = getenv('HOME', '/root')
if host and not key_ctrl:
- key_ctrl = os.path.join(os.environ['HOME'], '.ssh', 'safekeep-server-ctrl-key')
+ key_ctrl = os.path.join(home, '.ssh', 'safekeep-server-ctrl-key')
if host and not key_data:
- key_data = os.path.join(os.environ['HOME'], '.ssh', 'safekeep-server-data-key')
+ key_data = os.path.join(home, '.ssh', 'safekeep-server-data-key')
repo_el = backup_el.getElementsByTagName('repo')
dir = None
@@ -619,7 +625,7 @@
if deploy:
info('%s: Key do not exist, generating it now: %s' % (id, privatekeyfile))
gencmd = 'ssh-keygen -q -b 1024 -t dsa -N "" -C "SafeKeep auto generated key at %s@%s" -f %s' % \
- (os.environ['LOGNAME'], os.uname()[1], privatekeyfile)
+ (getenv('LOGNAME', 'root'), os.uname()[1], privatekeyfile)
debug(gencmd)
if os.system(gencmd):
error('%s: Failed to generate key %s. Skipping client.' % (id, privatekeyfile))
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|