]>
Commit | Line | Data |
---|---|---|
c2d936a4 | 1 | /* Copyright (c) 2011, 2012, 2013, 2014 Nicira, Inc. |
daff3353 EJ |
2 | * |
3 | * Licensed under the Apache License, Version 2.0 (the "License"); | |
4 | * you may not use this file except in compliance with the License. | |
5 | * You may obtain a copy of the License at: | |
6 | * | |
7 | * http://www.apache.org/licenses/LICENSE-2.0 | |
8 | * | |
9 | * Unless required by applicable law or agreed to in writing, software | |
10 | * distributed under the License is distributed on an "AS IS" BASIS, | |
11 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
12 | * See the License for the specific language governing permissions and | |
13 | * limitations under the License. | |
14 | */ | |
15 | ||
16 | #ifndef BUNDLE_H | |
17 | #define BUNDLE_H 1 | |
18 | ||
19 | #include <arpa/inet.h> | |
20 | #include <stdbool.h> | |
21 | #include <stddef.h> | |
22 | #include <stdint.h> | |
23 | ||
bdda5aca | 24 | #include "compiler.h" |
daff3353 | 25 | #include "openflow/nicira-ext.h" |
e03c096d | 26 | #include "openvswitch/ofp-errors.h" |
daff3353 EJ |
27 | #include "openvswitch/types.h" |
28 | ||
29 | struct ds; | |
30 | struct flow; | |
bcd2633a | 31 | struct flow_wildcards; |
67210a55 | 32 | struct match; |
f25d0cf3 | 33 | struct ofpact_bundle; |
daff3353 EJ |
34 | struct ofpbuf; |
35 | ||
36 | /* NXAST_BUNDLE helper functions. | |
37 | * | |
0da61033 | 38 | * See lib/ofp-actions.c for NXAST_BUNDLE specification. */ |
daff3353 | 39 | |
c2d936a4 BP |
40 | #define BUNDLE_MAX_SLAVES 2048 |
41 | ||
4e022ec0 | 42 | ofp_port_t bundle_execute(const struct ofpact_bundle *, const struct flow *, |
bcd2633a | 43 | struct flow_wildcards *wc, |
4e022ec0 | 44 | bool (*slave_enabled)(ofp_port_t ofp_port, void *aux), |
daff3353 | 45 | void *aux); |
4e022ec0 | 46 | enum ofperr bundle_check(const struct ofpact_bundle *, ofp_port_t max_ports, |
67210a55 | 47 | const struct match *); |
cab50449 | 48 | char *bundle_parse(const char *, struct ofpbuf *ofpacts) OVS_WARN_UNUSED_RESULT; |
bdda5aca | 49 | char *bundle_parse_load(const char *, struct ofpbuf *ofpacts) |
cab50449 | 50 | OVS_WARN_UNUSED_RESULT; |
f25d0cf3 | 51 | void bundle_format(const struct ofpact_bundle *, struct ds *); |
daff3353 EJ |
52 | |
53 | #endif /* bundle.h */ |