1 /* 2 * Copyright (c) 2020-2024 Apple Inc. All rights reserved. 3 * 4 * @APPLE_OSREFERENCE_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. The rights granted to you under the License 10 * may not be used to create, or enable the creation or redistribution of, 11 * unlawful or unlicensed copies of an Apple operating system, or to 12 * circumvent, violate, or enable the circumvention or violation of, any 13 * terms of an Apple operating system software license agreement. 14 * 15 * Please obtain a copy of the License at 16 * http://www.opensource.apple.com/apsl/ and read it before using this file. 17 * 18 * The Original Code and all software distributed under the License are 19 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 20 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 21 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 22 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 23 * Please see the License for the specific language governing rights and 24 * limitations under the License. 25 * 26 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ 27 */ 28 29 #ifndef ioc_str_h 30 #define ioc_str_h 31 32 #include <sys/socket.h> 33 #include <sys/kern_event.h> 34 #include <sys/sockio.h> 35 #include <sys/sockio_private.h> 36 37 #include <net/if.h> 38 #include <net/if_ppp.h> 39 40 #include <netinet/in.h> 41 42 #include <netinet6/in6_var.h> 43 #include <netinet6/nd6.h> 44 45 #define SIOC_LIST \ 46 X(SIOCSIFADDR_IN6) \ 47 X(SIOCSIFADDR) \ 48 X(SIOCSIFDSTADDR_IN6) \ 49 X(SIOCSIFDSTADDR) \ 50 X(SIOCSIFFLAGS) \ 51 X(SIOCGIFFLAGS) \ 52 X(SIOCSIFBRDADDR) \ 53 X(SIOCSIFNETMASK_IN6) \ 54 X(SIOCSIFNETMASK) \ 55 X(SIOCGIFMETRIC) \ 56 X(SIOCSIFMETRIC) \ 57 X(SIOCDIFADDR_IN6) \ 58 X(SIOCDIFADDR) \ 59 X(SIOCAIFADDR_IN6) \ 60 X(SIOCAIFADDR) \ 61 X(SIOCGIFADDR_IN6) \ 62 X(SIOCGIFADDR) \ 63 X(SIOCGIFDSTADDR_IN6) \ 64 X(SIOCGIFDSTADDR) \ 65 X(SIOCGIFBRDADDR) \ 66 X(SIOCGIFCONF) \ 67 X(SIOCGIFNETMASK_IN6) \ 68 X(SIOCGIFNETMASK) \ 69 X(SIOCAUTOADDR) \ 70 X(SIOCAUTONETMASK) \ 71 X(SIOCARPIPLL) \ 72 X(SIOCADDMULTI) \ 73 X(SIOCDELMULTI) \ 74 X(SIOCGIFMTU) \ 75 X(SIOCSIFMTU) \ 76 X(SIOCGIFPHYS) \ 77 X(SIOCSIFPHYS) \ 78 X(SIOCSIFMEDIA) \ 79 X(SIOCGIFMEDIA) \ 80 X(SIOCSIFGENERIC) \ 81 X(SIOCGIFGENERIC) \ 82 X(SIOCRSLVMULTI) \ 83 X(SIOCSIFLLADDR) \ 84 X(SIOCGIFSTATUS) \ 85 X(SIOCSIFPHYADDR_IN6) \ 86 X(SIOCSIFPHYADDR) \ 87 X(SIOCGIFPSRCADDR_IN6) \ 88 X(SIOCGIFPSRCADDR) \ 89 X(SIOCGIFPDSTADDR_IN6) \ 90 X(SIOCGIFPDSTADDR) \ 91 X(SIOCDIFPHYADDR) \ 92 X(SIOCGIFDEVMTU) \ 93 X(SIOCSIFALTMTU) \ 94 X(SIOCSIFBOND) \ 95 X(SIOCGIFBOND) \ 96 X(SIOCGIFALTMTU) \ 97 X(SIOCGIFXMEDIA) \ 98 X(SIOCGIFAFLAG_IN6) \ 99 X(SIOCGIFINFO_IN6) \ 100 X(SIOCSNDFLUSH_IN6) \ 101 X(SIOCGNBRINFO_IN6) \ 102 X(SIOCSPFXFLUSH_IN6) \ 103 X(SIOCSRTRFLUSH_IN6) \ 104 X(SIOCPROTOATTACH) \ 105 X(SIOCGIFALIFETIME_IN6) \ 106 X(SIOCPROTODETACH) \ 107 X(SIOCSIFALIFETIME_IN6) \ 108 X(SIOCGIFSTAT_IN6) \ 109 X(SIOCGIFSTAT_ICMP6) \ 110 X(SIOCSDEFIFACE_IN6) \ 111 X(SIOCGDEFIFACE_IN6) \ 112 X(SIOCSIFINFO_FLAGS) \ 113 X(SIOCSSCOPE6) \ 114 X(SIOCGSCOPE6) \ 115 X(SIOCGSCOPE6DEF) \ 116 X(SIOCSIFCAP) \ 117 X(SIOCGIFCAP) \ 118 X(SIOCSIFMANAGEMENT) \ 119 X(SIOCGLINKHEURISTICS) \ 120 X(SIOCSATTACHPROTONULL) \ 121 X(SIOCGPOINTOPOINTMDNS) \ 122 X(SIOCSPOINTOPOINTMDNS) \ 123 X(SIOCSIFPREFIX_IN6) \ 124 X(SIOCGIFPREFIX_IN6) \ 125 X(SIOCDIFPREFIX_IN6) \ 126 X(SIOCAIFPREFIX_IN6) \ 127 X(SIOCCIFPREFIX_IN6) \ 128 X(SIOCSGIFPREFIX_IN6) \ 129 X(OSIOCGIFINFO_IN6) \ 130 X(SIOCPROTOATTACH_IN6) \ 131 X(SIOCPROTODETACH_IN6) \ 132 X(SIOCIFCREATE) \ 133 X(SIOCIFDESTROY) \ 134 X(SIOCGPPPCSTATS) \ 135 X(SIOCIFCREATE2) \ 136 X(SIOCGPPPSTATS) \ 137 X(SIOCGDRVSPEC) \ 138 X(SIOCSDRVSPEC) \ 139 X(SIOCGIFASYNCMAP) \ 140 X(SIOCSIFASYNCMAP) \ 141 X(SIOCSIFVLAN) \ 142 X(SIOCGIFVLAN) \ 143 X(SIOCIFGCLONERS) \ 144 X(SIOCLL_START) \ 145 X(SIOCGIFMAC) \ 146 X(SIOCLL_STOP) \ 147 X(SIOCSIFMAC) \ 148 X(SIOCAUTOCONF_START) \ 149 X(SIOCAUTOCONF_STOP) \ 150 X(SIOCSIFKPI) \ 151 X(SIOCGIFKPI) \ 152 X(SIOCSETROUTERMODE_IN6) \ 153 X(SIOCGIFWAKEFLAGS) \ 154 X(SIOCGETROUTERMODE_IN6) \ 155 X(SIOCGIFGETRTREFCNT) \ 156 X(SIOCGIFLINKQUALITYMETRIC) \ 157 X(SIOCSIFOPPORTUNISTIC) \ 158 X(SIOCGIFOPPORTUNISTIC) \ 159 X(SIOCSETROUTERMODE) \ 160 X(SIOCGIFEFLAGS) \ 161 X(SIOCSIFDESC) \ 162 X(SIOCGIFDESC) \ 163 X(SIOCSIFLINKPARAMS) \ 164 X(SIOCGIFLINKPARAMS) \ 165 X(SIOCGIFQUEUESTATS) \ 166 X(SIOCSIFTHROTTLE) \ 167 X(SIOCGIFTHROTTLE) \ 168 X(SIOCSIFLOG) \ 169 X(SIOCGIFLOG) \ 170 X(SIOCGIFDELEGATE) \ 171 X(SIOCGIFLLADDR) \ 172 X(SIOCGIFTYPE) \ 173 X(SIOCLL_CGASTART) \ 174 X(SIOCGIFEXPENSIVE) \ 175 X(SIOCSIFEXPENSIVE) \ 176 X(SIOCGIF2KCL) \ 177 X(SIOCSIF2KCL) \ 178 X(SIOCGSTARTDELAY) \ 179 X(SIOCAIFAGENTID) \ 180 X(SIOCDIFAGENTID) \ 181 X(SIOCGIFAGENTIDS) \ 182 X(SIOCGIFAGENTDATA) \ 183 X(SIOCSIFINTERFACESTATE) \ 184 X(SIOCGIFINTERFACESTATE) \ 185 X(SIOCSIFPROBECONNECTIVITY) \ 186 X(SIOCGIFPROBECONNECTIVITY) \ 187 X(SIOCGIFFUNCTIONALTYPE) \ 188 X(SIOCSIFNETSIGNATURE) \ 189 X(SIOCGIFNETSIGNATURE) \ 190 X(SIOCSECNMODE) \ 191 X(SIOCSIFORDER) \ 192 X(SIOCGIFORDER) \ 193 X(SIOCSQOSMARKINGMODE) \ 194 X(SIOCSQOSMARKINGENABLED) \ 195 X(SIOCGQOSMARKINGMODE) \ 196 X(SIOCGQOSMARKINGENABLED) \ 197 X(SIOCSIFTIMESTAMPENABLE) \ 198 X(SIOCSIFTIMESTAMPDISABLE) \ 199 X(SIOCGIFTIMESTAMPENABLED) \ 200 X(SIOCGIFCGAPREP_IN6) \ 201 X(SIOCSIFDISABLEOUTPUT) \ 202 X(SIOCSIFCGAPREP_IN6) \ 203 X(SIOCSIFSUBFAMILY) \ 204 X(SIOCCLAT46_START) \ 205 X(SIOCCLAT46_STOP) \ 206 X(SIOCGIFAGENTLIST) \ 207 X(SIOCSIFLOWINTERNET) \ 208 X(SIOCGIFLOWINTERNET) \ 209 X(SIOCGIFNAT64PREFIX) \ 210 X(SIOCSIFNAT64PREFIX) \ 211 X(SIOCGIFNEXUS) \ 212 X(SIOCSIF6LOWPAN) \ 213 X(SIOCGIFPROTOLIST) \ 214 X(SIOCGIF6LOWPAN) \ 215 X(SIOCGIFTCPKAOMAX) \ 216 X(SIOCGIFLOWPOWER) \ 217 X(SIOCSIFLOWPOWER) \ 218 X(SIOCGIFCLAT46ADDR) \ 219 X(SIOCGIFMPKLOG) \ 220 X(SIOCSIFMPKLOG) \ 221 X(SIOCGIFCONSTRAINED) \ 222 X(SIOCSIFCONSTRAINED) \ 223 X(SIOCGIFXFLAGS) \ 224 X(SIOCGIFNOACKPRIO) \ 225 X(SIOCSIFNOACKPRIO) \ 226 X(SIOCGETROUTERMODE) \ 227 X(SIOCSIFNETWORKID) \ 228 X(SIOCSIFMARKWAKEPKT) \ 229 X(SIOCSIFESTTHROUGHPUT) \ 230 X(SIOCSIFRADIODETAILS) \ 231 X(SIOCSIFLINKQUALITYMETRIC) \ 232 X(SIOCSIFNOTRAFFICSHAPING) \ 233 X(SIOCGIFNOTRAFFICSHAPING) \ 234 X(SIOCGIFGENERATIONID) \ 235 X(SIOCGIFULTRACONSTRAINED) \ 236 X(SIOCSIFULTRACONSTRAINED) \ 237 X(SIOCSIFPEEREGRESSFUNCTIONALTYPE) \ 238 X(SIOCSIFDIRECTLINK) \ 239 X(SIOCGIFDIRECTLINK) \ 240 X(SIOCSIFISVPN) \ 241 X(SIOCGIFDELAYWAKEPKTEVENT) \ 242 X(SIOCSIFDELAYWAKEPKTEVENT) \ 243 X(SIOCGIFDISABLEINPUT) \ 244 X(SIOCSIFDISABLEINPUT) \ 245 X(SIOCGIFCONGESTEDLINK) \ 246 X(SIOCSIFCONGESTEDLINK) \ 247 X(SIOCGIFL4S) \ 248 X(SIOCSIFL4S) \ 249 X(SIOCGINBANDWAKEPKT) \ 250 X(SIOCSINBANDWAKEPKT) 251 252 #endif /* ioc_str_h */ 253