git://git.onelab.eu
/
sliver-openvswitch.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vswitch: Implement bundle action.
[sliver-openvswitch.git]
/
lib
/
ofp-util.c
diff --git
a/lib/ofp-util.c
b/lib/ofp-util.c
index
39bd0d1
..
803b033
100644
(file)
--- a/
lib/ofp-util.c
+++ b/
lib/ofp-util.c
@@
-21,6
+21,7
@@
#include <netinet/icmp6.h>
#include <stdlib.h>
#include "autopath.h"
#include <netinet/icmp6.h>
#include <stdlib.h>
#include "autopath.h"
+#include "bundle.h"
#include "byte-order.h"
#include "classifier.h"
#include "dynamic-string.h"
#include "byte-order.h"
#include "classifier.h"
#include "dynamic-string.h"
@@
-2035,6
+2036,11
@@
validate_actions(const union ofp_action *actions, size_t n_actions,
error = autopath_check((const struct nx_action_autopath *) a);
break;
error = autopath_check((const struct nx_action_autopath *) a);
break;
+ case OFPUTIL_NXAST_BUNDLE:
+ error = bundle_check((const struct nx_action_bundle *) a,
+ max_ports);
+ break;
+
case OFPUTIL_OFPAT_STRIP_VLAN:
case OFPUTIL_OFPAT_SET_NW_SRC:
case OFPUTIL_OFPAT_SET_NW_DST:
case OFPUTIL_OFPAT_STRIP_VLAN:
case OFPUTIL_OFPAT_SET_NW_SRC:
case OFPUTIL_OFPAT_SET_NW_DST:
@@
-2107,6
+2113,7
@@
static const struct ofputil_nxast_action nxast_actions[] = {
{ OFPUTIL_NXAST_SET_TUNNEL64, 24, 24 },
{ OFPUTIL_NXAST_MULTIPATH, 32, 32 },
{ OFPUTIL_NXAST_AUTOPATH, 24, 24 },
{ OFPUTIL_NXAST_SET_TUNNEL64, 24, 24 },
{ OFPUTIL_NXAST_MULTIPATH, 32, 32 },
{ OFPUTIL_NXAST_AUTOPATH, 24, 24 },
+ { OFPUTIL_NXAST_BUNDLE, 32, UINT_MAX },
};
static int
};
static int