svn commit: samba r4856 - in branches/SAMBA_3_0/source/rpc_server: .

jerry at samba.org jerry at samba.org
Wed Jan 19 21:10:57 GMT 2005


Author: jerry
Date: 2005-01-19 21:10:56 +0000 (Wed, 19 Jan 2005)
New Revision: 4856

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

Log:
after testing a simple add printer script, i realized that you still have to be root to send the message to all smbds that the config file has been updated
Modified:
   branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c
   branches/SAMBA_3_0/source/rpc_server/srv_srvsvc_nt.c


Changeset:
Modified: branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c	2005-01-19 20:44:00 UTC (rev 4855)
+++ branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c	2005-01-19 21:10:56 UTC (rev 4856)
@@ -409,21 +409,21 @@
 		if ( is_print_op )
 			become_root();
 		
-		ret = smbrun(command, NULL);
+		if ( (ret = smbrun(command, NULL)) == 0 ) {
+			/* Tell everyone we updated smb.conf. */
+			message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
+		}
 		
 		if ( is_print_op )
 			unbecome_root();
 
-		/********** BEGIN SePrintOperatorPrivlege BLOCK **********/
+		/********** END SePrintOperatorPrivlege BLOCK **********/
 
 		DEBUGADD(10,("returned [%d]\n", ret));
 
 		if (ret != 0) 
 			return WERR_BADFID; /* What to return here? */
 
-		/* Tell everyone we updated smb.conf. */
-		message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
-
 		/* go ahead and re-read the services immediately */
 		reload_services( False );
 
@@ -6034,7 +6034,10 @@
 	if ( is_print_op )
 		become_root();
 	
-	ret = smbrun(command, &fd);
+	if ( (ret = smbrun(command, &fd)) == 0 ) {
+		/* Tell everyone we updated smb.conf. */
+		message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
+	}
 
 	if ( is_print_op )
 		unbecome_root();
@@ -6049,9 +6052,6 @@
 		return False;
 	}
 
-	/* Tell everyone we updated smb.conf. */
-	message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
-
 	/* reload our services immediately */
 	reload_services( False );
 

Modified: branches/SAMBA_3_0/source/rpc_server/srv_srvsvc_nt.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_server/srv_srvsvc_nt.c	2005-01-19 20:44:00 UTC (rev 4855)
+++ branches/SAMBA_3_0/source/rpc_server/srv_srvsvc_nt.c	2005-01-19 21:10:56 UTC (rev 4856)
@@ -1580,7 +1580,10 @@
 		if ( is_disk_op )
 			become_root();
 			
-		ret = smbrun(command, NULL);
+		if ( (ret = smbrun(command, NULL)) == 0 ) {
+			/* Tell everyone we updated smb.conf. */
+			message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
+		}
 		
 		if ( is_disk_op )
 			unbecome_root();
@@ -1591,9 +1594,6 @@
 	
 		if ( ret != 0 )
 			return WERR_ACCESS_DENIED;
-
-		/* Tell everyone we updated smb.conf. */
-		message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
 	} else {
 		DEBUG(10,("_srv_net_share_set_info: No change to share name (%s)\n", share_name ));
 	}
@@ -1725,7 +1725,10 @@
 	if ( is_disk_op )
 		become_root();
 
-	ret = smbrun(command, NULL);
+	if ( (ret = smbrun(command, NULL)) == 0 ) {
+		/* Tell everyone we updated smb.conf. */
+		message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
+	}
 
 	if ( is_disk_op )
 		unbecome_root();
@@ -1737,9 +1740,6 @@
 	if ( ret != 0 )
 		return WERR_ACCESS_DENIED;
 
-	/* Tell everyone we updated smb.conf. */
-	message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
-
 	if (psd) {
 		if (!set_share_security(p->mem_ctx, share_name, psd)) {
 			DEBUG(0,("_srv_net_share_add: Failed to add security info to share %s.\n", share_name ));
@@ -1808,7 +1808,10 @@
 	if ( is_disk_op )
 		become_root();
 
-	ret = smbrun(command, NULL);
+	if ( (ret = smbrun(command, NULL)) == 0 ) {
+		/* Tell everyone we updated smb.conf. */
+		message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
+	}
 
 	if ( is_disk_op )
 		unbecome_root();
@@ -1820,9 +1823,6 @@
 	if ( ret != 0 )
 		return WERR_ACCESS_DENIED;
 
-	/* Tell everyone we updated smb.conf. */
-	message_send_all(conn_tdb_ctx(), MSG_SMB_CONF_UPDATED, NULL, 0, False, NULL);
-
 	/* Delete the SD in the database. */
 	delete_share_security(snum);
 



More information about the samba-cvs mailing list