import userdir_ldap
class Account:
- array_values = ['keyFingerPrint', 'mailWhitelist', 'mailRBL', 'mailRHSBL', 'supplementaryGid']
+ array_values = ['keyFingerPrint', 'mailWhitelist', 'mailRBL', 'mailRHSBL', 'supplementaryGid', 'sshRSAAuthKey']
int_values = ['shadowExpire', 'gidNumber']
defaults = {
'accountStatus': 'active',
safe_makedirs(os.path.join(GlobalDir, 'userkeys'))
for x in PasswdAttrs:
+ a = UDLdap.Account(x[0], x[1])
+ if not 'sshRSAAuthKey' in a: continue
- if x[1].has_key("uidNumber") == 0 or \
- x[1].has_key("sshRSAAuthKey") == 0:
- continue
-
- User = GetAttr(x, "uid")
F = None
-
try:
OldMask = os.umask(0077)
- File = os.path.join(GlobalDir, 'userkeys', User)
+ File = os.path.join(GlobalDir, 'userkeys', a['uid'])
F = open(File + ".tmp", "w", 0600)
os.umask(OldMask)
- for I in x[1]["sshRSAAuthKey"]:
+ for I in a['sshRSAAuthKey']:
MultipleLine = "%s" % I
MultipleLine = Sanitize(MultipleLine) + "\n"
F.write(MultipleLine)