summaryrefslogtreecommitdiffstats
path: root/ipa-admintools/ipa-finduser
diff options
context:
space:
mode:
Diffstat (limited to 'ipa-admintools/ipa-finduser')
-rw-r--r--ipa-admintools/ipa-finduser30
1 files changed, 20 insertions, 10 deletions
diff --git a/ipa-admintools/ipa-finduser b/ipa-admintools/ipa-finduser
index 0892791c..a54e141e 100644
--- a/ipa-admintools/ipa-finduser
+++ b/ipa-admintools/ipa-finduser
@@ -20,13 +20,12 @@
import sys
from optparse import OptionParser
-import ipa
-import ipa.rpcclient
+import ipa.ipaclient as ipaclient
import ipa.config
-import base64
import sys
import xmlrpclib
+import kerberos
def usage():
print "ipa-finduser <uid>"
@@ -48,16 +47,27 @@ def main():
usage()
try:
- ent = ipa.rpcclient.get_user(args[1])
- for name, value in ent.items():
- if isinstance(value, str):
- print name + ": " + value
+ client = ipaclient.IPAClient()
+ ent = client.get_user(args[1])
+ attr = ent.attrList()
+
+ print "dn: " + ent.dn
+
+ for a in attr:
+ value = ent.getValues(a)
+ if isinstance(value,str):
+ print a + ": " + value
else:
- print name + ": "
- for x in value:
- print "\t" + x
+ print a + ": "
+ for l in value:
+ print "\t" + l
+
except xmlrpclib.Fault, fault:
print fault.faultString
+ return 1
+ except kerberos.GSSError, e:
+ print "Could not initialize GSSAPI: %s/%s" % (e[0][0][0], e[0][1][0])
+ return 1
return 0