~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/net/llc/sysctl_net_llc.c

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0
  2 /*
  3  * sysctl_net_llc.c: sysctl interface to LLC net subsystem.
  4  *
  5  * Arnaldo Carvalho de Melo <acme@conectiva.com.br>
  6  */
  7 
  8 #include <linux/mm.h>
  9 #include <linux/init.h>
 10 #include <linux/sysctl.h>
 11 #include <net/net_namespace.h>
 12 #include <net/llc.h>
 13 
 14 #ifndef CONFIG_SYSCTL
 15 #error This file should not be compiled without CONFIG_SYSCTL defined
 16 #endif
 17 
 18 static struct ctl_table llc2_timeout_table[] = {
 19         {
 20                 .procname       = "ack",
 21                 .data           = &sysctl_llc2_ack_timeout,
 22                 .maxlen         = sizeof(sysctl_llc2_ack_timeout),
 23                 .mode           = 0644,
 24                 .proc_handler   = proc_dointvec_jiffies,
 25         },
 26         {
 27                 .procname       = "busy",
 28                 .data           = &sysctl_llc2_busy_timeout,
 29                 .maxlen         = sizeof(sysctl_llc2_busy_timeout),
 30                 .mode           = 0644,
 31                 .proc_handler   = proc_dointvec_jiffies,
 32         },
 33         {
 34                 .procname       = "p",
 35                 .data           = &sysctl_llc2_p_timeout,
 36                 .maxlen         = sizeof(sysctl_llc2_p_timeout),
 37                 .mode           = 0644,
 38                 .proc_handler   = proc_dointvec_jiffies,
 39         },
 40         {
 41                 .procname       = "rej",
 42                 .data           = &sysctl_llc2_rej_timeout,
 43                 .maxlen         = sizeof(sysctl_llc2_rej_timeout),
 44                 .mode           = 0644,
 45                 .proc_handler   = proc_dointvec_jiffies,
 46         },
 47 };
 48 
 49 static struct ctl_table_header *llc2_timeout_header;
 50 static struct ctl_table_header *llc_station_header;
 51 
 52 int __init llc_sysctl_init(void)
 53 {
 54         struct ctl_table empty[1] = {};
 55         llc2_timeout_header = register_net_sysctl(&init_net, "net/llc/llc2/timeout", llc2_timeout_table);
 56         llc_station_header = register_net_sysctl_sz(&init_net, "net/llc/station", empty, 0);
 57 
 58         if (!llc2_timeout_header || !llc_station_header) {
 59                 llc_sysctl_exit();
 60                 return -ENOMEM;
 61         }
 62         return 0;
 63 }
 64 
 65 void llc_sysctl_exit(void)
 66 {
 67         if (llc2_timeout_header) {
 68                 unregister_net_sysctl_table(llc2_timeout_header);
 69                 llc2_timeout_header = NULL;
 70         }
 71         if (llc_station_header) {
 72                 unregister_net_sysctl_table(llc_station_header);
 73                 llc_station_header = NULL;
 74         }
 75 }
 76 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php