]> git.saurik.com Git - apple/xnu.git/blob - EXTERNAL_HEADERS/architecture/i386/sel.h
c33f35f74d698f471de3247bceb1331853e8bada
[apple/xnu.git] / EXTERNAL_HEADERS / architecture / i386 / sel.h
1 /*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23 /*
24 * Copyright (c) 1992 NeXT Computer, Inc.
25 *
26 * Intel386 Family: Segment selector.
27 *
28 * HISTORY
29 *
30 * 29 March 1992 ? at NeXT
31 * Created.
32 */
33
34 /*
35 * Segment selector.
36 */
37
38 #ifndef __XNU_ARCH_I386_SEL_H
39 #define __XNU_ARCH_I386_SEL_H
40
41 typedef struct sel {
42 unsigned short rpl :2,
43 #define KERN_PRIV 0
44 #define USER_PRIV 3
45 ti :1,
46 #define SEL_GDT 0
47 #define SEL_LDT 1
48 index :13;
49 } sel_t;
50
51 #define NULL_SEL ((sel_t) { 0, 0, 0 } )
52
53 #endif /* __XNU_ARCH_I386_SEL_H */