]> git.saurik.com Git - apple/xnu.git/blob - osfmk/mach/ndr.h
56e982d9adbf12f2be83c625f5d9dd8602b5e50b
[apple/xnu.git] / osfmk / mach / ndr.h
1 /*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22 /*
23 * @OSF_COPYRIGHT@
24 */
25 /*
26 * HISTORY
27 *
28 * Revision 1.1.1.1 1998/09/22 21:05:30 wsanchez
29 * Import of Mac OS X kernel (~semeria)
30 *
31 * Revision 1.1.1.1 1998/03/07 02:25:46 wsanchez
32 * Import of OSF Mach kernel (~mburg)
33 *
34 * Revision 1.2.6.1 1994/09/23 02:40:51 ezf
35 * change marker to not FREE
36 * [1994/09/22 21:42:00 ezf]
37 *
38 * Revision 1.2.2.2 1993/06/09 02:42:37 gm
39 * Added to OSF/1 R1.3 from NMK15.0.
40 * [1993/06/02 21:17:34 jeffc]
41 *
42 * Revision 1.2 1993/04/19 16:38:03 devrcs
43 * Merge untyped ipc:
44 * New names for the fields - the structure isn't changed
45 * [1993/03/12 23:01:38 travos]
46 * Extended NDR record to include version number(s)
47 * [1993/03/05 23:10:21 travos]
48 * a new NDR structure
49 * 1993/02/13 00:47:46 travos]
50 * Created. [travos@osf.org]
51 * [1993/01/27 11:21:44 rod]
52 * [1993/03/16 13:23:15 rod]
53 *
54 * $EndLog$
55 */
56
57 #ifndef _NDR_H_
58 #define _NDR_H_
59
60 typedef struct {
61 unsigned char mig_vers;
62 unsigned char if_vers;
63 unsigned char reserved1;
64 unsigned char mig_encoding;
65 unsigned char int_rep;
66 unsigned char char_rep;
67 unsigned char float_rep;
68 unsigned char reserved2;
69 } NDR_record_t;
70
71 /*
72 * MIG supported protocols for Network Data Representation
73 */
74 #define NDR_PROTOCOL_2_0 0
75
76 /*
77 * NDR 2.0 format flag type definition and values.
78 */
79 #define NDR_INT_BIG_ENDIAN 0
80 #define NDR_INT_LITTLE_ENDIAN 1
81 #define NDR_FLOAT_IEEE 0
82 #define NDR_FLOAT_VAX 1
83 #define NDR_FLOAT_CRAY 2
84 #define NDR_FLOAT_IBM 3
85 #define NDR_CHAR_ASCII 0
86 #define NDR_CHAR_EBCDIC 1
87
88 extern NDR_record_t NDR_record;
89
90 #endif /* _NDR_H_ */