| /linux/net/netfilter/ |
| H A D | nf_conntrack_proto_gre.c | 3 * Connection tracking protocol helper module for GRE. 5 * GRE is a generic encapsulation protocol, which is generally not very 11 * GRE is defined in RFC 1701 and RFC 1702, as well as RFC 2784 13 * PPTP is built on top of a modified version of GRE, and has a mandatory 15 * field in plain GRE. 55 return &net->ct.nf_ct_proto.gre; in gre_pernet() 77 key = km->tuple.src.u.gre.key; in gre_keymap_lookup() 150 /* gre hdr info to tuple */ 160 /* first only delinearize old RFC1701 GRE header */ in gre_pkt_to_tuple() 175 pr_debug("Unsupported GRE proto(0x%x)\n", ntohs(grehdr->protocol)); in gre_pkt_to_tuple() [all …]
|
| H A D | nf_conntrack_pptp.c | 8 * GRE is defined in RFC 1701 and RFC 1702. Documentation of 96 /* increase timeout of GRE data channel conntrack entry */ in pptp_expectfn() 97 ct->proto.gre.timeout = PPTP_GRE_TIMEOUT; in pptp_expectfn() 98 ct->proto.gre.stream_timeout = PPTP_GRE_STREAM_TIMEOUT; in pptp_expectfn() 143 sibling->proto.gre.timeout = 0; in destroy_sibling_or_exp() 144 sibling->proto.gre.stream_timeout = 0; in destroy_sibling_or_exp() 160 /* timeout GRE data connections */ 172 t.src.u.gre.key = ct_pptp_info->pns_call_id; in pptp_destroy_siblings() 173 t.dst.u.gre.key = ct_pptp_info->pac_call_id; in pptp_destroy_siblings() 180 t.src.u.gre.key = ct_pptp_info->pac_call_id; in pptp_destroy_siblings() [all …]
|
| /linux/tools/testing/selftests/net/forwarding/ |
| H A D | ip6gre_hier.sh | 4 # Test IP-in-IP GRE tunnels without key. 39 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6" 40 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6" 45 test_mtu_change gre 52 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6 (new remote)" 53 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6 (new remote)" 57 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6 (old remote)" 58 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6 (old remote)"
|
| H A D | ip6gre_hier_key.sh | 4 # Test IP-in-IP GRE tunnels without key. 39 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6 with key" 40 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6 with key" 45 test_mtu_change gre 52 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6 with key (new remote)" 53 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6 with key (new remote)" 57 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6 with key (old remote)" 58 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6 with key (old remote)"
|
| H A D | ip6gre_flat_keys.sh | 4 # Test IP-in-IP GRE tunnel with keys. 39 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with ikey/okey" 40 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with ikey/okey" 45 test_mtu_change gre 52 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with ikey/okey (new remote)" 53 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with ikey/okey (new remote)" 57 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with ikey/okey (old remote)" 58 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with ikey/okey (old remote)"
|
| H A D | ip6gre_hier_keys.sh | 4 # Test IP-in-IP GRE tunnels without key. 39 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6 with ikey/okey" 40 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6 with ikey/okey" 45 test_mtu_change gre 52 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6 with ikey/okey (new remote)" 53 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6 with ikey/okey (new remote)" 57 test_traffic_ip4ip6 "GRE hierarchical IPv4-in-IPv6 with ikey/okey (old remote)" 58 test_traffic_ip6ip6 "GRE hierarchical IPv6-in-IPv6 with ikey/okey (old remote)"
|
| H A D | ip6gre_flat.sh | 4 # Test IP-in-IP GRE tunnel without key. 39 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6" 40 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6" 52 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 (new remote)" 53 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 (new remote)" 57 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 (old remote)" 58 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 (old remote)"
|
| H A D | ip6gre_flat_key.sh | 4 # Test IP-in-IP GRE tunnel with key. 39 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with key" 40 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with key" 52 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with key (new remote)" 53 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with key (new remote)" 57 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with key (old remote)" 58 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with key (old remote)"
|
| H A D | ipip_flat_gre_key.sh | 4 # Test IP-in-IP GRE tunnel with key. 29 sw1_flat_create gre $ol1 $ul1 key 233 30 sw2_flat_create gre $ol2 $ul2 key 233 37 ping_test $h1 192.0.2.18 " gre flat with key" 42 test_mtu_change gre
|
| H A D | ipip_flat_gre.sh | 4 # Test IP-in-IP GRE tunnel without key. 29 sw1_flat_create gre $ol1 $ul1 30 sw2_flat_create gre $ol2 $ul2 37 ping_test $h1 192.0.2.18 " gre flat" 42 test_mtu_change gre
|
| H A D | ipip_hier_gre.sh | 4 # Test IP-in-IP GRE tunnels without key. 29 sw1_hierarchical_create gre $ol1 $ul1 30 sw2_hierarchical_create gre $ol2 $ul2 37 ping_test $h1 192.0.2.18 " gre hierarchical" 42 test_mtu_change gre
|
| H A D | ipip_hier_gre_key.sh | 4 # Test IP-in-IP GRE tunnels without key. 29 sw1_hierarchical_create gre $ol1 $ul1 key 22 30 sw2_hierarchical_create gre $ol2 $ul2 key 22 37 ping_test $h1 192.0.2.18 " gre hierarchical with key" 42 test_mtu_change gre
|
| H A D | ipip_flat_gre_keys.sh | 4 # Test IP-in-IP GRE tunnel with key. 29 sw1_flat_create gre $ol1 $ul1 ikey 111 okey 222 30 sw2_flat_create gre $ol2 $ul2 ikey 222 okey 111 37 ping_test $h1 192.0.2.18 " gre flat with ikey/okey" 42 test_mtu_change gre
|
| H A D | ipip_hier_gre_keys.sh | 4 # Test IP-in-IP GRE tunnels without key. 29 sw1_hierarchical_create gre $ol1 $ul1 ikey 111 okey 222 30 sw2_hierarchical_create gre $ol2 $ul2 ikey 222 okey 111 37 ping_test $h1 192.0.2.18 " gre hierarchical with ikey/okey" 42 test_mtu_change gre
|
| H A D | gre_multipath.sh | 4 # Test traffic distribution when a wECMP route forwards traffic to two GRE 18 # | + g1a (gre) + g1b (gre) | 43 # | + g2a (gre) | + g2b (gre) | | 85 tunnel_create g1a gre 192.0.2.65 192.0.2.66 tos inherit dev v$ol1 89 tunnel_create g1b gre 192.0.2.81 192.0.2.82 tos inherit dev v$ol1 123 tunnel_create g2a gre 192.0.2.66 192.0.2.65 tos inherit dev v$ol2 127 tunnel_create g2b gre 192.0.2.82 192.0.2.81 tos inherit dev v$ol2
|
| H A D | gre_multipath_nh_res.sh | 4 # Test traffic distribution when a wECMP route forwards traffic to two GRE 20 # | + g1a (gre) + g1b (gre) | 45 # | + g2a (gre) | + g2b (gre) | | 93 tunnel_create g1a gre 192.0.2.65 192.0.2.66 tos inherit dev v$ol1 97 tunnel_create g1b gre 192.0.2.81 192.0.2.82 tos inherit dev v$ol1 140 tunnel_create g2a gre 192.0.2.66 192.0.2.65 tos inherit dev v$ol2 144 tunnel_create g2b gre 192.0.2.82 192.0.2.81 tos inherit dev v$ol2
|
| H A D | gre_multipath_nh.sh | 4 # Test traffic distribution when a wECMP route forwards traffic to two GRE 20 # | + g1a (gre) + g1b (gre) | 45 # | + g2a (gre) | + g2b (gre) | | 93 tunnel_create g1a gre 192.0.2.65 192.0.2.66 tos inherit dev v$ol1 97 tunnel_create g1b gre 192.0.2.81 192.0.2.82 tos inherit dev v$ol1 139 tunnel_create g2a gre 192.0.2.66 192.0.2.65 tos inherit dev v$ol2 143 tunnel_create g2b gre 192.0.2.82 192.0.2.81 tos inherit dev v$ol2
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | bpf_flow.c | 170 struct gre_hdr *gre, _gre; in parse_ip_proto() local 194 gre = bpf_flow_dissect_get_header(skb, sizeof(*gre), &_gre); in parse_ip_proto() 195 if (!gre) in parse_ip_proto() 198 if (bpf_htons(gre->flags & GRE_VERSION)) in parse_ip_proto() 199 /* Only inspect standard GRE packets with version 0 */ in parse_ip_proto() 202 keys->thoff += sizeof(*gre); /* Step over GRE Flags and Proto */ in parse_ip_proto() 203 if (GRE_IS_CSUM(gre->flags)) in parse_ip_proto() 205 if (GRE_IS_KEY(gre->flags)) in parse_ip_proto() 207 if (GRE_IS_SEQ(gre->flags)) in parse_ip_proto() 214 if (gre->proto == bpf_htons(ETH_P_TEB)) { in parse_ip_proto() [all …]
|
| /linux/net/ipv4/netfilter/ |
| H A D | nf_nat_pptp.c | 10 * GRE is defined in RFC 1701 and RFC 1702. Documentation of 68 t.src.u.gre.key = ct_pptp_info->pac_call_id; in pptp_nat_expected() 70 t.dst.u.gre.key = ct_pptp_info->pns_call_id; in pptp_nat_expected() 77 t.src.u.gre.key = nat_pptp_info->pns_call_id; in pptp_nat_expected() 79 t.dst.u.gre.key = nat_pptp_info->pac_call_id; in pptp_nat_expected() 217 expect_orig->saved_proto.gre.key = ct_pptp_info->pns_call_id; in pptp_exp_gre() 218 expect_orig->tuple.src.u.gre.key = nat_pptp_info->pns_call_id; in pptp_exp_gre() 219 expect_orig->tuple.dst.u.gre.key = ct_pptp_info->pac_call_id; in pptp_exp_gre() 223 expect_reply->saved_proto.gre.key = nat_pptp_info->pns_call_id; in pptp_exp_gre() 224 expect_reply->tuple.src.u.gre.key = nat_pptp_info->pac_call_id; in pptp_exp_gre() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| H A D | tc_tun_gre.c | 4 #include <net/gre.h> 39 /* the HW does not calculate GRE csum or sequences */ in mlx5e_gen_ip_tunnel_header_gretap() 48 /* GRE key */ in mlx5e_gen_ip_tunnel_header_gretap() 72 /* gre protocol */ in mlx5e_tc_tun_parse_gretap() 76 /* gre key */ in mlx5e_tc_tun_parse_gretap()
|
| /linux/net/ipv4/ |
| H A D | gre_demux.c | 3 * GRE over IPv4 demultiplexer driver 22 #include <net/gre.h> 60 * Note that caller must use pskb_may_pull() before pulling GRE header. 112 * - When dealing with WCCPv2, Skip extra 4 bytes in GRE header in gre_parse_header() 127 /* ERSPAN ver 1 and 2 protocol sets GRE key field in gre_parse_header() 202 pr_info("GRE over IPv4 demultiplexer driver\n"); in gre_init() 219 MODULE_DESCRIPTION("GRE over IPv4 demultiplexer driver");
|
| /linux/tools/testing/selftests/drivers/net/hw/ |
| H A D | hw_stats_l3_gre.sh | 4 # Test L3 stats on IP-in-IP GRE tunnel without key. 37 sw1_flat_create gre $ol1 $ul1 38 sw2_flat_create gre $ol2 $ul2 63 ping_test $h1 192.0.2.18 " gre flat"
|
| /linux/tools/testing/selftests/bpf/ |
| H A D | test_tc_tunnel.sh | 128 echo "ip gre $mac" 129 $0 ipv4 gre $mac 100 131 echo "ip6 gre $mac" 134 echo "ip gre $mac gso" 135 $0 ipv4 gre $mac 2000 137 echo "ip6 gre $mac gso" 236 elif [[ "$tuntype" =~ "gre" && "$mac" == "eth" ]]; then 275 elif [[ "$tuntype" =~ (gre|vxlan) && "$mac" == "eth" ]]; then
|
| /linux/tools/testing/selftests/net/ |
| H A D | gre_ipv6_lladdr.sh | 18 # underlay by future GRE devices. 60 # Create a GRE device and verify that it gets an IPv6 link-local address as 65 # * $1: The device type (gre, ip6gre, gretap or ip6gretap) 68 # * $4: The IPv6 interface identifier generation mode to use for the GRE 135 for GRE_TYPE in "gre" "gretap"; do
|
| /linux/drivers/net/ethernet/intel/libie/ |
| H A D | rx.c | 74 /* IPv oip --> GRE/NAT tun --> { x, IPv4, IPv6 } */ 81 * IPv oip --> GRE/NAT --> { x, IPv4, IPv6 } 82 * IPv oip --> GRE/NAT --> MAC --> { x, IPv4, IPv6 } 83 * IPv oip --> GRE/NAT --> MAC/VLAN --> { x, IPv4, IPv6 }
|