X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=datapath%2Fdatapath.c;h=10eb5b7b2e443b751d6ab66954eea5a0dc20d605;hb=7aec165dbc4690c8c2c703d142e2f017bb851d31;hp=dee1b0f88faf6d9eb466685daab264ff6ea53509;hpb=3d8c95357fc8fa657c5ed176a464d0c9d33622e9;p=sliver-openvswitch.git diff --git a/datapath/datapath.c b/datapath/datapath.c index dee1b0f88..10eb5b7b2 100644 --- a/datapath/datapath.c +++ b/datapath/datapath.c @@ -570,58 +570,58 @@ static int validate_actions(const struct nlattr *attr) int rem; nla_for_each_nested(a, attr, rem) { - static const u32 action_lens[ODPAT_MAX + 1] = { - [ODPAT_OUTPUT] = 4, - [ODPAT_CONTROLLER] = 8, - [ODPAT_SET_DL_TCI] = 2, - [ODPAT_STRIP_VLAN] = 0, - [ODPAT_SET_DL_SRC] = ETH_ALEN, - [ODPAT_SET_DL_DST] = ETH_ALEN, - [ODPAT_SET_NW_SRC] = 4, - [ODPAT_SET_NW_DST] = 4, - [ODPAT_SET_NW_TOS] = 1, - [ODPAT_SET_TP_SRC] = 2, - [ODPAT_SET_TP_DST] = 2, - [ODPAT_SET_TUNNEL] = 8, - [ODPAT_SET_PRIORITY] = 4, - [ODPAT_POP_PRIORITY] = 0, - [ODPAT_DROP_SPOOFED_ARP] = 0, + static const u32 action_lens[ODP_ACTION_ATTR_MAX + 1] = { + [ODP_ACTION_ATTR_OUTPUT] = 4, + [ODP_ACTION_ATTR_CONTROLLER] = 8, + [ODP_ACTION_ATTR_SET_DL_TCI] = 2, + [ODP_ACTION_ATTR_STRIP_VLAN] = 0, + [ODP_ACTION_ATTR_SET_DL_SRC] = ETH_ALEN, + [ODP_ACTION_ATTR_SET_DL_DST] = ETH_ALEN, + [ODP_ACTION_ATTR_SET_NW_SRC] = 4, + [ODP_ACTION_ATTR_SET_NW_DST] = 4, + [ODP_ACTION_ATTR_SET_NW_TOS] = 1, + [ODP_ACTION_ATTR_SET_TP_SRC] = 2, + [ODP_ACTION_ATTR_SET_TP_DST] = 2, + [ODP_ACTION_ATTR_SET_TUNNEL] = 8, + [ODP_ACTION_ATTR_SET_PRIORITY] = 4, + [ODP_ACTION_ATTR_POP_PRIORITY] = 0, + [ODP_ACTION_ATTR_DROP_SPOOFED_ARP] = 0, }; int type = nla_type(a); - if (type > ODPAT_MAX || nla_len(a) != action_lens[type]) + if (type > ODP_ACTION_ATTR_MAX || nla_len(a) != action_lens[type]) return -EINVAL; switch (type) { - case ODPAT_UNSPEC: + case ODP_ACTION_ATTR_UNSPEC: return -EINVAL; - case ODPAT_CONTROLLER: - case ODPAT_STRIP_VLAN: - case ODPAT_SET_DL_SRC: - case ODPAT_SET_DL_DST: - case ODPAT_SET_NW_SRC: - case ODPAT_SET_NW_DST: - case ODPAT_SET_TP_SRC: - case ODPAT_SET_TP_DST: - case ODPAT_SET_TUNNEL: - case ODPAT_SET_PRIORITY: - case ODPAT_POP_PRIORITY: - case ODPAT_DROP_SPOOFED_ARP: + case ODP_ACTION_ATTR_CONTROLLER: + case ODP_ACTION_ATTR_STRIP_VLAN: + case ODP_ACTION_ATTR_SET_DL_SRC: + case ODP_ACTION_ATTR_SET_DL_DST: + case ODP_ACTION_ATTR_SET_NW_SRC: + case ODP_ACTION_ATTR_SET_NW_DST: + case ODP_ACTION_ATTR_SET_TP_SRC: + case ODP_ACTION_ATTR_SET_TP_DST: + case ODP_ACTION_ATTR_SET_TUNNEL: + case ODP_ACTION_ATTR_SET_PRIORITY: + case ODP_ACTION_ATTR_POP_PRIORITY: + case ODP_ACTION_ATTR_DROP_SPOOFED_ARP: /* No validation needed. */ break; - case ODPAT_OUTPUT: + case ODP_ACTION_ATTR_OUTPUT: if (nla_get_u32(a) >= DP_MAX_PORTS) return -EINVAL; break; - case ODPAT_SET_DL_TCI: + case ODP_ACTION_ATTR_SET_DL_TCI: if (nla_get_be16(a) & htons(VLAN_CFI_MASK)) return -EINVAL; break; - case ODPAT_SET_NW_TOS: + case ODP_ACTION_ATTR_SET_NW_TOS: if (nla_get_u8(a) & INET_ECN_MASK) return -EINVAL; break;