summaryrefslogtreecommitdiff
path: root/ofproto/bundles.h
diff options
context:
space:
mode:
authorAlexandru Copot <alex.mihai.c@gmail.com>2014-05-02 09:54:27 +0300
committerBen Pfaff <blp@nicira.com>2014-05-02 09:41:33 -0700
commit777af88d50b8271a8cc8f0a79d17022944481506 (patch)
tree3f6d419d949582706c3771a9d33dfe5be521c998 /ofproto/bundles.h
parent17a40d3404df4aa6393dd126cb6f0ae99b72031a (diff)
downloadopenvswitch-777af88d50b8271a8cc8f0a79d17022944481506.tar.gz
Add basic implementation for OpenFlow 1.4 bundles
This is only the communication part of the bundles functionality. The actual message pre-validation and commits are not implemented. We also enable OF1.4 for all the tests. Signed-off-by: Alexandru Copot <alex.mihai.c@gmail.com> Cc: Daniel Baluta <dbaluta@ixiacom.com> [blp@nicira.com made ofputil_decode_bundle_add() more obviously correct] Signed-off-by: Ben Pfaff <blp@nicira.com>
Diffstat (limited to 'ofproto/bundles.h')
-rw-r--r--ofproto/bundles.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/ofproto/bundles.h b/ofproto/bundles.h
new file mode 100644
index 000000000..9a6dfa5a1
--- /dev/null
+++ b/ofproto/bundles.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (c) 2013, 2014 Alexandru Copot <alex.mihai.c@gmail.com>, with support from IXIA.
+ * Copyright (c) 2013, 2014 Daniel Baluta <dbaluta@ixiacom.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef BUNDLES_H
+#define BUNDLES_H 1
+
+#include <sys/types.h>
+
+#include "ofp-msgs.h"
+#include "connmgr.h"
+#include "ofp-util.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+enum ofperr ofp_bundle_open(struct ofconn *ofconn, uint32_t id, uint16_t flags);
+
+enum ofperr ofp_bundle_close(struct ofconn *ofconn, uint32_t id, uint16_t flags);
+
+enum ofperr ofp_bundle_commit(struct ofconn *ofconn, uint32_t id, uint16_t flags);
+
+enum ofperr ofp_bundle_discard(struct ofconn *ofconn, uint32_t id);
+
+enum ofperr ofp_bundle_add_message(struct ofconn *ofconn,
+ struct ofputil_bundle_add_msg *badd);
+
+void ofp_bundle_remove_all(struct ofconn *ofconn);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif