return (nl_attr_get_u32(a[OVS_TUNNEL_ATTR_FLAGS]) & TNL_F_IPSEC
? "ipsec_gre" : "gre");
+ case OVS_VPORT_TYPE_GRE64:
+ if (tnl_port_config_from_nlattr(vport->options, vport->options_len,
+ a)) {
+ break;
+ }
+ return (nl_attr_get_u32(a[OVS_TUNNEL_ATTR_FLAGS]) & TNL_F_IPSEC
+ ? "ipsec_gre64" : "gre64");
+
case OVS_VPORT_TYPE_CAPWAP:
return "capwap";
ovs_be32 saddr = htonl(0);
uint32_t flags;
- flags = TNL_F_DF_DEFAULT | TNL_F_PMTUD | TNL_F_HDR_CACHE;
- if (!strcmp(type, "gre")) {
+ flags = TNL_F_DF_DEFAULT | TNL_F_HDR_CACHE;
+ if (!strcmp(type, "gre") || !strcmp(type, "gre64")) {
is_gre = true;
- } else if (!strcmp(type, "ipsec_gre")) {
+ } else if (!strcmp(type, "ipsec_gre") || !strcmp(type, "ipsec_gre64")) {
is_gre = true;
is_ipsec = true;
flags |= TNL_F_IPSEC;
flags &= ~TNL_F_DF_DEFAULT;
}
} else if (!strcmp(node->key, "pmtud")) {
- if (!strcmp(node->value, "false")) {
- flags &= ~TNL_F_PMTUD;
+ if (!strcmp(node->value, "true")) {
+ VLOG_WARN_ONCE("%s: The tunnel Path MTU discovery is "
+ "deprecated and may be removed in February "
+ "2013. Please email dev@openvswitch.org with "
+ "concerns.", name);
+ flags |= TNL_F_PMTUD;
}
} else if (!strcmp(node->key, "header_cache")) {
if (!strcmp(node->value, "false")) {
if (!(flags & TNL_F_DF_DEFAULT)) {
smap_add(args, "df_default", "false");
}
- if (!(flags & TNL_F_PMTUD)) {
- smap_add(args, "pmtud", "false");
+ if (flags & TNL_F_PMTUD) {
+ smap_add(args, "pmtud", "true");
}
return 0;
{ "ipsec_gre", VPORT_FUNCTIONS(netdev_vport_get_drv_info) },
parse_tunnel_config, unparse_tunnel_config },
+ { OVS_VPORT_TYPE_GRE64,
+ { "gre64", VPORT_FUNCTIONS(netdev_vport_get_drv_info) },
+ parse_tunnel_config, unparse_tunnel_config },
+
+ { OVS_VPORT_TYPE_GRE64,
+ { "ipsec_gre64", VPORT_FUNCTIONS(netdev_vport_get_drv_info) },
+ parse_tunnel_config, unparse_tunnel_config },
+
{ OVS_VPORT_TYPE_CAPWAP,
{ "capwap", VPORT_FUNCTIONS(netdev_vport_get_drv_info) },
parse_tunnel_config, unparse_tunnel_config },