diff options
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/service.c | 13 | ||||
-rw-r--r-- | source3/smbd/uid.c | 11 |
2 files changed, 14 insertions, 10 deletions
diff --git a/source3/smbd/service.c b/source3/smbd/service.c index 73c3c4f20c..c1d4dd1799 100644 --- a/source3/smbd/service.c +++ b/source3/smbd/service.c @@ -644,14 +644,15 @@ connection_struct *make_connection_snum(struct smbd_server_connection *sconn, { bool can_write = False; - can_write = share_access_check(conn->session_info->security_token, - lp_servicename(snum), - FILE_WRITE_DATA); + can_write = share_access_check( + conn->session_info->security_token, + lp_servicename(snum), FILE_WRITE_DATA, NULL); if (!can_write) { - if (!share_access_check(conn->session_info->security_token, - lp_servicename(snum), - FILE_READ_DATA)) { + if (!share_access_check( + conn->session_info->security_token, + lp_servicename(snum), FILE_READ_DATA, + NULL)) { /* No access, read or write. */ DEBUG(0,("make_connection: connection to %s " "denied due to security " diff --git a/source3/smbd/uid.c b/source3/smbd/uid.c index 285b158a19..8114144574 100644 --- a/source3/smbd/uid.c +++ b/source3/smbd/uid.c @@ -121,8 +121,9 @@ static bool check_user_ok(connection_struct *conn, conn); if (!readonly_share && - !share_access_check(session_info->security_token, lp_servicename(snum), - FILE_WRITE_DATA)) { + !share_access_check(session_info->security_token, + lp_servicename(snum), FILE_WRITE_DATA, + NULL)) { /* smb.conf allows r/w, but the security descriptor denies * write. Fall back to looking at readonly. */ readonly_share = True; @@ -130,9 +131,11 @@ static bool check_user_ok(connection_struct *conn, "security descriptor\n")); } - if (!share_access_check(session_info->security_token, lp_servicename(snum), + if (!share_access_check(session_info->security_token, + lp_servicename(snum), readonly_share ? - FILE_READ_DATA : FILE_WRITE_DATA)) { + FILE_READ_DATA : FILE_WRITE_DATA, + NULL)) { return False; } |