s3-messaging: Fix messaging classes.
[Samba/gbeck.git] / source3 / librpc / idl / messaging.idl
blob309f0bb9f09cfc12447a04b54d86f714c63ad283
1 #include "idl_types.h"
3 import "server_id.idl";
5 /*
6 IDL structures for messaging code
7 */
10 pointer_default(unique)
12 interface messaging
14 const int MSG_TYPE_MASK = 0xFFFF;
16 typedef [v1_enum,public] enum {
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,
30 /* If dmalloc is included, set a steady-state mark */
31 MSG_REQ_DMALLOC_MARK = 0x000B,
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,
38 MSG_IDMAP_FLUSH = 0x000E,
39 MSG_IDMAP_DELETE = 0x000F,
40 MSG_IDMAP_KILL = 0x0010,
42 /* nmbd messages */
43 MSG_FORCE_ELECTION = 0x0101,
44 MSG_WINS_NEW_ENTRY = 0x0102,
45 MSG_SEND_PACKET = 0x0103,
47 /* printing messages */
48 /* MSG_PRINTER_NOTIFY = 0x2001, Obsoleted */
49 MSG_PRINTER_NOTIFY2 = 0x0202,
50 MSG_PRINTER_DRVUPGRADE = 0x0203,
51 MSG_PRINTERDATA_INIT_RESET = 0x0204,
52 MSG_PRINTER_UPDATE = 0x0205,
53 MSG_PRINTER_MOD = 0x0206,
54 MSG_PRINTER_PCAP = 0x0207,
56 /* smbd messages */
57 MSG_SMB_CONF_UPDATED = 0x0301,
58 MSG_SMB_FORCE_TDIS = 0x0302,
59 MSG_SMB_SAM_SYNC = 0x0303,
60 MSG_SMB_SAM_REPL = 0x0304,
61 MSG_SMB_UNLOCK = 0x0305,
62 MSG_SMB_BREAK_REQUEST = 0x0306,
63 MSG_SMB_BREAK_RESPONSE = 0x0307,
64 MSG_SMB_ASYNC_LEVEL2_BREAK = 0x0308,
65 MSG_SMB_OPEN_RETRY = 0x0309,
66 MSG_SMB_KERNEL_BREAK = 0x030A,
67 MSG_SMB_FILE_RENAME = 0x030B,
68 MSG_SMB_INJECT_FAULT = 0x030C,
69 MSG_SMB_BLOCKING_LOCK_CANCEL = 0x030D,
70 MSG_SMB_NOTIFY = 0x030E,
71 MSG_SMB_STAT_CACHE_DELETE = 0x030F,
73 /* Samba4 compatibility */
74 MSG_PVFS_NOTIFY = 0x0310,
76 /* cluster reconfigure events */
77 MSG_SMB_BRL_VALIDATE = 0x0311,
79 /*Close a specific file given a share entry. */
80 MSG_SMB_CLOSE_FILE = 0x0313,
82 /* winbind messages */
83 MSG_WINBIND_FINISHED = 0x0401,
84 MSG_WINBIND_FORGET_STATE = 0x0402,
85 MSG_WINBIND_ONLINE = 0x0403,
86 MSG_WINBIND_OFFLINE = 0x0404,
87 MSG_WINBIND_ONLINESTATUS = 0x0405,
88 MSG_WINBIND_TRY_TO_GO_ONLINE = 0x0406,
89 MSG_WINBIND_FAILED_TO_GO_ONLINE = 0x0407,
90 MSG_WINBIND_VALIDATE_CACHE = 0x0408,
91 MSG_WINBIND_DUMP_DOMAIN_LIST = 0x0409,
92 MSG_WINBIND_IP_DROPPED = 0x040A,
94 /* event messages */
95 MSG_DUMP_EVENT_LIST = 0x0500,
97 /* dbwrap messages 4001-4999 (0x0FA0 - 0x1387) */
98 MSG_DBWRAP_TDB2_CHANGES = 4001,
99 MSG_DBWRAP_G_LOCK_RETRY = 4002
100 } messaging_type;
102 /* messaging struct sent across the sockets and stored in the tdb */
104 typedef [public] struct {
105 uint32 msg_version;
106 messaging_type msg_type;
107 server_id dest;
108 server_id src;
109 DATA_BLOB buf;
110 } messaging_rec;
112 typedef [public] struct {
113 uint32 num_messages;
114 messaging_rec messages[num_messages];
115 } messaging_array;
118 * struct used for change notify messages
119 * in the dbwrap_tdb2 code
121 typedef [public] struct {
122 [charset(DOS),value("TDB2")] uint8 magic_string[4];
123 [value(1)] uint32 magic_version;
124 [charset(UTF8),string] uint8 name[];
125 uint32 old_seqnum;
126 uint32 new_seqnum;
127 uint32 num_changes;
128 uint32 num_keys;
129 DATA_BLOB keys[num_keys];
130 } dbwrap_tdb2_changes;