summaryrefslogtreecommitdiff
path: root/source4/libcli/composite
diff options
context:
space:
mode:
authorRafal Szczesniak <mimir@samba.org>2005-07-25 22:56:28 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:30:03 -0500
commita04e899bc07825acecd0e1d3bd5e9898b52a0bd9 (patch)
tree507d0c69b5de197b4f059e82d251c6e321fa17ec /source4/libcli/composite
parent2440a008a82f73c8310cde18cbfb53e39c99d362 (diff)
downloadsamba-a04e899bc07825acecd0e1d3bd5e9898b52a0bd9.tar.gz
samba-a04e899bc07825acecd0e1d3bd5e9898b52a0bd9.tar.bz2
samba-a04e899bc07825acecd0e1d3bd5e9898b52a0bd9.zip
r8760: 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 (This used to be commit 4a6ab58133a59d3da3209b3e46c2a8cf848d25e7)
Diffstat (limited to 'source4/libcli/composite')
-rw-r--r--source4/libcli/composite/monitor.h37
1 files changed, 11 insertions, 26 deletions
diff --git a/source4/libcli/composite/monitor.h b/source4/libcli/composite/monitor.h
index 729f37204f..6173ca9057 100644
--- a/source4/libcli/composite/monitor.h
+++ b/source4/libcli/composite/monitor.h
@@ -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;
- struct rpc_open_user {
- uint32_t rid, access_mask;
- } rpc_open_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_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;
};