X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fnet%2Fipv6.h;h=a3f44754ac08129d6f7aae209e3dc5f3c9e9bbd4;hb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;hp=b647b048bbbf3d76fbd74b506e25184349c326e4;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/include/net/ipv6.h b/include/net/ipv6.h index b647b048b..a3f44754a 100644 --- a/include/net/ipv6.h +++ b/include/net/ipv6.h @@ -16,7 +16,7 @@ #define _NET_IPV6_H #include -#include +#include #include #include #include @@ -111,7 +111,7 @@ extern int sysctl_ipv6_bindv6only; extern int sysctl_mld_max_msf; /* MIBs */ -DECLARE_SNMP_STAT(struct ipv6_mib, ipv6_statistics); +DECLARE_SNMP_STAT(struct ipstats_mib, ipv6_statistics); #define IP6_INC_STATS(field) SNMP_INC_STATS(ipv6_statistics, field) #define IP6_INC_STATS_BH(field) SNMP_INC_STATS_BH(ipv6_statistics, field) #define IP6_INC_STATS_USER(field) SNMP_INC_STATS_USER(ipv6_statistics, field) @@ -215,7 +215,7 @@ extern struct ipv6_txoptions *fl6_merge_options(struct ipv6_txoptions * opt_spac struct ip6_flowlabel * fl, struct ipv6_txoptions * fopt); extern void fl6_free_socklist(struct sock *sk); -extern int ipv6_flowlabel_opt(struct sock *sk, char *optval, int optlen); +extern int ipv6_flowlabel_opt(struct sock *sk, char __user *optval, int optlen); extern void ip6_flowlabel_init(void); extern void ip6_flowlabel_cleanup(void); @@ -355,8 +355,7 @@ extern int ip6_dst_lookup(struct sock *sk, * skb processing functions */ -extern int ip6_output(struct sk_buff *skb); -extern int ip6_output2(struct sk_buff *skb); +extern int ip6_output(struct sk_buff **pskb); extern int ip6_forward(struct sk_buff *skb); extern int ip6_input(struct sk_buff *skb); extern int ip6_mc_input(struct sk_buff *skb); @@ -395,16 +394,21 @@ extern struct ipv6_txoptions * ipv6_invert_rthdr(struct sock *sk, */ extern int ipv6_setsockopt(struct sock *sk, int level, - int optname, char *optval, + int optname, + char __user *optval, int optlen); extern int ipv6_getsockopt(struct sock *sk, int level, - int optname, char *optval, - int *optlen); + int optname, + char __user *optval, + int __user *optlen); extern void ipv6_packet_init(void); extern void ipv6_packet_cleanup(void); +extern int ip6_datagram_connect(struct sock *sk, + struct sockaddr *addr, int addr_len); + extern int ipv6_recv_error(struct sock *sk, struct msghdr *msg, int len); extern void ipv6_icmp_error(struct sock *sk, struct sk_buff *skb, int err, u16 port, u32 info, u8 *payload);