mirror of
https://github.com/samba-team/samba.git
synced 2025-08-07 09:49:30 +03:00
Fix bug #7080 - Quota only shown when logged as root.
Remove the final incorrect uses of conn->session_info->utok.uid. When we're in the "admin users" list, then this value is not set to zero. Inspired by the comment on this bug by Dmitry Butskoy <dmitry@butskoy.name>. I'll create a different fix for 3.5.x. Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Tue Apr 5 21:53:59 CEST 2011 on sn-devel-104
This commit is contained in:
@ -1310,7 +1310,7 @@ NTSTATUS onefs_open_file_ntcreate(connection_struct *conn,
|
||||
new_file_created = True;
|
||||
}
|
||||
|
||||
set_share_mode(lck, fsp, conn->session_info->utok.uid, 0,
|
||||
set_share_mode(lck, fsp, get_current_uid(conn), 0,
|
||||
fsp->oplock_type);
|
||||
|
||||
/* Handle strange delete on close create semantics. */
|
||||
@ -1666,7 +1666,7 @@ static NTSTATUS onefs_open_directory(connection_struct *conn,
|
||||
return NT_STATUS_DELETE_PENDING;
|
||||
}
|
||||
|
||||
set_share_mode(lck, fsp, conn->session_info->utok.uid, 0, NO_OPLOCK);
|
||||
set_share_mode(lck, fsp, get_current_uid(conn), 0, NO_OPLOCK);
|
||||
|
||||
/*
|
||||
* For directories the delete on close bit at open time seems
|
||||
|
@ -2512,7 +2512,7 @@ static void call_nt_transact_get_user_quota(connection_struct *conn,
|
||||
ZERO_STRUCT(qt);
|
||||
|
||||
/* access check */
|
||||
if (conn->session_info->utok.uid != 0) {
|
||||
if (get_current_uid(conn) != 0) {
|
||||
DEBUG(1,("get_user_quota: access_denied service [%s] user "
|
||||
"[%s]\n", lp_servicename(SNUM(conn)),
|
||||
conn->session_info->unix_name));
|
||||
@ -2782,7 +2782,7 @@ static void call_nt_transact_set_user_quota(connection_struct *conn,
|
||||
ZERO_STRUCT(qt);
|
||||
|
||||
/* access check */
|
||||
if (conn->session_info->utok.uid != 0) {
|
||||
if (get_current_uid(conn) != 0) {
|
||||
DEBUG(1,("set_user_quota: access_denied service [%s] user "
|
||||
"[%s]\n", lp_servicename(SNUM(conn)),
|
||||
conn->session_info->unix_name));
|
||||
|
@ -3203,7 +3203,7 @@ cBytesSector=%u, cUnitTotal=%u, cUnitAvail=%d\n", (unsigned int)bsize, (unsigned
|
||||
fsp.fnum = -1;
|
||||
|
||||
/* access check */
|
||||
if (conn->session_info->utok.uid != sec_initial_uid()) {
|
||||
if (get_current_uid(conn) != 0) {
|
||||
DEBUG(0,("set_user_quota: access_denied "
|
||||
"service [%s] user [%s]\n",
|
||||
lp_servicename(SNUM(conn)),
|
||||
@ -3698,8 +3698,7 @@ cap_low = 0x%x, cap_high = 0x%x\n",
|
||||
ZERO_STRUCT(quotas);
|
||||
|
||||
/* access check */
|
||||
if ((conn->session_info->utok.uid != sec_initial_uid())
|
||||
||!CAN_WRITE(conn)) {
|
||||
if ((get_current_uid(conn) != 0) || !CAN_WRITE(conn)) {
|
||||
DEBUG(0,("set_user_quota: access_denied service [%s] user [%s]\n",
|
||||
lp_servicename(SNUM(conn)),
|
||||
conn->session_info->unix_name));
|
||||
|
Reference in New Issue
Block a user