projects
/
openvswitch
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Release Open vSwitch 1.1.0
[openvswitch]
/
lib
/
ofp-parse.c
diff --git
a/lib/ofp-parse.c
b/lib/ofp-parse.c
index 1c69d880bdda56eb299a6ceea56c88b05fa30501..4c4811b657874e0be942bdc4bb15c5549140558a 100644
(file)
--- a/
lib/ofp-parse.c
+++ b/
lib/ofp-parse.c
@@
-22,6
+22,7
@@
#include <errno.h>
#include <stdlib.h>
#include <errno.h>
#include <stdlib.h>
+#include "autopath.h"
#include "byte-order.h"
#include "dynamic-string.h"
#include "netdev.h"
#include "byte-order.h"
#include "dynamic-string.h"
#include "netdev.h"
@@
-453,6
+454,10
@@
str_to_action(char *str, struct ofpbuf *b)
struct nx_action_multipath *nam;
nam = ofpbuf_put_uninit(b, sizeof *nam);
multipath_parse(nam, arg);
struct nx_action_multipath *nam;
nam = ofpbuf_put_uninit(b, sizeof *nam);
multipath_parse(nam, arg);
+ } else if (!strcasecmp(act, "autopath")) {
+ struct nx_action_autopath *naa;
+ naa = ofpbuf_put_uninit(b, sizeof *naa);
+ autopath_parse(naa, arg);
} else if (!strcasecmp(act, "output")) {
put_output_action(b, str_to_u32(arg));
} else if (!strcasecmp(act, "enqueue")) {
} else if (!strcasecmp(act, "output")) {
put_output_action(b, str_to_u32(arg));
} else if (!strcasecmp(act, "enqueue")) {
@@
-871,8
+876,8
@@
parse_ofp_flow_mod_str(struct list *packets, enum nx_flow_format *cur_format,
* 'stream' and the command is always OFPFC_ADD. Returns false if end-of-file
* is reached before reading a flow, otherwise true. */
bool
* 'stream' and the command is always OFPFC_ADD. Returns false if end-of-file
* is reached before reading a flow, otherwise true. */
bool
-parse_ofp_
add_flow
_file(struct list *packets, enum nx_flow_format *cur,
- FILE *stream)
+parse_ofp_
flow_mod
_file(struct list *packets, enum nx_flow_format *cur,
+ FILE *stream
, uint16_t command
)
{
struct ds s;
bool ok;
{
struct ds s;
bool ok;
@@
-880,7
+885,7
@@
parse_ofp_add_flow_file(struct list *packets, enum nx_flow_format *cur,
ds_init(&s);
ok = ds_get_preprocessed_line(&s, stream) == 0;
if (ok) {
ds_init(&s);
ok = ds_get_preprocessed_line(&s, stream) == 0;
if (ok) {
- parse_ofp_flow_mod_str(packets, cur, ds_cstr(&s),
OFPFC_ADD
);
+ parse_ofp_flow_mod_str(packets, cur, ds_cstr(&s),
command
);
}
ds_destroy(&s);
}
ds_destroy(&s);