LCOV - code coverage report
Current view: top level - include/linux - sysctl.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 9 9 100.0 %
Date: 2017-01-25 Functions: 0 0 -

          Line data    Source code
       1             : /*
       2             :  * sysctl.h: General linux system control interface
       3             :  *
       4             :  * Begun 24 March 1995, Stephen Tweedie
       5             :  *
       6             :  ****************************************************************
       7             :  ****************************************************************
       8             :  **
       9             :  **  WARNING:
      10             :  **  The values in this file are exported to user space via 
      11             :  **  the sysctl() binary interface.  Do *NOT* change the
      12             :  **  numbering of any existing values here, and do not change
      13             :  **  any numbers within any one set of values.  If you have to
      14             :  **  redefine an existing interface, use a new number for it.
      15             :  **  The kernel will then return -ENOTDIR to any application using
      16             :  **  the old binary interface.
      17             :  **
      18             :  ****************************************************************
      19             :  ****************************************************************
      20             :  */
      21             : 
      22             : #ifndef _LINUX_SYSCTL_H
      23             : #define _LINUX_SYSCTL_H
      24             : 
      25             : #include <linux/kernel.h>
      26             : #include <linux/types.h>
      27             : #include <linux/compiler.h>
      28             : 
      29             : struct completion;
      30             : 
      31             : #define CTL_MAXNAME 10          /* how many path components do we allow in a
      32             :                                    call to sysctl?   In other words, what is
      33             :                                    the largest acceptable value for the nlen
      34             :                                    member of a struct __sysctl_args to have? */
      35             : 
      36             : struct __sysctl_args {
      37             :         int __user *name;
      38             :         int nlen;
      39             :         void __user *oldval;
      40             :         size_t __user *oldlenp;
      41             :         void __user *newval;
      42             :         size_t newlen;
      43             :         unsigned long __unused[4];
      44             : };
      45             : 
      46             : /* Define sysctl names first */
      47             : 
      48             : /* Top-level names: */
      49             : 
      50             : enum
      51             : {
      52             :         CTL_KERN=1,             /* General kernel info and control */
      53             :         CTL_VM=2,               /* VM management */
      54             :         CTL_NET=3,              /* Networking */
      55             :         CTL_PROC=4,             /* removal breaks strace(1) compilation */
      56             :         CTL_FS=5,               /* Filesystems */
      57             :         CTL_DEBUG=6,            /* Debugging */
      58             :         CTL_DEV=7,              /* Devices */
      59             :         CTL_BUS=8,              /* Busses */
      60             :         CTL_ABI=9,              /* Binary emulation */
      61             :         CTL_CPU=10,             /* CPU stuff (speed scaling, etc) */
      62             :         CTL_ARLAN=254,          /* arlan wireless driver */
      63             :         CTL_S390DBF=5677,       /* s390 debug */
      64             :         CTL_SUNRPC=7249,        /* sunrpc debug */
      65             :         CTL_PM=9899,            /* frv power management */
      66             :         CTL_FRV=9898,           /* frv specific sysctls */
      67             : };
      68             : 
      69             : /* CTL_BUS names: */
      70             : enum
      71             : {
      72             :         CTL_BUS_ISA=1           /* ISA */
      73             : };
      74             : 
      75             : /* /proc/sys/fs/inotify/ */
      76             : enum
      77             : {
      78             :         INOTIFY_MAX_USER_INSTANCES=1,   /* max instances per user */
      79             :         INOTIFY_MAX_USER_WATCHES=2,     /* max watches per user */
      80             :         INOTIFY_MAX_QUEUED_EVENTS=3     /* max queued events per instance */
      81             : };
      82             : 
      83             : /* CTL_KERN names: */
      84             : enum
      85             : {
      86             :         KERN_OSTYPE=1,          /* string: system version */
      87             :         KERN_OSRELEASE=2,       /* string: system release */
      88             :         KERN_OSREV=3,           /* int: system revision */
      89             :         KERN_VERSION=4,         /* string: compile time info */
      90             :         KERN_SECUREMASK=5,      /* struct: maximum rights mask */
      91             :         KERN_PROF=6,            /* table: profiling information */
      92             :         KERN_NODENAME=7,        /* string: hostname */
      93             :         KERN_DOMAINNAME=8,      /* string: domainname */
      94             : 
      95             :         KERN_PANIC=15,          /* int: panic timeout */
      96             :         KERN_REALROOTDEV=16,    /* real root device to mount after initrd */
      97             : 
      98             :         KERN_SPARC_REBOOT=21,   /* reboot command on Sparc */
      99             :         KERN_CTLALTDEL=22,      /* int: allow ctl-alt-del to reboot */
     100             :         KERN_PRINTK=23,         /* struct: control printk logging parameters */
     101             :         KERN_NAMETRANS=24,      /* Name translation */
     102             :         KERN_PPC_HTABRECLAIM=25, /* turn htab reclaimation on/off on PPC */
     103             :         KERN_PPC_ZEROPAGED=26,  /* turn idle page zeroing on/off on PPC */
     104             :         KERN_PPC_POWERSAVE_NAP=27, /* use nap mode for power saving */
     105             :         KERN_MODPROBE=28,       /* string: modprobe path */
     106             :         KERN_SG_BIG_BUFF=29,    /* int: sg driver reserved buffer size */
     107             :         KERN_ACCT=30,           /* BSD process accounting parameters */
     108             :         KERN_PPC_L2CR=31,       /* l2cr register on PPC */
     109             : 
     110             :         KERN_RTSIGNR=32,        /* Number of rt sigs queued */
     111             :         KERN_RTSIGMAX=33,       /* Max queuable */
     112             :         
     113             :         KERN_SHMMAX=34,         /* long: Maximum shared memory segment */
     114             :         KERN_MSGMAX=35,         /* int: Maximum size of a messege */
     115             :         KERN_MSGMNB=36,         /* int: Maximum message queue size */
     116             :         KERN_MSGPOOL=37,        /* int: Maximum system message pool size */
     117             :         KERN_SYSRQ=38,          /* int: Sysreq enable */
     118             :         KERN_MAX_THREADS=39,    /* int: Maximum nr of threads in the system */
     119             :         KERN_RANDOM=40,         /* Random driver */
     120             :         KERN_SHMALL=41,         /* int: Maximum size of shared memory */
     121             :         KERN_MSGMNI=42,         /* int: msg queue identifiers */
     122             :         KERN_SEM=43,            /* struct: sysv semaphore limits */
     123             :         KERN_SPARC_STOP_A=44,   /* int: Sparc Stop-A enable */
     124             :         KERN_SHMMNI=45,         /* int: shm array identifiers */
     125             :         KERN_OVERFLOWUID=46,    /* int: overflow UID */
     126             :         KERN_OVERFLOWGID=47,    /* int: overflow GID */
     127             :         KERN_SHMPATH=48,        /* string: path to shm fs */
     128             :         KERN_HOTPLUG=49,        /* string: path to uevent helper (deprecated) */
     129             :         KERN_IEEE_EMULATION_WARNINGS=50, /* int: unimplemented ieee instructions */
     130             :         KERN_S390_USER_DEBUG_LOGGING=51,  /* int: dumps of user faults */
     131             :         KERN_CORE_USES_PID=52,          /* int: use core or core.%pid */
     132             :         KERN_TAINTED=53,        /* int: various kernel tainted flags */
     133             :         KERN_CADPID=54,         /* int: PID of the process to notify on CAD */
     134             :         KERN_PIDMAX=55,         /* int: PID # limit */
     135             :         KERN_CORE_PATTERN=56,   /* string: pattern for core-file names */
     136             :         KERN_PANIC_ON_OOPS=57,  /* int: whether we will panic on an oops */
     137             :         KERN_HPPA_PWRSW=58,     /* int: hppa soft-power enable */
     138             :         KERN_HPPA_UNALIGNED=59, /* int: hppa unaligned-trap enable */
     139             :         KERN_PRINTK_RATELIMIT=60, /* int: tune printk ratelimiting */
     140             :         KERN_PRINTK_RATELIMIT_BURST=61, /* int: tune printk ratelimiting */
     141             :         KERN_PTY=62,            /* dir: pty driver */
     142             :         KERN_NGROUPS_MAX=63,    /* int: NGROUPS_MAX */
     143             :         KERN_SPARC_SCONS_PWROFF=64, /* int: serial console power-off halt */
     144             :         KERN_HZ_TIMER=65,       /* int: hz timer on or off */
     145             :         KERN_UNKNOWN_NMI_PANIC=66, /* int: unknown nmi panic flag */
     146             :         KERN_BOOTLOADER_TYPE=67, /* int: boot loader type */
     147             :         KERN_RANDOMIZE=68, /* int: randomize virtual address space */
     148             :         KERN_SETUID_DUMPABLE=69, /* int: behaviour of dumps for setuid core */
     149             :         KERN_SPIN_RETRY=70,     /* int: number of spinlock retries */
     150             :         KERN_ACPI_VIDEO_FLAGS=71, /* int: flags for setting up video after ACPI sleep */
     151             :         KERN_IA64_UNALIGNED=72, /* int: ia64 unaligned userland trap enable */
     152             :         KERN_COMPAT_LOG=73,     /* int: print compat layer  messages */
     153             :         KERN_MAX_LOCK_DEPTH=74, /* int: rtmutex's maximum lock depth */
     154             :         KERN_NMI_WATCHDOG=75, /* int: enable/disable nmi watchdog */
     155             :         KERN_PANIC_ON_NMI=76, /* int: whether we will panic on an unrecovered */
     156             : };
     157             : 
     158             : 
     159             : 
     160             : /* CTL_VM names: */
     161             : enum
     162             : {
     163             :         VM_UNUSED1=1,           /* was: struct: Set vm swapping control */
     164             :         VM_UNUSED2=2,           /* was; int: Linear or sqrt() swapout for hogs */
     165             :         VM_UNUSED3=3,           /* was: struct: Set free page thresholds */
     166             :         VM_UNUSED4=4,           /* Spare */
     167             :         VM_OVERCOMMIT_MEMORY=5, /* Turn off the virtual memory safety limit */
     168             :         VM_UNUSED5=6,           /* was: struct: Set buffer memory thresholds */
     169             :         VM_UNUSED7=7,           /* was: struct: Set cache memory thresholds */
     170             :         VM_UNUSED8=8,           /* was: struct: Control kswapd behaviour */
     171             :         VM_UNUSED9=9,           /* was: struct: Set page table cache parameters */
     172             :         VM_PAGE_CLUSTER=10,     /* int: set number of pages to swap together */
     173             :         VM_DIRTY_BACKGROUND=11, /* dirty_background_ratio */
     174             :         VM_DIRTY_RATIO=12,      /* dirty_ratio */
     175             :         VM_DIRTY_WB_CS=13,      /* dirty_writeback_centisecs */
     176             :         VM_DIRTY_EXPIRE_CS=14,  /* dirty_expire_centisecs */
     177             :         VM_NR_PDFLUSH_THREADS=15, /* nr_pdflush_threads */
     178             :         VM_OVERCOMMIT_RATIO=16, /* percent of RAM to allow overcommit in */
     179             :         VM_PAGEBUF=17,          /* struct: Control pagebuf parameters */
     180             :         VM_HUGETLB_PAGES=18,    /* int: Number of available Huge Pages */
     181             :         VM_SWAPPINESS=19,       /* Tendency to steal mapped memory */
     182             :         VM_LOWMEM_RESERVE_RATIO=20,/* reservation ratio for lower memory zones */
     183             :         VM_MIN_FREE_KBYTES=21,  /* Minimum free kilobytes to maintain */
     184             :         VM_MAX_MAP_COUNT=22,    /* int: Maximum number of mmaps/address-space */
     185             :         VM_LAPTOP_MODE=23,      /* vm laptop mode */
     186             :         VM_BLOCK_DUMP=24,       /* block dump mode */
     187             :         VM_HUGETLB_GROUP=25,    /* permitted hugetlb group */
     188             :         VM_VFS_CACHE_PRESSURE=26, /* dcache/icache reclaim pressure */
     189             :         VM_LEGACY_VA_LAYOUT=27, /* legacy/compatibility virtual address space layout */
     190             :         VM_SWAP_TOKEN_TIMEOUT=28, /* default time for token time out */
     191             :         VM_DROP_PAGECACHE=29,   /* int: nuke lots of pagecache */
     192             :         VM_PERCPU_PAGELIST_FRACTION=30,/* int: fraction of pages in each percpu_pagelist */
     193             :         VM_ZONE_RECLAIM_MODE=31, /* reclaim local zone memory before going off node */
     194             :         VM_MIN_UNMAPPED=32,     /* Set min percent of unmapped pages */
     195             :         VM_PANIC_ON_OOM=33,     /* panic at out-of-memory */
     196             :         VM_VDSO_ENABLED=34,     /* map VDSO into new processes? */
     197             :         VM_MIN_SLAB=35,          /* Percent pages ignored by zone reclaim */
     198             : };
     199             : 
     200             : 
     201             : /* CTL_NET names: */
     202             : enum
     203             : {
     204             :         NET_CORE=1,
     205             :         NET_ETHER=2,
     206             :         NET_802=3,
     207             :         NET_UNIX=4,
     208             :         NET_IPV4=5,
     209             :         NET_IPX=6,
     210             :         NET_ATALK=7,
     211             :         NET_NETROM=8,
     212             :         NET_AX25=9,
     213             :         NET_BRIDGE=10,
     214             :         NET_ROSE=11,
     215             :         NET_IPV6=12,
     216             :         NET_X25=13,
     217             :         NET_TR=14,
     218             :         NET_DECNET=15,
     219             :         NET_ECONET=16,
     220             :         NET_SCTP=17,
     221             :         NET_LLC=18,
     222             :         NET_NETFILTER=19,
     223             :         NET_DCCP=20,
     224             :         NET_IRDA=412,
     225             : };
     226             : 
     227             : /* /proc/sys/kernel/random */
     228             : enum
     229             : {
     230             :         RANDOM_POOLSIZE=1,
     231             :         RANDOM_ENTROPY_COUNT=2,
     232             :         RANDOM_READ_THRESH=3,
     233             :         RANDOM_WRITE_THRESH=4,
     234             :         RANDOM_BOOT_ID=5,
     235             :         RANDOM_UUID=6
     236             : };
     237             : 
     238             : /* /proc/sys/kernel/pty */
     239             : enum
     240             : {
     241             :         PTY_MAX=1,
     242             :         PTY_NR=2
     243             : };
     244             : 
     245             : /* /proc/sys/bus/isa */
     246             : enum
     247             : {
     248             :         BUS_ISA_MEM_BASE=1,
     249             :         BUS_ISA_PORT_BASE=2,
     250             :         BUS_ISA_PORT_SHIFT=3
     251             : };
     252             : 
     253             : /* /proc/sys/net/core */
     254             : enum
     255             : {
     256             :         NET_CORE_WMEM_MAX=1,
     257             :         NET_CORE_RMEM_MAX=2,
     258             :         NET_CORE_WMEM_DEFAULT=3,
     259             :         NET_CORE_RMEM_DEFAULT=4,
     260             : /* was  NET_CORE_DESTROY_DELAY */
     261             :         NET_CORE_MAX_BACKLOG=6,
     262             :         NET_CORE_FASTROUTE=7,
     263             :         NET_CORE_MSG_COST=8,
     264             :         NET_CORE_MSG_BURST=9,
     265             :         NET_CORE_OPTMEM_MAX=10,
     266             :         NET_CORE_HOT_LIST_LENGTH=11,
     267             :         NET_CORE_DIVERT_VERSION=12,
     268             :         NET_CORE_NO_CONG_THRESH=13,
     269             :         NET_CORE_NO_CONG=14,
     270             :         NET_CORE_LO_CONG=15,
     271             :         NET_CORE_MOD_CONG=16,
     272             :         NET_CORE_DEV_WEIGHT=17,
     273             :         NET_CORE_SOMAXCONN=18,
     274             :         NET_CORE_BUDGET=19,
     275             :         NET_CORE_AEVENT_ETIME=20,
     276             :         NET_CORE_AEVENT_RSEQTH=21,
     277             :         NET_CORE_WARNINGS=22,
     278             : };
     279             : 
     280             : /* /proc/sys/net/ethernet */
     281             : 
     282             : /* /proc/sys/net/802 */
     283             : 
     284             : /* /proc/sys/net/unix */
     285             : 
     286             : enum
     287             : {
     288             :         NET_UNIX_DESTROY_DELAY=1,
     289             :         NET_UNIX_DELETE_DELAY=2,
     290             :         NET_UNIX_MAX_DGRAM_QLEN=3,
     291             : };
     292             : 
     293             : /* /proc/sys/net/netfilter */
     294             : enum
     295             : {
     296             :         NET_NF_CONNTRACK_MAX=1,
     297             :         NET_NF_CONNTRACK_TCP_TIMEOUT_SYN_SENT=2,
     298             :         NET_NF_CONNTRACK_TCP_TIMEOUT_SYN_RECV=3,
     299             :         NET_NF_CONNTRACK_TCP_TIMEOUT_ESTABLISHED=4,
     300             :         NET_NF_CONNTRACK_TCP_TIMEOUT_FIN_WAIT=5,
     301             :         NET_NF_CONNTRACK_TCP_TIMEOUT_CLOSE_WAIT=6,
     302             :         NET_NF_CONNTRACK_TCP_TIMEOUT_LAST_ACK=7,
     303             :         NET_NF_CONNTRACK_TCP_TIMEOUT_TIME_WAIT=8,
     304             :         NET_NF_CONNTRACK_TCP_TIMEOUT_CLOSE=9,
     305             :         NET_NF_CONNTRACK_UDP_TIMEOUT=10,
     306             :         NET_NF_CONNTRACK_UDP_TIMEOUT_STREAM=11,
     307             :         NET_NF_CONNTRACK_ICMP_TIMEOUT=12,
     308             :         NET_NF_CONNTRACK_GENERIC_TIMEOUT=13,
     309             :         NET_NF_CONNTRACK_BUCKETS=14,
     310             :         NET_NF_CONNTRACK_LOG_INVALID=15,
     311             :         NET_NF_CONNTRACK_TCP_TIMEOUT_MAX_RETRANS=16,
     312             :         NET_NF_CONNTRACK_TCP_LOOSE=17,
     313             :         NET_NF_CONNTRACK_TCP_BE_LIBERAL=18,
     314             :         NET_NF_CONNTRACK_TCP_MAX_RETRANS=19,
     315             :         NET_NF_CONNTRACK_SCTP_TIMEOUT_CLOSED=20,
     316             :         NET_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_WAIT=21,
     317             :         NET_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_ECHOED=22,
     318             :         NET_NF_CONNTRACK_SCTP_TIMEOUT_ESTABLISHED=23,
     319             :         NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT=24,
     320             :         NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD=25,
     321             :         NET_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT=26,
     322             :         NET_NF_CONNTRACK_COUNT=27,
     323             :         NET_NF_CONNTRACK_ICMPV6_TIMEOUT=28,
     324             :         NET_NF_CONNTRACK_FRAG6_TIMEOUT=29,
     325             :         NET_NF_CONNTRACK_FRAG6_LOW_THRESH=30,
     326             :         NET_NF_CONNTRACK_FRAG6_HIGH_THRESH=31,
     327             :         NET_NF_CONNTRACK_CHECKSUM=32,
     328             : };
     329             : 
     330             : /* /proc/sys/net/ipv4 */
     331             : enum
     332             : {
     333             :         /* v2.0 compatibile variables */
     334             :         NET_IPV4_FORWARD=8,
     335             :         NET_IPV4_DYNADDR=9,
     336             : 
     337             :         NET_IPV4_CONF=16,
     338             :         NET_IPV4_NEIGH=17,
     339             :         NET_IPV4_ROUTE=18,
     340             :         NET_IPV4_FIB_HASH=19,
     341             :         NET_IPV4_NETFILTER=20,
     342             : 
     343             :         NET_IPV4_TCP_TIMESTAMPS=33,
     344             :         NET_IPV4_TCP_WINDOW_SCALING=34,
     345             :         NET_IPV4_TCP_SACK=35,
     346             :         NET_IPV4_TCP_RETRANS_COLLAPSE=36,
     347             :         NET_IPV4_DEFAULT_TTL=37,
     348             :         NET_IPV4_AUTOCONFIG=38,
     349             :         NET_IPV4_NO_PMTU_DISC=39,
     350             :         NET_IPV4_TCP_SYN_RETRIES=40,
     351             :         NET_IPV4_IPFRAG_HIGH_THRESH=41,
     352             :         NET_IPV4_IPFRAG_LOW_THRESH=42,
     353             :         NET_IPV4_IPFRAG_TIME=43,
     354             :         NET_IPV4_TCP_MAX_KA_PROBES=44,
     355             :         NET_IPV4_TCP_KEEPALIVE_TIME=45,
     356             :         NET_IPV4_TCP_KEEPALIVE_PROBES=46,
     357             :         NET_IPV4_TCP_RETRIES1=47,
     358             :         NET_IPV4_TCP_RETRIES2=48,
     359             :         NET_IPV4_TCP_FIN_TIMEOUT=49,
     360             :         NET_IPV4_IP_MASQ_DEBUG=50,
     361             :         NET_TCP_SYNCOOKIES=51,
     362             :         NET_TCP_STDURG=52,
     363             :         NET_TCP_RFC1337=53,
     364             :         NET_TCP_SYN_TAILDROP=54,
     365             :         NET_TCP_MAX_SYN_BACKLOG=55,
     366             :         NET_IPV4_LOCAL_PORT_RANGE=56,
     367             :         NET_IPV4_ICMP_ECHO_IGNORE_ALL=57,
     368             :         NET_IPV4_ICMP_ECHO_IGNORE_BROADCASTS=58,
     369             :         NET_IPV4_ICMP_SOURCEQUENCH_RATE=59,
     370             :         NET_IPV4_ICMP_DESTUNREACH_RATE=60,
     371             :         NET_IPV4_ICMP_TIMEEXCEED_RATE=61,
     372             :         NET_IPV4_ICMP_PARAMPROB_RATE=62,
     373             :         NET_IPV4_ICMP_ECHOREPLY_RATE=63,
     374             :         NET_IPV4_ICMP_IGNORE_BOGUS_ERROR_RESPONSES=64,
     375             :         NET_IPV4_IGMP_MAX_MEMBERSHIPS=65,
     376             :         NET_TCP_TW_RECYCLE=66,
     377             :         NET_IPV4_ALWAYS_DEFRAG=67,
     378             :         NET_IPV4_TCP_KEEPALIVE_INTVL=68,
     379             :         NET_IPV4_INET_PEER_THRESHOLD=69,
     380             :         NET_IPV4_INET_PEER_MINTTL=70,
     381             :         NET_IPV4_INET_PEER_MAXTTL=71,
     382             :         NET_IPV4_INET_PEER_GC_MINTIME=72,
     383             :         NET_IPV4_INET_PEER_GC_MAXTIME=73,
     384             :         NET_TCP_ORPHAN_RETRIES=74,
     385             :         NET_TCP_ABORT_ON_OVERFLOW=75,
     386             :         NET_TCP_SYNACK_RETRIES=76,
     387             :         NET_TCP_MAX_ORPHANS=77,
     388             :         NET_TCP_MAX_TW_BUCKETS=78,
     389             :         NET_TCP_FACK=79,
     390             :         NET_TCP_REORDERING=80,
     391             :         NET_TCP_ECN=81,
     392             :         NET_TCP_DSACK=82,
     393             :         NET_TCP_MEM=83,
     394             :         NET_TCP_WMEM=84,
     395             :         NET_TCP_RMEM=85,
     396             :         NET_TCP_APP_WIN=86,
     397             :         NET_TCP_ADV_WIN_SCALE=87,
     398             :         NET_IPV4_NONLOCAL_BIND=88,
     399             :         NET_IPV4_ICMP_RATELIMIT=89,
     400             :         NET_IPV4_ICMP_RATEMASK=90,
     401             :         NET_TCP_TW_REUSE=91,
     402             :         NET_TCP_FRTO=92,
     403             :         NET_TCP_LOW_LATENCY=93,
     404             :         NET_IPV4_IPFRAG_SECRET_INTERVAL=94,
     405             :         NET_IPV4_IGMP_MAX_MSF=96,
     406             :         NET_TCP_NO_METRICS_SAVE=97,
     407             :         NET_TCP_DEFAULT_WIN_SCALE=105,
     408             :         NET_TCP_MODERATE_RCVBUF=106,
     409             :         NET_TCP_TSO_WIN_DIVISOR=107,
     410             :         NET_TCP_BIC_BETA=108,
     411             :         NET_IPV4_ICMP_ERRORS_USE_INBOUND_IFADDR=109,
     412             :         NET_TCP_CONG_CONTROL=110,
     413             :         NET_TCP_ABC=111,
     414             :         NET_IPV4_IPFRAG_MAX_DIST=112,
     415             :         NET_TCP_MTU_PROBING=113,
     416             :         NET_TCP_BASE_MSS=114,
     417             :         NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS=115,
     418             :         NET_TCP_DMA_COPYBREAK=116,
     419             :         NET_TCP_SLOW_START_AFTER_IDLE=117,
     420             :         NET_CIPSOV4_CACHE_ENABLE=118,
     421             :         NET_CIPSOV4_CACHE_BUCKET_SIZE=119,
     422             :         NET_CIPSOV4_RBM_OPTFMT=120,
     423             :         NET_CIPSOV4_RBM_STRICTVALID=121,
     424             :         NET_TCP_AVAIL_CONG_CONTROL=122,
     425             :         NET_TCP_ALLOWED_CONG_CONTROL=123,
     426             :         NET_TCP_MAX_SSTHRESH=124,
     427             :         NET_TCP_FRTO_RESPONSE=125,
     428             : };
     429             : 
     430             : enum {
     431             :         NET_IPV4_ROUTE_FLUSH=1,
     432             :         NET_IPV4_ROUTE_MIN_DELAY=2, /* obsolete since 2.6.25 */
     433             :         NET_IPV4_ROUTE_MAX_DELAY=3, /* obsolete since 2.6.25 */
     434             :         NET_IPV4_ROUTE_GC_THRESH=4,
     435             :         NET_IPV4_ROUTE_MAX_SIZE=5,
     436             :         NET_IPV4_ROUTE_GC_MIN_INTERVAL=6,
     437             :         NET_IPV4_ROUTE_GC_TIMEOUT=7,
     438             :         NET_IPV4_ROUTE_GC_INTERVAL=8,
     439             :         NET_IPV4_ROUTE_REDIRECT_LOAD=9,
     440             :         NET_IPV4_ROUTE_REDIRECT_NUMBER=10,
     441             :         NET_IPV4_ROUTE_REDIRECT_SILENCE=11,
     442             :         NET_IPV4_ROUTE_ERROR_COST=12,
     443             :         NET_IPV4_ROUTE_ERROR_BURST=13,
     444             :         NET_IPV4_ROUTE_GC_ELASTICITY=14,
     445             :         NET_IPV4_ROUTE_MTU_EXPIRES=15,
     446             :         NET_IPV4_ROUTE_MIN_PMTU=16,
     447             :         NET_IPV4_ROUTE_MIN_ADVMSS=17,
     448             :         NET_IPV4_ROUTE_SECRET_INTERVAL=18,
     449             :         NET_IPV4_ROUTE_GC_MIN_INTERVAL_MS=19,
     450             : };
     451             : 
     452             : enum
     453             : {
     454             :         NET_PROTO_CONF_ALL=-2,
     455             :         NET_PROTO_CONF_DEFAULT=-3
     456             : 
     457             :         /* And device ifindices ... */
     458             : };
     459             : 
     460             : enum
     461             : {
     462             :         NET_IPV4_CONF_FORWARDING=1,
     463             :         NET_IPV4_CONF_MC_FORWARDING=2,
     464             :         NET_IPV4_CONF_PROXY_ARP=3,
     465             :         NET_IPV4_CONF_ACCEPT_REDIRECTS=4,
     466             :         NET_IPV4_CONF_SECURE_REDIRECTS=5,
     467             :         NET_IPV4_CONF_SEND_REDIRECTS=6,
     468             :         NET_IPV4_CONF_SHARED_MEDIA=7,
     469             :         NET_IPV4_CONF_RP_FILTER=8,
     470             :         NET_IPV4_CONF_ACCEPT_SOURCE_ROUTE=9,
     471             :         NET_IPV4_CONF_BOOTP_RELAY=10,
     472             :         NET_IPV4_CONF_LOG_MARTIANS=11,
     473             :         NET_IPV4_CONF_TAG=12,
     474             :         NET_IPV4_CONF_ARPFILTER=13,
     475             :         NET_IPV4_CONF_MEDIUM_ID=14,
     476             :         NET_IPV4_CONF_NOXFRM=15,
     477             :         NET_IPV4_CONF_NOPOLICY=16,
     478             :         NET_IPV4_CONF_FORCE_IGMP_VERSION=17,
     479             :         NET_IPV4_CONF_ARP_ANNOUNCE=18,
     480             :         NET_IPV4_CONF_ARP_IGNORE=19,
     481             :         NET_IPV4_CONF_PROMOTE_SECONDARIES=20,
     482             :         NET_IPV4_CONF_ARP_ACCEPT=21,
     483             :         NET_IPV4_CONF_ARP_NOTIFY=22,
     484             :         NET_IPV4_CONF_ACCEPT_LOCAL=23,
     485             :         NET_IPV4_CONF_SRC_VMARK=24,
     486             :         __NET_IPV4_CONF_MAX
     487             : };
     488             : 
     489             : /* /proc/sys/net/ipv4/netfilter */
     490             : enum
     491             : {
     492             :         NET_IPV4_NF_CONNTRACK_MAX=1,
     493             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_SYN_SENT=2,
     494             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_SYN_RECV=3,
     495             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_ESTABLISHED=4,
     496             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_FIN_WAIT=5,
     497             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_CLOSE_WAIT=6,
     498             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_LAST_ACK=7,
     499             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_TIME_WAIT=8,
     500             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_CLOSE=9,
     501             :         NET_IPV4_NF_CONNTRACK_UDP_TIMEOUT=10,
     502             :         NET_IPV4_NF_CONNTRACK_UDP_TIMEOUT_STREAM=11,
     503             :         NET_IPV4_NF_CONNTRACK_ICMP_TIMEOUT=12,
     504             :         NET_IPV4_NF_CONNTRACK_GENERIC_TIMEOUT=13,
     505             :         NET_IPV4_NF_CONNTRACK_BUCKETS=14,
     506             :         NET_IPV4_NF_CONNTRACK_LOG_INVALID=15,
     507             :         NET_IPV4_NF_CONNTRACK_TCP_TIMEOUT_MAX_RETRANS=16,
     508             :         NET_IPV4_NF_CONNTRACK_TCP_LOOSE=17,
     509             :         NET_IPV4_NF_CONNTRACK_TCP_BE_LIBERAL=18,
     510             :         NET_IPV4_NF_CONNTRACK_TCP_MAX_RETRANS=19,
     511             :         NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_CLOSED=20,
     512             :         NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_WAIT=21,
     513             :         NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_COOKIE_ECHOED=22,
     514             :         NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_ESTABLISHED=23,
     515             :         NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT=24,
     516             :         NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD=25,
     517             :         NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT=26,
     518             :         NET_IPV4_NF_CONNTRACK_COUNT=27,
     519             :         NET_IPV4_NF_CONNTRACK_CHECKSUM=28,
     520             : };
     521             :  
     522             : /* /proc/sys/net/ipv6 */
     523             : enum {
     524             :         NET_IPV6_CONF=16,
     525             :         NET_IPV6_NEIGH=17,
     526             :         NET_IPV6_ROUTE=18,
     527             :         NET_IPV6_ICMP=19,
     528             :         NET_IPV6_BINDV6ONLY=20,
     529             :         NET_IPV6_IP6FRAG_HIGH_THRESH=21,
     530             :         NET_IPV6_IP6FRAG_LOW_THRESH=22,
     531             :         NET_IPV6_IP6FRAG_TIME=23,
     532             :         NET_IPV6_IP6FRAG_SECRET_INTERVAL=24,
     533             :         NET_IPV6_MLD_MAX_MSF=25,
     534             : };
     535             : 
     536             : enum {
     537             :         NET_IPV6_ROUTE_FLUSH=1,
     538             :         NET_IPV6_ROUTE_GC_THRESH=2,
     539             :         NET_IPV6_ROUTE_MAX_SIZE=3,
     540             :         NET_IPV6_ROUTE_GC_MIN_INTERVAL=4,
     541             :         NET_IPV6_ROUTE_GC_TIMEOUT=5,
     542             :         NET_IPV6_ROUTE_GC_INTERVAL=6,
     543             :         NET_IPV6_ROUTE_GC_ELASTICITY=7,
     544             :         NET_IPV6_ROUTE_MTU_EXPIRES=8,
     545             :         NET_IPV6_ROUTE_MIN_ADVMSS=9,
     546             :         NET_IPV6_ROUTE_GC_MIN_INTERVAL_MS=10
     547             : };
     548             : 
     549             : enum {
     550             :         NET_IPV6_FORWARDING=1,
     551             :         NET_IPV6_HOP_LIMIT=2,
     552             :         NET_IPV6_MTU=3,
     553             :         NET_IPV6_ACCEPT_RA=4,
     554             :         NET_IPV6_ACCEPT_REDIRECTS=5,
     555             :         NET_IPV6_AUTOCONF=6,
     556             :         NET_IPV6_DAD_TRANSMITS=7,
     557             :         NET_IPV6_RTR_SOLICITS=8,
     558             :         NET_IPV6_RTR_SOLICIT_INTERVAL=9,
     559             :         NET_IPV6_RTR_SOLICIT_DELAY=10,
     560             :         NET_IPV6_USE_TEMPADDR=11,
     561             :         NET_IPV6_TEMP_VALID_LFT=12,
     562             :         NET_IPV6_TEMP_PREFERED_LFT=13,
     563             :         NET_IPV6_REGEN_MAX_RETRY=14,
     564             :         NET_IPV6_MAX_DESYNC_FACTOR=15,
     565             :         NET_IPV6_MAX_ADDRESSES=16,
     566             :         NET_IPV6_FORCE_MLD_VERSION=17,
     567             :         NET_IPV6_ACCEPT_RA_DEFRTR=18,
     568             :         NET_IPV6_ACCEPT_RA_PINFO=19,
     569             :         NET_IPV6_ACCEPT_RA_RTR_PREF=20,
     570             :         NET_IPV6_RTR_PROBE_INTERVAL=21,
     571             :         NET_IPV6_ACCEPT_RA_RT_INFO_MAX_PLEN=22,
     572             :         NET_IPV6_PROXY_NDP=23,
     573             :         NET_IPV6_ACCEPT_SOURCE_ROUTE=25,
     574             :         __NET_IPV6_MAX
     575             : };
     576             : 
     577             : /* /proc/sys/net/ipv6/icmp */
     578             : enum {
     579             :         NET_IPV6_ICMP_RATELIMIT=1
     580             : };
     581             : 
     582             : /* /proc/sys/net/<protocol>/neigh/<dev> */
     583             : enum {
     584             :         NET_NEIGH_MCAST_SOLICIT=1,
     585             :         NET_NEIGH_UCAST_SOLICIT=2,
     586             :         NET_NEIGH_APP_SOLICIT=3,
     587             :         NET_NEIGH_RETRANS_TIME=4,
     588             :         NET_NEIGH_REACHABLE_TIME=5,
     589             :         NET_NEIGH_DELAY_PROBE_TIME=6,
     590             :         NET_NEIGH_GC_STALE_TIME=7,
     591             :         NET_NEIGH_UNRES_QLEN=8,
     592             :         NET_NEIGH_PROXY_QLEN=9,
     593             :         NET_NEIGH_ANYCAST_DELAY=10,
     594             :         NET_NEIGH_PROXY_DELAY=11,
     595             :         NET_NEIGH_LOCKTIME=12,
     596             :         NET_NEIGH_GC_INTERVAL=13,
     597             :         NET_NEIGH_GC_THRESH1=14,
     598             :         NET_NEIGH_GC_THRESH2=15,
     599             :         NET_NEIGH_GC_THRESH3=16,
     600             :         NET_NEIGH_RETRANS_TIME_MS=17,
     601             :         NET_NEIGH_REACHABLE_TIME_MS=18,
     602             :         __NET_NEIGH_MAX
     603             : };
     604             : 
     605             : /* /proc/sys/net/dccp */
     606             : enum {
     607             :         NET_DCCP_DEFAULT=1,
     608             : };
     609             : 
     610             : /* /proc/sys/net/ipx */
     611             : enum {
     612             :         NET_IPX_PPROP_BROADCASTING=1,
     613             :         NET_IPX_FORWARDING=2
     614             : };
     615             : 
     616             : /* /proc/sys/net/llc */
     617             : enum {
     618             :         NET_LLC2=1,
     619             :         NET_LLC_STATION=2,
     620             : };
     621             : 
     622             : /* /proc/sys/net/llc/llc2 */
     623             : enum {
     624             :         NET_LLC2_TIMEOUT=1,
     625             : };
     626             : 
     627             : /* /proc/sys/net/llc/station */
     628             : enum {
     629             :         NET_LLC_STATION_ACK_TIMEOUT=1,
     630             : };
     631             : 
     632             : /* /proc/sys/net/llc/llc2/timeout */
     633             : enum {
     634             :         NET_LLC2_ACK_TIMEOUT=1,
     635             :         NET_LLC2_P_TIMEOUT=2,
     636             :         NET_LLC2_REJ_TIMEOUT=3,
     637             :         NET_LLC2_BUSY_TIMEOUT=4,
     638             : };
     639             : 
     640             : /* /proc/sys/net/appletalk */
     641             : enum {
     642             :         NET_ATALK_AARP_EXPIRY_TIME=1,
     643             :         NET_ATALK_AARP_TICK_TIME=2,
     644             :         NET_ATALK_AARP_RETRANSMIT_LIMIT=3,
     645             :         NET_ATALK_AARP_RESOLVE_TIME=4
     646             : };
     647             : 
     648             : 
     649             : /* /proc/sys/net/netrom */
     650             : enum {
     651             :         NET_NETROM_DEFAULT_PATH_QUALITY=1,
     652             :         NET_NETROM_OBSOLESCENCE_COUNT_INITIALISER=2,
     653             :         NET_NETROM_NETWORK_TTL_INITIALISER=3,
     654             :         NET_NETROM_TRANSPORT_TIMEOUT=4,
     655             :         NET_NETROM_TRANSPORT_MAXIMUM_TRIES=5,
     656             :         NET_NETROM_TRANSPORT_ACKNOWLEDGE_DELAY=6,
     657             :         NET_NETROM_TRANSPORT_BUSY_DELAY=7,
     658             :         NET_NETROM_TRANSPORT_REQUESTED_WINDOW_SIZE=8,
     659             :         NET_NETROM_TRANSPORT_NO_ACTIVITY_TIMEOUT=9,
     660             :         NET_NETROM_ROUTING_CONTROL=10,
     661             :         NET_NETROM_LINK_FAILS_COUNT=11,
     662             :         NET_NETROM_RESET=12
     663             : };
     664             : 
     665             : /* /proc/sys/net/ax25 */
     666             : enum {
     667             :         NET_AX25_IP_DEFAULT_MODE=1,
     668             :         NET_AX25_DEFAULT_MODE=2,
     669             :         NET_AX25_BACKOFF_TYPE=3,
     670             :         NET_AX25_CONNECT_MODE=4,
     671             :         NET_AX25_STANDARD_WINDOW=5,
     672             :         NET_AX25_EXTENDED_WINDOW=6,
     673             :         NET_AX25_T1_TIMEOUT=7,
     674             :         NET_AX25_T2_TIMEOUT=8,
     675             :         NET_AX25_T3_TIMEOUT=9,
     676             :         NET_AX25_IDLE_TIMEOUT=10,
     677             :         NET_AX25_N2=11,
     678             :         NET_AX25_PACLEN=12,
     679             :         NET_AX25_PROTOCOL=13,
     680             :         NET_AX25_DAMA_SLAVE_TIMEOUT=14
     681             : };
     682             : 
     683             : /* /proc/sys/net/rose */
     684             : enum {
     685             :         NET_ROSE_RESTART_REQUEST_TIMEOUT=1,
     686             :         NET_ROSE_CALL_REQUEST_TIMEOUT=2,
     687             :         NET_ROSE_RESET_REQUEST_TIMEOUT=3,
     688             :         NET_ROSE_CLEAR_REQUEST_TIMEOUT=4,
     689             :         NET_ROSE_ACK_HOLD_BACK_TIMEOUT=5,
     690             :         NET_ROSE_ROUTING_CONTROL=6,
     691             :         NET_ROSE_LINK_FAIL_TIMEOUT=7,
     692             :         NET_ROSE_MAX_VCS=8,
     693             :         NET_ROSE_WINDOW_SIZE=9,
     694             :         NET_ROSE_NO_ACTIVITY_TIMEOUT=10
     695             : };
     696             : 
     697             : /* /proc/sys/net/x25 */
     698             : enum {
     699             :         NET_X25_RESTART_REQUEST_TIMEOUT=1,
     700             :         NET_X25_CALL_REQUEST_TIMEOUT=2,
     701             :         NET_X25_RESET_REQUEST_TIMEOUT=3,
     702             :         NET_X25_CLEAR_REQUEST_TIMEOUT=4,
     703             :         NET_X25_ACK_HOLD_BACK_TIMEOUT=5,
     704             :         NET_X25_FORWARD=6
     705             : };
     706             : 
     707             : /* /proc/sys/net/token-ring */
     708             : enum
     709             : {
     710             :         NET_TR_RIF_TIMEOUT=1
     711             : };
     712             : 
     713             : /* /proc/sys/net/decnet/ */
     714             : enum {
     715             :         NET_DECNET_NODE_TYPE = 1,
     716             :         NET_DECNET_NODE_ADDRESS = 2,
     717             :         NET_DECNET_NODE_NAME = 3,
     718             :         NET_DECNET_DEFAULT_DEVICE = 4,
     719             :         NET_DECNET_TIME_WAIT = 5,
     720             :         NET_DECNET_DN_COUNT = 6,
     721             :         NET_DECNET_DI_COUNT = 7,
     722             :         NET_DECNET_DR_COUNT = 8,
     723             :         NET_DECNET_DST_GC_INTERVAL = 9,
     724             :         NET_DECNET_CONF = 10,
     725             :         NET_DECNET_NO_FC_MAX_CWND = 11,
     726             :         NET_DECNET_MEM = 12,
     727             :         NET_DECNET_RMEM = 13,
     728             :         NET_DECNET_WMEM = 14,
     729             :         NET_DECNET_DEBUG_LEVEL = 255
     730             : };
     731             : 
     732             : /* /proc/sys/net/decnet/conf/<dev> */
     733             : enum {
     734             :         NET_DECNET_CONF_LOOPBACK = -2,
     735             :         NET_DECNET_CONF_DDCMP = -3,
     736             :         NET_DECNET_CONF_PPP = -4,
     737             :         NET_DECNET_CONF_X25 = -5,
     738             :         NET_DECNET_CONF_GRE = -6,
     739             :         NET_DECNET_CONF_ETHER = -7
     740             : 
     741             :         /* ... and ifindex of devices */
     742             : };
     743             : 
     744             : /* /proc/sys/net/decnet/conf/<dev>/ */
     745             : enum {
     746             :         NET_DECNET_CONF_DEV_PRIORITY = 1,
     747             :         NET_DECNET_CONF_DEV_T1 = 2,
     748             :         NET_DECNET_CONF_DEV_T2 = 3,
     749             :         NET_DECNET_CONF_DEV_T3 = 4,
     750             :         NET_DECNET_CONF_DEV_FORWARDING = 5,
     751             :         NET_DECNET_CONF_DEV_BLKSIZE = 6,
     752             :         NET_DECNET_CONF_DEV_STATE = 7
     753             : };
     754             : 
     755             : /* /proc/sys/net/sctp */
     756             : enum {
     757             :         NET_SCTP_RTO_INITIAL = 1,
     758             :         NET_SCTP_RTO_MIN     = 2,
     759             :         NET_SCTP_RTO_MAX     = 3,
     760             :         NET_SCTP_RTO_ALPHA   = 4,
     761             :         NET_SCTP_RTO_BETA    = 5,
     762             :         NET_SCTP_VALID_COOKIE_LIFE       =  6,
     763             :         NET_SCTP_ASSOCIATION_MAX_RETRANS =  7,
     764             :         NET_SCTP_PATH_MAX_RETRANS        =  8,
     765             :         NET_SCTP_MAX_INIT_RETRANSMITS    =  9,
     766             :         NET_SCTP_HB_INTERVAL             = 10,
     767             :         NET_SCTP_PRESERVE_ENABLE         = 11,
     768             :         NET_SCTP_MAX_BURST               = 12,
     769             :         NET_SCTP_ADDIP_ENABLE            = 13,
     770             :         NET_SCTP_PRSCTP_ENABLE           = 14,
     771             :         NET_SCTP_SNDBUF_POLICY           = 15,
     772             :         NET_SCTP_SACK_TIMEOUT            = 16,
     773             :         NET_SCTP_RCVBUF_POLICY           = 17,
     774             : };
     775             : 
     776             : /* /proc/sys/net/bridge */
     777             : enum {
     778             :         NET_BRIDGE_NF_CALL_ARPTABLES = 1,
     779             :         NET_BRIDGE_NF_CALL_IPTABLES = 2,
     780             :         NET_BRIDGE_NF_CALL_IP6TABLES = 3,
     781             :         NET_BRIDGE_NF_FILTER_VLAN_TAGGED = 4,
     782             :         NET_BRIDGE_NF_FILTER_PPPOE_TAGGED = 5,
     783             : };
     784             : 
     785             : /* proc/sys/net/irda */
     786             : enum {
     787             :         NET_IRDA_DISCOVERY=1,
     788             :         NET_IRDA_DEVNAME=2,
     789             :         NET_IRDA_DEBUG=3,
     790             :         NET_IRDA_FAST_POLL=4,
     791             :         NET_IRDA_DISCOVERY_SLOTS=5,
     792             :         NET_IRDA_DISCOVERY_TIMEOUT=6,
     793             :         NET_IRDA_SLOT_TIMEOUT=7,
     794             :         NET_IRDA_MAX_BAUD_RATE=8,
     795             :         NET_IRDA_MIN_TX_TURN_TIME=9,
     796             :         NET_IRDA_MAX_TX_DATA_SIZE=10,
     797             :         NET_IRDA_MAX_TX_WINDOW=11,
     798             :         NET_IRDA_MAX_NOREPLY_TIME=12,
     799             :         NET_IRDA_WARN_NOREPLY_TIME=13,
     800             :         NET_IRDA_LAP_KEEPALIVE_TIME=14,
     801             : };
     802             : 
     803             : 
     804             : /* CTL_FS names: */
     805             : enum
     806             : {
     807             :         FS_NRINODE=1,   /* int:current number of allocated inodes */
     808             :         FS_STATINODE=2,
     809             :         FS_MAXINODE=3,  /* int:maximum number of inodes that can be allocated */
     810             :         FS_NRDQUOT=4,   /* int:current number of allocated dquots */
     811             :         FS_MAXDQUOT=5,  /* int:maximum number of dquots that can be allocated */
     812             :         FS_NRFILE=6,    /* int:current number of allocated filedescriptors */
     813             :         FS_MAXFILE=7,   /* int:maximum number of filedescriptors that can be allocated */
     814             :         FS_DENTRY=8,
     815             :         FS_NRSUPER=9,   /* int:current number of allocated super_blocks */
     816             :         FS_MAXSUPER=10, /* int:maximum number of super_blocks that can be allocated */
     817             :         FS_OVERFLOWUID=11,      /* int: overflow UID */
     818             :         FS_OVERFLOWGID=12,      /* int: overflow GID */
     819             :         FS_LEASES=13,   /* int: leases enabled */
     820             :         FS_DIR_NOTIFY=14,       /* int: directory notification enabled */
     821             :         FS_LEASE_TIME=15,       /* int: maximum time to wait for a lease break */
     822             :         FS_DQSTATS=16,  /* disc quota usage statistics and control */
     823             :         FS_XFS=17,      /* struct: control xfs parameters */
     824             :         FS_AIO_NR=18,   /* current system-wide number of aio requests */
     825             :         FS_AIO_MAX_NR=19,       /* system-wide maximum number of aio requests */
     826             :         FS_INOTIFY=20,  /* inotify submenu */
     827             :         FS_OCFS2=988,   /* ocfs2 */
     828             : };
     829             : 
     830             : /* /proc/sys/fs/quota/ */
     831             : enum {
     832             :         FS_DQ_LOOKUPS = 1,
     833             :         FS_DQ_DROPS = 2,
     834             :         FS_DQ_READS = 3,
     835             :         FS_DQ_WRITES = 4,
     836             :         FS_DQ_CACHE_HITS = 5,
     837             :         FS_DQ_ALLOCATED = 6,
     838             :         FS_DQ_FREE = 7,
     839           1 :         FS_DQ_SYNCS = 8,
     840           1 :         FS_DQ_WARNINGS = 9,
     841           1 : };
     842             : 
     843             : /* CTL_DEBUG names: */
     844             : 
     845             : /* CTL_DEV names: */
     846             : enum {
     847             :         DEV_CDROM=1,
     848             :         DEV_HWMON=2,
     849             :         DEV_PARPORT=3,
     850             :         DEV_RAID=4,
     851             :         DEV_MAC_HID=5,
     852             :         DEV_SCSI=6,
     853             :         DEV_IPMI=7,
     854             : };
     855             : 
     856             : /* /proc/sys/dev/cdrom */
     857             : enum {
     858             :         DEV_CDROM_INFO=1,
     859             :         DEV_CDROM_AUTOCLOSE=2,
     860             :         DEV_CDROM_AUTOEJECT=3,
     861             :         DEV_CDROM_DEBUG=4,
     862             :         DEV_CDROM_LOCK=5,
     863             :         DEV_CDROM_CHECK_MEDIA=6
     864             : };
     865             : 
     866             : /* /proc/sys/dev/parport */
     867             : enum {
     868             :         DEV_PARPORT_DEFAULT=-3
     869             : };
     870             : 
     871             : /* /proc/sys/dev/raid */
     872             : enum {
     873             :         DEV_RAID_SPEED_LIMIT_MIN=1,
     874             :         DEV_RAID_SPEED_LIMIT_MAX=2
     875             : };
     876             : 
     877             : /* /proc/sys/dev/parport/default */
     878             : enum {
     879             :         DEV_PARPORT_DEFAULT_TIMESLICE=1,
     880             :         DEV_PARPORT_DEFAULT_SPINTIME=2
     881             : };
     882             : 
     883             : /* /proc/sys/dev/parport/parport n */
     884             : enum {
     885             :         DEV_PARPORT_SPINTIME=1,
     886             :         DEV_PARPORT_BASE_ADDR=2,
     887             :         DEV_PARPORT_IRQ=3,
     888             :         DEV_PARPORT_DMA=4,
     889             :         DEV_PARPORT_MODES=5,
     890             :         DEV_PARPORT_DEVICES=6,
     891             :         DEV_PARPORT_AUTOPROBE=16
     892             : };
     893             : 
     894             : /* /proc/sys/dev/parport/parport n/devices/ */
     895             : enum {
     896             :         DEV_PARPORT_DEVICES_ACTIVE=-3,
     897             : };
     898             : 
     899             : /* /proc/sys/dev/parport/parport n/devices/device n */
     900             : enum {
     901             :         DEV_PARPORT_DEVICE_TIMESLICE=1,
     902             : };
     903             : 
     904             : /* /proc/sys/dev/mac_hid */
     905             : enum {
     906             :         DEV_MAC_HID_KEYBOARD_SENDS_LINUX_KEYCODES=1,
     907             :         DEV_MAC_HID_KEYBOARD_LOCK_KEYCODES=2,
     908             :         DEV_MAC_HID_MOUSE_BUTTON_EMULATION=3,
     909             :         DEV_MAC_HID_MOUSE_BUTTON2_KEYCODE=4,
     910             :         DEV_MAC_HID_MOUSE_BUTTON3_KEYCODE=5,
     911             :         DEV_MAC_HID_ADB_MOUSE_SENDS_KEYCODES=6
     912             : };
     913             : 
     914             : /* /proc/sys/dev/scsi */
     915             : enum {
     916             :         DEV_SCSI_LOGGING_LEVEL=1,
     917             : };
     918             : 
     919             : /* /proc/sys/dev/ipmi */
     920             : enum {
     921             :         DEV_IPMI_POWEROFF_POWERCYCLE=1,
     922             : };
     923             : 
     924             : /* /proc/sys/abi */
     925             : enum
     926             : {
     927             :         ABI_DEFHANDLER_COFF=1,  /* default handler for coff binaries */
     928             :         ABI_DEFHANDLER_ELF=2,   /* default handler for ELF binaries */
     929             :         ABI_DEFHANDLER_LCALL7=3,/* default handler for procs using lcall7 */
     930             :         ABI_DEFHANDLER_LIBCSO=4,/* default handler for an libc.so ELF interp */
     931             :         ABI_TRACE=5,            /* tracing flags */
     932             :         ABI_FAKE_UTSNAME=6,     /* fake target utsname information */
     933             : };
     934             : 
     935             : #ifdef __KERNEL__
     936             : #include <linux/list.h>
     937             : 
     938             : /* For the /proc/sys support */
     939             : struct ctl_table;
     940             : struct nsproxy;
     941             : struct ctl_table_root;
     942             : 
     943             : struct ctl_table_set {
     944             :         struct list_head list;
     945             :         struct ctl_table_set *parent;
     946             :         int (*is_seen)(struct ctl_table_set *);
     947             : };
     948             : 
     949             : extern void setup_sysctl_set(struct ctl_table_set *p,
     950           1 :         struct ctl_table_set *parent,
     951             :         int (*is_seen)(struct ctl_table_set *));
     952             : 
     953             : struct ctl_table_header;
     954             : 
     955             : extern void sysctl_head_get(struct ctl_table_header *);
     956             : extern void sysctl_head_put(struct ctl_table_header *);
     957             : extern int sysctl_is_seen(struct ctl_table_header *);
     958             : extern struct ctl_table_header *sysctl_head_grab(struct ctl_table_header *);
     959             : extern struct ctl_table_header *sysctl_head_next(struct ctl_table_header *prev);
     960             : extern struct ctl_table_header *__sysctl_head_next(struct nsproxy *namespaces,
     961             :                                                 struct ctl_table_header *prev);
     962             : extern void sysctl_head_finish(struct ctl_table_header *prev);
     963             : extern int sysctl_perm(struct ctl_table_root *root,
     964             :                 struct ctl_table *table, int op);
     965             : 
     966           1 : typedef struct ctl_table ctl_table;
     967             : 
     968           1 : typedef int proc_handler (struct ctl_table *ctl, int write,
     969             :                           void __user *buffer, size_t *lenp, loff_t *ppos);
     970             : 
     971             : extern int proc_dostring(struct ctl_table *, int,
     972             :                          void __user *, size_t *, loff_t *);
     973             : extern int proc_dointvec(struct ctl_table *, int,
     974             :                          void __user *, size_t *, loff_t *);
     975             : extern int proc_dointvec_minmax(struct ctl_table *, int,
     976             :                                 void __user *, size_t *, loff_t *);
     977             : extern int proc_dointvec_jiffies(struct ctl_table *, int,
     978             :                                  void __user *, size_t *, loff_t *);
     979             : extern int proc_dointvec_userhz_jiffies(struct ctl_table *, int,
     980             :                                         void __user *, size_t *, loff_t *);
     981             : extern int proc_dointvec_ms_jiffies(struct ctl_table *, int,
     982             :                                     void __user *, size_t *, loff_t *);
     983             : extern int proc_doulongvec_minmax(struct ctl_table *, int,
     984             :                                   void __user *, size_t *, loff_t *);
     985             : extern int proc_doulongvec_ms_jiffies_minmax(struct ctl_table *table, int,
     986           1 :                                       void __user *, size_t *, loff_t *);
     987             : 
     988             : /*
     989             :  * Register a set of sysctl names by calling register_sysctl_table
     990             :  * with an initialised array of struct ctl_table's.  An entry with 
     991             :  * NULL procname terminates the table.  table->de will be
     992             :  * set up by the registration and need not be initialised in advance.
     993             :  *
     994             :  * sysctl names can be mirrored automatically under /proc/sys.  The
     995             :  * procname supplied controls /proc naming.
     996             :  *
     997             :  * The table's mode will be honoured both for sys_sysctl(2) and
     998             :  * proc-fs access.
     999             :  *
    1000             :  * Leaf nodes in the sysctl tree will be represented by a single file
    1001             :  * under /proc; non-leaf nodes will be represented by directories.  A
    1002             :  * null procname disables /proc mirroring at this node.
    1003             :  *
    1004             :  * sysctl(2) can automatically manage read and write requests through
    1005             :  * the sysctl table.  The data and maxlen fields of the ctl_table
    1006             :  * struct enable minimal validation of the values being written to be
    1007             :  * performed, and the mode field allows minimal authentication.
    1008             :  * 
    1009             :  * There must be a proc_handler routine for any terminal nodes
    1010             :  * mirrored under /proc/sys (non-terminals are handled by a built-in
    1011             :  * directory handler).  Several default handlers are available to
    1012             :  * cover common cases.
    1013             :  */
    1014             : 
    1015             : /* A sysctl table is an array of struct ctl_table: */
    1016             : struct ctl_table 
    1017             : {
    1018             :         const char *procname;           /* Text ID for /proc/sys, or zero */
    1019             :         void *data;
    1020             :         int maxlen;
    1021             :         mode_t mode;
    1022             :         struct ctl_table *child;
    1023             :         struct ctl_table *parent;       /* Automatically set */
    1024             :         proc_handler *proc_handler;     /* Callback for text formatting */
    1025             :         void *extra1;
    1026             :         void *extra2;
    1027             : };
    1028           1 : 
    1029             : struct ctl_table_root {
    1030             :         struct list_head root_list;
    1031             :         struct ctl_table_set default_set;
    1032             :         struct ctl_table_set *(*lookup)(struct ctl_table_root *root,
    1033             :                                            struct nsproxy *namespaces);
    1034             :         int (*permissions)(struct ctl_table_root *root,
    1035             :                         struct nsproxy *namespaces, struct ctl_table *table);
    1036           1 : };
    1037             : 
    1038             : /* struct ctl_table_header is used to maintain dynamic lists of
    1039             :    struct ctl_table trees. */
    1040             : struct ctl_table_header
    1041             : {
    1042             :         struct ctl_table *ctl_table;
    1043             :         struct list_head ctl_entry;
    1044             :         int used;
    1045             :         int count;
    1046             :         struct completion *unregistering;
    1047             :         struct ctl_table *ctl_table_arg;
    1048             :         struct ctl_table_root *root;
    1049             :         struct ctl_table_set *set;
    1050             :         struct ctl_table *attached_by;
    1051             :         struct ctl_table *attached_to;
    1052             :         struct ctl_table_header *parent;
    1053             : };
    1054             : 
    1055             : /* struct ctl_path describes where in the hierarchy a table is added */
    1056             : struct ctl_path {
    1057             :         const char *procname;
    1058             : };
    1059             : 
    1060             : void register_sysctl_root(struct ctl_table_root *root);
    1061             : struct ctl_table_header *__register_sysctl_paths(
    1062             :         struct ctl_table_root *root, struct nsproxy *namespaces,
    1063             :         const struct ctl_path *path, struct ctl_table *table);
    1064             : struct ctl_table_header *register_sysctl_table(struct ctl_table * table);
    1065             : struct ctl_table_header *register_sysctl_paths(const struct ctl_path *path,
    1066             :                                                 struct ctl_table *table);
    1067             : 
    1068             : void unregister_sysctl_table(struct ctl_table_header * table);
    1069             : int sysctl_check_table(struct nsproxy *namespaces, struct ctl_table *table);
    1070             : 
    1071             : #endif /* __KERNEL__ */
    1072             : 
    1073             : #endif /* _LINUX_SYSCTL_H */

Generated by: LCOV version 1.10