blob: e3938a870cd4efd3103c253baac8309a574ddb8c [file] [log] [blame]
Ken Chiang103e1472013-05-13 17:21:57 -07001// Copyright 2013, Big Switch Networks, Inc.
2//
3// LoxiGen is licensed under the Eclipse Public License, version 1.0 (EPL), with
4// the following special exception:
5//
6// LOXI Exception
7//
8// As a special exception to the terms of the EPL, you may distribute libraries
9// generated by LoxiGen (LoxiGen Libraries) under the terms of your choice, provided
10// that copyright and licensing notices generated by LoxiGen are not altered or removed
11// from the LoxiGen Libraries and the notice provided below is (i) included in
12// the LoxiGen Libraries, if distributed in source code form and (ii) included in any
13// documentation for the LoxiGen Libraries, if distributed in binary form.
14//
15// Notice: "Copyright 2013, Big Switch Networks, Inc. This library was generated by the LoxiGen Compiler."
16//
17// You may not use this file except in compliance with the EPL or LOXI Exception. You may obtain
18// a copy of the EPL at:
19//
20// http://www.eclipse.org/legal/epl-v10.html
21//
22// Unless required by applicable law or agreed to in writing, software
23// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
24// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
25// EPL for the specific language governing permissions and limitations
26// under the EPL.
27
28#version 1
29
30// BSN L2 table configuration messages
Rich Laned0714672013-05-29 14:22:35 -070031struct of_bsn_set_l2_table_request {
Ken Chiang103e1472013-05-13 17:21:57 -070032 uint8_t version;
Rich Lane4db4d042013-05-13 18:13:48 -070033 uint8_t type == 4;
Ken Chiang103e1472013-05-13 17:21:57 -070034 uint16_t length;
35 uint32_t xid;
Rich Lane4db4d042013-05-13 18:13:48 -070036 uint32_t experimenter == 0x5c16c7;
37 uint32_t subtype == 12;
Ken Chiang103e1472013-05-13 17:21:57 -070038 uint8_t l2_table_enable; // 1 == enabled, 0 == disabled
39 uint8_t pad;
40 uint16_t l2_table_priority; // priority of all flows in L2 table
41 uint8_t[4] pad;
42};
43
Rich Laned0714672013-05-29 14:22:35 -070044struct of_bsn_set_l2_table_reply {
Dan Talaycofc2eb492013-05-24 13:15:50 -070045 uint8_t version;
Rich Laned0714672013-05-29 14:22:35 -070046 uint8_t type == 4;
Dan Talaycofc2eb492013-05-24 13:15:50 -070047 uint16_t length;
48 uint32_t xid;
Rich Laned0714672013-05-29 14:22:35 -070049 uint32_t experimenter == 0x5c16c7;
50 uint32_t subtype == 24;
Dan Talaycofc2eb492013-05-24 13:15:50 -070051 uint8_t l2_table_enable; // Resulting state: 1 == enabled, 0 == disabled
52 uint8_t pad;
53 uint16_t l2_table_priority; // priority used, must match request if ok
54 uint32_t status; // 0 means success
55};
56
Rich Lane68ae4d72013-05-09 10:55:19 -070057struct of_bsn_get_l2_table_request {
Ken Chiang103e1472013-05-13 17:21:57 -070058 uint8_t version;
Rich Lane4db4d042013-05-13 18:13:48 -070059 uint8_t type == 4;
Ken Chiang103e1472013-05-13 17:21:57 -070060 uint16_t length;
61 uint32_t xid;
Rich Lane4db4d042013-05-13 18:13:48 -070062 uint32_t experimenter == 0x5c16c7;
63 uint32_t subtype == 13;
Ken Chiang103e1472013-05-13 17:21:57 -070064};
65
Rich Lane68ae4d72013-05-09 10:55:19 -070066struct of_bsn_get_l2_table_reply {
Ken Chiang103e1472013-05-13 17:21:57 -070067 uint8_t version;
Rich Lane4db4d042013-05-13 18:13:48 -070068 uint8_t type == 4;
Ken Chiang103e1472013-05-13 17:21:57 -070069 uint16_t length;
70 uint32_t xid;
Rich Lane4db4d042013-05-13 18:13:48 -070071 uint32_t experimenter == 0x5c16c7;
72 uint32_t subtype == 14;
Ken Chiang103e1472013-05-13 17:21:57 -070073 uint8_t l2_table_enable; // 1 == enabled, 0 == disabled
74 uint8_t pad;
75 uint16_t l2_table_priority; // priority of all flows in L2 table
76 uint8_t[4] pad;
77};