This repository has been archived by the owner on Jul 30, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 9
/
octopus.h
134 lines (111 loc) · 3.26 KB
/
octopus.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#ifndef _octopus_user_
#define _octopus_user_
/* Module octopus */
#include <string.h>
#include <mach/ndr.h>
#include <mach/boolean.h>
#include <mach/kern_return.h>
#include <mach/notify.h>
#include <mach/mach_types.h>
#include <mach/message.h>
#include <mach/mig_errors.h>
#include <mach/port.h>
#ifdef AUTOTEST
#ifndef FUNCTION_PTR_T
#define FUNCTION_PTR_T
typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t);
typedef struct {
char *name;
function_ptr_t function;
} function_table_entry;
typedef function_table_entry *function_table_t;
#endif /* FUNCTION_PTR_T */
#endif /* AUTOTEST */
#ifndef octopus_MSG_COUNT
#define octopus_MSG_COUNT 1
#endif /* octopus_MSG_COUNT */
#include <mach/std_types.h>
#include <mach/mig.h>
#include <mach/mig.h>
#include <mach/mach_types.h>
#include "octopus_mach_types.h"
#ifdef __BeforeMigUserHeader
__BeforeMigUserHeader
#endif /* __BeforeMigUserHeader */
#include <sys/cdefs.h>
__BEGIN_DECLS
/* Routine hello */
#ifdef mig_external
mig_external
#else
extern
#endif /* mig_external */
kern_return_t hello
(
mach_port_t server,
string_t test
);
__END_DECLS
/********************** Caution **************************/
/* The following data types should be used to calculate */
/* maximum message sizes only. The actual message may be */
/* smaller, and the position of the arguments within the */
/* message layout may vary from what is presented here. */
/* For example, if any of the arguments are variable- */
/* sized, and less than the maximum is sent, the data */
/* will be packed tight in the actual message to reduce */
/* the presence of holes. */
/********************** Caution **************************/
/* typedefs for all requests */
#ifndef __Request__octopus_subsystem__defined
#define __Request__octopus_subsystem__defined
#ifdef __MigPackStructs
#pragma pack(4)
#endif
typedef struct {
mach_msg_header_t Head;
} __Request__hello_t;
#ifdef __MigPackStructs
#pragma pack()
#endif
#endif /* !__Request__octopus_subsystem__defined */
/* union of all requests */
#ifndef __RequestUnion__octopus_subsystem__defined
#define __RequestUnion__octopus_subsystem__defined
union __RequestUnion__octopus_subsystem {
__Request__hello_t Request_hello;
};
#endif /* !__RequestUnion__octopus_subsystem__defined */
/* typedefs for all replies */
#ifndef __Reply__octopus_subsystem__defined
#define __Reply__octopus_subsystem__defined
#ifdef __MigPackStructs
#pragma pack(4)
#endif
typedef struct {
mach_msg_header_t Head;
NDR_record_t NDR;
kern_return_t RetCode;
mach_msg_type_number_t testOffset; /* MiG doesn't use it */
mach_msg_type_number_t testCnt;
char test[1024];
} __Reply__hello_t;
#ifdef __MigPackStructs
#pragma pack()
#endif
#endif /* !__Reply__octopus_subsystem__defined */
/* union of all replies */
#ifndef __ReplyUnion__octopus_subsystem__defined
#define __ReplyUnion__octopus_subsystem__defined
union __ReplyUnion__octopus_subsystem {
__Reply__hello_t Reply_hello;
};
#endif /* !__RequestUnion__octopus_subsystem__defined */
#ifndef subsystem_to_name_map_octopus
#define subsystem_to_name_map_octopus \
{ "hello", 777 }
#endif
#ifdef __AfterMigUserHeader
__AfterMigUserHeader
#endif /* __AfterMigUserHeader */
#endif /* _octopus_user_ */