9d16570aa38eea4fbd8cf35064992c74524aded4
[nivanova/samba-autobuild/.git] / source3 / librpc / idl / messaging.idl
1 #include "idl_types.h"
2
3 import "server_id.idl";
4
5 /*
6    IDL structures for messaging code
7 */
8
9 [
10   pointer_default(unique)
11 ]
12 interface messaging
13 {
14         const int MSG_TYPE_MASK = 0xFFFF;
15
16         typedef [v1_enum,public] enum {
17
18                 /* general messages */
19                 MSG_DEBUG                       = 0x0001,
20                 MSG_PING                        = 0x0002,
21                 MSG_PONG                        = 0x0003,
22                 MSG_PROFILE                     = 0x0004,
23                 MSG_REQ_DEBUGLEVEL              = 0x0005,
24                 MSG_DEBUGLEVEL                  = 0x0006,
25                 MSG_REQ_PROFILELEVEL            = 0x0007,
26                 MSG_PROFILELEVEL                = 0x0008,
27                 MSG_REQ_POOL_USAGE              = 0x0009,
28                 MSG_POOL_USAGE                  = 0x000A,
29
30                 /* If dmalloc is included, set a steady-state mark */
31                 MSG_REQ_DMALLOC_MARK            = 0x000B,
32
33                 /* If dmalloc is included, dump to the dmalloc log a description of
34                  * what has changed since the last MARK */
35                 MSG_REQ_DMALLOC_LOG_CHANGED     = 0x000C,
36                 MSG_SHUTDOWN                    = 0x000D,
37
38                 /* ID_CACHE_FLUSH               = 0x000E, obsoleted */
39                 ID_CACHE_DELETE                 = 0x000F,
40                 ID_CACHE_KILL                   = 0x0010,
41
42                 /* Changes to smb.conf are really of general interest */
43                 MSG_SMB_CONF_UPDATED            = 0x0021,
44
45                 MSG_PREFORK_CHILD_EVENT         = 0x0031,
46                 MSG_PREFORK_PARENT_EVENT        = 0x0032,
47
48                 /* nmbd messages */
49                 MSG_FORCE_ELECTION              = 0x0101,
50                 MSG_WINS_NEW_ENTRY              = 0x0102,
51                 MSG_SEND_PACKET                 = 0x0103,
52
53                 /* printing messages */
54                 /* MSG_PRINTER_NOTIFY           = 0x2001,  Obsoleted */
55                 MSG_PRINTER_NOTIFY2             = 0x0202,
56                 MSG_PRINTER_DRVUPGRADE          = 0x0203,
57                 MSG_PRINTERDATA_INIT_RESET      = 0x0204,
58                 MSG_PRINTER_UPDATE              = 0x0205,
59                 MSG_PRINTER_MOD                 = 0x0206,
60                 MSG_PRINTER_PCAP                = 0x0207,
61
62                 /* smbd messages */
63                 /* MSG_SMB_CONF_UPDATED         = 0x0301,  Obsoleted */
64                 MSG_SMB_FORCE_TDIS              = 0x0302,
65                 /* MSG_SMB_SAM_SYNC             = 0x0303,  Obsoleted */
66                 /* MSG_SMB_SAM_REPL             = 0x0304,  Obsoleted */
67                 MSG_SMB_UNLOCK                  = 0x0305,
68                 MSG_SMB_BREAK_REQUEST           = 0x0306,
69                 /* MSG_SMB_BREAK_RESPONSE       = 0x0307,  Obsoleted */
70                 MSG_SMB_ASYNC_LEVEL2_BREAK      = 0x0308,
71                 /* MSG_SMB_OPEN_RETRY           = 0x0309,  Obsoleted */
72                 MSG_SMB_KERNEL_BREAK            = 0x030A,
73                 MSG_SMB_FILE_RENAME             = 0x030B,
74                 MSG_SMB_INJECT_FAULT            = 0x030C,
75                 MSG_SMB_BLOCKING_LOCK_CANCEL    = 0x030D,
76                 MSG_SMB_NOTIFY                  = 0x030E,
77                 MSG_SMB_STAT_CACHE_DELETE       = 0x030F,
78
79                 /* Samba4 compatibility */
80                 MSG_PVFS_NOTIFY                 = 0x0310,
81
82                 /* cluster reconfigure events */
83                 MSG_SMB_BRL_VALIDATE            = 0x0311,
84
85                 /*Close a specific file given a share entry. */
86                 MSG_SMB_CLOSE_FILE              = 0x0313,
87
88                 /* Trigger a notify cleanup run */
89                 MSG_SMB_NOTIFY_CLEANUP          = 0x0314,
90                 MSG_SMB_SCAVENGER               = 0x0315,
91
92                 /* winbind messages */
93                 MSG_WINBIND_FINISHED            = 0x0401,
94                 MSG_WINBIND_FORGET_STATE        = 0x0402,
95                 MSG_WINBIND_ONLINE              = 0x0403,
96                 MSG_WINBIND_OFFLINE             = 0x0404,
97                 MSG_WINBIND_ONLINESTATUS        = 0x0405,
98                 MSG_WINBIND_TRY_TO_GO_ONLINE    = 0x0406,
99                 MSG_WINBIND_FAILED_TO_GO_ONLINE = 0x0407,
100                 MSG_WINBIND_VALIDATE_CACHE      = 0x0408,
101                 MSG_WINBIND_DUMP_DOMAIN_LIST    = 0x0409,
102                 MSG_WINBIND_IP_DROPPED          = 0x040A,
103                 MSG_WINBIND_DOMAIN_ONLINE       = 0x040B,
104                 MSG_WINBIND_DOMAIN_OFFLINE      = 0x040C,
105
106                 /* event messages */
107                 MSG_DUMP_EVENT_LIST             = 0x0500,
108
109                 /* smbXsrv messages */
110                 MSG_SMBXSRV_SESSION_CLOSE       = 0x0600,
111
112                 /* dbwrap messages 4001-4999 (0x0FA0 - 0x1387) */
113                 /* MSG_DBWRAP_TDB2_CHANGES              = 4001, */
114                 MSG_DBWRAP_G_LOCK_RETRY         = 4002,
115                 MSG_DBWRAP_MODIFIED             = 4003
116         } messaging_type;
117
118         /* messaging struct sent across the sockets and stored in the tdb */
119
120         typedef [public] struct {
121                 uint32 msg_version;
122                 messaging_type msg_type;
123                 server_id dest;
124                 server_id src;
125                 DATA_BLOB buf;
126         } messaging_rec;
127
128         typedef [public] struct {
129                 uint32 num_messages;
130                 messaging_rec messages[num_messages];
131         } messaging_array;
132 }