****************************************************************
****************************************************************
**
+ ** WARNING:
** The values in this file are exported to user space via
- ** the sysctl() binary interface. However this interface
- ** is unstable and deprecated and will be removed in the future.
- ** For a stable interface use /proc/sys.
+ ** the sysctl() binary interface. Do *NOT* change the
+ ** numbering of any existing values here, and do not change
+ ** any numbers within any one set of values. If you have to
+ ** redefine an existing interface, use a new number for it.
+ ** The kernel will then return -ENOTDIR to any application using
+ ** the old binary interface.
+ **
+ ** For new interfaces unless you really need a binary number
+ ** please use CTL_UNNUMBERED.
**
****************************************************************
****************************************************************
#ifdef __KERNEL__
#define CTL_ANY -1 /* Matches any name */
#define CTL_NONE 0
+#define CTL_UNNUMBERED CTL_NONE /* sysctl without a binary number */
#endif
enum
KERN_PANIC=15, /* int: panic timeout */
KERN_EXEC_SHIELD=1000, /* int: exec-shield enabled (0/1/2) */
KERN_PRINT_FATAL=1001, /* int: print fatal signals (0/1/2) */
- KERN_VDSO=1002, /* int: VDSO enabled (0/1) */
KERN_REALROOTDEV=16, /* real root device to mount after initrd */
KERN_VSHELPER=17, /* string: path to vshelper policy agent */
KERN_IA64_UNALIGNED=72, /* int: ia64 unaligned userland trap enable */
KERN_COMPAT_LOG=73, /* int: print compat layer messages */
KERN_MAX_LOCK_DEPTH=74,
+ KERN_NMI_WATCHDOG=75, /* int: enable/disable nmi watchdog */
+ KERN_PANIC_ON_NMI=76, /* int: whether we will panic on an unrecovered */
};
NET_LLC=18,
NET_NETFILTER=19,
NET_DCCP=20,
- NET_TUX=21,
};
/* /proc/sys/kernel/random */
NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS=115,
NET_TCP_DMA_COPYBREAK=116,
NET_TCP_SLOW_START_AFTER_IDLE=117,
+ NET_CIPSOV4_CACHE_ENABLE=118,
+ NET_CIPSOV4_CACHE_BUCKET_SIZE=119,
+ NET_CIPSOV4_RBM_OPTFMT=120,
+ NET_CIPSOV4_RBM_STRICTVALID=121,
+ NET_TCP_AVAIL_CONG_CONTROL=122,
+ NET_TCP_ALLOWED_CONG_CONTROL=123,
};
enum {
NET_IPV6_ACCEPT_RA_RTR_PREF=20,
NET_IPV6_RTR_PROBE_INTERVAL=21,
NET_IPV6_ACCEPT_RA_RT_INFO_MAX_PLEN=22,
+ NET_IPV6_PROXY_NDP=23,
+ NET_IPV6_ACCEPT_SOURCE_ROUTE=25,
__NET_IPV6_MAX
};
NET_DCCP_DEFAULT=1,
};
-/* /proc/sys/net/dccp/default */
-enum {
- NET_DCCP_DEFAULT_SEQ_WINDOW = 1,
- NET_DCCP_DEFAULT_RX_CCID = 2,
- NET_DCCP_DEFAULT_TX_CCID = 3,
- NET_DCCP_DEFAULT_ACK_RATIO = 4,
- NET_DCCP_DEFAULT_SEND_ACKVEC = 5,
- NET_DCCP_DEFAULT_SEND_NDP = 6,
-};
-
/* /proc/sys/net/ipx */
enum {
NET_IPX_PPROP_BROADCASTING=1,
NET_BRIDGE_NF_FILTER_VLAN_TAGGED = 4,
};
-/* /proc/sys/net/tux/ */
-enum {
- NET_TUX_DOCROOT = 1,
- NET_TUX_LOGFILE = 2,
- NET_TUX_EXTCGI = 3,
- NET_TUX_STOP = 4,
- NET_TUX_CLIENTPORT = 5,
- NET_TUX_LOGGING = 6,
- NET_TUX_SERVERPORT = 7,
- NET_TUX_THREADS = 8,
- NET_TUX_KEEPALIVE_TIMEOUT = 9,
- NET_TUX_MAX_KEEPALIVE_BW = 10,
- NET_TUX_DEFER_ACCEPT = 11,
- NET_TUX_MAX_FREE_REQUESTS = 12,
- NET_TUX_MAX_CONNECT = 13,
- NET_TUX_MAX_BACKLOG = 14,
- NET_TUX_MODE_FORBIDDEN = 15,
- NET_TUX_MODE_ALLOWED = 16,
- NET_TUX_MODE_USERSPACE = 17,
- NET_TUX_MODE_CGI = 18,
- NET_TUX_CGI_UID = 19,
- NET_TUX_CGI_GID = 20,
- NET_TUX_CGIROOT = 21,
- NET_TUX_LOGENTRY_ALIGN_ORDER = 22,
- NET_TUX_NONAGLE = 23,
- NET_TUX_ACK_PINGPONG = 24,
- NET_TUX_PUSH_ALL = 25,
- NET_TUX_ZEROCOPY_PARSE = 26,
- NET_CONFIG_TUX_DEBUG_BLOCKING = 27,
- NET_TUX_PAGE_AGE_START = 28,
- NET_TUX_PAGE_AGE_ADV = 29,
- NET_TUX_PAGE_AGE_MAX = 30,
- NET_TUX_VIRTUAL_SERVER = 31,
- NET_TUX_MAX_OBJECT_SIZE = 32,
- NET_TUX_COMPRESSION = 33,
- NET_TUX_NOID = 34,
- NET_TUX_CGI_INHERIT_CPU = 35,
- NET_TUX_CGI_CPU_MASK = 36,
- NET_TUX_ZEROCOPY_HEADER = 37,
- NET_TUX_ZEROCOPY_SENDFILE = 38,
- NET_TUX_ALL_USERSPACE = 39,
- NET_TUX_REDIRECT_LOGGING = 40,
- NET_TUX_REFERER_LOGGING = 41,
- NET_TUX_MAX_HEADER_LEN = 42,
- NET_TUX_404_PAGE = 43,
- NET_TUX_MAX_KEEPALIVES = 44,
- NET_TUX_IGNORE_QUERY = 45,
-};
-
/* CTL_FS names: */
enum
{
typedef int ctl_handler (ctl_table *table, int __user *name, int nlen,
void __user *oldval, size_t __user *oldlenp,
- void __user *newval, size_t newlen,
- void **context);
+ void __user *newval, size_t newlen);
typedef int proc_handler (ctl_table *ctl, int write, struct file * filp,
void __user *buffer, size_t *lenp, loff_t *ppos);
-typedef int virt_handler (struct ctl_table *ctl, int write, xid_t xid,
- void **datap, size_t *lenp);
-
extern int proc_dostring(ctl_table *, int, struct file *,
void __user *, size_t *, loff_t *);
extern int proc_dointvec(ctl_table *, int, struct file *,
extern int do_sysctl_strategy (ctl_table *table,
int __user *name, int nlen,
void __user *oldval, size_t __user *oldlenp,
- void __user *newval, size_t newlen, void ** context);
+ void __user *newval, size_t newlen);
extern ctl_handler sysctl_string;
extern ctl_handler sysctl_intvec;
/*
* Register a set of sysctl names by calling register_sysctl_table
* with an initialised array of ctl_table's. An entry with zero
- * ctl_name terminates the table. table->de will be set up by the
- * registration and need not be initialised in advance.
+ * ctl_name and NULL procname terminates the table. table->de will be
+ * set up by the registration and need not be initialised in advance.
*
* sysctl names can be mirrored automatically under /proc/sys. The
* procname supplied controls /proc naming.
* Leaf nodes in the sysctl tree will be represented by a single file
* under /proc; non-leaf nodes will be represented by directories. A
* null procname disables /proc mirroring at this node.
- *
+ *
+ * sysctl entries with a zero ctl_name will not be available through
+ * the binary sysctl interface.
+ *
* sysctl(2) can automatically manage read and write requests through
* the sysctl table. The data and maxlen fields of the ctl_table
* struct enable minimal validation of the values being written to be
mode_t mode;
ctl_table *child;
proc_handler *proc_handler; /* Callback for text formatting */
- virt_handler *virt_handler; /* Context virtualization */
ctl_handler *strategy; /* Callback function for all r/w */
struct proc_dir_entry *de; /* /proc control block */
void *extra1;