sysctl.c (0b77f5bfb45c13e1e5142374f9d6ca75292252a4) | sysctl.c (88f458e4b91348b2e892c72977b5f665d7f374da) |
---|---|
1/* 2 * sysctl.c: General linux system control interface 3 * 4 * Begun 24 March 1995, Stephen Tweedie 5 * Added /proc support, Dec 1995 6 * Added bdflush entry and intvec min/max checking, 2/23/96, Tom Dyas. 7 * Added hooks for /proc/sys/net (minor, minor patch), 96/4/1, Mike Shaver. 8 * Added kernel/java-{interpreter,appletviewer}, 96/5/10, Mike Shaver. --- 1578 unchanged lines hidden (view full) --- 1587 table->parent = parent; 1588 if (table->child) 1589 sysctl_set_parent(table, table->child); 1590 } 1591} 1592 1593static __init int sysctl_init(void) 1594{ | 1/* 2 * sysctl.c: General linux system control interface 3 * 4 * Begun 24 March 1995, Stephen Tweedie 5 * Added /proc support, Dec 1995 6 * Added bdflush entry and intvec min/max checking, 2/23/96, Tom Dyas. 7 * Added hooks for /proc/sys/net (minor, minor patch), 96/4/1, Mike Shaver. 8 * Added kernel/java-{interpreter,appletviewer}, 96/5/10, Mike Shaver. --- 1578 unchanged lines hidden (view full) --- 1587 table->parent = parent; 1588 if (table->child) 1589 sysctl_set_parent(table, table->child); 1590 } 1591} 1592 1593static __init int sysctl_init(void) 1594{ |
1595 int err; | |
1596 sysctl_set_parent(NULL, root_table); | 1595 sysctl_set_parent(NULL, root_table); |
1597 err = sysctl_check_table(current->nsproxy, root_table); | 1596#ifdef CONFIG_SYSCTL_SYSCALL_CHECK 1597 { 1598 int err; 1599 err = sysctl_check_table(current->nsproxy, root_table); 1600 } 1601#endif |
1598 return 0; 1599} 1600 1601core_initcall(sysctl_init); 1602 1603/** 1604 * __register_sysctl_paths - register a sysctl hierarchy 1605 * @root: List of sysctl headers to register on --- 110 unchanged lines hidden (view full) --- 1716 *prevp = table; 1717 header->ctl_table_arg = table; 1718 1719 INIT_LIST_HEAD(&header->ctl_entry); 1720 header->used = 0; 1721 header->unregistering = NULL; 1722 header->root = root; 1723 sysctl_set_parent(NULL, header->ctl_table); | 1602 return 0; 1603} 1604 1605core_initcall(sysctl_init); 1606 1607/** 1608 * __register_sysctl_paths - register a sysctl hierarchy 1609 * @root: List of sysctl headers to register on --- 110 unchanged lines hidden (view full) --- 1720 *prevp = table; 1721 header->ctl_table_arg = table; 1722 1723 INIT_LIST_HEAD(&header->ctl_entry); 1724 header->used = 0; 1725 header->unregistering = NULL; 1726 header->root = root; 1727 sysctl_set_parent(NULL, header->ctl_table); |
1728#ifdef CONFIG_SYSCTL_SYSCALL_CHECK |
|
1724 if (sysctl_check_table(namespaces, header->ctl_table)) { 1725 kfree(header); 1726 return NULL; 1727 } | 1729 if (sysctl_check_table(namespaces, header->ctl_table)) { 1730 kfree(header); 1731 return NULL; 1732 } |
1733#endif |
|
1728 spin_lock(&sysctl_lock); 1729 header_list = lookup_header_list(root, namespaces); 1730 list_add_tail(&header->ctl_entry, header_list); 1731 spin_unlock(&sysctl_lock); 1732 1733 return header; 1734} 1735 --- 1104 unchanged lines hidden --- | 1734 spin_lock(&sysctl_lock); 1735 header_list = lookup_header_list(root, namespaces); 1736 list_add_tail(&header->ctl_entry, header_list); 1737 spin_unlock(&sysctl_lock); 1738 1739 return header; 1740} 1741 --- 1104 unchanged lines hidden --- |