1#ifndef _coalition_notification_user_
2#define _coalition_notification_user_
3
4/* Module coalition_notification */
5
6#include <string.h>
7#include <mach/ndr.h>
8#include <mach/boolean.h>
9#include <mach/kern_return.h>
10#include <mach/notify.h>
11#include <mach/mach_types.h>
12#include <mach/message.h>
13#include <mach/mig_errors.h>
14#include <mach/port.h>
15
16/* BEGIN MIG_STRNCPY_ZEROFILL CODE */
17
18#if defined(__has_include)
19#if __has_include(<mach/mig_strncpy_zerofill_support.h>)
20#ifndef USING_MIG_STRNCPY_ZEROFILL
21#define USING_MIG_STRNCPY_ZEROFILL
22#endif
23#ifndef __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__
24#define __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__
25#ifdef __cplusplus
26extern "C" {
27#endif
28 extern int mig_strncpy_zerofill(char *dest, const char *src, int len) __attribute__((weak_import));
29#ifdef __cplusplus
30}
31#endif
32#endif /* __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__ */
33#endif /* __has_include(<mach/mig_strncpy_zerofill_support.h>) */
34#endif /* __has_include */
35
36/* END MIG_STRNCPY_ZEROFILL CODE */
37
38#if (__MigKernelSpecificCode) || (_MIG_KERNEL_SPECIFIC_CODE_)
39#include <kern/ipc_mig.h>
40#endif /* __MigKernelSpecificCode */
41
42#ifdef AUTOTEST
43#ifndef FUNCTION_PTR_T
44#define FUNCTION_PTR_T
45typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t);
46typedef struct {
47 char *name;
48 function_ptr_t function;
49} function_table_entry;
50typedef function_table_entry *function_table_t;
51#endif /* FUNCTION_PTR_T */
52#endif /* AUTOTEST */
53
54#ifndef coalition_notification_MSG_COUNT
55#define coalition_notification_MSG_COUNT 1
56#endif /* coalition_notification_MSG_COUNT */
57
58#include <mach/std_types.h>
59#include <mach/mig.h>
60#include <mach/mig.h>
61#include <mach/mach_types.h>
62
63#ifdef __BeforeMigUserHeader
64__BeforeMigUserHeader
65#endif /* __BeforeMigUserHeader */
66
67#include <sys/cdefs.h>
68__BEGIN_DECLS
69
70
71/* SimpleRoutine coalition_notification */
72#ifdef mig_external
73mig_external
74#else
75extern
76#endif /* mig_external */
77kern_return_t coalition_notification
78(
79 mach_port_t coalition_port,
80 uint64_t id,
81 uint32_t flags
82);
83
84__END_DECLS
85
86/********************** Caution **************************/
87/* The following data types should be used to calculate */
88/* maximum message sizes only. The actual message may be */
89/* smaller, and the position of the arguments within the */
90/* message layout may vary from what is presented here. */
91/* For example, if any of the arguments are variable- */
92/* sized, and less than the maximum is sent, the data */
93/* will be packed tight in the actual message to reduce */
94/* the presence of holes. */
95/********************** Caution **************************/
96
97/* typedefs for all requests */
98
99#ifndef __Request__coalition_notification_subsystem__defined
100#define __Request__coalition_notification_subsystem__defined
101
102#ifdef __MigPackStructs
103#pragma pack(4)
104#endif
105 typedef struct {
106 mach_msg_header_t Head;
107 NDR_record_t NDR;
108 uint64_t id;
109 uint32_t flags;
110 } __Request__coalition_notification_t __attribute__((unused));
111#ifdef __MigPackStructs
112#pragma pack()
113#endif
114#endif /* !__Request__coalition_notification_subsystem__defined */
115
116/* union of all requests */
117
118#ifndef __RequestUnion__coalition_notification_subsystem__defined
119#define __RequestUnion__coalition_notification_subsystem__defined
120union __RequestUnion__coalition_notification_subsystem {
121 __Request__coalition_notification_t Request_coalition_notification;
122};
123#endif /* !__RequestUnion__coalition_notification_subsystem__defined */
124/* typedefs for all replies */
125
126#ifndef __Reply__coalition_notification_subsystem__defined
127#define __Reply__coalition_notification_subsystem__defined
128
129#ifdef __MigPackStructs
130#pragma pack(4)
131#endif
132 typedef struct {
133 mach_msg_header_t Head;
134 NDR_record_t NDR;
135 kern_return_t RetCode;
136 } __Reply__coalition_notification_t __attribute__((unused));
137#ifdef __MigPackStructs
138#pragma pack()
139#endif
140#endif /* !__Reply__coalition_notification_subsystem__defined */
141
142/* union of all replies */
143
144#ifndef __ReplyUnion__coalition_notification_subsystem__defined
145#define __ReplyUnion__coalition_notification_subsystem__defined
146union __ReplyUnion__coalition_notification_subsystem {
147 __Reply__coalition_notification_t Reply_coalition_notification;
148};
149#endif /* !__RequestUnion__coalition_notification_subsystem__defined */
150
151#ifndef subsystem_to_name_map_coalition_notification
152#define subsystem_to_name_map_coalition_notification \
153 { "coalition_notification", 5300 }
154#endif
155
156#ifdef __AfterMigUserHeader
157__AfterMigUserHeader
158#endif /* __AfterMigUserHeader */
159
160#endif /* _coalition_notification_user_ */
161