messaging: move types to IDL.
[idra/samba.git] / source3 / librpc / idl / messaging.idl
index ad9d7106d02e72b49d2cb4457dacfe5a7f0556ab..068658587f76bac33a114b5d095faf4e3a5479fb 100644 (file)
@@ -9,11 +9,93 @@
 ]
 interface messaging
 {
+       const int MSG_TYPE_MASK = 0xFFFF;
+
+       typedef [v1_enum,public] enum {
+
+               /* general messages */
+               MSG_DEBUG                       = 0x0001,
+               MSG_PING                        = 0x0002,
+               MSG_PONG                        = 0x0003,
+               MSG_PROFILE                     = 0x0004,
+               MSG_REQ_DEBUGLEVEL              = 0x0005,
+               MSG_DEBUGLEVEL                  = 0x0006,
+               MSG_REQ_PROFILELEVEL            = 0x0007,
+               MSG_PROFILELEVEL                = 0x0008,
+               MSG_REQ_POOL_USAGE              = 0x0009,
+               MSG_POOL_USAGE                  = 0x000A,
+
+               /* If dmalloc is included, set a steady-state mark */
+               MSG_REQ_DMALLOC_MARK            = 0x000B,
+
+               /* If dmalloc is included, dump to the dmalloc log a description of
+                * what has changed since the last MARK */
+               MSG_REQ_DMALLOC_LOG_CHANGED     = 0x000C,
+               MSG_SHUTDOWN                    = 0x000D,
+
+               /* nmbd messages */
+               MSG_FORCE_ELECTION              = 0x0101,
+               MSG_WINS_NEW_ENTRY              = 0x0102,
+               MSG_SEND_PACKET                 = 0x0103,
+
+               /* printing messages */
+               MSG_PRINTER_NOTIFY              = 0x2001, /* Obsolete */
+               MSG_PRINTER_NOTIFY2             = 0x0202,
+               MSG_PRINTER_DRVUPGRADE          = 0x0203,
+               MSG_PRINTERDATA_INIT_RESET      = 0x0204,
+               MSG_PRINTER_UPDATE              = 0x0205,
+               MSG_PRINTER_MOD                 = 0x0206,
+
+               /* smbd messages */
+               MSG_SMB_CONF_UPDATED            = 0x0301,
+               MSG_SMB_FORCE_TDIS              = 0x0302,
+               MSG_SMB_SAM_SYNC                = 0x0303,
+               MSG_SMB_SAM_REPL                = 0x0304,
+               MSG_SMB_UNLOCK                  = 0x0305,
+               MSG_SMB_BREAK_REQUEST           = 0x0306,
+               MSG_SMB_BREAK_RESPONSE          = 0x0307,
+               MSG_SMB_ASYNC_LEVEL2_BREAK      = 0x0308,
+               MSG_SMB_OPEN_RETRY              = 0x0309,
+               MSG_SMB_KERNEL_BREAK            = 0x030A,
+               MSG_SMB_FILE_RENAME             = 0x030B,
+               MSG_SMB_INJECT_FAULT            = 0x030C,
+               MSG_SMB_BLOCKING_LOCK_CANCEL    = 0x030D,
+               MSG_SMB_NOTIFY                  = 0x030E,
+               MSG_SMB_STAT_CACHE_DELETE       = 0x030F,
+
+               /* Samba4 compatibility */
+               MSG_PVFS_NOTIFY                 = 0x0310,
+
+               /* cluster reconfigure events */
+               MSG_SMB_BRL_VALIDATE            = 0x0311,
+               MSG_SMB_RELEASE_IP              = 0x0312,
+
+               /*Close a specific file given a share entry. */
+               MSG_SMB_CLOSE_FILE              = 0x0313,
+
+               /* winbind messages */
+               MSG_WINBIND_FINISHED            = 0x0401,
+               MSG_WINBIND_FORGET_STATE        = 0x0402,
+               MSG_WINBIND_ONLINE              = 0x0403,
+               MSG_WINBIND_OFFLINE             = 0x0404,
+               MSG_WINBIND_ONLINESTATUS        = 0x0405,
+               MSG_WINBIND_TRY_TO_GO_ONLINE    = 0x0406,
+               MSG_WINBIND_FAILED_TO_GO_ONLINE = 0x0407,
+               MSG_WINBIND_VALIDATE_CACHE      = 0x0408,
+               MSG_WINBIND_DUMP_DOMAIN_LIST    = 0x0409,
+
+               /* event messages */
+               MSG_DUMP_EVENT_LIST             = 0x0500,
+
+               /* dbwrap messages 4001-4999 */
+               MSG_DBWRAP_TDB2_CHANGES         = 4001
+       } messaging_type;
+
        /* messaging struct sent across the sockets and stored in the tdb */
 
        typedef [public] struct {
                uint32 msg_version;
-               uint32 msg_type;
+               messaging_type msg_type;
                server_id dest;
                server_id src;
                DATA_BLOB buf;