svn commit: samba r8760 - in branches/SAMBA_4_0/source: libcli/composite libnet

mimir at samba.org mimir at samba.org
Mon Jul 25 22:56:28 GMT 2005


Author: mimir
Date: 2005-07-25 22:56:28 +0000 (Mon, 25 Jul 2005)
New Revision: 8760

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

Log:
Rework monitor messaging code a bit, as Metze once suggested.
enum type has now been replaced with unsigned 32-bit field and
message data is passed as void pointer.

This allows various extension implementers to plug their monitor
messages in more easily.


rafal


Added:
   branches/SAMBA_4_0/source/libnet/userinfo.h
   branches/SAMBA_4_0/source/libnet/userman.h
Modified:
   branches/SAMBA_4_0/source/libcli/composite/monitor.h


Changeset:
Modified: branches/SAMBA_4_0/source/libcli/composite/monitor.h
===================================================================
--- branches/SAMBA_4_0/source/libcli/composite/monitor.h	2005-07-25 22:00:56 UTC (rev 8759)
+++ branches/SAMBA_4_0/source/libcli/composite/monitor.h	2005-07-25 22:56:28 UTC (rev 8760)
@@ -21,35 +21,20 @@
 */
 
 /*
- * Monitor structure definition. Composite function monitoring allows client
- * application to be notified on function progress. This enables eg. gui
- * client to display progress bars, status messages, etc.
+ * Monitor structure and message types definitions. Composite function monitoring
+ * allows client application to be notified on function progress. This enables
+ * eg. gui client to display progress bars, status messages, etc.
  */
 
-enum monitor_type {
-	rpc_create_user,
-	rpc_open_user,
-	rpc_query_user,
-	rpc_close_user
-};
 
-struct monitor_msg {
-	enum monitor_type type;
-	union monitor_data {
-		struct rpc_create_user {
-			uint32_t rid;
-		} rpc_create_user;
+#define  rpc_create_user        (0x00000001)        /* userman.h */
+#define  rpc_open_user          (0x00000002)        /* userinfo.h */
+#define  rpc_query_user         (0x00000003)        /* userinfo.h */
+#define  rpc_close_user         (0x00000004)        /* userinfo.h */
 
-		struct rpc_open_user {
-			uint32_t rid, access_mask;
-		} rpc_open_user;
 
-		struct rpc_query_user {
-			uint16_t level;
-		} rpc_query_user;
-
-		struct rpc_close_user {
-			uint32_t rid;
-		} rpc_close_user;
-	} data;
+struct monitor_msg {
+	uint32_t   type;
+	void       *data;
+	size_t     data_size;
 };

Added: branches/SAMBA_4_0/source/libnet/userinfo.h
===================================================================
--- branches/SAMBA_4_0/source/libnet/userinfo.h	2005-07-25 22:00:56 UTC (rev 8759)
+++ branches/SAMBA_4_0/source/libnet/userinfo.h	2005-07-25 22:56:28 UTC (rev 8760)
@@ -0,0 +1,36 @@
+/* 
+   Unix SMB/CIFS implementation.
+
+   Copyright (C) Rafal Szczesniak 2005
+   
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+   
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+   
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+
+/*
+ * Monitor messages sent from userinfo.c functions
+ */
+
+struct msg_rpc_open_user {
+	uint32_t rid, access_mask;
+};
+
+struct msg_rpc_query_user {
+	uint16_t level;
+};
+
+struct msg_rpc_close_user {
+	uint32_t rid;
+};

Added: branches/SAMBA_4_0/source/libnet/userman.h
===================================================================
--- branches/SAMBA_4_0/source/libnet/userman.h	2005-07-25 22:00:56 UTC (rev 8759)
+++ branches/SAMBA_4_0/source/libnet/userman.h	2005-07-25 22:56:28 UTC (rev 8760)
@@ -0,0 +1,28 @@
+/* 
+   Unix SMB/CIFS implementation.
+
+   Copyright (C) Rafal Szczesniak 2005
+   
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+   
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+   
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+
+/*
+ * Monitor messages sent from userman.c functions
+ */
+
+struct msg_rpc_create_user {
+	uint32_t rid;
+};



More information about the samba-cvs mailing list