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
include
net
netfilter
nf_conntrack_timestamp.h
Go to the documentation of this file.
1
#ifndef _NF_CONNTRACK_TSTAMP_H
2
#define _NF_CONNTRACK_TSTAMP_H
3
4
#include <
net/net_namespace.h
>
5
#include <linux/netfilter/nf_conntrack_common.h>
6
#include <
linux/netfilter/nf_conntrack_tuple_common.h
>
7
#include <
net/netfilter/nf_conntrack.h
>
8
#include <
net/netfilter/nf_conntrack_extend.h
>
9
10
struct
nf_conn_tstamp
{
11
u_int64_t
start
;
12
u_int64_t
stop
;
13
};
14
15
static
inline
16
struct
nf_conn_tstamp
*nf_conn_tstamp_find(
const
struct
nf_conn
*
ct
)
17
{
18
#ifdef CONFIG_NF_CONNTRACK_TIMESTAMP
19
return
nf_ct_ext_find
(ct, NF_CT_EXT_TSTAMP);
20
#else
21
return
NULL
;
22
#endif
23
}
24
25
static
inline
26
struct
nf_conn_tstamp
*nf_ct_tstamp_ext_add(
struct
nf_conn
*
ct
,
gfp_t
gfp)
27
{
28
#ifdef CONFIG_NF_CONNTRACK_TIMESTAMP
29
struct
net
*
net
= nf_ct_net(ct);
30
31
if
(!net->ct.sysctl_tstamp)
32
return
NULL
;
33
34
return
nf_ct_ext_add
(ct, NF_CT_EXT_TSTAMP, gfp);
35
#else
36
return
NULL
;
37
#endif
38
};
39
40
static
inline
bool
nf_ct_tstamp_enabled(
struct
net *net)
41
{
42
return
net->ct.sysctl_tstamp != 0;
43
}
44
45
static
inline
void
nf_ct_set_tstamp(
struct
net *net,
bool
enable
)
46
{
47
net->ct.sysctl_tstamp =
enable
;
48
}
49
50
#ifdef CONFIG_NF_CONNTRACK_TIMESTAMP
51
extern
int
nf_conntrack_tstamp_init
(
struct
net *net);
52
extern
void
nf_conntrack_tstamp_fini
(
struct
net *net);
53
#else
54
static
inline
int
nf_conntrack_tstamp_init
(
struct
net *net)
55
{
56
return
0;
57
}
58
59
static
inline
void
nf_conntrack_tstamp_fini
(
struct
net *net)
60
{
61
return
;
62
}
63
#endif
/* CONFIG_NF_CONNTRACK_TIMESTAMP */
64
65
#endif
/* _NF_CONNTRACK_TSTAMP_H */
Generated on Thu Jan 10 2013 14:53:11 for Linux Kernel by
1.8.2