* replace all pdb_init_sam[_talloc]() calls with samu_new()
[metze/old/v3-2-winbind-ndr.git] / source / pam_smbpass / pam_smb_acct.c
index 8d5882bc931b35451a526dd059fe1e1b6d6b5fd9..cf53e04d7e77af404f6ea6e88eb7e480644af1d9 100644 (file)
@@ -79,10 +79,13 @@ int pam_sm_acct_mgmt( pam_handle_t *pamh, int flags,
     }
 
     /* Get the user's record. */
-    pdb_init_sam(&sampass);
-    pdb_getsampwnam(sampass, name );
 
-    if (!sampass) {
+    if ( (sampass = samu_new( NULL )) != NULL ) {
+       pdb_getsampwnam(sampass, name );
+    } 
+
+    /* check for lookup failure */
+    if ( !sampass || !strlen(pdb_get_username(sampass)) ) {
         CatchSignal(SIGPIPE, SIGNAL_CAST oldsig_handler);
         return PAM_USER_UNKNOWN;
     }