diff options
author | Simo Sorce <idra@samba.org> | 2002-01-12 23:12:13 +0000 |
---|---|---|
committer | Simo Sorce <idra@samba.org> | 2002-01-12 23:12:13 +0000 |
commit | b79fa88b4db3bc88b0a5ae567b19286f64fd113c (patch) | |
tree | b39c595a8651552f34335a2443d31d27a20379e3 /source3/pam_smbpass/pam_smb_acct.c | |
parent | c9d350a736ca71f838cf19386b04e972200ee595 (diff) | |
download | samba-b79fa88b4db3bc88b0a5ae567b19286f64fd113c.tar.gz samba-b79fa88b4db3bc88b0a5ae567b19286f64fd113c.tar.bz2 samba-b79fa88b4db3bc88b0a5ae567b19286f64fd113c.zip |
updates from 2.2
(This used to be commit 398b4ff0d40d89b3e96d481807f85f15b7a7966a)
Diffstat (limited to 'source3/pam_smbpass/pam_smb_acct.c')
-rw-r--r-- | source3/pam_smbpass/pam_smb_acct.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/source3/pam_smbpass/pam_smb_acct.c b/source3/pam_smbpass/pam_smb_acct.c index 8ed3ad7eda..8d91c456bf 100644 --- a/source3/pam_smbpass/pam_smb_acct.c +++ b/source3/pam_smbpass/pam_smb_acct.c @@ -46,12 +46,14 @@ int pam_sm_acct_mgmt( pam_handle_t *pamh, int flags, const char *name; const char *p; - struct smb_passwd *smb_pwent = NULL; + SAM_ACCOUNT *sampass = NULL; extern BOOL in_client; /* Samba initialization. */ setup_logging( "pam_smbpass", False ); + charset_initialise(); + codepage_initialise(lp_client_code_page()); in_client = True; ctrl = set_ctrl( flags, argc, argv ); @@ -75,12 +77,13 @@ int pam_sm_acct_mgmt( pam_handle_t *pamh, int flags, } /* Get the user's record. */ - smb_pwent = getsmbpwnam( name ); + pdb_init_sam(&sampass); + pdb_getsampwnam(sampass, name ); - if (!smb_pwent) + if (!sampass) return PAM_USER_UNKNOWN; - if (smb_pwent->acct_ctrl & ACB_DISABLED) { + if (pdb_get_acct_ctrl(sampass) & ACB_DISABLED) { if (on( SMB_DEBUG, ctrl )) { _log_err( LOG_DEBUG , "acct: account %s is administratively disabled", name ); |