[NET]: Fix sparse warnings
Of this type, mostly: CHECK net/ipv6/netfilter.c net/ipv6/netfilter.c:96:12: warning: symbol 'ipv6_netfilter_init' was not declared. Should it be static? net/ipv6/netfilter.c:101:6: warning: symbol 'ipv6_netfilter_fini' was not declared. Should it be static? Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
9deff7f236
Коммит
20380731bc
|
@ -110,6 +110,8 @@ static inline struct ethhdr *eth_hdr(const struct sk_buff *skb)
|
|||
{
|
||||
return (struct ethhdr *)skb->mac.raw;
|
||||
}
|
||||
|
||||
extern struct ctl_table ether_table[];
|
||||
#endif
|
||||
|
||||
#endif /* _LINUX_IF_ETHER_H */
|
||||
|
|
|
@ -191,10 +191,12 @@ struct frad_local
|
|||
int buffer; /* current buffer for S508 firmware */
|
||||
};
|
||||
|
||||
extern void dlci_ioctl_set(int (*hook)(unsigned int, void __user *));
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
|
||||
#endif /* CONFIG_DLCI || CONFIG_DLCI_MODULE */
|
||||
|
||||
#ifdef __KERNEL__
|
||||
extern void dlci_ioctl_set(int (*hook)(unsigned int, void __user *));
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
@ -43,12 +43,16 @@ struct trh_hdr {
|
|||
};
|
||||
|
||||
#ifdef __KERNEL__
|
||||
#include <linux/config.h>
|
||||
#include <linux/skbuff.h>
|
||||
|
||||
static inline struct trh_hdr *tr_hdr(const struct sk_buff *skb)
|
||||
{
|
||||
return (struct trh_hdr *)skb->mac.raw;
|
||||
}
|
||||
#ifdef CONFIG_SYSCTL
|
||||
extern struct ctl_table tr_table[];
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* This is an Token-Ring LLC structure */
|
||||
|
|
|
@ -129,6 +129,9 @@ struct igmpv3_query {
|
|||
#include <linux/skbuff.h>
|
||||
#include <linux/in.h>
|
||||
|
||||
extern int sysctl_igmp_max_memberships;
|
||||
extern int sysctl_igmp_max_msf;
|
||||
|
||||
struct ip_sf_socklist
|
||||
{
|
||||
unsigned int sl_max;
|
||||
|
|
|
@ -286,5 +286,12 @@ static struct proto_ops name##_ops = { \
|
|||
#define MODULE_ALIAS_NET_PF_PROTO(pf, proto) \
|
||||
MODULE_ALIAS("net-pf-" __stringify(pf) "-proto-" __stringify(proto))
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
#include <linux/sysctl.h>
|
||||
extern ctl_table net_table[];
|
||||
extern int net_msg_cost;
|
||||
extern int net_msg_burst;
|
||||
#endif
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _LINUX_NET_H */
|
||||
|
|
|
@ -244,6 +244,7 @@ struct netdev_boot_setup {
|
|||
};
|
||||
#define NETDEV_BOOT_SETUP_MAX 8
|
||||
|
||||
extern int __init netdev_boot_setup(char *str);
|
||||
|
||||
/*
|
||||
* The DEVICE structure.
|
||||
|
@ -673,6 +674,7 @@ extern void dev_queue_xmit_nit(struct sk_buff *skb, struct net_device *dev);
|
|||
extern void dev_init(void);
|
||||
|
||||
extern int netdev_nit;
|
||||
extern int netdev_budget;
|
||||
|
||||
/* Called by rtnetlink.c:rtnl_unlock() */
|
||||
extern void netdev_run_todo(void);
|
||||
|
@ -908,6 +910,14 @@ extern int skb_checksum_help(struct sk_buff *skb, int inward);
|
|||
extern void net_enable_timestamp(void);
|
||||
extern void net_disable_timestamp(void);
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern void *dev_seq_start(struct seq_file *seq, loff_t *pos);
|
||||
extern void *dev_seq_next(struct seq_file *seq, void *v, loff_t *pos);
|
||||
extern void dev_seq_stop(struct seq_file *seq, void *v);
|
||||
#endif
|
||||
|
||||
extern void linkwatch_run_queue(void);
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
|
||||
#endif /* _LINUX_DEV_H */
|
||||
|
|
|
@ -71,7 +71,7 @@ enum nf_ip6_hook_priorities {
|
|||
NF_IP6_PRI_LAST = INT_MAX,
|
||||
};
|
||||
|
||||
int ipv6_netfilter_init(void);
|
||||
void ipv6_netfilter_fini(void);
|
||||
extern int ipv6_netfilter_init(void);
|
||||
extern void ipv6_netfilter_fini(void);
|
||||
|
||||
#endif /*__LINUX_IP6_NETFILTER_H*/
|
||||
|
|
|
@ -2727,7 +2727,8 @@ static inline int security_socket_getpeersec(struct socket *sock, char __user *o
|
|||
return security_ops->socket_getpeersec(sock, optval, optlen, len);
|
||||
}
|
||||
|
||||
static inline int security_sk_alloc(struct sock *sk, int family, int priority)
|
||||
static inline int security_sk_alloc(struct sock *sk, int family,
|
||||
unsigned int __nocast priority)
|
||||
{
|
||||
return security_ops->sk_alloc_security(sk, family, priority);
|
||||
}
|
||||
|
@ -2844,7 +2845,8 @@ static inline int security_socket_getpeersec(struct socket *sock, char __user *o
|
|||
return -ENOPROTOOPT;
|
||||
}
|
||||
|
||||
static inline int security_sk_alloc(struct sock *sk, int family, int priority)
|
||||
static inline int security_sk_alloc(struct sock *sk, int family,
|
||||
unsigned int __nocast priority)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -1203,6 +1203,8 @@ extern void skb_copy_and_csum_dev(const struct sk_buff *skb, u8 *to);
|
|||
extern void skb_split(struct sk_buff *skb,
|
||||
struct sk_buff *skb1, const u32 len);
|
||||
|
||||
extern void skb_release_data(struct sk_buff *skb);
|
||||
|
||||
static inline void *skb_header_pointer(const struct sk_buff *skb, int offset,
|
||||
int len, void *buffer)
|
||||
{
|
||||
|
|
|
@ -26,6 +26,13 @@ struct __kernel_sockaddr_storage {
|
|||
#include <linux/types.h> /* pid_t */
|
||||
#include <linux/compiler.h> /* __user */
|
||||
|
||||
extern int sysctl_somaxconn;
|
||||
extern void sock_init(void);
|
||||
#ifdef CONFIG_PROC_FS
|
||||
struct seq_file;
|
||||
extern void socket_seq_show(struct seq_file *seq);
|
||||
#endif
|
||||
|
||||
typedef unsigned short sa_family_t;
|
||||
|
||||
/*
|
||||
|
|
|
@ -45,6 +45,7 @@ struct prefix_info {
|
|||
|
||||
#ifdef __KERNEL__
|
||||
|
||||
#include <linux/config.h>
|
||||
#include <linux/netdevice.h>
|
||||
#include <net/if_inet6.h>
|
||||
#include <net/ipv6.h>
|
||||
|
@ -238,5 +239,10 @@ static inline int ipv6_addr_is_ll_all_routers(const struct in6_addr *addr)
|
|||
addr->s6_addr32[3] == htonl(0x00000002));
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int if6_proc_init(void);
|
||||
extern void if6_proc_exit(void);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
@ -1,5 +1,11 @@
|
|||
#ifndef __LINUX_NET_AFUNIX_H
|
||||
#define __LINUX_NET_AFUNIX_H
|
||||
|
||||
#include <linux/config.h>
|
||||
#include <linux/socket.h>
|
||||
#include <linux/un.h>
|
||||
#include <net/sock.h>
|
||||
|
||||
extern void unix_inflight(struct file *fp);
|
||||
extern void unix_notinflight(struct file *fp);
|
||||
extern void unix_gc(void);
|
||||
|
@ -74,5 +80,14 @@ struct unix_sock {
|
|||
wait_queue_head_t peer_wait;
|
||||
};
|
||||
#define unix_sk(__sk) ((struct unix_sock *)__sk)
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
extern int sysctl_unix_max_dgram_qlen;
|
||||
extern void unix_sysctl_register(void);
|
||||
extern void unix_sysctl_unregister(void);
|
||||
#else
|
||||
static inline void unix_sysctl_register(void) {}
|
||||
static inline void unix_sysctl_unregister(void) {}
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
@ -57,4 +57,11 @@ static inline struct raw_sock *raw_sk(const struct sock *sk)
|
|||
return (struct raw_sock *)sk;
|
||||
}
|
||||
|
||||
extern int sysctl_icmp_echo_ignore_all;
|
||||
extern int sysctl_icmp_echo_ignore_broadcasts;
|
||||
extern int sysctl_icmp_ignore_bogus_error_responses;
|
||||
extern int sysctl_icmp_errors_use_inbound_ifaddr;
|
||||
extern int sysctl_icmp_ratelimit;
|
||||
extern int sysctl_icmp_ratemask;
|
||||
|
||||
#endif /* _ICMP_H */
|
||||
|
|
|
@ -163,6 +163,24 @@ extern int sysctl_local_port_range[2];
|
|||
extern int sysctl_ip_default_ttl;
|
||||
extern int sysctl_ip_nonlocal_bind;
|
||||
|
||||
/* From ip_fragment.c */
|
||||
extern int sysctl_ipfrag_high_thresh;
|
||||
extern int sysctl_ipfrag_low_thresh;
|
||||
extern int sysctl_ipfrag_time;
|
||||
extern int sysctl_ipfrag_secret_interval;
|
||||
|
||||
/* From inetpeer.c */
|
||||
extern int inet_peer_threshold;
|
||||
extern int inet_peer_minttl;
|
||||
extern int inet_peer_maxttl;
|
||||
extern int inet_peer_gc_mintime;
|
||||
extern int inet_peer_gc_maxtime;
|
||||
|
||||
/* From ip_output.c */
|
||||
extern int sysctl_ip_dynaddr;
|
||||
|
||||
extern void ipfrag_init(void);
|
||||
|
||||
#ifdef CONFIG_INET
|
||||
/* The function in 2.2 was invalid, producing wrong result for
|
||||
* check=0xFEFF. It was noticed by Arthur Skawina _year_ ago. --ANK(000625) */
|
||||
|
@ -348,5 +366,10 @@ int ipv4_doint_and_flush_strategy(ctl_table *table, int __user *name, int nlen,
|
|||
void __user *oldval, size_t __user *oldlenp,
|
||||
void __user *newval, size_t newlen,
|
||||
void **context);
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int ip_misc_proc_init(void);
|
||||
#endif
|
||||
|
||||
extern struct ctl_table ipv4_table[];
|
||||
|
||||
#endif /* _IP_H */
|
||||
|
|
|
@ -295,4 +295,9 @@ static inline void fib_res_put(struct fib_result *res)
|
|||
#endif
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int fib_proc_init(void);
|
||||
extern void fib_proc_exit(void);
|
||||
#endif
|
||||
|
||||
#endif /* _NET_FIB_H */
|
||||
|
|
|
@ -104,6 +104,7 @@ struct frag_hdr {
|
|||
|
||||
#ifdef __KERNEL__
|
||||
|
||||
#include <linux/config.h>
|
||||
#include <net/sock.h>
|
||||
|
||||
/* sysctls */
|
||||
|
@ -464,8 +465,38 @@ extern int sysctl_ip6frag_low_thresh;
|
|||
extern int sysctl_ip6frag_time;
|
||||
extern int sysctl_ip6frag_secret_interval;
|
||||
|
||||
extern struct proto_ops inet6_stream_ops;
|
||||
extern struct proto_ops inet6_dgram_ops;
|
||||
|
||||
extern int ip6_mc_source(int add, int omode, struct sock *sk,
|
||||
struct group_source_req *pgsr);
|
||||
extern int ip6_mc_msfilter(struct sock *sk, struct group_filter *gsf);
|
||||
extern int ip6_mc_msfget(struct sock *sk, struct group_filter *gsf,
|
||||
struct group_filter __user *optval,
|
||||
int __user *optlen);
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int ac6_proc_init(void);
|
||||
extern void ac6_proc_exit(void);
|
||||
extern int raw6_proc_init(void);
|
||||
extern void raw6_proc_exit(void);
|
||||
extern int tcp6_proc_init(void);
|
||||
extern void tcp6_proc_exit(void);
|
||||
extern int udp6_proc_init(void);
|
||||
extern void udp6_proc_exit(void);
|
||||
extern int ipv6_misc_proc_init(void);
|
||||
extern void ipv6_misc_proc_exit(void);
|
||||
|
||||
extern struct rt6_statistics rt6_stats;
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
extern ctl_table ipv6_route_table[];
|
||||
extern ctl_table ipv6_icmp_table[];
|
||||
|
||||
extern void ipv6_sysctl_register(void);
|
||||
extern void ipv6_sysctl_unregister(void);
|
||||
#endif
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _NET_IPV6_H */
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -8,4 +8,6 @@ extern struct datalink_proto *
|
|||
struct net_device *orig_dev));
|
||||
extern void unregister_8022_client(struct datalink_proto *proto);
|
||||
|
||||
extern struct datalink_proto *make_8023_client(void);
|
||||
extern void destroy_8023_client(struct datalink_proto *dl);
|
||||
#endif
|
||||
|
|
|
@ -17,10 +17,10 @@
|
|||
#ifndef _RAW_H
|
||||
#define _RAW_H
|
||||
|
||||
#include <linux/config.h>
|
||||
|
||||
extern struct proto raw_prot;
|
||||
|
||||
|
||||
extern void raw_err(struct sock *, struct sk_buff *, u32 info);
|
||||
extern int raw_rcv(struct sock *, struct sk_buff *);
|
||||
|
||||
|
@ -39,4 +39,9 @@ extern struct sock *__raw_v4_lookup(struct sock *sk, unsigned short num,
|
|||
|
||||
extern int raw_v4_input(struct sk_buff *skb, struct iphdr *iph, int hash);
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int raw_proc_init(void);
|
||||
extern void raw_proc_exit(void);
|
||||
#endif
|
||||
|
||||
#endif /* _RAW_H */
|
||||
|
|
|
@ -195,4 +195,6 @@ static inline struct inet_peer *rt_get_peer(struct rtable *rt)
|
|||
return rt->peer;
|
||||
}
|
||||
|
||||
extern ctl_table ipv4_route_table[];
|
||||
|
||||
#endif /* _ROUTE_H */
|
||||
|
|
|
@ -1370,4 +1370,16 @@ static inline int siocdevprivate_ioctl(unsigned int fd, unsigned int cmd, unsign
|
|||
}
|
||||
#endif
|
||||
|
||||
extern void sk_init(void);
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
extern struct ctl_table core_table[];
|
||||
extern int sysctl_optmem_max;
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern __u32 sysctl_wmem_default;
|
||||
extern __u32 sysctl_rmem_default;
|
||||
#endif
|
||||
|
||||
#endif /* _SOCK_H */
|
||||
|
|
|
@ -1183,4 +1183,16 @@ struct tcp_iter_state {
|
|||
extern int tcp_proc_register(struct tcp_seq_afinfo *afinfo);
|
||||
extern void tcp_proc_unregister(struct tcp_seq_afinfo *afinfo);
|
||||
|
||||
extern struct request_sock_ops tcp_request_sock_ops;
|
||||
|
||||
extern int tcp_v4_destroy_sock(struct sock *sk);
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int tcp4_proc_init(void);
|
||||
extern void tcp4_proc_exit(void);
|
||||
#endif
|
||||
|
||||
extern void tcp_v4_init(struct net_proto_family *ops);
|
||||
extern void tcp_init(void);
|
||||
|
||||
#endif /* _TCP_H */
|
||||
|
|
|
@ -94,6 +94,11 @@ struct udp_iter_state {
|
|||
struct seq_operations seq_ops;
|
||||
};
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int udp_proc_register(struct udp_seq_afinfo *afinfo);
|
||||
extern void udp_proc_unregister(struct udp_seq_afinfo *afinfo);
|
||||
|
||||
extern int udp4_proc_init(void);
|
||||
extern void udp4_proc_exit(void);
|
||||
#endif
|
||||
#endif /* _UDP_H */
|
||||
|
|
|
@ -47,6 +47,7 @@
|
|||
#include <linux/rmap.h>
|
||||
#include <linux/mempolicy.h>
|
||||
#include <linux/key.h>
|
||||
#include <net/sock.h>
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <asm/bugs.h>
|
||||
|
@ -80,7 +81,6 @@
|
|||
static int init(void *);
|
||||
|
||||
extern void init_IRQ(void);
|
||||
extern void sock_init(void);
|
||||
extern void fork_init(unsigned long);
|
||||
extern void mca_init(void);
|
||||
extern void sbus_init(void);
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
#include <linux/smp_lock.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/net.h>
|
||||
#include <linux/sysrq.h>
|
||||
#include <linux/highuid.h>
|
||||
#include <linux/writeback.h>
|
||||
|
@ -136,9 +137,6 @@ static struct ctl_table_header root_table_header =
|
|||
|
||||
static ctl_table kern_table[];
|
||||
static ctl_table vm_table[];
|
||||
#ifdef CONFIG_NET
|
||||
extern ctl_table net_table[];
|
||||
#endif
|
||||
static ctl_table proc_table[];
|
||||
static ctl_table fs_table[];
|
||||
static ctl_table debug_table[];
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include <linux/skbuff.h>
|
||||
|
||||
#include <net/datalink.h>
|
||||
#include <net/p8022.h>
|
||||
|
||||
/*
|
||||
* Place an 802.3 header on a packet. The driver will do the mac
|
||||
|
|
|
@ -10,9 +10,10 @@
|
|||
* 2 of the License, or (at your option) any later version.
|
||||
*/
|
||||
|
||||
#include <linux/mm.h>
|
||||
#include <linux/sysctl.h>
|
||||
#include <linux/config.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/if_tr.h>
|
||||
#include <linux/sysctl.h>
|
||||
|
||||
#ifdef CONFIG_TR
|
||||
extern int sysctl_tr_rif_timeout;
|
||||
|
|
|
@ -267,10 +267,6 @@ void dev_add_pack(struct packet_type *pt)
|
|||
spin_unlock_bh(&ptype_lock);
|
||||
}
|
||||
|
||||
extern void linkwatch_run_queue(void);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* __dev_remove_pack - remove packet handler
|
||||
* @pt: packet type declaration
|
||||
|
@ -1133,8 +1129,6 @@ static inline int illegal_highdma(struct net_device *dev, struct sk_buff *skb)
|
|||
#define illegal_highdma(dev, skb) (0)
|
||||
#endif
|
||||
|
||||
extern void skb_release_data(struct sk_buff *);
|
||||
|
||||
/* Keep head the same: replace data */
|
||||
int __skb_linearize(struct sk_buff *skb, unsigned int __nocast gfp_mask)
|
||||
{
|
||||
|
|
|
@ -9,23 +9,18 @@
|
|||
#include <linux/sysctl.h>
|
||||
#include <linux/config.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/socket.h>
|
||||
#include <net/sock.h>
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
|
||||
extern int netdev_max_backlog;
|
||||
extern int netdev_budget;
|
||||
extern int weight_p;
|
||||
extern int net_msg_cost;
|
||||
extern int net_msg_burst;
|
||||
|
||||
extern __u32 sysctl_wmem_max;
|
||||
extern __u32 sysctl_rmem_max;
|
||||
extern __u32 sysctl_wmem_default;
|
||||
extern __u32 sysctl_rmem_default;
|
||||
|
||||
extern int sysctl_core_destroy_delay;
|
||||
extern int sysctl_optmem_max;
|
||||
extern int sysctl_somaxconn;
|
||||
|
||||
#ifdef CONFIG_NET_DIVERT
|
||||
extern char sysctl_divert_version[];
|
||||
|
|
|
@ -16,7 +16,9 @@
|
|||
#include <linux/module.h>
|
||||
#include <linux/jiffies.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/inet.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/net.h>
|
||||
#include <linux/string.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/random.h>
|
||||
|
|
|
@ -571,10 +571,6 @@ static int wireless_seq_show(struct seq_file *seq, void *v)
|
|||
return 0;
|
||||
}
|
||||
|
||||
extern void *dev_seq_start(struct seq_file *seq, loff_t *pos);
|
||||
extern void *dev_seq_next(struct seq_file *seq, void *v, loff_t *pos);
|
||||
extern void dev_seq_stop(struct seq_file *seq, void *v);
|
||||
|
||||
static struct seq_operations wireless_seq_ops = {
|
||||
.start = dev_seq_start,
|
||||
.next = dev_seq_next,
|
||||
|
|
|
@ -62,8 +62,6 @@
|
|||
#include <asm/system.h>
|
||||
#include <asm/checksum.h>
|
||||
|
||||
extern int __init netdev_boot_setup(char *str);
|
||||
|
||||
__setup("ether=", netdev_boot_setup);
|
||||
|
||||
/*
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
|
||||
#include <linux/mm.h>
|
||||
#include <linux/sysctl.h>
|
||||
#include <linux/if_ether.h>
|
||||
|
||||
ctl_table ether_table[] = {
|
||||
{0}
|
||||
|
|
|
@ -859,10 +859,6 @@ static struct net_proto_family inet_family_ops = {
|
|||
.owner = THIS_MODULE,
|
||||
};
|
||||
|
||||
|
||||
extern void tcp_init(void);
|
||||
extern void tcp_v4_init(struct net_proto_family *);
|
||||
|
||||
/* Upon startup we insert all the elements in inetsw_array[] into
|
||||
* the linked list inetsw.
|
||||
*/
|
||||
|
@ -1132,7 +1128,6 @@ static int __init init_ipv4_mibs(void)
|
|||
}
|
||||
|
||||
static int ipv4_proc_init(void);
|
||||
extern void ipfrag_init(void);
|
||||
|
||||
/*
|
||||
* IP protocol layer initialiser
|
||||
|
@ -1253,19 +1248,10 @@ module_init(inet_init);
|
|||
/* ------------------------------------------------------------------------ */
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int fib_proc_init(void);
|
||||
extern void fib_proc_exit(void);
|
||||
#ifdef CONFIG_IP_FIB_TRIE
|
||||
extern int fib_stat_proc_init(void);
|
||||
extern void fib_stat_proc_exit(void);
|
||||
#endif
|
||||
extern int ip_misc_proc_init(void);
|
||||
extern int raw_proc_init(void);
|
||||
extern void raw_proc_exit(void);
|
||||
extern int tcp4_proc_init(void);
|
||||
extern void tcp4_proc_exit(void);
|
||||
extern int udp4_proc_init(void);
|
||||
extern void udp4_proc_exit(void);
|
||||
|
||||
static int __init ipv4_proc_init(void)
|
||||
{
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
#include <linux/module.h>
|
||||
#include <linux/ip.h>
|
||||
#include <linux/in.h>
|
||||
#include <net/ip.h>
|
||||
#include <net/sock.h>
|
||||
#include <net/route.h>
|
||||
#include <net/tcp_states.h>
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include <linux/kernel.h>
|
||||
#include <linux/mm.h>
|
||||
#include <linux/net.h>
|
||||
#include <net/ip.h>
|
||||
#include <net/inetpeer.h>
|
||||
|
||||
/*
|
||||
|
|
|
@ -614,7 +614,6 @@ int ip_setsockopt(struct sock *sk, int level, int optname, char __user *optval,
|
|||
}
|
||||
case IP_MSFILTER:
|
||||
{
|
||||
extern int sysctl_optmem_max;
|
||||
extern int sysctl_igmp_max_msf;
|
||||
struct ip_msfilter *msf;
|
||||
|
||||
|
@ -769,7 +768,6 @@ int ip_setsockopt(struct sock *sk, int level, int optname, char __user *optval,
|
|||
}
|
||||
case MCAST_MSFILTER:
|
||||
{
|
||||
extern int sysctl_optmem_max;
|
||||
extern int sysctl_igmp_max_msf;
|
||||
struct sockaddr_in *psin;
|
||||
struct ip_msfilter *msf = NULL;
|
||||
|
|
|
@ -59,9 +59,6 @@ static int fold_prot_inuse(struct proto *proto)
|
|||
*/
|
||||
static int sockstat_seq_show(struct seq_file *seq, void *v)
|
||||
{
|
||||
/* From net/socket.c */
|
||||
extern void socket_seq_show(struct seq_file *seq);
|
||||
|
||||
socket_seq_show(seq);
|
||||
seq_printf(seq, "TCP: inuse %d orphan %d tw %d alloc %d mem %d\n",
|
||||
fold_prot_inuse(&tcp_prot), atomic_read(&tcp_orphan_count),
|
||||
|
|
|
@ -169,8 +169,6 @@ static inline int cookie_check(struct sk_buff *skb, __u32 cookie)
|
|||
return mssind < NUM_MSS ? msstab[mssind] + 1 : 0;
|
||||
}
|
||||
|
||||
extern struct request_sock_ops tcp_request_sock_ops;
|
||||
|
||||
static inline struct sock *get_cookie_sock(struct sock *sk, struct sk_buff *skb,
|
||||
struct request_sock *req,
|
||||
struct dst_entry *dst)
|
||||
|
|
|
@ -11,7 +11,9 @@
|
|||
#include <linux/module.h>
|
||||
#include <linux/sysctl.h>
|
||||
#include <linux/config.h>
|
||||
#include <linux/igmp.h>
|
||||
#include <net/snmp.h>
|
||||
#include <net/icmp.h>
|
||||
#include <net/ip.h>
|
||||
#include <net/route.h>
|
||||
#include <net/tcp.h>
|
||||
|
@ -19,36 +21,6 @@
|
|||
/* From af_inet.c */
|
||||
extern int sysctl_ip_nonlocal_bind;
|
||||
|
||||
/* From icmp.c */
|
||||
extern int sysctl_icmp_echo_ignore_all;
|
||||
extern int sysctl_icmp_echo_ignore_broadcasts;
|
||||
extern int sysctl_icmp_ignore_bogus_error_responses;
|
||||
extern int sysctl_icmp_errors_use_inbound_ifaddr;
|
||||
|
||||
/* From ip_fragment.c */
|
||||
extern int sysctl_ipfrag_low_thresh;
|
||||
extern int sysctl_ipfrag_high_thresh;
|
||||
extern int sysctl_ipfrag_time;
|
||||
extern int sysctl_ipfrag_secret_interval;
|
||||
|
||||
/* From ip_output.c */
|
||||
extern int sysctl_ip_dynaddr;
|
||||
|
||||
/* From icmp.c */
|
||||
extern int sysctl_icmp_ratelimit;
|
||||
extern int sysctl_icmp_ratemask;
|
||||
|
||||
/* From igmp.c */
|
||||
extern int sysctl_igmp_max_memberships;
|
||||
extern int sysctl_igmp_max_msf;
|
||||
|
||||
/* From inetpeer.c */
|
||||
extern int inet_peer_threshold;
|
||||
extern int inet_peer_minttl;
|
||||
extern int inet_peer_maxttl;
|
||||
extern int inet_peer_gc_mintime;
|
||||
extern int inet_peer_gc_maxtime;
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
static int tcp_retr1_max = 255;
|
||||
static int ip_local_port_range_min[] = { 1, 1 };
|
||||
|
@ -57,8 +29,6 @@ static int ip_local_port_range_max[] = { 65535, 65535 };
|
|||
|
||||
struct ipv4_config ipv4_config;
|
||||
|
||||
extern ctl_table ipv4_route_table[];
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
|
||||
static
|
||||
|
@ -136,10 +106,11 @@ static int proc_tcp_congestion_control(ctl_table *ctl, int write, struct file *
|
|||
return ret;
|
||||
}
|
||||
|
||||
int sysctl_tcp_congestion_control(ctl_table *table, int __user *name, int nlen,
|
||||
void __user *oldval, size_t __user *oldlenp,
|
||||
void __user *newval, size_t newlen,
|
||||
void **context)
|
||||
static int sysctl_tcp_congestion_control(ctl_table *table, int __user *name,
|
||||
int nlen, void __user *oldval,
|
||||
size_t __user *oldlenp,
|
||||
void __user *newval, size_t newlen,
|
||||
void **context)
|
||||
{
|
||||
char val[TCP_CA_NAME_MAX];
|
||||
ctl_table tbl = {
|
||||
|
|
|
@ -4229,7 +4229,7 @@ int tcp_rcv_state_process(struct sock *sk, struct sk_buff *skb,
|
|||
*/
|
||||
if (tp->rx_opt.saw_tstamp && tp->rx_opt.rcv_tsecr &&
|
||||
!tp->srtt)
|
||||
tcp_ack_saw_tstamp(sk, 0, 0);
|
||||
tcp_ack_saw_tstamp(sk, NULL, 0);
|
||||
|
||||
if (tp->rx_opt.tstamp_ok)
|
||||
tp->advmss -= TCPOLEN_TSTAMP_ALIGNED;
|
||||
|
|
|
@ -66,6 +66,7 @@
|
|||
#include <net/icmp.h>
|
||||
#include <net/inet_hashtables.h>
|
||||
#include <net/tcp.h>
|
||||
#include <net/transp_v6.h>
|
||||
#include <net/ipv6.h>
|
||||
#include <net/inet_common.h>
|
||||
#include <net/xfrm.h>
|
||||
|
@ -76,7 +77,6 @@
|
|||
#include <linux/proc_fs.h>
|
||||
#include <linux/seq_file.h>
|
||||
|
||||
extern int sysctl_ip_dynaddr;
|
||||
int sysctl_tcp_tw_reuse;
|
||||
int sysctl_tcp_low_latency;
|
||||
|
||||
|
|
|
@ -1126,7 +1126,7 @@ void addrconf_leave_solict(struct inet6_dev *idev, struct in6_addr *addr)
|
|||
__ipv6_dev_mc_dec(idev, &maddr);
|
||||
}
|
||||
|
||||
void addrconf_join_anycast(struct inet6_ifaddr *ifp)
|
||||
static void addrconf_join_anycast(struct inet6_ifaddr *ifp)
|
||||
{
|
||||
struct in6_addr addr;
|
||||
ipv6_addr_prefix(&addr, &ifp->addr, ifp->prefix_len);
|
||||
|
@ -1135,7 +1135,7 @@ void addrconf_join_anycast(struct inet6_ifaddr *ifp)
|
|||
ipv6_dev_ac_inc(ifp->idev->dev, &addr);
|
||||
}
|
||||
|
||||
void addrconf_leave_anycast(struct inet6_ifaddr *ifp)
|
||||
static void addrconf_leave_anycast(struct inet6_ifaddr *ifp)
|
||||
{
|
||||
struct in6_addr addr;
|
||||
ipv6_addr_prefix(&addr, &ifp->addr, ifp->prefix_len);
|
||||
|
|
|
@ -67,23 +67,6 @@ MODULE_AUTHOR("Cast of dozens");
|
|||
MODULE_DESCRIPTION("IPv6 protocol stack for Linux");
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
/* IPv6 procfs goodies... */
|
||||
|
||||
#ifdef CONFIG_PROC_FS
|
||||
extern int raw6_proc_init(void);
|
||||
extern void raw6_proc_exit(void);
|
||||
extern int tcp6_proc_init(void);
|
||||
extern void tcp6_proc_exit(void);
|
||||
extern int udp6_proc_init(void);
|
||||
extern void udp6_proc_exit(void);
|
||||
extern int ipv6_misc_proc_init(void);
|
||||
extern void ipv6_misc_proc_exit(void);
|
||||
extern int ac6_proc_init(void);
|
||||
extern void ac6_proc_exit(void);
|
||||
extern int if6_proc_init(void);
|
||||
extern void if6_proc_exit(void);
|
||||
#endif
|
||||
|
||||
int sysctl_ipv6_bindv6only;
|
||||
|
||||
/* The inetsw table contains everything that inet_create needs to
|
||||
|
@ -505,11 +488,6 @@ static struct net_proto_family inet6_family_ops = {
|
|||
.owner = THIS_MODULE,
|
||||
};
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
extern void ipv6_sysctl_register(void);
|
||||
extern void ipv6_sysctl_unregister(void);
|
||||
#endif
|
||||
|
||||
/* Same as inet6_dgram_ops, sans udp_poll. */
|
||||
static struct proto_ops inet6_sockraw_ops = {
|
||||
.family = PF_INET6,
|
||||
|
@ -676,8 +654,6 @@ static void cleanup_ipv6_mibs(void)
|
|||
snmp6_mib_free((void **)udp_stats_in6);
|
||||
}
|
||||
|
||||
extern int ipv6_misc_proc_init(void);
|
||||
|
||||
static int __init inet6_init(void)
|
||||
{
|
||||
struct sk_buff *dummy_skb;
|
||||
|
|
|
@ -109,13 +109,6 @@ int ip6_ra_control(struct sock *sk, int sel, void (*destructor)(struct sock *))
|
|||
return 0;
|
||||
}
|
||||
|
||||
extern int ip6_mc_source(int add, int omode, struct sock *sk,
|
||||
struct group_source_req *pgsr);
|
||||
extern int ip6_mc_msfilter(struct sock *sk, struct group_filter *gsf);
|
||||
extern int ip6_mc_msfget(struct sock *sk, struct group_filter *gsf,
|
||||
struct group_filter __user *optval, int __user *optlen);
|
||||
|
||||
|
||||
int ipv6_setsockopt(struct sock *sk, int level, int optname,
|
||||
char __user *optval, int optlen)
|
||||
{
|
||||
|
@ -446,7 +439,6 @@ done:
|
|||
}
|
||||
case MCAST_MSFILTER:
|
||||
{
|
||||
extern int sysctl_optmem_max;
|
||||
extern int sysctl_mld_max_msf;
|
||||
struct group_filter *gsf;
|
||||
|
||||
|
|
|
@ -1372,7 +1372,7 @@ int ipv6_route_ioctl(unsigned int cmd, void __user *arg)
|
|||
* Drop the packet on the floor
|
||||
*/
|
||||
|
||||
int ip6_pkt_discard(struct sk_buff *skb)
|
||||
static int ip6_pkt_discard(struct sk_buff *skb)
|
||||
{
|
||||
IP6_INC_STATS(IPSTATS_MIB_OUTNOROUTES);
|
||||
icmpv6_send(skb, ICMPV6_DEST_UNREACH, ICMPV6_NOROUTE, 0, skb->dev);
|
||||
|
@ -1380,7 +1380,7 @@ int ip6_pkt_discard(struct sk_buff *skb)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int ip6_pkt_discard_out(struct sk_buff *skb)
|
||||
static int ip6_pkt_discard_out(struct sk_buff *skb)
|
||||
{
|
||||
skb->dev = skb->dst->dev;
|
||||
return ip6_pkt_discard(skb);
|
||||
|
@ -1960,8 +1960,6 @@ static int rt6_proc_info(char *buffer, char **start, off_t offset, int length)
|
|||
return arg.len;
|
||||
}
|
||||
|
||||
extern struct rt6_statistics rt6_stats;
|
||||
|
||||
static int rt6_stats_seq_show(struct seq_file *seq, void *v)
|
||||
{
|
||||
seq_printf(seq, "%04x %04x %04x %04x %04x %04x %04x\n",
|
||||
|
|
|
@ -770,7 +770,7 @@ static int ipip6_tunnel_init(struct net_device *dev)
|
|||
return 0;
|
||||
}
|
||||
|
||||
int __init ipip6_fb_tunnel_init(struct net_device *dev)
|
||||
static int __init ipip6_fb_tunnel_init(struct net_device *dev)
|
||||
{
|
||||
struct ip_tunnel *tunnel = dev->priv;
|
||||
struct iphdr *iph = &tunnel->parms.iph;
|
||||
|
|
|
@ -14,9 +14,6 @@
|
|||
#include <net/ipv6.h>
|
||||
#include <net/addrconf.h>
|
||||
|
||||
extern ctl_table ipv6_route_table[];
|
||||
extern ctl_table ipv6_icmp_table[];
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
|
||||
static ctl_table ipv6_table[] = {
|
||||
|
|
|
@ -1910,8 +1910,6 @@ static int tcp_v6_init_sock(struct sock *sk)
|
|||
|
||||
static int tcp_v6_destroy_sock(struct sock *sk)
|
||||
{
|
||||
extern int tcp_v4_destroy_sock(struct sock *sk);
|
||||
|
||||
tcp_v4_destroy_sock(sk);
|
||||
return inet6_destroy_sock(sk);
|
||||
}
|
||||
|
@ -2123,8 +2121,6 @@ static struct inet6_protocol tcpv6_protocol = {
|
|||
.flags = INET6_PROTO_NOPOLICY|INET6_PROTO_FINAL,
|
||||
};
|
||||
|
||||
extern struct proto_ops inet6_stream_ops;
|
||||
|
||||
static struct inet_protosw tcpv6_protosw = {
|
||||
.type = SOCK_STREAM,
|
||||
.protocol = IPPROTO_TCP,
|
||||
|
|
|
@ -1054,8 +1054,6 @@ struct proto udpv6_prot = {
|
|||
.obj_size = sizeof(struct udp6_sock),
|
||||
};
|
||||
|
||||
extern struct proto_ops inet6_dgram_ops;
|
||||
|
||||
static struct inet_protosw udpv6_protosw = {
|
||||
.type = SOCK_DGRAM,
|
||||
.protocol = IPPROTO_UDP,
|
||||
|
|
|
@ -1940,9 +1940,7 @@ static struct notifier_block ipx_dev_notifier = {
|
|||
};
|
||||
|
||||
extern struct datalink_proto *make_EII_client(void);
|
||||
extern struct datalink_proto *make_8023_client(void);
|
||||
extern void destroy_EII_client(struct datalink_proto *);
|
||||
extern void destroy_8023_client(struct datalink_proto *);
|
||||
|
||||
static unsigned char ipx_8022_type = 0xE0;
|
||||
static unsigned char ipx_snap_id[5] = { 0x0, 0x0, 0x0, 0x81, 0x37 };
|
||||
|
|
11
net/socket.c
11
net/socket.c
|
@ -70,6 +70,8 @@
|
|||
#include <linux/seq_file.h>
|
||||
#include <linux/wanrouter.h>
|
||||
#include <linux/if_bridge.h>
|
||||
#include <linux/if_frad.h>
|
||||
#include <linux/if_vlan.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/poll.h>
|
||||
#include <linux/cache.h>
|
||||
|
@ -724,8 +726,8 @@ static ssize_t sock_aio_write(struct kiocb *iocb, const char __user *ubuf,
|
|||
return __sock_sendmsg(iocb, sock, &x->async_msg, size);
|
||||
}
|
||||
|
||||
ssize_t sock_sendpage(struct file *file, struct page *page,
|
||||
int offset, size_t size, loff_t *ppos, int more)
|
||||
static ssize_t sock_sendpage(struct file *file, struct page *page,
|
||||
int offset, size_t size, loff_t *ppos, int more)
|
||||
{
|
||||
struct socket *sock;
|
||||
int flags;
|
||||
|
@ -948,7 +950,7 @@ static int sock_mmap(struct file * file, struct vm_area_struct * vma)
|
|||
return sock->ops->mmap(file, sock, vma);
|
||||
}
|
||||
|
||||
int sock_close(struct inode *inode, struct file *filp)
|
||||
static int sock_close(struct inode *inode, struct file *filp)
|
||||
{
|
||||
/*
|
||||
* It was possible the inode is NULL we were
|
||||
|
@ -2027,9 +2029,6 @@ int sock_unregister(int family)
|
|||
return 0;
|
||||
}
|
||||
|
||||
|
||||
extern void sk_init(void);
|
||||
|
||||
void __init sock_init(void)
|
||||
{
|
||||
/*
|
||||
|
|
|
@ -17,17 +17,15 @@
|
|||
#include <linux/sysctl.h>
|
||||
|
||||
#ifdef CONFIG_INET
|
||||
extern struct ctl_table ipv4_table[];
|
||||
#include <net/ip.h>
|
||||
#endif
|
||||
|
||||
extern struct ctl_table core_table[];
|
||||
|
||||
#ifdef CONFIG_NET
|
||||
extern struct ctl_table ether_table[];
|
||||
#include <linux/if_ether.h>
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_TR
|
||||
extern struct ctl_table tr_table[];
|
||||
#include <linux/if_tr.h>
|
||||
#endif
|
||||
|
||||
struct ctl_table net_table[] = {
|
||||
|
|
|
@ -2026,14 +2026,6 @@ static struct net_proto_family unix_family_ops = {
|
|||
.owner = THIS_MODULE,
|
||||
};
|
||||
|
||||
#ifdef CONFIG_SYSCTL
|
||||
extern void unix_sysctl_register(void);
|
||||
extern void unix_sysctl_unregister(void);
|
||||
#else
|
||||
static inline void unix_sysctl_register(void) {}
|
||||
static inline void unix_sysctl_unregister(void) {}
|
||||
#endif
|
||||
|
||||
static int __init af_unix_init(void)
|
||||
{
|
||||
int rc = -1;
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
#include <linux/mm.h>
|
||||
#include <linux/sysctl.h>
|
||||
|
||||
extern int sysctl_unix_max_dgram_qlen;
|
||||
#include <net/af_unix.h>
|
||||
|
||||
static ctl_table unix_table[] = {
|
||||
{
|
||||
|
|
Загрузка…
Ссылка в новой задаче