]>
Commit | Line | Data |
---|---|---|
bae473fe JP |
1 | /* |
2 | * Copyright (c) 2009, 2010 InMon Corp. | |
1673e0e4 | 3 | * Copyright (c) 2009, 2012 Nicira, Inc. |
bae473fe JP |
4 | * |
5 | * Licensed under the Apache License, Version 2.0 (the "License"); | |
6 | * you may not use this file except in compliance with the License. | |
7 | * You may obtain a copy of the License at: | |
8 | * | |
9 | * http://www.apache.org/licenses/LICENSE-2.0 | |
10 | * | |
11 | * Unless required by applicable law or agreed to in writing, software | |
12 | * distributed under the License is distributed on an "AS IS" BASIS, | |
13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
14 | * See the License for the specific language governing permissions and | |
15 | * limitations under the License. | |
16 | */ | |
17 | ||
18 | #ifndef OFPROTO_DPIF_SFLOW_H | |
19 | #define OFPROTO_DPIF_SFLOW_H 1 | |
20 | ||
21 | #include <stdint.h> | |
22 | #include "svec.h" | |
6ff686f2 | 23 | #include "lib/odp-util.h" |
bae473fe JP |
24 | |
25 | struct dpif; | |
26 | struct dpif_upcall; | |
27 | struct flow; | |
28 | struct ofproto_sflow_options; | |
392c7182 | 29 | struct ofport; |
bae473fe | 30 | |
4213f19d | 31 | struct dpif_sflow *dpif_sflow_create(void); |
9723bcce EJ |
32 | struct dpif_sflow *dpif_sflow_ref(const struct dpif_sflow *); |
33 | void dpif_sflow_unref(struct dpif_sflow *); | |
34 | ||
6ff686f2 PS |
35 | uint32_t dpif_sflow_get_probability(const struct dpif_sflow *); |
36 | ||
bae473fe JP |
37 | void dpif_sflow_set_options(struct dpif_sflow *, |
38 | const struct ofproto_sflow_options *); | |
39 | void dpif_sflow_clear(struct dpif_sflow *); | |
40 | bool dpif_sflow_is_enabled(const struct dpif_sflow *); | |
41 | ||
e1b1d06a | 42 | void dpif_sflow_add_port(struct dpif_sflow *ds, struct ofport *ofport, |
4e022ec0 AW |
43 | odp_port_t odp_port); |
44 | void dpif_sflow_del_port(struct dpif_sflow *, odp_port_t odp_port); | |
bae473fe JP |
45 | |
46 | void dpif_sflow_run(struct dpif_sflow *); | |
47 | void dpif_sflow_wait(struct dpif_sflow *); | |
48 | ||
cf62fa4c | 49 | void dpif_sflow_received(struct dpif_sflow *, const struct dp_packet *, |
cc377352 | 50 | const struct flow *, odp_port_t odp_port, |
1673e0e4 | 51 | const union user_action_cookie *); |
6ff686f2 | 52 | |
4e022ec0 AW |
53 | int dpif_sflow_odp_port_to_ifindex(const struct dpif_sflow *, |
54 | odp_port_t odp_port); | |
bae473fe JP |
55 | |
56 | #endif /* ofproto/ofproto-dpif-sflow.h */ |