]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blame - net/netfilter/nf_conntrack_timestamp.c
Merge tag 'nfs-for-5.4-1' of git://git.linux-nfs.org/projects/anna/linux-nfs
[mirror_ubuntu-jammy-kernel.git] / net / netfilter / nf_conntrack_timestamp.c
CommitLineData
e97150df 1// SPDX-License-Identifier: GPL-2.0-or-later
a992ca2a
PNA
2/*
3 * (C) 2010 Pablo Neira Ayuso <pablo@netfilter.org>
a992ca2a
PNA
4 */
5
5191d70f
AS
6#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
7
a992ca2a
PNA
8#include <linux/netfilter.h>
9#include <linux/slab.h>
10#include <linux/kernel.h>
11#include <linux/moduleparam.h>
12
13#include <net/netfilter/nf_conntrack.h>
14#include <net/netfilter/nf_conntrack_extend.h>
15#include <net/netfilter/nf_conntrack_timestamp.h>
16
eb939922 17static bool nf_ct_tstamp __read_mostly;
a992ca2a
PNA
18
19module_param_named(tstamp, nf_ct_tstamp, bool, 0644);
20MODULE_PARM_DESC(tstamp, "Enable connection tracking flow timestamping.");
21
23f671a1 22static const struct nf_ct_ext_type tstamp_extend = {
a992ca2a
PNA
23 .len = sizeof(struct nf_conn_tstamp),
24 .align = __alignof__(struct nf_conn_tstamp),
25 .id = NF_CT_EXT_TSTAMP,
26};
27
fc3893fd 28void nf_conntrack_tstamp_pernet_init(struct net *net)
a992ca2a 29{
a992ca2a 30 net->ct.sysctl_tstamp = nf_ct_tstamp;
73f4001a 31}
a992ca2a 32
73f4001a
G
33int nf_conntrack_tstamp_init(void)
34{
35 int ret;
36 ret = nf_ct_extend_register(&tstamp_extend);
a992ca2a 37 if (ret < 0)
5191d70f 38 pr_err("Unable to register extension\n");
a992ca2a
PNA
39 return ret;
40}
41
73f4001a 42void nf_conntrack_tstamp_fini(void)
a992ca2a 43{
73f4001a 44 nf_ct_extend_unregister(&tstamp_extend);
a992ca2a 45}