diff options
author | Andrew Bartlett <abartlet@samba.org> | 2003-03-15 06:45:19 +0000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2003-03-15 06:45:19 +0000 |
commit | 16ec110b0f1fe45b598a04e171397d97c3cb5aef (patch) | |
tree | b51f127f15986be5f87a3e98cbc0f2e4d2677848 /source3 | |
parent | 6fe590983b5d4dca8cea82eaa8dfb7b3a13bc3d1 (diff) | |
download | samba-16ec110b0f1fe45b598a04e171397d97c3cb5aef.tar.gz samba-16ec110b0f1fe45b598a04e171397d97c3cb5aef.tar.bz2 samba-16ec110b0f1fe45b598a04e171397d97c3cb5aef.zip |
client-side smbpasswd fixes - use pstrcpy_base to avoid clobber_region bugs
Andrew Bartlett
(This used to be commit 7ab6559369b4e6ee3c5269d8cff04e5a39f6b493)
Diffstat (limited to 'source3')
-rw-r--r-- | source3/libsmb/clirap.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/source3/libsmb/clirap.c b/source3/libsmb/clirap.c index b38e7d5c23..224c37046c 100644 --- a/source3/libsmb/clirap.c +++ b/source3/libsmb/clirap.c @@ -281,7 +281,7 @@ Send a SamOEMChangePassword command BOOL cli_oem_change_password(struct cli_state *cli, const char *user, const char *new_password, const char *old_password) { - char param[16+sizeof(fstring)]; + pstring param; char data[532]; char *p = param; unsigned char old_pw_hash[16]; @@ -300,11 +300,11 @@ BOOL cli_oem_change_password(struct cli_state *cli, const char *user, const char SSVAL(p,0,214); /* SamOEMChangePassword command. */ p += 2; - pstrcpy(p, "zsT"); + pstrcpy_base(p, "zsT", param); p = skip_string(p,1); - pstrcpy(p, "B516B16"); + pstrcpy_base(p, "B516B16", param); p = skip_string(p,1); - pstrcpy(p,user); + pstrcpy_base(p,user, param); p = skip_string(p,1); SSVAL(p,0,532); p += 2; @@ -317,7 +317,7 @@ BOOL cli_oem_change_password(struct cli_state *cli, const char *user, const char */ E_deshash(old_password, old_pw_hash); - clistr_push(cli, dos_new_password, new_password, -1, STR_TERMINATE|STR_ASCII); + clistr_push(cli, dos_new_password, new_password, sizeof(dos_new_password), STR_TERMINATE|STR_ASCII); if (!make_oem_passwd_hash( data, dos_new_password, old_pw_hash, False)) return False; @@ -685,7 +685,7 @@ NTSTATUS cli_qpathinfo_alt_name(struct cli_state *cli, const char *fname, fstrin int count=8; char *p; BOOL ret; - int len; + unsigned int len; p = param; memset(p, 0, 6); |