Lines Matching refs:nsh
1342 /* nsh header length = NSH_BASE_HDR_LEN + mdlen */
1350 struct ovs_key_nsh *nsh, struct ovs_key_nsh *nsh_mask)
1365 nsh->base = *base;
1373 memcpy(nsh->context, md1->context, sizeof(*md1));
1409 OVS_NLERR(log, "nsh attr %d is out of range max %d",
1418 "nsh attr %d has unexpected len %d expected %d",
1432 SW_FLOW_KEY_PUT(match, nsh.base.flags,
1434 SW_FLOW_KEY_PUT(match, nsh.base.ttl,
1436 SW_FLOW_KEY_PUT(match, nsh.base.mdtype,
1438 SW_FLOW_KEY_PUT(match, nsh.base.np,
1440 SW_FLOW_KEY_PUT(match, nsh.base.path_hdr,
1449 SW_FLOW_KEY_PUT(match, nsh.context[i],
1470 OVS_NLERR(log, "Unknown nsh attribute %d",
1477 OVS_NLERR(log, "nsh attribute has %d unknown bytes.", rem);
1484 "invalid nsh attribute: md1 and md2 are exclusive."
1492 OVS_NLERR(1, "nsh attribute has unmatched MD type %d.",
1983 static int nsh_key_to_nlattr(const struct ovs_key_nsh *nsh, bool is_mask,
1992 if (nla_put(skb, OVS_NSH_KEY_ATTR_BASE, sizeof(nsh->base), &nsh->base))
1995 if (is_mask || nsh->base.mdtype == NSH_M_TYPE1) {
1997 sizeof(nsh->context), nsh->context))
2149 if (nsh_key_to_nlattr(&output->nsh, is_mask, skb))
3423 inner_proto = tun_p_to_eth_p(key->nsh.base.np);
3426 if (key->nsh.base.np == TUN_P_ETHERNET)