2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-31 06:15:47 +00:00

ofp-parse: Do not exit() upon a parse error.

Until now, failure to parse a flow in the ofp-parse module has caused the
program to abort immediately with a fatal error.  This makes it hard to
use these functions from any long-lived program.  This commit fixes the
problem.

Signed-off-by: Ben Pfaff <blp@nicira.com>
This commit is contained in:
Ben Pfaff
2013-07-08 10:15:00 -07:00
parent 5ed2d819bb
commit bdda5aca7b
20 changed files with 991 additions and 456 deletions

View File

@@ -1,4 +1,4 @@
/* Copyright (c) 2011, 2012 Nicira, Inc.
/* Copyright (c) 2011, 2012, 2013 Nicira, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@
#include <stddef.h>
#include <stdint.h>
#include "compiler.h"
#include "ofp-errors.h"
#include "openflow/nicira-ext.h"
#include "openvswitch/types.h"
@@ -44,8 +45,9 @@ enum ofperr bundle_from_openflow(const struct nx_action_bundle *,
enum ofperr bundle_check(const struct ofpact_bundle *, ofp_port_t max_ports,
const struct flow *);
void bundle_to_nxast(const struct ofpact_bundle *, struct ofpbuf *of10);
void bundle_parse(const char *, struct ofpbuf *ofpacts);
void bundle_parse_load(const char *, struct ofpbuf *ofpacts);
char *bundle_parse(const char *, struct ofpbuf *ofpacts) WARN_UNUSED_RESULT;
char *bundle_parse_load(const char *, struct ofpbuf *ofpacts)
WARN_UNUSED_RESULT;
void bundle_format(const struct ofpact_bundle *, struct ds *);
#endif /* bundle.h */