linux/net/core/sysctl_net_core.c

// SPDX-License-Identifier: GPL-2.0
/* -*- linux-c -*-
 * sysctl_net_core.c: sysctl interface to net core subsystem.
 *
 * Begun April 1, 1996, Mike Shaver.
 * Added /proc/sys/net/core directory entry (empty =) ). [MS]
 */

#include <linux/filter.h>
#include <linux/mm.h>
#include <linux/sysctl.h>
#include <linux/module.h>
#include <linux/socket.h>
#include <linux/netdevice.h>
#include <linux/ratelimit.h>
#include <linux/vmalloc.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/sched/isolation.h>

#include <net/ip.h>
#include <net/sock.h>
#include <net/net_ratelimit.h>
#include <net/busy_poll.h>
#include <net/pkt_sched.h>
#include <net/hotdata.h>
#include <net/proto_memory.h>
#include <net/rps.h>

#include "dev.h"

static int int_3600 =;
static int min_sndbuf =;
static int min_rcvbuf =;
static int max_skb_frags =;
static int min_mem_pcpu_rsv =;

static int net_msg_warn;	/* Unused, but still a sysctl */

int sysctl_fb_tunnels_only_for_init_net __read_mostly =;
EXPORT_SYMBOL();

/* 0 - Keep current behavior:
 *     IPv4: inherit all current settings from init_net
 *     IPv6: reset all settings to default
 * 1 - Both inherit all current settings from init_net
 * 2 - Both reset all settings to default
 * 3 - Both inherit all settings from current netns
 */
int sysctl_devconf_inherit_init_net __read_mostly;
EXPORT_SYMBOL();

#if IS_ENABLED(CONFIG_NET_FLOW_LIMIT) || IS_ENABLED(CONFIG_RPS)
static void dump_cpumask(void *buffer, size_t *lenp, loff_t *ppos,
			 struct cpumask *mask)
{}
#endif

#ifdef CONFIG_RPS

static struct cpumask *rps_default_mask_cow_alloc(struct net *net)
{}

static int rps_default_mask_sysctl(const struct ctl_table *table, int write,
				   void *buffer, size_t *lenp, loff_t *ppos)
{}

static int rps_sock_flow_sysctl(const struct ctl_table *table, int write,
				void *buffer, size_t *lenp, loff_t *ppos)
{}
#endif /* CONFIG_RPS */

#ifdef CONFIG_NET_FLOW_LIMIT
static DEFINE_MUTEX(flow_limit_update_mutex);

static int flow_limit_cpu_sysctl(const struct ctl_table *table, int write,
				 void *buffer, size_t *lenp, loff_t *ppos)
{}

static int flow_limit_table_len_sysctl(const struct ctl_table *table, int write,
				       void *buffer, size_t *lenp, loff_t *ppos)
{}
#endif /* CONFIG_NET_FLOW_LIMIT */

#ifdef CONFIG_NET_SCHED
static int set_default_qdisc(const struct ctl_table *table, int write,
			     void *buffer, size_t *lenp, loff_t *ppos)
{}
#endif

static int proc_do_dev_weight(const struct ctl_table *table, int write,
			   void *buffer, size_t *lenp, loff_t *ppos)
{}

static int proc_do_rss_key(const struct ctl_table *table, int write,
			   void *buffer, size_t *lenp, loff_t *ppos)
{}

#ifdef CONFIG_BPF_JIT
static int proc_dointvec_minmax_bpf_enable(const struct ctl_table *table, int write,
					   void *buffer, size_t *lenp,
					   loff_t *ppos)
{}

# ifdef CONFIG_HAVE_EBPF_JIT
static int
proc_dointvec_minmax_bpf_restricted(const struct ctl_table *table, int write,
				    void *buffer, size_t *lenp, loff_t *ppos)
{}
# endif /* CONFIG_HAVE_EBPF_JIT */

static int
proc_dolongvec_minmax_bpf_restricted(const struct ctl_table *table, int write,
				     void *buffer, size_t *lenp, loff_t *ppos)
{}
#endif

static struct ctl_table net_core_table[] =;

static struct ctl_table netns_core_table[] =;

static int __init fb_tunnels_only_for_init_net_sysctl_setup(char *str)
{}
__setup();

static __net_init int sysctl_core_net_init(struct net *net)
{}

static __net_exit void sysctl_core_net_exit(struct net *net)
{}

static __net_initdata struct pernet_operations sysctl_core_ops =;

static __init int sysctl_core_init(void)
{}

fs_initcall(sysctl_core_init);