Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
net
unix
sysctl_net_unix.c
Go to the documentation of this file.
1
/*
2
* NET4: Sysctl interface to net af_unix subsystem.
3
*
4
* Authors: Mike Shaver.
5
*
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License
8
* as published by the Free Software Foundation; either version
9
* 2 of the License, or (at your option) any later version.
10
*/
11
12
#include <
linux/mm.h
>
13
#include <linux/slab.h>
14
#include <linux/sysctl.h>
15
16
#include <
net/af_unix.h
>
17
18
static
ctl_table
unix_table[] = {
19
{
20
.
procname
=
"max_dgram_qlen"
,
21
.data = &
init_net
.unx.sysctl_max_dgram_qlen,
22
.maxlen =
sizeof
(
int
),
23
.
mode
= 0644,
24
.
proc_handler
=
proc_dointvec
25
},
26
{ }
27
};
28
29
int
__net_init
unix_sysctl_register
(
struct
net
*
net
)
30
{
31
struct
ctl_table
*
table
;
32
33
table =
kmemdup
(unix_table,
sizeof
(unix_table),
GFP_KERNEL
);
34
if
(table ==
NULL
)
35
goto
err_alloc;
36
37
table[0].
data
= &net->
unx
.sysctl_max_dgram_qlen;
38
net->
unx
.ctl =
register_net_sysctl
(net,
"net/unix"
, table);
39
if
(net->
unx
.ctl ==
NULL
)
40
goto
err_reg;
41
42
return
0;
43
44
err_reg:
45
kfree
(table);
46
err_alloc:
47
return
-
ENOMEM
;
48
}
49
50
void
unix_sysctl_unregister
(
struct
net
*
net
)
51
{
52
struct
ctl_table
*
table
;
53
54
table = net->
unx
.ctl->ctl_table_arg;
55
unregister_net_sysctl_table
(net->
unx
.ctl);
56
kfree
(table);
57
}
Generated on Thu Jan 10 2013 15:02:25 for Linux Kernel by
1.8.2