Prepare Open vSwitch 1.1.2 release.
[sliver-openvswitch.git] / lib / ofp-parse.h
1 /*
2  * Copyright (c) 2010, 2011 Nicira Networks.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at:
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 /* OpenFlow protocol string to flow parser. */
18
19 #ifndef OFP_PARSE_H
20 #define OFP_PARSE_H 1
21
22 #include <stdbool.h>
23 #include <stdint.h>
24 #include <stdio.h>
25 #include "openflow/nicira-ext.h"
26
27 struct flow_mod;
28 struct flow_stats_request;
29 struct list;
30 struct ofpbuf;
31
32 void parse_ofp_str(struct flow_mod *, uint8_t *table_idx,
33                    struct ofpbuf *actions, char *string);
34
35 void parse_ofp_flow_mod_str(struct list *packets, enum nx_flow_format *cur,
36                             char *string, uint16_t command);
37 bool parse_ofp_flow_mod_file(struct list *packets, enum nx_flow_format *cur,
38                              FILE *, uint16_t command);
39
40 void parse_ofp_flow_stats_request_str(struct flow_stats_request *,
41                                       bool aggregate, char *string);
42
43 #endif /* ofp-parse.h */