X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fmultipath.h;h=0673050253a0506aae415546e73b6f2d9e4ade76;hb=HEAD;hp=8ac4bfd350687ba85c24d795cb3ef43f669c2d61;hpb=43edca5717cf389eb87850abbf30efc738049921;p=sliver-openvswitch.git diff --git a/lib/multipath.h b/lib/multipath.h index 8ac4bfd35..067305025 100644 --- a/lib/multipath.h +++ b/lib/multipath.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010 Nicira Networks. + * Copyright (c) 2010, 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. @@ -18,21 +18,33 @@ #define MULTIPATH_H 1 #include +#include "compiler.h" +#include "ofp-errors.h" struct ds; struct flow; +struct flow_wildcards; struct nx_action_multipath; -struct nx_action_reg_move; +struct ofpact_multipath; +struct ofpbuf; /* NXAST_MULTIPATH helper functions. * * See include/openflow/nicira-ext.h for NXAST_MULTIPATH specification. */ -int multipath_check(const struct nx_action_multipath *, const struct flow *); -void multipath_execute(const struct nx_action_multipath *, struct flow *); +enum ofperr multipath_from_openflow(const struct nx_action_multipath *, + struct ofpact_multipath *); +enum ofperr multipath_check(const struct ofpact_multipath *, + const struct flow *); +void multipath_to_nxast(const struct ofpact_multipath *, + struct ofpbuf *openflow); -void multipath_parse(struct nx_action_multipath *, const char *); -void multipath_format(const struct nx_action_multipath *, struct ds *); +void multipath_execute(const struct ofpact_multipath *, struct flow *, + struct flow_wildcards *); + +char *multipath_parse(struct ofpact_multipath *, const char *) + WARN_UNUSED_RESULT; +void multipath_format(const struct ofpact_multipath *, struct ds *); #endif /* multipath.h */