jack2 codebase
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

467 lines
15KB

  1. /*
  2. * IDENTIFICATION:
  3. * stub generated Fri Oct 23 10:35:08 2009
  4. * with a MiG generated Mon May 18 09:59:33 PDT 2009 by root@sulitlana.apple.com
  5. * OPTIONS:
  6. */
  7. #define __MIG_check__Reply__JackRPCClient_subsystem__ 1
  8. #define __NDR_convert__Reply__JackRPCClient_subsystem__ 1
  9. #define __NDR_convert__mig_reply_error_subsystem__ 1
  10. #include "JackRPCClient.h"
  11. #ifndef mig_internal
  12. #define mig_internal static __inline__
  13. #endif /* mig_internal */
  14. #ifndef mig_external
  15. #define mig_external
  16. #endif /* mig_external */
  17. #if !defined(__MigTypeCheck) && defined(TypeCheck)
  18. #define __MigTypeCheck TypeCheck /* Legacy setting */
  19. #endif /* !defined(__MigTypeCheck) */
  20. #if !defined(__MigKernelSpecificCode) && defined(_MIG_KERNEL_SPECIFIC_CODE_)
  21. #define __MigKernelSpecificCode _MIG_KERNEL_SPECIFIC_CODE_ /* Legacy setting */
  22. #endif /* !defined(__MigKernelSpecificCode) */
  23. #ifndef LimitCheck
  24. #define LimitCheck 0
  25. #endif /* LimitCheck */
  26. #ifndef min
  27. #define min(a,b) ( ((a) < (b))? (a): (b) )
  28. #endif /* min */
  29. #if !defined(_WALIGN_)
  30. #define _WALIGN_(x) (((x) + 3) & ~3)
  31. #endif /* !defined(_WALIGN_) */
  32. #if !defined(_WALIGNSZ_)
  33. #define _WALIGNSZ_(x) _WALIGN_(sizeof(x))
  34. #endif /* !defined(_WALIGNSZ_) */
  35. #ifndef UseStaticTemplates
  36. #define UseStaticTemplates 0
  37. #endif /* UseStaticTemplates */
  38. #ifndef __MachMsgErrorWithTimeout
  39. #define __MachMsgErrorWithTimeout(_R_) { \
  40. switch (_R_) { \
  41. case MACH_SEND_INVALID_DATA: \
  42. case MACH_SEND_INVALID_DEST: \
  43. case MACH_SEND_INVALID_HEADER: \
  44. mig_put_reply_port(InP->Head.msgh_reply_port); \
  45. break; \
  46. case MACH_SEND_TIMED_OUT: \
  47. case MACH_RCV_TIMED_OUT: \
  48. default: \
  49. mig_dealloc_reply_port(InP->Head.msgh_reply_port); \
  50. } \
  51. }
  52. #endif /* __MachMsgErrorWithTimeout */
  53. #ifndef __MachMsgErrorWithoutTimeout
  54. #define __MachMsgErrorWithoutTimeout(_R_) { \
  55. switch (_R_) { \
  56. case MACH_SEND_INVALID_DATA: \
  57. case MACH_SEND_INVALID_DEST: \
  58. case MACH_SEND_INVALID_HEADER: \
  59. mig_put_reply_port(InP->Head.msgh_reply_port); \
  60. break; \
  61. default: \
  62. mig_dealloc_reply_port(InP->Head.msgh_reply_port); \
  63. } \
  64. }
  65. #endif /* __MachMsgErrorWithoutTimeout */
  66. #ifndef __DeclareSendRpc
  67. #define __DeclareSendRpc(_NUM_, _NAME_)
  68. #endif /* __DeclareSendRpc */
  69. #ifndef __BeforeSendRpc
  70. #define __BeforeSendRpc(_NUM_, _NAME_)
  71. #endif /* __BeforeSendRpc */
  72. #ifndef __AfterSendRpc
  73. #define __AfterSendRpc(_NUM_, _NAME_)
  74. #endif /* __AfterSendRpc */
  75. #ifndef __DeclareSendSimple
  76. #define __DeclareSendSimple(_NUM_, _NAME_)
  77. #endif /* __DeclareSendSimple */
  78. #ifndef __BeforeSendSimple
  79. #define __BeforeSendSimple(_NUM_, _NAME_)
  80. #endif /* __BeforeSendSimple */
  81. #ifndef __AfterSendSimple
  82. #define __AfterSendSimple(_NUM_, _NAME_)
  83. #endif /* __AfterSendSimple */
  84. #define msgh_request_port msgh_remote_port
  85. #define msgh_reply_port msgh_local_port
  86. #if ( __MigTypeCheck || __NDR_convert__ )
  87. #if __MIG_check__Reply__JackRPCClient_subsystem__
  88. #if !defined(__MIG_check__Reply__rpc_jack_client_sync_notify_t__defined)
  89. #define __MIG_check__Reply__rpc_jack_client_sync_notify_t__defined
  90. #ifndef __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode__defined
  91. #if defined(__NDR_convert__int_rep__JackRPCClient__kern_return_t__defined)
  92. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode__defined
  93. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode(a, f) \
  94. __NDR_convert__int_rep__JackRPCClient__kern_return_t((kern_return_t *)(a), f)
  95. #elif defined(__NDR_convert__int_rep__kern_return_t__defined)
  96. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode__defined
  97. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode(a, f) \
  98. __NDR_convert__int_rep__kern_return_t((kern_return_t *)(a), f)
  99. #endif /* defined(__NDR_convert__*__defined) */
  100. #endif /* __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode__defined */
  101. #ifndef __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  102. #if defined(__NDR_convert__int_rep__JackRPCClient__int__defined)
  103. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  104. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  105. __NDR_convert__int_rep__JackRPCClient__int((int *)(a), f)
  106. #elif defined(__NDR_convert__int_rep__int__defined)
  107. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  108. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  109. __NDR_convert__int_rep__int((int *)(a), f)
  110. #elif defined(__NDR_convert__int_rep__JackRPCClient__int32_t__defined)
  111. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  112. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  113. __NDR_convert__int_rep__JackRPCClient__int32_t((int32_t *)(a), f)
  114. #elif defined(__NDR_convert__int_rep__int32_t__defined)
  115. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  116. #define __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  117. __NDR_convert__int_rep__int32_t((int32_t *)(a), f)
  118. #endif /* defined(__NDR_convert__*__defined) */
  119. #endif /* __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined */
  120. #ifndef __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  121. #if defined(__NDR_convert__char_rep__JackRPCClient__int__defined)
  122. #define __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  123. #define __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  124. __NDR_convert__char_rep__JackRPCClient__int((int *)(a), f)
  125. #elif defined(__NDR_convert__char_rep__int__defined)
  126. #define __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  127. #define __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  128. __NDR_convert__char_rep__int((int *)(a), f)
  129. #elif defined(__NDR_convert__char_rep__JackRPCClient__int32_t__defined)
  130. #define __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  131. #define __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  132. __NDR_convert__char_rep__JackRPCClient__int32_t((int32_t *)(a), f)
  133. #elif defined(__NDR_convert__char_rep__int32_t__defined)
  134. #define __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  135. #define __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  136. __NDR_convert__char_rep__int32_t((int32_t *)(a), f)
  137. #endif /* defined(__NDR_convert__*__defined) */
  138. #endif /* __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined */
  139. #ifndef __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  140. #if defined(__NDR_convert__float_rep__JackRPCClient__int__defined)
  141. #define __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  142. #define __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  143. __NDR_convert__float_rep__JackRPCClient__int((int *)(a), f)
  144. #elif defined(__NDR_convert__float_rep__int__defined)
  145. #define __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  146. #define __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  147. __NDR_convert__float_rep__int((int *)(a), f)
  148. #elif defined(__NDR_convert__float_rep__JackRPCClient__int32_t__defined)
  149. #define __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  150. #define __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  151. __NDR_convert__float_rep__JackRPCClient__int32_t((int32_t *)(a), f)
  152. #elif defined(__NDR_convert__float_rep__int32_t__defined)
  153. #define __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined
  154. #define __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result(a, f) \
  155. __NDR_convert__float_rep__int32_t((int32_t *)(a), f)
  156. #endif /* defined(__NDR_convert__*__defined) */
  157. #endif /* __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined */
  158. mig_internal kern_return_t __MIG_check__Reply__rpc_jack_client_sync_notify_t(__Reply__rpc_jack_client_sync_notify_t *Out0P)
  159. {
  160. typedef __Reply__rpc_jack_client_sync_notify_t __Reply;
  161. #if __MigTypeCheck
  162. unsigned int msgh_size;
  163. #endif /* __MigTypeCheck */
  164. if (Out0P->Head.msgh_id != 1100) {
  165. if (Out0P->Head.msgh_id == MACH_NOTIFY_SEND_ONCE)
  166. { return MIG_SERVER_DIED; }
  167. else
  168. { return MIG_REPLY_MISMATCH; }
  169. }
  170. #if __MigTypeCheck
  171. msgh_size = Out0P->Head.msgh_size;
  172. if ((Out0P->Head.msgh_bits & MACH_MSGH_BITS_COMPLEX) ||
  173. ((msgh_size != (mach_msg_size_t)sizeof(__Reply)) &&
  174. (msgh_size != (mach_msg_size_t)sizeof(mig_reply_error_t) ||
  175. Out0P->RetCode == KERN_SUCCESS)))
  176. { return MIG_TYPE_ERROR ; }
  177. #endif /* __MigTypeCheck */
  178. if (Out0P->RetCode != KERN_SUCCESS) {
  179. #ifdef __NDR_convert__mig_reply_error_t__defined
  180. __NDR_convert__mig_reply_error_t((mig_reply_error_t *)Out0P);
  181. #endif /* __NDR_convert__mig_reply_error_t__defined */
  182. return ((mig_reply_error_t *)Out0P)->RetCode;
  183. }
  184. #if defined(__NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode__defined) || \
  185. defined(__NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined)
  186. if (Out0P->NDR.int_rep != NDR_record.int_rep) {
  187. #if defined(__NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode__defined)
  188. __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode(&Out0P->RetCode, Out0P->NDR.int_rep);
  189. #endif /* __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__RetCode__defined */
  190. #if defined(__NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined)
  191. __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result(&Out0P->result, Out0P->NDR.int_rep);
  192. #endif /* __NDR_convert__int_rep__Reply__rpc_jack_client_sync_notify_t__result__defined */
  193. }
  194. #endif /* defined(__NDR_convert__int_rep...) */
  195. #if 0 || \
  196. defined(__NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined)
  197. if (Out0P->NDR.char_rep != NDR_record.char_rep) {
  198. #if defined(__NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined)
  199. __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result(&Out0P->result, Out0P->NDR.char_rep);
  200. #endif /* __NDR_convert__char_rep__Reply__rpc_jack_client_sync_notify_t__result__defined */
  201. }
  202. #endif /* defined(__NDR_convert__char_rep...) */
  203. #if 0 || \
  204. defined(__NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined)
  205. if (Out0P->NDR.float_rep != NDR_record.float_rep) {
  206. #if defined(__NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined)
  207. __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result(&Out0P->result, Out0P->NDR.float_rep);
  208. #endif /* __NDR_convert__float_rep__Reply__rpc_jack_client_sync_notify_t__result__defined */
  209. }
  210. #endif /* defined(__NDR_convert__float_rep...) */
  211. return MACH_MSG_SUCCESS;
  212. }
  213. #endif /* !defined(__MIG_check__Reply__rpc_jack_client_sync_notify_t__defined) */
  214. #endif /* __MIG_check__Reply__JackRPCClient_subsystem__ */
  215. #endif /* ( __MigTypeCheck || __NDR_convert__ ) */
  216. /* Routine rpc_jack_client_sync_notify */
  217. mig_external kern_return_t rpc_jack_client_sync_notify
  218. (
  219. mach_port_t client_port,
  220. int refnum,
  221. client_name_t client_name,
  222. int notify,
  223. message_t message,
  224. int value1,
  225. int value2,
  226. int *result
  227. )
  228. {
  229. #ifdef __MigPackStructs
  230. #pragma pack(4)
  231. #endif
  232. typedef struct {
  233. mach_msg_header_t Head;
  234. NDR_record_t NDR;
  235. int refnum;
  236. client_name_t client_name;
  237. int notify;
  238. message_t message;
  239. int value1;
  240. int value2;
  241. } Request;
  242. #ifdef __MigPackStructs
  243. #pragma pack()
  244. #endif
  245. #ifdef __MigPackStructs
  246. #pragma pack(4)
  247. #endif
  248. typedef struct {
  249. mach_msg_header_t Head;
  250. NDR_record_t NDR;
  251. kern_return_t RetCode;
  252. int result;
  253. mach_msg_trailer_t trailer;
  254. } Reply;
  255. #ifdef __MigPackStructs
  256. #pragma pack()
  257. #endif
  258. #ifdef __MigPackStructs
  259. #pragma pack(4)
  260. #endif
  261. typedef struct {
  262. mach_msg_header_t Head;
  263. NDR_record_t NDR;
  264. kern_return_t RetCode;
  265. int result;
  266. } __Reply;
  267. #ifdef __MigPackStructs
  268. #pragma pack()
  269. #endif
  270. /*
  271. * typedef struct {
  272. * mach_msg_header_t Head;
  273. * NDR_record_t NDR;
  274. * kern_return_t RetCode;
  275. * } mig_reply_error_t;
  276. */
  277. union {
  278. Request In;
  279. Reply Out;
  280. } Mess;
  281. Request *InP = &Mess.In;
  282. Reply *Out0P = &Mess.Out;
  283. mach_msg_return_t msg_result;
  284. #ifdef __MIG_check__Reply__rpc_jack_client_sync_notify_t__defined
  285. kern_return_t check_result;
  286. #endif /* __MIG_check__Reply__rpc_jack_client_sync_notify_t__defined */
  287. __DeclareSendRpc(1000, "rpc_jack_client_sync_notify")
  288. InP->NDR = NDR_record;
  289. InP->refnum = refnum;
  290. (void) mig_strncpy(InP->client_name, client_name, 64);
  291. InP->notify = notify;
  292. (void) mig_strncpy(InP->message, message, 256);
  293. InP->value1 = value1;
  294. InP->value2 = value2;
  295. InP->Head.msgh_bits =
  296. MACH_MSGH_BITS(19, MACH_MSG_TYPE_MAKE_SEND_ONCE);
  297. /* msgh_size passed as argument */
  298. InP->Head.msgh_request_port = client_port;
  299. InP->Head.msgh_reply_port = mig_get_reply_port();
  300. InP->Head.msgh_id = 1000;
  301. __BeforeSendRpc(1000, "rpc_jack_client_sync_notify")
  302. msg_result = mach_msg(&InP->Head, MACH_SEND_MSG|MACH_RCV_MSG|MACH_SEND_TIMEOUT|MACH_RCV_TIMEOUT|MACH_MSG_OPTION_NONE, (mach_msg_size_t)sizeof(Request), (mach_msg_size_t)sizeof(Reply), InP->Head.msgh_reply_port, 5000, MACH_PORT_NULL);
  303. __AfterSendRpc(1000, "rpc_jack_client_sync_notify")
  304. if (msg_result == MACH_SEND_TIMED_OUT) {
  305. }
  306. if (msg_result != MACH_MSG_SUCCESS) {
  307. __MachMsgErrorWithTimeout(msg_result);
  308. { return msg_result; }
  309. }
  310. #if defined(__MIG_check__Reply__rpc_jack_client_sync_notify_t__defined)
  311. check_result = __MIG_check__Reply__rpc_jack_client_sync_notify_t((__Reply__rpc_jack_client_sync_notify_t *)Out0P);
  312. if (check_result != MACH_MSG_SUCCESS)
  313. { return check_result; }
  314. #endif /* defined(__MIG_check__Reply__rpc_jack_client_sync_notify_t__defined) */
  315. *result = Out0P->result;
  316. return KERN_SUCCESS;
  317. }
  318. /* SimpleRoutine rpc_jack_client_async_notify */
  319. mig_external kern_return_t rpc_jack_client_async_notify
  320. (
  321. mach_port_t client_port,
  322. int refnum,
  323. client_name_t client_name,
  324. int notify,
  325. message_t message,
  326. int value1,
  327. int value2
  328. )
  329. {
  330. #ifdef __MigPackStructs
  331. #pragma pack(4)
  332. #endif
  333. typedef struct {
  334. mach_msg_header_t Head;
  335. NDR_record_t NDR;
  336. int refnum;
  337. client_name_t client_name;
  338. int notify;
  339. message_t message;
  340. int value1;
  341. int value2;
  342. } Request;
  343. #ifdef __MigPackStructs
  344. #pragma pack()
  345. #endif
  346. /*
  347. * typedef struct {
  348. * mach_msg_header_t Head;
  349. * NDR_record_t NDR;
  350. * kern_return_t RetCode;
  351. * } mig_reply_error_t;
  352. */
  353. union {
  354. Request In;
  355. } Mess;
  356. Request *InP = &Mess.In;
  357. mach_msg_return_t msg_result;
  358. #ifdef __MIG_check__Reply__rpc_jack_client_async_notify_t__defined
  359. kern_return_t check_result;
  360. #endif /* __MIG_check__Reply__rpc_jack_client_async_notify_t__defined */
  361. __DeclareSendSimple(1001, "rpc_jack_client_async_notify")
  362. InP->NDR = NDR_record;
  363. InP->refnum = refnum;
  364. (void) mig_strncpy(InP->client_name, client_name, 64);
  365. InP->notify = notify;
  366. (void) mig_strncpy(InP->message, message, 256);
  367. InP->value1 = value1;
  368. InP->value2 = value2;
  369. InP->Head.msgh_bits =
  370. MACH_MSGH_BITS(19, 0);
  371. /* msgh_size passed as argument */
  372. InP->Head.msgh_request_port = client_port;
  373. InP->Head.msgh_reply_port = MACH_PORT_NULL;
  374. InP->Head.msgh_id = 1001;
  375. __BeforeSendSimple(1001, "rpc_jack_client_async_notify")
  376. msg_result = mach_msg(&InP->Head, MACH_SEND_MSG|MACH_SEND_TIMEOUT|MACH_MSG_OPTION_NONE, (mach_msg_size_t)sizeof(Request), 0, MACH_PORT_NULL, 5000, MACH_PORT_NULL);
  377. __AfterSendSimple(1001, "rpc_jack_client_async_notify")
  378. if (msg_result == MACH_SEND_TIMED_OUT) {
  379. }
  380. return msg_result;
  381. }