diff options
author | Volker Lendecke <vl@samba.org> | 2010-09-22 14:10:03 +0200 |
---|---|---|
committer | Volker Lendecke <vl@samba.org> | 2010-09-22 15:42:28 -0700 |
commit | 54f0da368f35ce7d7fd4b093b865ffea284d826b (patch) | |
tree | cfb020a9e50836c4fc4186983a959412d0930052 /source3/pam_smbpass/pam_smb_passwd.c | |
parent | 7ba5855a734037cf7308007b953ce0a92b050173 (diff) | |
download | samba-54f0da368f35ce7d7fd4b093b865ffea284d826b.tar.gz samba-54f0da368f35ce7d7fd4b093b865ffea284d826b.tar.bz2 samba-54f0da368f35ce7d7fd4b093b865ffea284d826b.zip |
s3: Use asprintf where appropriate
Diffstat (limited to 'source3/pam_smbpass/pam_smb_passwd.c')
-rw-r--r-- | source3/pam_smbpass/pam_smb_passwd.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/source3/pam_smbpass/pam_smb_passwd.c b/source3/pam_smbpass/pam_smb_passwd.c index 473a55e065..8fc2cf3e14 100644 --- a/source3/pam_smbpass/pam_smb_passwd.c +++ b/source3/pam_smbpass/pam_smb_passwd.c @@ -176,17 +176,12 @@ int pam_sm_chauthtok(pam_handle_t *pamh, int flags, if (getuid() != 0 && !(flags & PAM_CHANGE_EXPIRED_AUTHTOK)) { /* tell user what is happening */ -#define greeting "Changing password for " - Announce = SMB_MALLOC_ARRAY(char, sizeof(greeting)+strlen(user)); - if (Announce == NULL) { - _log_err(pamh, LOG_CRIT, "password: out of memory"); - TALLOC_FREE(sampass); - CatchSignal(SIGPIPE, oldsig_handler); - return PAM_BUF_ERR; - } - strncpy( Announce, greeting, sizeof(greeting) ); - strncpy( Announce+sizeof(greeting)-1, user, strlen(user)+1 ); -#undef greeting + if (asprintf(&Announce, "Changing password for %s", user) == -1) { + _log_err(pamh, LOG_CRIT, "password: out of memory"); + TALLOC_FREE(sampass); + CatchSignal(SIGPIPE, oldsig_handler); + return PAM_BUF_ERR; + } set( SMB__OLD_PASSWD, ctrl ); retval = _smb_read_password( pamh, ctrl, Announce, "Current SMB password: ", |