diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2012-07-18 15:07:23 +0930 |
---|---|---|
committer | Rusty Russell <rusty@rustcorp.com.au> | 2012-07-18 15:07:23 +0930 |
commit | fe72740e8221575921c22030d6d4fcb19201b03b (patch) | |
tree | 0b1bb254e23d6541eede8f2ff4494af477fd5566 /source3/smbd/share_access.c | |
parent | c809eec53fb1d2a36909e4934dff349f91e3359e (diff) | |
download | samba-fe72740e8221575921c22030d6d4fcb19201b03b.tar.gz samba-fe72740e8221575921c22030d6d4fcb19201b03b.tar.bz2 samba-fe72740e8221575921c22030d6d4fcb19201b03b.zip |
loadparm: make the source3/ lp_ functions take an explicit TALLOC_CTX *.
They use talloc_tos() internally: hoist that up to the callers, some
of whom don't want to us talloc_tos().
A simple patch, but hits a lot of files.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'source3/smbd/share_access.c')
-rw-r--r-- | source3/smbd/share_access.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/source3/smbd/share_access.c b/source3/smbd/share_access.c index 2a4775d2dd..7087a985a9 100644 --- a/source3/smbd/share_access.c +++ b/source3/smbd/share_access.c @@ -203,7 +203,7 @@ bool user_ok_token(const char *username, const char *domain, { if (lp_invalid_users(snum) != NULL) { if (token_contains_name_in_list(username, domain, - lp_servicename(snum), + lp_servicename(talloc_tos(), snum), token, lp_invalid_users(snum))) { DEBUG(10, ("User %s in 'invalid users'\n", username)); @@ -213,7 +213,8 @@ bool user_ok_token(const char *username, const char *domain, if (lp_valid_users(snum) != NULL) { if (!token_contains_name_in_list(username, domain, - lp_servicename(snum), token, + lp_servicename(talloc_tos(), snum), + token, lp_valid_users(snum))) { DEBUG(10, ("User %s not in 'valid users'\n", username)); @@ -223,14 +224,14 @@ bool user_ok_token(const char *username, const char *domain, if (lp_onlyuser(snum)) { const char *list[2]; - list[0] = lp_username(snum); + list[0] = lp_username(talloc_tos(), snum); list[1] = NULL; if ((list[0] == NULL) || (*list[0] == '\0')) { DEBUG(0, ("'only user = yes' and no 'username ='\n")); return False; } if (!token_contains_name_in_list(NULL, domain, - lp_servicename(snum), + lp_servicename(talloc_tos(), snum), token, list)) { DEBUG(10, ("%s != 'username'\n", username)); return False; @@ -238,7 +239,7 @@ bool user_ok_token(const char *username, const char *domain, } DEBUG(10, ("user_ok_token: share %s is ok for unix user %s\n", - lp_servicename(snum), username)); + lp_servicename(talloc_tos(), snum), username)); return True; } @@ -267,7 +268,8 @@ bool is_share_read_only_for_token(const char *username, if (lp_readlist(snum) != NULL) { if (token_contains_name_in_list(username, domain, - lp_servicename(snum), token, + lp_servicename(talloc_tos(), snum), + token, lp_readlist(snum))) { result = True; } @@ -275,14 +277,15 @@ bool is_share_read_only_for_token(const char *username, if (lp_writelist(snum) != NULL) { if (token_contains_name_in_list(username, domain, - lp_servicename(snum), token, + lp_servicename(talloc_tos(), snum), + token, lp_writelist(snum))) { result = False; } } DEBUG(10,("is_share_read_only_for_user: share %s is %s for unix user " - "%s\n", lp_servicename(snum), + "%s\n", lp_servicename(talloc_tos(), snum), result ? "read-only" : "read-write", username)); return result; |