Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v5.2-rc2 84 lines 2.3 kB view raw
1/* 2 * Bridge per vlan tunnels 3 * 4 * Authors: 5 * Roopa Prabhu <roopa@cumulusnetworks.com> 6 * 7 * This program is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU General Public License 9 * as published by the Free Software Foundation; either version 10 * 2 of the License, or (at your option) any later version. 11 */ 12 13#ifndef _BR_PRIVATE_TUNNEL_H 14#define _BR_PRIVATE_TUNNEL_H 15 16struct vtunnel_info { 17 u32 tunid; 18 u16 vid; 19 u16 flags; 20}; 21 22/* br_netlink_tunnel.c */ 23int br_parse_vlan_tunnel_info(struct nlattr *attr, 24 struct vtunnel_info *tinfo); 25int br_process_vlan_tunnel_info(struct net_bridge *br, 26 struct net_bridge_port *p, 27 int cmd, 28 struct vtunnel_info *tinfo_curr, 29 struct vtunnel_info *tinfo_last, 30 bool *changed); 31int br_get_vlan_tunnel_info_size(struct net_bridge_vlan_group *vg); 32int br_fill_vlan_tunnel_info(struct sk_buff *skb, 33 struct net_bridge_vlan_group *vg); 34 35#ifdef CONFIG_BRIDGE_VLAN_FILTERING 36/* br_vlan_tunnel.c */ 37int vlan_tunnel_init(struct net_bridge_vlan_group *vg); 38void vlan_tunnel_deinit(struct net_bridge_vlan_group *vg); 39int nbp_vlan_tunnel_info_delete(struct net_bridge_port *port, u16 vid); 40int nbp_vlan_tunnel_info_add(struct net_bridge_port *port, u16 vid, u32 tun_id); 41void nbp_vlan_tunnel_info_flush(struct net_bridge_port *port); 42void vlan_tunnel_info_del(struct net_bridge_vlan_group *vg, 43 struct net_bridge_vlan *vlan); 44int br_handle_ingress_vlan_tunnel(struct sk_buff *skb, 45 struct net_bridge_port *p, 46 struct net_bridge_vlan_group *vg); 47int br_handle_egress_vlan_tunnel(struct sk_buff *skb, 48 struct net_bridge_vlan *vlan); 49#else 50static inline int vlan_tunnel_init(struct net_bridge_vlan_group *vg) 51{ 52 return 0; 53} 54 55static inline int nbp_vlan_tunnel_info_delete(struct net_bridge_port *port, 56 u16 vid) 57{ 58 return 0; 59} 60 61static inline int nbp_vlan_tunnel_info_add(struct net_bridge_port *port, 62 u16 vid, u32 tun_id) 63{ 64 return 0; 65} 66 67static inline void nbp_vlan_tunnel_info_flush(struct net_bridge_port *port) 68{ 69} 70 71static inline void vlan_tunnel_info_del(struct net_bridge_vlan_group *vg, 72 struct net_bridge_vlan *vlan) 73{ 74} 75 76static inline int br_handle_ingress_vlan_tunnel(struct sk_buff *skb, 77 struct net_bridge_port *p, 78 struct net_bridge_vlan_group *vg) 79{ 80 return 0; 81} 82#endif 83 84#endif