2005-09-22 04:30:44 -03:00
/*
* sysctl_net_llc . c : sysctl interface to LLC net subsystem .
2007-02-09 23:25:01 +09:00
*
2005-09-22 04:30:44 -03:00
* Arnaldo Carvalho de Melo < acme @ conectiva . com . br >
*/
# include <linux/mm.h>
# include <linux/init.h>
# include <linux/sysctl.h>
2005-09-22 05:14:33 -03:00
# include <net/llc.h>
2005-09-22 04:30:44 -03:00
# ifndef CONFIG_SYSCTL
# error This file should not be compiled without CONFIG_SYSCTL defined
# endif
static struct ctl_table llc2_timeout_table [ ] = {
{
. procname = " ack " ,
. data = & sysctl_llc2_ack_timeout ,
. maxlen = sizeof ( long ) ,
. mode = 0644 ,
2008-11-03 18:21:05 -08:00
. proc_handler = proc_dointvec_jiffies ,
2005-09-22 04:30:44 -03:00
} ,
{
. procname = " busy " ,
. data = & sysctl_llc2_busy_timeout ,
. maxlen = sizeof ( long ) ,
. mode = 0644 ,
2008-11-03 18:21:05 -08:00
. proc_handler = proc_dointvec_jiffies ,
2005-09-22 04:30:44 -03:00
} ,
{
. procname = " p " ,
. data = & sysctl_llc2_p_timeout ,
. maxlen = sizeof ( long ) ,
. mode = 0644 ,
2008-11-03 18:21:05 -08:00
. proc_handler = proc_dointvec_jiffies ,
2005-09-22 04:30:44 -03:00
} ,
{
. procname = " rej " ,
. data = & sysctl_llc2_rej_timeout ,
. maxlen = sizeof ( long ) ,
. mode = 0644 ,
2008-11-03 18:21:05 -08:00
. proc_handler = proc_dointvec_jiffies ,
2005-09-22 04:30:44 -03:00
} ,
2009-11-05 13:32:03 -08:00
{ } ,
2005-09-22 04:30:44 -03:00
} ;
static struct ctl_table llc_station_table [ ] = {
{
. procname = " ack_timeout " ,
. data = & sysctl_llc_station_ack_timeout ,
. maxlen = sizeof ( long ) ,
. mode = 0644 ,
2008-11-03 18:21:05 -08:00
. proc_handler = proc_dointvec_jiffies ,
2005-09-22 04:30:44 -03:00
} ,
2009-11-05 13:32:03 -08:00
{ } ,
2005-09-22 04:30:44 -03:00
} ;
static struct ctl_table llc2_dir_timeout_table [ ] = {
{
. procname = " timeout " ,
. mode = 0555 ,
. child = llc2_timeout_table ,
2007-02-09 23:25:01 +09:00
} ,
2009-11-05 13:32:03 -08:00
{ } ,
2005-09-22 04:30:44 -03:00
} ;
static struct ctl_table llc_table [ ] = {
{
. procname = " llc2 " ,
. mode = 0555 ,
. child = llc2_dir_timeout_table ,
2007-02-09 23:25:01 +09:00
} ,
2005-09-22 04:30:44 -03:00
{
. procname = " station " ,
. mode = 0555 ,
. child = llc_station_table ,
} ,
2009-11-05 13:32:03 -08:00
{ } ,
2005-09-22 04:30:44 -03:00
} ;
2008-01-09 00:30:05 -08:00
static struct ctl_path llc_path [ ] = {
2009-11-05 13:32:03 -08:00
{ . procname = " net " , } ,
{ . procname = " llc " , } ,
2008-01-09 00:30:05 -08:00
{ }
2005-09-22 04:30:44 -03:00
} ;
static struct ctl_table_header * llc_table_header ;
int __init llc_sysctl_init ( void )
{
2008-01-09 00:30:05 -08:00
llc_table_header = register_sysctl_paths ( llc_path , llc_table ) ;
2005-09-22 04:30:44 -03:00
return llc_table_header ? 0 : - ENOMEM ;
}
void llc_sysctl_exit ( void )
{
if ( llc_table_header ) {
unregister_sysctl_table ( llc_table_header ) ;
llc_table_header = NULL ;
}
}