diff options
author | Jeremy Allison <jra@samba.org> | 2007-12-12 17:26:49 -0800 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2007-12-12 17:26:49 -0800 |
commit | 9373e1ea90c088b4a1156554efb9e1da1738a8d3 (patch) | |
tree | ce685c61705e1140f8f871ca020c50c125507f48 /source3/pam_smbpass/pam_smb_auth.c | |
parent | 022014dba281a50d98ac2f00a4c941124065914f (diff) | |
download | samba-9373e1ea90c088b4a1156554efb9e1da1738a8d3.tar.gz samba-9373e1ea90c088b4a1156554efb9e1da1738a8d3.tar.bz2 samba-9373e1ea90c088b4a1156554efb9e1da1738a8d3.zip |
Fix bug #3727 with patch from Steve Langasek <vorlon@debian.org>
Jeremy.
(This used to be commit 0723760ba47a465d2ff5a22a680f1b5196eca7d8)
Diffstat (limited to 'source3/pam_smbpass/pam_smb_auth.c')
-rw-r--r-- | source3/pam_smbpass/pam_smb_auth.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/source3/pam_smbpass/pam_smb_auth.c b/source3/pam_smbpass/pam_smb_auth.c index 79856a111d..3a841adebd 100644 --- a/source3/pam_smbpass/pam_smb_auth.c +++ b/source3/pam_smbpass/pam_smb_auth.c @@ -108,6 +108,12 @@ int pam_sm_authenticate(pam_handle_t *pamh, int flags, _log_err( LOG_DEBUG, "username [%s] obtained", name ); } + if (geteuid() != 0) { + _log_err( LOG_DEBUG, "Cannot access samba password database, not running as root."); + retval = PAM_AUTHINFO_UNAVAIL; + AUTH_RETURN; + } + if (!initialize_password_db(True, NULL)) { _log_err( LOG_ALERT, "Cannot access samba password database" ); retval = PAM_AUTHINFO_UNAVAIL; @@ -136,7 +142,7 @@ int pam_sm_authenticate(pam_handle_t *pamh, int flags, sampass = NULL; AUTH_RETURN; } - + /* if this user does not have a password... */ if (_smb_blankpasswd( ctrl, sampass )) { |