[SCM] Samba Shared Repository - branch v3-6-test updated

Jeremy Allison jra at samba.org
Tue Apr 5 14:54:14 MDT 2011


The branch, v3-6-test has been updated
       via  3650b38 Fix bug #7080 - Quota only shown when logged as root.
      from  eb444c6 s3-libndr: add ../librpc/ndr/libndr.h include in some places.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test


- Log -----------------------------------------------------------------
commit 3650b386ccdaa65e8c8e8db719c16616ead8ec43
Author: Jeremy Allison <jra at samba.org>
Date:   Tue Apr 5 11:24:39 2011 -0700

    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 at butskoy.name>.
    
    I'll create a different fix for 3.5.x.
    
    Jeremy.
    
    Autobuild-User: Jeremy Allison <jra at samba.org>
    Autobuild-Date: Tue Apr  5 21:53:59 CEST 2011 on sn-devel-104
    (cherry picked from commit b6a30be70266c07733ddfa2ae08d127e08560868)

-----------------------------------------------------------------------

Summary of changes:
 source3/modules/onefs_open.c |    4 ++--
 source3/smbd/nttrans.c       |    4 ++--
 source3/smbd/trans2.c        |    5 ++---
 3 files changed, 6 insertions(+), 7 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/onefs_open.c b/source3/modules/onefs_open.c
index 19b2ea0..80f799c 100644
--- a/source3/modules/onefs_open.c
+++ b/source3/modules/onefs_open.c
@@ -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
diff --git a/source3/smbd/nttrans.c b/source3/smbd/nttrans.c
index a7da776..2b54018 100644
--- a/source3/smbd/nttrans.c
+++ b/source3/smbd/nttrans.c
@@ -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));
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c
index 4890de3..fe06538 100644
--- a/source3/smbd/trans2.c
+++ b/source3/smbd/trans2.c
@@ -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));


-- 
Samba Shared Repository


More information about the samba-cvs mailing list