diff options
Diffstat (limited to 'include/net/ipv6.h')
| -rw-r--r-- | include/net/ipv6.h | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/include/net/ipv6.h b/include/net/ipv6.h index 31b3f1b45a2b..cc796cbc1b26 100644 --- a/include/net/ipv6.h +++ b/include/net/ipv6.h | |||
| @@ -120,12 +120,21 @@ extern int sysctl_mld_max_msf; | |||
| 120 | SNMP_INC_STATS##modifier(statname##_statistics, (field)); \ | 120 | SNMP_INC_STATS##modifier(statname##_statistics, (field)); \ |
| 121 | }) | 121 | }) |
| 122 | 122 | ||
| 123 | #define _DEVADD(statname, modifier, idev, field, val) \ | ||
| 124 | ({ \ | ||
| 125 | struct inet6_dev *_idev = (idev); \ | ||
| 126 | if (likely(_idev != NULL)) \ | ||
| 127 | SNMP_ADD_STATS##modifier((_idev)->stats.statname, (field), (val)); \ | ||
| 128 | SNMP_ADD_STATS##modifier(statname##_statistics, (field), (val));\ | ||
| 129 | }) | ||
| 130 | |||
| 123 | /* MIBs */ | 131 | /* MIBs */ |
| 124 | DECLARE_SNMP_STAT(struct ipstats_mib, ipv6_statistics); | 132 | DECLARE_SNMP_STAT(struct ipstats_mib, ipv6_statistics); |
| 125 | 133 | ||
| 126 | #define IP6_INC_STATS(idev,field) _DEVINC(ipv6, , idev, field) | 134 | #define IP6_INC_STATS(idev,field) _DEVINC(ipv6, , idev, field) |
| 127 | #define IP6_INC_STATS_BH(idev,field) _DEVINC(ipv6, _BH, idev, field) | 135 | #define IP6_INC_STATS_BH(idev,field) _DEVINC(ipv6, _BH, idev, field) |
| 128 | #define IP6_INC_STATS_USER(idev,field) _DEVINC(ipv6, _USER, idev, field) | 136 | #define IP6_INC_STATS_USER(idev,field) _DEVINC(ipv6, _USER, idev, field) |
| 137 | #define IP6_ADD_STATS_BH(idev,field,val) _DEVADD(ipv6, _BH, idev, field, val) | ||
| 129 | 138 | ||
| 130 | DECLARE_SNMP_STAT(struct icmpv6_mib, icmpv6_statistics); | 139 | DECLARE_SNMP_STAT(struct icmpv6_mib, icmpv6_statistics); |
| 131 | DECLARE_SNMP_STAT(struct icmpv6msg_mib, icmpv6msg_statistics); | 140 | DECLARE_SNMP_STAT(struct icmpv6msg_mib, icmpv6msg_statistics); |
| @@ -240,7 +249,7 @@ extern int ip6_ra_control(struct sock *sk, int sel, | |||
| 240 | void (*destructor)(struct sock *)); | 249 | void (*destructor)(struct sock *)); |
| 241 | 250 | ||
| 242 | 251 | ||
| 243 | extern int ipv6_parse_hopopts(struct sk_buff **skbp); | 252 | extern int ipv6_parse_hopopts(struct sk_buff *skb); |
| 244 | 253 | ||
| 245 | extern struct ipv6_txoptions * ipv6_dup_options(struct sock *sk, struct ipv6_txoptions *opt); | 254 | extern struct ipv6_txoptions * ipv6_dup_options(struct sock *sk, struct ipv6_txoptions *opt); |
| 246 | extern struct ipv6_txoptions * ipv6_renew_options(struct sock *sk, struct ipv6_txoptions *opt, | 255 | extern struct ipv6_txoptions * ipv6_renew_options(struct sock *sk, struct ipv6_txoptions *opt, |
| @@ -252,8 +261,8 @@ struct ipv6_txoptions *ipv6_fixup_options(struct ipv6_txoptions *opt_space, | |||
| 252 | 261 | ||
| 253 | extern int ipv6_opt_accepted(struct sock *sk, struct sk_buff *skb); | 262 | extern int ipv6_opt_accepted(struct sock *sk, struct sk_buff *skb); |
| 254 | 263 | ||
| 255 | extern int ip6_frag_nqueues; | 264 | int ip6_frag_nqueues(void); |
| 256 | extern atomic_t ip6_frag_mem; | 265 | int ip6_frag_mem(void); |
| 257 | 266 | ||
| 258 | #define IPV6_FRAG_TIMEOUT (60*HZ) /* 60 seconds */ | 267 | #define IPV6_FRAG_TIMEOUT (60*HZ) /* 60 seconds */ |
| 259 | 268 | ||
| @@ -565,10 +574,8 @@ extern int inet6_hash_connect(struct inet_timewait_death_row *death_row, | |||
| 565 | /* | 574 | /* |
| 566 | * reassembly.c | 575 | * reassembly.c |
| 567 | */ | 576 | */ |
| 568 | extern int sysctl_ip6frag_high_thresh; | 577 | struct inet_frags_ctl; |
| 569 | extern int sysctl_ip6frag_low_thresh; | 578 | extern struct inet_frags_ctl ip6_frags_ctl; |
| 570 | extern int sysctl_ip6frag_time; | ||
| 571 | extern int sysctl_ip6frag_secret_interval; | ||
| 572 | 579 | ||
| 573 | extern const struct proto_ops inet6_stream_ops; | 580 | extern const struct proto_ops inet6_stream_ops; |
| 574 | extern const struct proto_ops inet6_dgram_ops; | 581 | extern const struct proto_ops inet6_dgram_ops; |
