33
35
#define MSG_PVFS_NOTIFY 7
34
36
#define MSG_NTVFS_OPLOCK_BREAK 8
37
#define MSG_DREPL_ALLOCATE_RID 9
36
39
/* temporary messaging endpoints are allocated above this line */
37
40
#define MSG_TMP_BASE 1000
39
42
/* taskid for messaging of parent process */
40
43
#define SAMBA_PARENT_TASKID 0
45
typedef void (*msg_callback_t)(struct messaging_context *msg, void *private_data,
47
struct server_id server_id, DATA_BLOB *data);
49
NTSTATUS messaging_send(struct messaging_context *msg, struct server_id server,
50
uint32_t msg_type, const DATA_BLOB *data);
51
NTSTATUS messaging_register(struct messaging_context *msg, void *private_data,
54
NTSTATUS messaging_register_tmp(struct messaging_context *msg, void *private_data,
55
msg_callback_t fn, uint32_t *msg_type);
56
struct messaging_context *messaging_init(TALLOC_CTX *mem_ctx,
58
struct server_id server_id,
59
struct tevent_context *ev);
60
struct messaging_context *messaging_client_init(TALLOC_CTX *mem_ctx,
62
struct tevent_context *ev);
63
NTSTATUS messaging_send_ptr(struct messaging_context *msg, struct server_id server,
64
uint32_t msg_type, void *ptr);
65
void messaging_deregister(struct messaging_context *msg, uint32_t msg_type, void *private_data);
66
struct server_id messaging_get_server_id(struct messaging_context *msg_ctx);