diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/if_link.h | 1 | ||||
| -rw-r--r-- | include/linux/netfilter_bridge/ebtables.h | 4 | ||||
| -rw-r--r-- | include/linux/rtnetlink.h | 3 | ||||
| -rw-r--r-- | include/linux/skbuff.h | 10 |
4 files changed, 16 insertions, 2 deletions
diff --git a/include/linux/if_link.h b/include/linux/if_link.h index c52d4b5f872a..4b24ff453aee 100644 --- a/include/linux/if_link.h +++ b/include/linux/if_link.h | |||
| @@ -137,6 +137,7 @@ enum { | |||
| 137 | IFLA_AF_SPEC, | 137 | IFLA_AF_SPEC, |
| 138 | IFLA_GROUP, /* Group the device belongs to */ | 138 | IFLA_GROUP, /* Group the device belongs to */ |
| 139 | IFLA_NET_NS_FD, | 139 | IFLA_NET_NS_FD, |
| 140 | IFLA_EXT_MASK, /* Extended info mask, VFs, etc */ | ||
| 140 | __IFLA_MAX | 141 | __IFLA_MAX |
| 141 | }; | 142 | }; |
| 142 | 143 | ||
diff --git a/include/linux/netfilter_bridge/ebtables.h b/include/linux/netfilter_bridge/ebtables.h index 8797ed16feb2..4dd5bd6994a8 100644 --- a/include/linux/netfilter_bridge/ebtables.h +++ b/include/linux/netfilter_bridge/ebtables.h | |||
| @@ -285,8 +285,8 @@ struct ebt_table { | |||
| 285 | struct module *me; | 285 | struct module *me; |
| 286 | }; | 286 | }; |
| 287 | 287 | ||
| 288 | #define EBT_ALIGN(s) (((s) + (__alignof__(struct ebt_replace)-1)) & \ | 288 | #define EBT_ALIGN(s) (((s) + (__alignof__(struct _xt_align)-1)) & \ |
| 289 | ~(__alignof__(struct ebt_replace)-1)) | 289 | ~(__alignof__(struct _xt_align)-1)) |
| 290 | extern struct ebt_table *ebt_register_table(struct net *net, | 290 | extern struct ebt_table *ebt_register_table(struct net *net, |
| 291 | const struct ebt_table *table); | 291 | const struct ebt_table *table); |
| 292 | extern void ebt_unregister_table(struct net *net, struct ebt_table *table); | 292 | extern void ebt_unregister_table(struct net *net, struct ebt_table *table); |
diff --git a/include/linux/rtnetlink.h b/include/linux/rtnetlink.h index 8e872ead88b5..577592ea0ea0 100644 --- a/include/linux/rtnetlink.h +++ b/include/linux/rtnetlink.h | |||
| @@ -602,6 +602,9 @@ struct tcamsg { | |||
| 602 | #define TCA_ACT_TAB 1 /* attr type must be >=1 */ | 602 | #define TCA_ACT_TAB 1 /* attr type must be >=1 */ |
| 603 | #define TCAA_MAX 1 | 603 | #define TCAA_MAX 1 |
| 604 | 604 | ||
| 605 | /* New extended info filters for IFLA_EXT_MASK */ | ||
| 606 | #define RTEXT_FILTER_VF (1 << 0) | ||
| 607 | |||
| 605 | /* End of information exported to user level */ | 608 | /* End of information exported to user level */ |
| 606 | 609 | ||
| 607 | #ifdef __KERNEL__ | 610 | #ifdef __KERNEL__ |
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index 50db9b04a552..ae86adee3746 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
| @@ -1465,6 +1465,16 @@ static inline void skb_set_mac_header(struct sk_buff *skb, const int offset) | |||
| 1465 | } | 1465 | } |
| 1466 | #endif /* NET_SKBUFF_DATA_USES_OFFSET */ | 1466 | #endif /* NET_SKBUFF_DATA_USES_OFFSET */ |
| 1467 | 1467 | ||
| 1468 | static inline void skb_mac_header_rebuild(struct sk_buff *skb) | ||
| 1469 | { | ||
| 1470 | if (skb_mac_header_was_set(skb)) { | ||
| 1471 | const unsigned char *old_mac = skb_mac_header(skb); | ||
| 1472 | |||
| 1473 | skb_set_mac_header(skb, -skb->mac_len); | ||
| 1474 | memmove(skb_mac_header(skb), old_mac, skb->mac_len); | ||
| 1475 | } | ||
| 1476 | } | ||
| 1477 | |||
| 1468 | static inline int skb_checksum_start_offset(const struct sk_buff *skb) | 1478 | static inline int skb_checksum_start_offset(const struct sk_buff *skb) |
| 1469 | { | 1479 | { |
| 1470 | return skb->csum_start - skb_headroom(skb); | 1480 | return skb->csum_start - skb_headroom(skb); |
