X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fbundle.h;h=5b6bb67441c3b88d4b172593ad174ab17549371e;hb=7eb1bd81120806b4189e860b2a6468925d8e7bba;hp=a202ade494c39d9cf49bd3efdd67142337553a61;hpb=daff3353a0dcb6db7c1468e442f95ae22d335e88;p=openvswitch diff --git a/lib/bundle.h b/lib/bundle.h index a202ade4..5b6bb674 100644 --- a/lib/bundle.h +++ b/lib/bundle.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2011 Nicira Networks. +/* Copyright (c) 2011, 2012 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,29 +21,29 @@ #include #include +#include "ofp-errors.h" #include "openflow/nicira-ext.h" #include "openvswitch/types.h" struct ds; struct flow; +struct ofpact_bundle; struct ofpbuf; /* NXAST_BUNDLE helper functions. * * See include/openflow/nicira-ext.h for NXAST_BUNDLE specification. */ -uint16_t bundle_execute(const struct nx_action_bundle *, const struct flow *, +uint16_t bundle_execute(const struct ofpact_bundle *, const struct flow *, bool (*slave_enabled)(uint16_t ofp_port, void *aux), void *aux); -int bundle_check(const struct nx_action_bundle *, int max_ports); -void bundle_parse(struct ofpbuf *, const char *); -void bundle_format(const struct nx_action_bundle *, struct ds *); - -/* Returns the 'i'th slave in 'nab'. */ -static inline uint16_t -bundle_get_slave(const struct nx_action_bundle *nab, size_t i) -{ - return ntohs(((ovs_be16 *)(nab + 1))[i]); -} +enum ofperr bundle_from_openflow(const struct nx_action_bundle *, + struct ofpbuf *ofpact); +enum ofperr bundle_check(const struct ofpact_bundle *, int 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); +void bundle_format(const struct ofpact_bundle *, struct ds *); #endif /* bundle.h */