diff --git a/userman.py b/userman.py
index 033d3d1..0488d10 100755
--- a/userman.py
+++ b/userman.py
@@ -38,12 +38,12 @@
 '''
 
 userman_providers = {
-	'pam' : { 
-		'adduser' : 'user add',
-	},
-	'ldap' : {
-		'adduser' : 'ldap command to add user',
-	},	
+    'pam' : { 
+        'adduser' : 'user add',
+    },
+    'ldap' : {
+        'adduser' : 'ldap command to add user',
+    },  
 }
 
 class UserManGroups (dbus.service.Object):
@@ -207,7 +207,7 @@
     def Passwd (self, username, passwd):
         if not username : return 1
         
-        users = self.UserList ()
+        users = Usersobj.UserList ()
         if username not in users : return 1
 
         cmd = "passwd" + " " + username
@@ -218,7 +218,7 @@
         proc.sendline (passwd)
 
         proc.wait()
-        return r
+        return 0
 
 def main():
     dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
@@ -246,3 +246,4 @@
 
 if __name__ == '__main__':
     sys.exit(main())
+
