1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 /* 22 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 23 * Copyright 2015, Joyent, Inc. All rights reserved. 24 * 25 * Privilege name table and size definitions. 26 * 27 * THIS FILE WAS GENERATED; DO NOT EDIT 28 */ 29 30 31 32 33 34 35 #include <sys/types.h> 36 #include <sys/priv_const.h> 37 #include <sys/priv_impl.h> 38 #include <sys/priv.h> 39 #include <sys/sysmacros.h> 40 41 42 static struct _info { 43 priv_impl_info_t impl_info; 44 priv_info_t settype; 45 int nsets; 46 const char sets[38]; 47 priv_info_t privtype; 48 int nprivs; 49 char privs[1316]; 50 priv_info_t sysset; 51 priv_set_t basicset; 52 } info = { 53 { sizeof (priv_impl_info_t), 0, PRIV_NSET, PRIV_SETSIZE, 84, 54 sizeof (priv_info_uint_t), 55 sizeof (info) - sizeof (info.impl_info)}, 56 { PRIV_INFO_SETNAMES, 57 offsetof(struct _info, privtype) - offsetof(struct _info, settype)}, 58 PRIV_NSET, 59 "Effective\0Inheritable\0Permitted\0Limit\0", 60 { PRIV_INFO_PRIVNAMES, 61 offsetof(struct _info, sysset) - offsetof(struct _info, privtype)}, 62 84, 63 "contract_event\0contract_identity\0contract_observer\0cpc_cpu\0" 64 "dtrace_kernel\0dtrace_proc\0dtrace_user\0file_chown\0" 65 "file_chown_self\0file_dac_execute\0file_dac_read\0file_dac_search\0" 66 "file_dac_write\0file_downgrade_sl\0file_flag_set\0file_link_any\0" 67 "file_owner\0file_read\0file_setid\0file_upgrade_sl\0file_write\0" 68 "graphics_access\0graphics_map\0ipc_dac_read\0ipc_dac_write\0" 69 "ipc_owner\0net_access\0net_bindmlp\0net_icmpaccess\0net_mac_aware\0" 70 "net_mac_implicit\0net_observability\0net_privaddr\0net_rawaccess\0" 71 "proc_audit\0proc_chroot\0proc_clock_highres\0proc_exec\0proc_fork\0" 72 "proc_info\0proc_lock_memory\0proc_meminfo\0proc_owner\0proc_prioup\0" 73 "proc_priocntl\0proc_session\0proc_setid\0proc_taskid\0proc_zone\0" 74 "sys_acct\0sys_admin\0sys_audit\0sys_config\0sys_devices\0" 75 "sys_ipc_config\0sys_linkdir\0sys_mount\0sys_iptun_config\0" 76 "sys_dl_config\0sys_ip_config\0sys_net_config\0sys_nfs\0" 77 "sys_ppp_config\0sys_res_bind\0sys_res_config\0sys_resource\0sys_smb\0" 78 "sys_suser_compat\0sys_time\0sys_trans_label\0virt_manage\0" 79 "win_colormap\0win_config\0win_dac_read\0win_dac_write\0win_devices\0" 80 "win_dga\0win_downgrade_sl\0win_fontpath\0win_mac_read\0" 81 "win_mac_write\0win_selection\0win_upgrade_sl\0xvm_control\0", 82 { PRIV_INFO_BASICPRIVS, sizeof (info) - offsetof(struct _info, sysset)}, 83 }; 84 85 86 const char *priv_names[96] = 87 { 88 &info.privs[0], 89 &info.privs[15], 90 &info.privs[33], 91 &info.privs[51], 92 &info.privs[59], 93 &info.privs[73], 94 &info.privs[85], 95 &info.privs[97], 96 &info.privs[108], 97 &info.privs[124], 98 &info.privs[141], 99 &info.privs[155], 100 &info.privs[171], 101 &info.privs[186], 102 &info.privs[204], 103 &info.privs[218], 104 &info.privs[232], 105 &info.privs[243], 106 &info.privs[253], 107 &info.privs[264], 108 &info.privs[280], 109 &info.privs[291], 110 &info.privs[307], 111 &info.privs[320], 112 &info.privs[333], 113 &info.privs[347], 114 &info.privs[357], 115 &info.privs[368], 116 &info.privs[380], 117 &info.privs[395], 118 &info.privs[409], 119 &info.privs[426], 120 &info.privs[444], 121 &info.privs[457], 122 &info.privs[471], 123 &info.privs[482], 124 &info.privs[494], 125 &info.privs[513], 126 &info.privs[523], 127 &info.privs[533], 128 &info.privs[543], 129 &info.privs[560], 130 &info.privs[573], 131 &info.privs[584], 132 &info.privs[596], 133 &info.privs[610], 134 &info.privs[623], 135 &info.privs[634], 136 &info.privs[646], 137 &info.privs[656], 138 &info.privs[665], 139 &info.privs[675], 140 &info.privs[685], 141 &info.privs[696], 142 &info.privs[708], 143 &info.privs[723], 144 &info.privs[735], 145 &info.privs[745], 146 &info.privs[762], 147 &info.privs[776], 148 &info.privs[790], 149 &info.privs[805], 150 &info.privs[813], 151 &info.privs[828], 152 &info.privs[841], 153 &info.privs[856], 154 &info.privs[869], 155 &info.privs[877], 156 &info.privs[894], 157 &info.privs[903], 158 &info.privs[919], 159 &info.privs[931], 160 &info.privs[944], 161 &info.privs[955], 162 &info.privs[968], 163 &info.privs[982], 164 &info.privs[994], 165 &info.privs[1002], 166 &info.privs[1019], 167 &info.privs[1032], 168 &info.privs[1045], 169 &info.privs[1059], 170 &info.privs[1073], 171 &info.privs[1088], 172 }; 173 174 175 const char *priv_setnames[4] = 176 { 177 &info.sets[0], 178 &info.sets[10], 179 &info.sets[22], 180 &info.sets[32], 181 }; 182 183 int nprivs = 84; 184 int privbytes = 1100; 185 int maxprivbytes = 1316; 186 size_t privinfosize = sizeof (info); 187 char *priv_str = info.privs; 188 priv_set_t *priv_basic = &info.basicset; 189 priv_impl_info_t *priv_info = &info.impl_info; 190 priv_info_names_t *priv_ninfo = (priv_info_names_t *)&info.privtype; 191