mirror of
https://github.com/samba-team/samba.git
synced 2025-11-08 16:23:49 +03:00
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 commit is contained in:
committed by
Gerald (Jerry) Carter
parent
266aaacf0b
commit
4a6ab58133
@@ -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
|
||||
};
|
||||
|
||||
#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 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;
|
||||
|
||||
struct rpc_query_user {
|
||||
uint16_t level;
|
||||
} rpc_query_user;
|
||||
|
||||
struct rpc_close_user {
|
||||
uint32_t rid;
|
||||
} rpc_close_user;
|
||||
} data;
|
||||
uint32_t type;
|
||||
void *data;
|
||||
size_t data_size;
|
||||
};
|
||||
|
||||
36
source/libnet/userinfo.h
Normal file
36
source/libnet/userinfo.h
Normal file
@@ -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;
|
||||
};
|
||||
28
source/libnet/userman.h
Normal file
28
source/libnet/userman.h
Normal file
@@ -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;
|
||||
};
|
||||
Reference in New Issue
Block a user