diff options
author | Andrew Bartlett <abartlet@samba.org> | 2002-05-22 12:44:45 +0000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2002-05-22 12:44:45 +0000 |
commit | b87eee983612c0d21b0c6f1346ba15ace797fe9e (patch) | |
tree | 24e2b36dfad85d014754e1ed08cb3d3b74704f24 /source3/utils/smbpasswd.c | |
parent | daec6cbbeee8401ef1aa0a3424ee05a3148d7ec8 (diff) | |
download | samba-b87eee983612c0d21b0c6f1346ba15ace797fe9e.tar.gz samba-b87eee983612c0d21b0c6f1346ba15ace797fe9e.tar.bz2 samba-b87eee983612c0d21b0c6f1346ba15ace797fe9e.zip |
Add a bit more const, and kill of (finally!) sys_getpwnam and sys_getpwuid.
These might be reimplmented as simple pass-through functions, but all users
really should be doing 'getpwnam_alloc' or 'getpwuid_alloc' to ensure that
there are not shared static buffers.
I don't beleive we actually need a getpw*() cache inside samba - if we do
then I think we should look at our code design first.
(some of these changes are for platforms I don't have access to, but
they look sane)
Andrew Bartlett
(This used to be commit 9d8431b04f41dceffe4c45cc969472ee59f7282f)
Diffstat (limited to 'source3/utils/smbpasswd.c')
-rw-r--r-- | source3/utils/smbpasswd.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source3/utils/smbpasswd.c b/source3/utils/smbpasswd.c index 5d219b6907..70bf551edb 100644 --- a/source3/utils/smbpasswd.c +++ b/source3/utils/smbpasswd.c @@ -367,8 +367,9 @@ static int process_root(int local_flags) load_interfaces(); } - if (!user_name[0] && (pwd = sys_getpwuid(geteuid()))) { + if (!user_name[0] && (pwd = getpwuid_alloc(geteuid()))) { fstrcpy(user_name, pwd->pw_name); + passwd_free(&pwd); } if (!user_name[0]) { @@ -504,9 +505,10 @@ static int process_nonroot(int local_flags) } if (!user_name[0]) { - pwd = sys_getpwuid(getuid()); + pwd = getpwuid_alloc(getuid()); if (pwd) { fstrcpy(user_name,pwd->pw_name); + passwd_free(&pwd); } else { fprintf(stderr, "smbpasswd: you don't exist - go away\n"); exit(1); |