1#ifndef _sysdiagnose_notification_user_
2#define _sysdiagnose_notification_user_
3
4/* Module sysdiagnose_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 sysdiagnose_notification_MSG_COUNT
55#define sysdiagnose_notification_MSG_COUNT 1
56#endif /* sysdiagnose_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#include <atm/atm_types.h>
63
64#ifdef __BeforeMigUserHeader
65__BeforeMigUserHeader
66#endif /* __BeforeMigUserHeader */
67
68#include <sys/cdefs.h>
69__BEGIN_DECLS
70
71
72/* SimpleRoutine sysdiagnose_notification */
73#ifdef mig_external
74mig_external
75#else
76extern
77#endif /* mig_external */
78kern_return_t send_sysdiagnose_notification
79(
80 mach_port_t sysdiagnose_port,
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__sysdiagnose_notification_subsystem__defined
100#define __Request__sysdiagnose_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 uint32_t flags;
109 } __Request__sysdiagnose_notification_t __attribute__((unused));
110#ifdef __MigPackStructs
111#pragma pack()
112#endif
113#endif /* !__Request__sysdiagnose_notification_subsystem__defined */
114
115/* union of all requests */
116
117#ifndef __RequestUnion__send_sysdiagnose_notification_subsystem__defined
118#define __RequestUnion__send_sysdiagnose_notification_subsystem__defined
119union __RequestUnion__send_sysdiagnose_notification_subsystem {
120 __Request__sysdiagnose_notification_t Request_send_sysdiagnose_notification;
121};
122#endif /* !__RequestUnion__send_sysdiagnose_notification_subsystem__defined */
123/* typedefs for all replies */
124
125#ifndef __Reply__sysdiagnose_notification_subsystem__defined
126#define __Reply__sysdiagnose_notification_subsystem__defined
127
128#ifdef __MigPackStructs
129#pragma pack(4)
130#endif
131 typedef struct {
132 mach_msg_header_t Head;
133 NDR_record_t NDR;
134 kern_return_t RetCode;
135 } __Reply__sysdiagnose_notification_t __attribute__((unused));
136#ifdef __MigPackStructs
137#pragma pack()
138#endif
139#endif /* !__Reply__sysdiagnose_notification_subsystem__defined */
140
141/* union of all replies */
142
143#ifndef __ReplyUnion__send_sysdiagnose_notification_subsystem__defined
144#define __ReplyUnion__send_sysdiagnose_notification_subsystem__defined
145union __ReplyUnion__send_sysdiagnose_notification_subsystem {
146 __Reply__sysdiagnose_notification_t Reply_send_sysdiagnose_notification;
147};
148#endif /* !__RequestUnion__send_sysdiagnose_notification_subsystem__defined */
149
150#ifndef subsystem_to_name_map_sysdiagnose_notification
151#define subsystem_to_name_map_sysdiagnose_notification \
152 { "sysdiagnose_notification", 31337 }
153#endif
154
155#ifdef __AfterMigUserHeader
156__AfterMigUserHeader
157#endif /* __AfterMigUserHeader */
158
159#endif /* _sysdiagnose_notification_user_ */
160