Annotation of XNU/bsd/kern/sysctl_init.c, revision 1.1.1.1

1.1       root        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: #include <sys/param.h>
                     24: #include <sys/buf.h>
                     25: #include <sys/kernel.h>
                     26: #include <sys/sysctl.h>
                     27: 
                     28: extern struct sysctl_oid sysctl__debug_bpf_bufsize;
                     29: 
                     30: #if TUN
                     31: extern struct sysctl_oid sysctl__debug_if_tun_debug;
                     32: #endif
                     33: 
                     34: #if COMPAT_43
                     35: #ifndef NeXT
                     36: extern struct sysctl_oid sysctl__debug_ttydebug;
                     37: #endif
                     38: #endif
                     39: 
                     40: extern struct sysctl_oid sysctl__kern_dummy;
                     41: extern struct sysctl_oid sysctl__kern_ipc_maxsockbuf;
                     42: extern struct sysctl_oid sysctl__kern_ipc_nmbclusters;
                     43: extern struct sysctl_oid sysctl__kern_ipc_sockbuf_waste_factor;
                     44: extern struct sysctl_oid sysctl__kern_ipc_somaxconn;
                     45: extern struct sysctl_oid sysctl__kern_ipc_maxsockets;
                     46: extern struct sysctl_oid sysctl__net_inet_icmp_icmplim;
                     47: extern struct sysctl_oid sysctl__net_inet_icmp_maskrepl;
                     48: extern struct sysctl_oid sysctl__net_inet_icmp_bmcastecho;
                     49: extern struct sysctl_oid sysctl__net_inet_ip_accept_sourceroute;
                     50: 
                     51: #if IPCTL_DEFMTU
                     52: extern struct sysctl_oid sysctl__net_inet_ip_mtu;
                     53: #endif
                     54: 
                     55: extern struct sysctl_oid sysctl__net_inet_ip_ttl;
                     56: extern struct sysctl_oid sysctl__net_inet_ip_fastforwarding;
                     57: extern struct sysctl_oid sysctl__net_inet_ip_forwarding;
                     58: extern struct sysctl_oid sysctl__net_inet_ip_intr_queue_drops;
                     59: extern struct sysctl_oid sysctl__net_inet_ip_intr_queue_maxlen;
                     60: extern struct sysctl_oid sysctl__net_inet_ip_rtexpire;
                     61: extern struct sysctl_oid sysctl__net_inet_ip_rtmaxcache;
                     62: extern struct sysctl_oid sysctl__net_inet_ip_rtminexpire;
                     63: extern struct sysctl_oid sysctl__net_inet_ip_redirect;
                     64: extern struct sysctl_oid sysctl__net_inet_ip_sourceroute;
                     65: extern struct sysctl_oid sysctl__net_inet_ip_subnets_are_local;
                     66: 
                     67: #if DUMMYNET
                     68: extern struct sysctl_oid sysctl__net_inet_ip_dummynet_calls;
                     69: extern struct sysctl_oid sysctl__net_inet_ip_dummynet_debug;
                     70: extern struct sysctl_oid sysctl__net_inet_ip_dummynet_idle;
                     71: extern struct sysctl_oid sysctl__net_inet_ip_dummynet;
                     72: #endif
                     73: 
                     74: #if IPFIREWALL
                     75: extern struct sysctl_oid sysctl__net_inet_ip_fw_debug;
                     76: extern struct sysctl_oid sysctl__net_inet_ip_fw_verbose;
                     77: extern struct sysctl_oid sysctl__net_inet_ip_fw_verbose_limit;
                     78: extern struct sysctl_oid sysctl__net_inet_ip_fw_one_pass;
                     79: extern struct sysctl_oid sysctl__net_inet_ip_fw;
                     80: #endif
                     81: 
                     82: extern struct sysctl_oid sysctl__net_inet_raw_maxdgram;
                     83: extern struct sysctl_oid sysctl__net_inet_raw_recvspace;
                     84: extern struct sysctl_oid sysctl__net_inet_tcp_always_keepalive;
                     85: extern struct sysctl_oid sysctl__net_inet_tcp_delayed_ack;
                     86: extern struct sysctl_oid sysctl__net_inet_tcp_log_in_vain;
                     87: extern struct sysctl_oid sysctl__net_inet_tcp_pcbcount;
                     88: extern struct sysctl_oid sysctl__net_inet_tcp_rfc1323;
                     89: extern struct sysctl_oid sysctl__net_inet_tcp_rfc1644;
                     90: extern struct sysctl_oid sysctl__net_inet_tcp_keepidle;
                     91: extern struct sysctl_oid sysctl__net_inet_tcp_keepinit;
                     92: extern struct sysctl_oid sysctl__net_inet_tcp_keepintvl;
                     93: extern struct sysctl_oid sysctl__net_inet_tcp_mssdflt;
                     94: extern struct sysctl_oid sysctl__net_inet_tcp_recvspace;
                     95: extern struct sysctl_oid sysctl__net_inet_tcp_rttdflt;
                     96: extern struct sysctl_oid sysctl__net_inet_tcp_sendspace;
                     97: extern struct sysctl_oid sysctl__net_inet_udp_log_in_vain;
                     98: extern struct sysctl_oid sysctl__net_inet_udp_checksum;
                     99: extern struct sysctl_oid sysctl__net_inet_udp_maxdgram;
                    100: extern struct sysctl_oid sysctl__net_inet_udp_recvspace;
                    101: 
                    102: #if NETAT
                    103: extern struct sysctl_oid sysctl__net_appletalk_debug;
                    104: extern struct sysctl_oid sysctl__net_appletalk_routermix;
                    105: #endif /* NETAT */
                    106: 
                    107: #if BRIDGE
                    108: extern struct sysctl_oid sysctl__net_link_ether_bdgfwc;
                    109: extern struct sysctl_oid sysctl__net_link_ether_bdgfwt;
                    110: extern struct sysctl_oid sysctl__net_link_ether_bdginc;
                    111: extern struct sysctl_oid sysctl__net_link_ether_bdgint;
                    112: extern struct sysctl_oid sysctl__net_link_ether_bridge_ipfw;
                    113: extern struct sysctl_oid sysctl__net_link_ethe_bdgstats;
                    114: #endif
                    115: 
                    116: extern struct sysctl_oid sysctl__net_link_ether_inet_host_down_time;
                    117: extern struct sysctl_oid sysctl__net_link_ether_inet_max_age;
                    118: extern struct sysctl_oid sysctl__net_link_ether_inet_maxtries;
                    119: extern struct sysctl_oid sysctl__net_link_ether_inet_proxyall;
                    120: extern struct sysctl_oid sysctl__net_link_ether_inet_prune_intvl;
                    121: extern struct sysctl_oid sysctl__net_link_ether_inet_useloopback;
                    122: 
                    123: #if NETMIBS
                    124: extern struct sysctl_oid sysctl__net_link_generic_system_ifcount;
                    125: extern struct sysctl_oid sysctl__net_link_generic;
                    126: extern struct sysctl_oid sysctl__net_link_generic_ifdata;
                    127: extern struct sysctl_oid sysctl__net_link_generic_system;
                    128: #endif
                    129: 
                    130: #if VLAN
                    131: extern struct sysctl_oid sysctl__net_link_vlan_link_proto;
                    132: extern struct sysctl_oid sysctl__net_link_vlan;
                    133: extern struct sysctl_oid sysctl__net_link_vlan_link;
                    134: #endif
                    135: 
                    136: extern struct sysctl_oid sysctl__net_local_inflight;
                    137: extern struct sysctl_oid sysctl__net_local_dgram_maxdgram;
                    138: extern struct sysctl_oid sysctl__net_local_dgram_recvspace;
                    139: extern struct sysctl_oid sysctl__net_local_stream_recvspace;
                    140: extern struct sysctl_oid sysctl__net_local_stream_sendspace;
                    141: 
                    142: #if 0
                    143: extern struct sysctl_oid sysctl__vfs_nfs_nfs_privport;
                    144: extern struct sysctl_oid sysctl__vfs_nfs_async;
                    145: extern struct sysctl_oid sysctl__vfs_nfs_debug;
                    146: extern struct sysctl_oid sysctl__vfs_nfs_defect;
                    147: extern struct sysctl_oid sysctl__vfs_nfs_diskless_valid;
                    148: extern struct sysctl_oid sysctl__vfs_nfs_gatherdelay;
                    149: extern struct sysctl_oid sysctl__vfs_nfs_gatherdelay_v3;
                    150: extern struct sysctl_oid sysctl__vfs_nfs;
                    151: extern struct sysctl_oid sysctl__vfs_nfs_diskless_rootaddr;
                    152: extern struct sysctl_oid sysctl__vfs_nfs_diskless_swapaddr;
                    153: extern struct sysctl_oid sysctl__vfs_nfs_diskless_rootpath;
                    154: extern struct sysctl_oid sysctl__vfs_nfs_diskless_swappath;
                    155: extern struct sysctl_oid sysctl__vfs_nfs_nfsstats;
                    156: #endif
                    157: 
                    158: extern struct sysctl_oid sysctl__kern_ipc;
                    159: extern struct sysctl_oid sysctl__net_inet;
                    160: 
                    161: #if NETAT
                    162: extern struct sysctl_oid sysctl__net_appletalk;
                    163: #endif /* NETAT */
                    164: 
                    165: extern struct sysctl_oid sysctl__net_link;
                    166: extern struct sysctl_oid sysctl__net_local;
                    167: extern struct sysctl_oid sysctl__net_routetable;
                    168: 
                    169: #if IPDIVERT
                    170: extern struct sysctl_oid sysctl__net_inet_div;
                    171: #endif
                    172: 
                    173: extern struct sysctl_oid sysctl__net_inet_icmp;
                    174: extern struct sysctl_oid sysctl__net_inet_igmp;
                    175: extern struct sysctl_oid sysctl__net_inet_ip;
                    176: extern struct sysctl_oid sysctl__net_inet_raw;
                    177: extern struct sysctl_oid sysctl__net_inet_tcp;
                    178: extern struct sysctl_oid sysctl__net_inet_udp;
                    179: extern struct sysctl_oid sysctl__net_inet_ip_portrange;
                    180: 
                    181: extern struct sysctl_oid sysctl__net_link_ether;
                    182: extern struct sysctl_oid sysctl__net_link_ether_inet;
                    183: 
                    184: extern struct sysctl_oid sysctl__net_local_dgram;
                    185: extern struct sysctl_oid sysctl__net_local_stream;
                    186: extern struct sysctl_oid sysctl__sysctl_name;
                    187: extern struct sysctl_oid sysctl__sysctl_next;
                    188: extern struct sysctl_oid sysctl__sysctl_oidfmt;
                    189: extern struct sysctl_oid sysctl__net_inet_ip_portrange_first;
                    190: extern struct sysctl_oid sysctl__net_inet_ip_portrange_hifirst;
                    191: extern struct sysctl_oid sysctl__net_inet_ip_portrange_hilast;
                    192: extern struct sysctl_oid sysctl__net_inet_ip_portrange_last;
                    193: extern struct sysctl_oid sysctl__net_inet_ip_portrange_lowfirst;
                    194: extern struct sysctl_oid sysctl__net_inet_ip_portrange_lowlast;
                    195: extern struct sysctl_oid sysctl__net_inet_raw_pcblist;
                    196: extern struct sysctl_oid sysctl__net_inet_tcp_pcblist;
                    197: extern struct sysctl_oid sysctl__net_inet_udp_pcblist;
                    198: extern struct sysctl_oid sysctl__net_link_ether_bridge;
                    199: extern struct sysctl_oid sysctl__net_local_dgram_pcblist;
                    200: extern struct sysctl_oid sysctl__net_local_stream_pcblist;
                    201: extern struct sysctl_oid sysctl__sysctl_debug;
                    202: extern struct sysctl_oid sysctl__sysctl_name2oid;
                    203: extern struct sysctl_oid sysctl__net_inet_icmp_stats;
                    204: extern struct sysctl_oid sysctl__net_inet_igmp_stats;
                    205: extern struct sysctl_oid sysctl__net_inet_ip_stats;
                    206: extern struct sysctl_oid sysctl__net_inet_tcp_stats;
                    207: extern struct sysctl_oid sysctl__net_inet_udp_stats;
                    208: extern struct sysctl_oid sysctl__kern;
                    209: extern struct sysctl_oid sysctl__hw;
                    210: extern struct sysctl_oid sysctl__net;
                    211: extern struct sysctl_oid sysctl__debug;
                    212: extern struct sysctl_oid sysctl__vfs;
                    213: extern struct sysctl_oid sysctl__sysctl;
                    214: 
                    215: 
                    216: 
                    217: 
                    218: 
                    219: struct sysctl_oid *newsysctl_list[] =
                    220: {
                    221:     &sysctl__kern,
                    222:     &sysctl__hw,
                    223:     &sysctl__net,
                    224:     &sysctl__debug,
                    225:     &sysctl__vfs,
                    226:     &sysctl__sysctl,
                    227:     &sysctl__debug_bpf_bufsize
                    228: #if TUN
                    229:     ,&sysctl__debug_if_tun_debug
                    230: #endif
                    231: 
                    232: #if COMPAT_43
                    233: #ifndef NeXT
                    234:     ,&sysctl__debug_ttydebug
                    235: #endif
                    236: #endif
                    237: 
                    238:     ,&sysctl__kern_dummy
                    239:     ,&sysctl__kern_ipc_maxsockbuf
                    240:     ,&sysctl__kern_ipc_nmbclusters
                    241:     ,&sysctl__kern_ipc_sockbuf_waste_factor
                    242:     ,&sysctl__kern_ipc_somaxconn
                    243:     ,&sysctl__kern_ipc_maxsockets
                    244:     ,&sysctl__net_inet_icmp_icmplim
                    245:     ,&sysctl__net_inet_icmp_maskrepl
                    246:     ,&sysctl__net_inet_icmp_bmcastecho
                    247:     ,&sysctl__net_inet_ip_accept_sourceroute
                    248: #if IPCTL_DEFMTU
                    249:     ,&sysctl__net_inet_ip_mtu
                    250: #endif
                    251:     ,&sysctl__net_inet_ip_ttl
                    252:     ,&sysctl__net_inet_ip_fastforwarding
                    253:     ,&sysctl__net_inet_ip_forwarding
                    254:     ,&sysctl__net_inet_ip_intr_queue_drops
                    255:     ,&sysctl__net_inet_ip_intr_queue_maxlen
                    256:     ,&sysctl__net_inet_ip_rtexpire
                    257:     ,&sysctl__net_inet_ip_rtmaxcache
                    258:     ,&sysctl__net_inet_ip_rtminexpire
                    259:     ,&sysctl__net_inet_ip_redirect
                    260:     ,&sysctl__net_inet_ip_sourceroute
                    261:     ,&sysctl__net_inet_ip_subnets_are_local
                    262: #if DUMMYNET
                    263:     ,&sysctl__net_inet_ip_dummynet_calls
                    264:     ,&sysctl__net_inet_ip_dummynet_debug
                    265:     ,&sysctl__net_inet_ip_dummynet_idle
                    266:     ,&sysctl__net_inet_ip_dummynet
                    267: #endif
                    268: 
                    269: #if IPFIREWALL
                    270:     ,&sysctl__net_inet_ip_fw_debug
                    271:     ,&sysctl__net_inet_ip_fw_verbose
                    272:     ,&sysctl__net_inet_ip_fw_verbose_limit
                    273:     ,&sysctl__net_inet_ip_fw_one_pass
                    274:     ,&sysctl__net_inet_ip_fw
                    275: #endif
                    276:     ,&sysctl__net_inet_raw_maxdgram
                    277:     ,&sysctl__net_inet_raw_recvspace
                    278:     ,&sysctl__net_inet_tcp_always_keepalive
                    279:     ,&sysctl__net_inet_tcp_delayed_ack
                    280:     ,&sysctl__net_inet_tcp_log_in_vain
                    281:     ,&sysctl__net_inet_tcp_pcbcount
                    282:     ,&sysctl__net_inet_tcp_rfc1323
                    283:     ,&sysctl__net_inet_tcp_rfc1644
                    284:     ,&sysctl__net_inet_tcp_keepidle
                    285:     ,&sysctl__net_inet_tcp_keepinit
                    286:     ,&sysctl__net_inet_tcp_keepintvl
                    287:     ,&sysctl__net_inet_tcp_mssdflt
                    288:     ,&sysctl__net_inet_tcp_recvspace
                    289:     ,&sysctl__net_inet_tcp_rttdflt
                    290:     ,&sysctl__net_inet_tcp_sendspace
                    291:     ,&sysctl__net_inet_udp_log_in_vain 
                    292:     ,&sysctl__net_inet_udp_checksum
                    293:     ,&sysctl__net_inet_udp_maxdgram
                    294:     ,&sysctl__net_inet_udp_recvspace
                    295: 
                    296: #if NETAT
                    297:     ,&sysctl__net_appletalk_debug
                    298:     ,&sysctl__net_appletalk_routermix
                    299: #endif /* NETAT */
                    300: 
                    301: #if BRIDGE
                    302:     ,&sysctl__net_link_ether_bdgfwc
                    303:     ,&sysctl__net_link_ether_bdgfwt
                    304:     ,&sysctl__net_link_ether_bdginc
                    305:     ,&sysctl__net_link_ether_bdgint
                    306:     ,&sysctl__net_link_ether_bridge_ipfw
                    307:     ,&sysctl__net_link_ethe_bdgstats
                    308:     ,&sysctl__net_link_ether_bridge
                    309: #endif
                    310: 
                    311:     ,&sysctl__net_link_ether_inet_host_down_time
                    312:     ,&sysctl__net_link_ether_inet_max_age
                    313:     ,&sysctl__net_link_ether_inet_maxtries
                    314:     ,&sysctl__net_link_ether_inet_proxyall
                    315:     ,&sysctl__net_link_ether_inet_prune_intvl
                    316:     ,&sysctl__net_link_ether_inet_useloopback
                    317: #if NETMIBS
                    318:     ,&sysctl__net_link_generic_system_ifcount
                    319:     ,&sysctl__net_link_generic
                    320:     ,&sysctl__net_link_generic_ifdata
                    321:     ,&sysctl__net_link_generic_system
                    322: #endif
                    323: 
                    324: #if VLAN
                    325:     ,&sysctl__net_link_vlan_link_proto
                    326:     ,&sysctl__net_link_vlan
                    327:     ,&sysctl__net_link_vlan_link
                    328: #endif
                    329: 
                    330:     ,&sysctl__net_local_inflight
                    331:     ,&sysctl__net_local_dgram_maxdgram
                    332:     ,&sysctl__net_local_dgram_recvspace
                    333:     ,&sysctl__net_local_stream_recvspace
                    334:     ,&sysctl__net_local_stream_sendspace
                    335: #if 0
                    336:     ,&sysctl__vfs_nfs_nfs_privport
                    337:     ,&sysctl__vfs_nfs_async
                    338:     ,&sysctl__vfs_nfs_debug
                    339:     ,&sysctl__vfs_nfs_defect
                    340:     ,&sysctl__vfs_nfs_diskless_valid
                    341:     ,&sysctl__vfs_nfs_gatherdelay
                    342:     ,&sysctl__vfs_nfs_gatherdelay_v3
                    343:     ,&sysctl__vfs_nfs
                    344:     ,&sysctl__vfs_nfs_diskless_rootaddr
                    345:     ,&sysctl__vfs_nfs_diskless_swapaddr
                    346:     ,&sysctl__vfs_nfs_diskless_rootpath
                    347:     ,&sysctl__vfs_nfs_diskless_swappath
                    348:     ,&sysctl__vfs_nfs_nfsstats
                    349: #endif
                    350:     ,&sysctl__kern_ipc
                    351:     ,&sysctl__net_inet
                    352: #if NETAT
                    353:     ,&sysctl__net_appletalk
                    354: #endif /* NETAT */
                    355:     ,&sysctl__net_link
                    356:     ,&sysctl__net_local
                    357:     ,&sysctl__net_routetable
                    358: #if IPDIVERT
                    359:     ,&sysctl__net_inet_div
                    360: #endif
                    361:     ,&sysctl__net_inet_icmp
                    362:     ,&sysctl__net_inet_igmp
                    363:     ,&sysctl__net_inet_ip
                    364:     ,&sysctl__net_inet_raw
                    365:     ,&sysctl__net_inet_tcp
                    366:     ,&sysctl__net_inet_udp
                    367:     ,&sysctl__net_inet_ip_portrange
                    368:     ,&sysctl__net_link_ether
                    369:     ,&sysctl__net_link_ether_inet
                    370:     ,&sysctl__net_local_dgram
                    371:     ,&sysctl__net_local_stream
                    372:     ,&sysctl__sysctl_name
                    373:     ,&sysctl__sysctl_next
                    374:     ,&sysctl__sysctl_oidfmt
                    375:     ,&sysctl__net_inet_ip_portrange_first
                    376:     ,&sysctl__net_inet_ip_portrange_hifirst
                    377:     ,&sysctl__net_inet_ip_portrange_hilast
                    378:     ,&sysctl__net_inet_ip_portrange_last
                    379:     ,&sysctl__net_inet_ip_portrange_lowfirst
                    380:     ,&sysctl__net_inet_ip_portrange_lowlast
                    381:     ,&sysctl__net_inet_raw_pcblist
                    382:     ,&sysctl__net_inet_tcp_pcblist
                    383:     ,&sysctl__net_inet_udp_pcblist
                    384:     ,&sysctl__net_local_dgram_pcblist
                    385:     ,&sysctl__net_local_stream_pcblist
                    386:     ,&sysctl__sysctl_debug
                    387:     ,&sysctl__sysctl_name2oid
                    388:     ,&sysctl__net_inet_icmp_stats
                    389:     ,&sysctl__net_inet_igmp_stats
                    390:     ,&sysctl__net_inet_ip_stats
                    391:     ,&sysctl__net_inet_tcp_stats
                    392:     ,&sysctl__net_inet_udp_stats
                    393:     ,(struct sysctl_oid *) 0
                    394: };
                    395: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.