X-Git-Url: https://git.adam-barratt.org.uk/?p=mirror%2Fuserdir-ldap.git;a=blobdiff_plain;f=ud-info;fp=ud-info;h=c5a45ea40a72e5c2157d06f8471db0b354b27df2;hp=73e040de0dd8aef8c1b5b9b84c5820d12694556c;hb=480ae4d6dbb4efa7d73cc70ca8598cf0841df670;hpb=4f92f011a785b43dce5d36a84e3344a1e2615b17 diff --git a/ud-info b/ud-info index 73e040d..c5a45ea 100755 --- a/ud-info +++ b/ud-info @@ -18,13 +18,13 @@ # restricted variables. # Copyright (c) 1999-2001 Jason Gunthorpe -# Copyright (c) 2004-2005,7 Joey Schulze +# Copyright (c) 2004-2005,7,8 Joey Schulze # Copyright (c) 2001-2006 Ryan Murray # Copyright (c) 2008 Peter Palfrader # Copyright (c) 2008 Martin Zobel-Helas # Copyright (c) 2008 Marc 'HE' Brockschmidt # Copyright (c) 2008 Mark Hymers -# Copyright (c) 2008 Joey Schulze +# Copyright (c) 2008 Thomas Viehmann # # 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 @@ -40,7 +40,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -import time, os, pwd, sys, getopt, ldap, crypt, readline, copy; +import time, os, pwd, sys, getopt, ldap, crypt, readline, copy, getpass from userdir_ldap import *; RootMode = 0; @@ -346,17 +346,21 @@ if (BindUser != User): print "as '" + BindUser + "'"; else: print; -if (BindUser != ""): - Password = getpass(BindUser + "'s password: "); # Connect to the ldap server l = connectLDAP() -UserDn = "uid=" + BindUser + "," + BaseDn; if (BindUser != ""): - l.simple_bind_s(UserDn,Password); + Password = getpass.getpass(BindUser + "'s password: ") + UserDn = "uid=" + BindUser + "," + BaseDn else: - l.simple_bind_s("",""); -UserDn = "uid=" + User + "," + BaseDn; + Password = "" + UserDn = "" +try: + l.simple_bind_s(UserDn,Password) +except ldap.LDAPError,e: + print >> sys.stderr, "LDAP error:", e.args[0]['desc'] + print >> sys.stderr, " ", e.args[0]['info'] + sys.exit(1) # Enable changing of supplementary gid's if (RootMode == 1): @@ -417,8 +421,8 @@ while(1): print "contain spaces and other special characters. No checking is done on the"; print "strength of the passwords so pick good ones please!"; - Pass1 = getpass(User + "'s new password: "); - Pass2 = getpass(User + "'s new password again: "); + Pass1 = getpass.getpass(User + "'s new password: ") + Pass2 = getpass.getpass(User + "'s new password again: ") if Pass1 != Pass2: print "Passwords did not match"; raw_input("Press a key");