svn commit: samba r12312 - branches/SAMBA_3_0/source/smbd trunk/source/smbd

vlendec at samba.org vlendec at samba.org
Sun Dec 18 14:23:23 GMT 2005


Author: vlendec
Date: 2005-12-18 14:23:23 +0000 (Sun, 18 Dec 2005)
New Revision: 12312

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=12312

Log:
Reformatting and a trivial change: is_share_read_only_for_user only uses
conn->service, so there's no point in passing down the whole conn struct.

Volker

Modified:
   branches/SAMBA_3_0/source/smbd/uid.c
   trunk/source/smbd/uid.c


Changeset:
Modified: branches/SAMBA_3_0/source/smbd/uid.c
===================================================================
--- branches/SAMBA_3_0/source/smbd/uid.c	2005-12-18 13:54:53 UTC (rev 12311)
+++ branches/SAMBA_3_0/source/smbd/uid.c	2005-12-18 14:23:23 UTC (rev 12312)
@@ -81,45 +81,53 @@
  Readonly share for this user ?
 ****************************************************************************/
 
-static BOOL is_share_read_only_for_user(connection_struct *conn, user_struct *vuser)
+static BOOL is_share_read_only_for_user(int snum, user_struct *vuser)
 {
 	char **list;
-	const char *service = lp_servicename(conn->service);
-	BOOL read_only_ret = lp_readonly(conn->service);
+	const char *service = lp_servicename(snum);
+	BOOL read_only_ret = lp_readonly(snum);
 
 	if (!service)
 		return read_only_ret;
 
-	str_list_copy(&list, lp_readlist(conn->service));
+	str_list_copy(&list, lp_readlist(snum));
 	if (list) {
 		if (!str_list_sub_basic(list, vuser->user.smb_name) ) {
-			DEBUG(0, ("is_share_read_only_for_user: ERROR: read list substitution failed\n"));
+			DEBUG(0, ("is_share_read_only_for_user: ERROR: read "
+				  "list substitution failed\n"));
 		}
 		if (!str_list_substitute(list, "%S", service)) {
-			DEBUG(0, ("is_share_read_only_for_user: ERROR: read list service substitution failed\n"));
+			DEBUG(0, ("is_share_read_only_for_user: ERROR: read "
+				  "list service substitution failed\n"));
 		}
-		if (user_in_list(vuser->user.unix_name, (const char **)list, vuser->groups, vuser->n_groups)) {
+		if (user_in_list(vuser->user.unix_name, (const char **)list,
+				 vuser->groups, vuser->n_groups)) {
 			read_only_ret = True;
 		}
 		str_list_free(&list);
 	}
 
-	str_list_copy(&list, lp_writelist(conn->service));
+	str_list_copy(&list, lp_writelist(snum));
 	if (list) {
 		if (!str_list_sub_basic(list, vuser->user.smb_name) ) {
-			DEBUG(0, ("is_share_read_only_for_user: ERROR: write list substitution failed\n"));
+			DEBUG(0, ("is_share_read_only_for_user: ERROR: write "
+				  "list substitution failed\n"));
 		}
 		if (!str_list_substitute(list, "%S", service)) {
-			DEBUG(0, ("is_share_read_only_for_user: ERROR: write list service substitution failed\n"));
+			DEBUG(0, ("is_share_read_only_for_user: ERROR: write "
+				  "list service substitution failed\n"));
 		}
-		if (user_in_list(vuser->user.unix_name, (const char **)list, vuser->groups, vuser->n_groups)) {
+		if (user_in_list(vuser->user.unix_name, (const char **)list,
+				 vuser->groups, vuser->n_groups)) {
 			read_only_ret = False;
 		}
 		str_list_free(&list);
 	}
 
-	DEBUG(10,("is_share_read_only_for_user: share %s is %s for unix user %s\n",
-		service, read_only_ret ? "read-only" : "read-write", vuser->user.unix_name ));
+	DEBUG(10,("is_share_read_only_for_user: share %s is %s for unix user "
+		  "%s\n", service,
+		  read_only_ret ? "read-only" : "read-write",
+		  vuser->user.unix_name ));
 
 	return read_only_ret;
 }
@@ -146,7 +154,7 @@
 	if (!user_ok(vuser->user.unix_name,snum, vuser->groups, vuser->n_groups))
 		return(False);
 
-	readonly_share = is_share_read_only_for_user(conn, vuser);
+	readonly_share = is_share_read_only_for_user(conn->service, vuser);
 
 	if (!readonly_share &&
 	    !share_access_check(conn, snum, vuser, FILE_WRITE_DATA)) {

Modified: trunk/source/smbd/uid.c
===================================================================
--- trunk/source/smbd/uid.c	2005-12-18 13:54:53 UTC (rev 12311)
+++ trunk/source/smbd/uid.c	2005-12-18 14:23:23 UTC (rev 12312)
@@ -81,45 +81,53 @@
  Readonly share for this user ?
 ****************************************************************************/
 
-static BOOL is_share_read_only_for_user(connection_struct *conn, user_struct *vuser)
+static BOOL is_share_read_only_for_user(int snum, user_struct *vuser)
 {
 	char **list;
-	const char *service = lp_servicename(conn->service);
-	BOOL read_only_ret = lp_readonly(conn->service);
+	const char *service = lp_servicename(snum);
+	BOOL read_only_ret = lp_readonly(snum);
 
 	if (!service)
 		return read_only_ret;
 
-	str_list_copy(&list, lp_readlist(conn->service));
+	str_list_copy(&list, lp_readlist(snum));
 	if (list) {
 		if (!str_list_sub_basic(list, vuser->user.smb_name) ) {
-			DEBUG(0, ("is_share_read_only_for_user: ERROR: read list substitution failed\n"));
+			DEBUG(0, ("is_share_read_only_for_user: ERROR: read "
+				  "list substitution failed\n"));
 		}
 		if (!str_list_substitute(list, "%S", service)) {
-			DEBUG(0, ("is_share_read_only_for_user: ERROR: read list service substitution failed\n"));
+			DEBUG(0, ("is_share_read_only_for_user: ERROR: read "
+				  "list service substitution failed\n"));
 		}
-		if (user_in_list(vuser->user.unix_name, (const char **)list, vuser->groups, vuser->n_groups)) {
+		if (user_in_list(vuser->user.unix_name, (const char **)list,
+				 vuser->groups, vuser->n_groups)) {
 			read_only_ret = True;
 		}
 		str_list_free(&list);
 	}
 
-	str_list_copy(&list, lp_writelist(conn->service));
+	str_list_copy(&list, lp_writelist(snum));
 	if (list) {
 		if (!str_list_sub_basic(list, vuser->user.smb_name) ) {
-			DEBUG(0, ("is_share_read_only_for_user: ERROR: write list substitution failed\n"));
+			DEBUG(0, ("is_share_read_only_for_user: ERROR: write "
+				  "list substitution failed\n"));
 		}
 		if (!str_list_substitute(list, "%S", service)) {
-			DEBUG(0, ("is_share_read_only_for_user: ERROR: write list service substitution failed\n"));
+			DEBUG(0, ("is_share_read_only_for_user: ERROR: write "
+				  "list service substitution failed\n"));
 		}
-		if (user_in_list(vuser->user.unix_name, (const char **)list, vuser->groups, vuser->n_groups)) {
+		if (user_in_list(vuser->user.unix_name, (const char **)list,
+				 vuser->groups, vuser->n_groups)) {
 			read_only_ret = False;
 		}
 		str_list_free(&list);
 	}
 
-	DEBUG(10,("is_share_read_only_for_user: share %s is %s for unix user %s\n",
-		service, read_only_ret ? "read-only" : "read-write", vuser->user.unix_name ));
+	DEBUG(10,("is_share_read_only_for_user: share %s is %s for unix user "
+		  "%s\n", service,
+		  read_only_ret ? "read-only" : "read-write",
+		  vuser->user.unix_name ));
 
 	return read_only_ret;
 }
@@ -146,7 +154,7 @@
 	if (!user_ok(vuser->user.unix_name,snum, vuser->groups, vuser->n_groups))
 		return(False);
 
-	readonly_share = is_share_read_only_for_user(conn, vuser);
+	readonly_share = is_share_read_only_for_user(conn->service, vuser);
 
 	if (!readonly_share &&
 	    !share_access_check(conn, snum, vuser, FILE_WRITE_DATA)) {



More information about the samba-cvs mailing list