1 typedef unsigned char	unsigned8;
2 typedef unsigned short int	unsigned16;
3 typedef unsigned long int	unsigned32;
4 typedef char	signed8;
5 typedef short int	signed16;
6 typedef long int	signed32;
7 typedef unsigned32 boolean32;
8 typedef unsigned long int	error_status_t;
9 typedef struct {
10 	unsigned32 time_low;
11 	unsigned16 time_mid;
12 	unsigned16 time_hi_and_version;
13 	unsigned8 clock_seq_hi_and_reserved;
14 	unsigned8 clock_seq_low;
15 	unsigned char	node[6];
16 } uuid_t;
17 
18 typedef unsigned32 bitset;
19 typedef signed32 sec_timeval_sec_t;
20 typedef struct {
21 	signed32 sec;
22 	signed32 usec;
23 } sec_timeval_t;
24 typedef signed32 sec_timeval_period_t;
25 typedef signed32 sec_rgy_acct_key_t;
26 
27 typedef struct {
28 	uuid_t source;
29 	signed32 handle;
30 	boolean32 valid;
31 } sec_rgy_cursor_t;
32 typedef unsigned char	sec_rgy_pname_t[257];
33 typedef unsigned char	sec_rgy_name_t[1025];
34 
35 typedef signed32 sec_rgy_override_t;
36 typedef signed32 sec_rgy_mode_resolve_t;
37 typedef unsigned char	sec_rgy_unix_gecos_t[292];
38 typedef unsigned char	sec_rgy_unix_login_name_t[1025];
39 typedef unsigned char	sec_rgy_member_t[1025];
40 typedef unsigned char	sec_rgy_unix_passwd_buf_t[16];
41 typedef struct sec_rgy_sid_t {
42 	uuid_t person;
43 	uuid_t group;
44 	uuid_t org;
45 } sec_rgy_sid_t;
46 typedef struct {
47 	signed32 person;
48 	signed32 group;
49 	signed32 org;
50 } sec_rgy_unix_sid_t;
51 typedef struct {
52 	sec_rgy_unix_login_name_t name;
53 	sec_rgy_unix_passwd_buf_t passwd;
54 	signed32 uid;
55 	signed32 gid;
56 	signed32 oid;
57 	sec_rgy_unix_gecos_t gecos;
58 	sec_rgy_pname_t homedir;
59 	sec_rgy_pname_t shell;
60 } sec_rgy_unix_passwd_t;
61 typedef unsigned char	sec_rgy_member_buf_t[10250];
62 typedef struct {
63 	sec_rgy_name_t name;
64 	signed32 gid;
65 	sec_rgy_member_buf_t members;
66 } sec_rgy_unix_group_t;
67 
68 typedef struct {
69 	uuid_t site_id;
70 	sec_timeval_sec_t person_dtm;
71 	sec_timeval_sec_t group_dtm;
72 	sec_timeval_sec_t org_dtm;
73 } rs_cache_data_t;
74 
75 typedef enum {
76 	rs_unix_query_name,
77 	rs_unix_query_unix_num,
78 	rs_unix_query_none
79 } rs_unix_query_t;
80 
81 typedef struct {
82 	rs_unix_query_t query;
83 	union {
84 		struct {
85 			long int	name_len;
86 			sec_rgy_name_t name;
87 		} name;
88 		long int	unix_num;
89 	} tagged_union;
90 } rs_unix_query_key_t;
91 
92 static unsigned long int IDL_offset_vec[] =
93 {
94     0,
95     sizeof(sec_rgy_unix_group_t),
96     (unsigned long int) ((unsigned char *) &((sec_rgy_unix_group_t *) 0)->name - (unsigned char *) 0),
97     (unsigned long int) ((unsigned char *) &((sec_rgy_unix_group_t *) 0)->gid - (unsigned char *) 0),
98     (unsigned long int) ((unsigned char *) &((sec_rgy_unix_group_t *) 0)->members - (unsigned char *) 0),
99     sizeof(rs_cache_data_t),
100     (unsigned long int) ((unsigned char *) &((rs_cache_data_t *) 0)->site_id.time_low - (unsigned char *) 0),
101     (unsigned long int) ((unsigned char *) &((rs_cache_data_t *) 0)->site_id.time_mid - (unsigned char *) 0),
102     (unsigned long int) ((unsigned char *) &((rs_cache_data_t *) 0)->site_id.time_hi_and_version - (unsigned char *) 0),
103     sizeof(sec_rgy_unix_passwd_t),
104     (unsigned long int) ((unsigned char *) &((sec_rgy_cursor_t *) 0)->source.clock_seq_hi_and_reserved - (unsigned char *) 0),
105     (unsigned long int) ((unsigned char *) &((sec_rgy_cursor_t *) 0)->source.clock_seq_low - (unsigned char *) 0),
106     (unsigned long int) ((unsigned char *) &((sec_rgy_cursor_t *) 0)->source.node - (unsigned char *) 0),
107     (unsigned long int) ((unsigned char *) &((sec_rgy_cursor_t *) 0)->handle - (unsigned char *) 0),
108     (unsigned long int) ((unsigned char *) &((sec_rgy_cursor_t *) 0)->valid - (unsigned char *) 0),
109     sizeof(struct {long int name_len; sec_rgy_name_t name;}),
110     (unsigned long int) ((unsigned char *) &((struct {long int name_len; sec_rgy_name_t name;} *)0)->name_len
111 			 - (unsigned char *) 0),
112     (unsigned long int) ((unsigned char *) &((struct {long int name_len; sec_rgy_name_t name;} *)0)->name - (unsigned char *) 0),
113 };
114