summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>1999-07-14 12:38:53 +0000
committerAndrew Tridgell <tridge@samba.org>1999-07-14 12:38:53 +0000
commitd92424b646cf9865623f8e48f090b7efd85e7d68 (patch)
tree21403acd6e70658f3db3cbdf6e9ce89fa248cfdd
parent1351bad1572fd149751c1d007aaae3fc1668ec5a (diff)
downloadsamba-d92424b646cf9865623f8e48f090b7efd85e7d68.tar.gz
the password database updates from 2.0. This is mostly the fix for the
constant string problem
-rw-r--r--source/auth/pass_check.c4
-rw-r--r--source/passdb/pass_check.c4
-rw-r--r--source/passdb/passdb.c2
-rw-r--r--source/passdb/smbpass.c2
-rw-r--r--source/passdb/smbpasschange.c2
5 files changed, 7 insertions, 7 deletions
diff --git a/source/auth/pass_check.c b/source/auth/pass_check.c
index 1305b2867cd..11ce0d754e8 100644
--- a/source/auth/pass_check.c
+++ b/source/auth/pass_check.c
@@ -807,7 +807,7 @@ BOOL pass_check(char *user,char *password, int pwlen, struct passwd *pwd,
spass = getspnam(pass->pw_name);
if (spass && spass->sp_pwdp) {
- pass->pw_passwd = spass->sp_pwdp;
+ pstrcpy(pass->pw_passwd,spass->sp_pwdp);
}
}
#elif defined(IA_UINFO)
@@ -827,7 +827,7 @@ BOOL pass_check(char *user,char *password, int pwlen, struct passwd *pwd,
{
struct pr_passwd *pr_pw = getprpwnam(pass->pw_name);
if (pr_pw && pr_pw->ufld.fd_encrypt)
- pass->pw_passwd = pr_pw->ufld.fd_encrypt;
+ pstrcpy(pass->pw_passwd,pr_pw->ufld.fd_encrypt);
}
#endif
diff --git a/source/passdb/pass_check.c b/source/passdb/pass_check.c
index 1305b2867cd..11ce0d754e8 100644
--- a/source/passdb/pass_check.c
+++ b/source/passdb/pass_check.c
@@ -807,7 +807,7 @@ BOOL pass_check(char *user,char *password, int pwlen, struct passwd *pwd,
spass = getspnam(pass->pw_name);
if (spass && spass->sp_pwdp) {
- pass->pw_passwd = spass->sp_pwdp;
+ pstrcpy(pass->pw_passwd,spass->sp_pwdp);
}
}
#elif defined(IA_UINFO)
@@ -827,7 +827,7 @@ BOOL pass_check(char *user,char *password, int pwlen, struct passwd *pwd,
{
struct pr_passwd *pr_pw = getprpwnam(pass->pw_name);
if (pr_pw && pr_pw->ufld.fd_encrypt)
- pass->pw_passwd = pr_pw->ufld.fd_encrypt;
+ pstrcpy(pass->pw_passwd,pr_pw->ufld.fd_encrypt);
}
#endif
diff --git a/source/passdb/passdb.c b/source/passdb/passdb.c
index 9b0e8c21a15..d7a318ed78f 100644
--- a/source/passdb/passdb.c
+++ b/source/passdb/passdb.c
@@ -1114,7 +1114,7 @@ BOOL lookup_local_rid(uint32 rid, char *name, uint8 *psid_name_use)
fstrcpy(name, "Guest");
} else {
uid_t uid = pdb_user_rid_to_uid(rid);
- struct passwd *pass = getpwuid(uid);
+ struct passwd *pass = sys_getpwuid(uid);
*psid_name_use = SID_NAME_USER;
diff --git a/source/passdb/smbpass.c b/source/passdb/smbpass.c
index d20a8a26af4..0306db9117e 100644
--- a/source/passdb/smbpass.c
+++ b/source/passdb/smbpass.c
@@ -333,7 +333,7 @@ static struct sam_passwd *getsmbfile21pwent(void *vp)
if (pw_buf == NULL) return NULL;
- pwfile = getpwnam(pw_buf->smb_name);
+ pwfile = sys_getpwnam(pw_buf->smb_name);
if (pwfile == NULL)
{
DEBUG(0,("getsmbfile21pwent: smbpasswd database is corrupt!\n"));
diff --git a/source/passdb/smbpasschange.c b/source/passdb/smbpasschange.c
index 35f2d94dd36..9d0aecf8b8a 100644
--- a/source/passdb/smbpasschange.c
+++ b/source/passdb/smbpasschange.c
@@ -70,7 +70,7 @@ BOOL local_password_change(char *user_name, BOOL trust_account, BOOL add_user,
*err_str = '\0';
*msg_str = '\0';
- pwd = getpwnam(user_name);
+ pwd = sys_getpwnam(user_name);
/*
* Check for a local account.