Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 1 | #version 4 |
| 2 | |
| 3 | struct of_calient_port_desc_stats_request : of_calient_stats_request { |
| 4 | uint8_t version; |
| 5 | uint8_t type == 18; |
| 6 | uint16_t length; |
| 7 | uint32_t xid; |
| 8 | uint16_t stats_type == 0xffff; |
| 9 | enum ofp_stats_request_flags flags; |
| 10 | pad(4); |
| 11 | uint32_t experimenter == 0x0080F958; |
| 12 | uint32_t subtype == 1; |
| 13 | }; |
| 14 | |
| 15 | |
| 16 | struct of_calient_port_desc_prop { |
| 17 | uint16_t type == ?; /* One of OFPPDPT_*. */ |
| 18 | uint16_t length; /* Length in bytes of this property. */ |
| 19 | }; |
| 20 | |
| 21 | |
| 22 | enum ofp_calient_optical_port_admin_state(wire_type=uint8_t, bitmask=True){ |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 23 | OFPAS_IN_SERVICE = 0, // Enabled to provide service |
| 24 | OFPAS_OUT_OF_SERVICE = 1, //Not enabled to provide service |
| 25 | OFPAS_OOS_NP = 2, //Not yet added to system by operator |
| 26 | OFPAS_UNDERMANAGEMENT=3, // Configured to provide service, but suspended for maintanance |
| 27 | OFPAS_READY=4 // awaiting activation, IS but not monitored |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 28 | }; |
| 29 | |
| 30 | enum ofp_calient_optical_port_oper_state(wire_type=uint8_t, bitmask=True){ |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 31 | OFPOS_IN_SERVICE = 0, // Functioning normally & providing service |
| 32 | OFPOS_OUT_OF_SERVICE = 1, //Not providing service |
| 33 | OFPOS_INITIALIZING = 2, // Initializing |
| 34 | OFPOS_READY = 3, // awaiting activation |
| 35 | OFPOS_DEGRADED = 4, // component failure causing reduced level of support |
| 36 | OFPOS_DIAGNOSTICS=5 // performing diagnostics |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 37 | }; |
| 38 | |
| 39 | enum ofp_calient_optical_port_oper_capability(wire_type=uint8_t, bitmask=True){ |
Aneesha Pailla | 682a821 | 2016-02-03 11:30:55 -0800 | [diff] [blame] | 40 | OFPCS_NoHardware = 0, /* when port is not in connection */ |
| 41 | OFPCS_Ok = 1, /* port is in Connection which is made successfully */ |
| 42 | OFPCS_Failed = 2, /* when port is in Connection which is Failed */ |
| 43 | OFPCS_Initializing = 3,/* when port is in Connection which is being made */ |
| 44 | OFPCS_Diagnostics=4, // performing diagnostics |
| 45 | OFPCS_Synchronizing=5 // Synchronizing |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 46 | }; |
| 47 | |
| 48 | |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 49 | struct of_calient_port_desc_prop_optical : of_calient_port_desc_prop{ |
| 50 | uint16_t type == 2; /* OFPPDPT_OPTICAL_CIRCUIT */ |
| 51 | uint16_t length; /* Length in bytes of this property. */ |
| 52 | enum ofp_calient_optical_port_admin_state in_admin_status; |
| 53 | enum ofp_calient_optical_port_oper_state in_oper_status; |
Marc De Leenheer | 88c0bcb | 2015-07-24 15:49:19 -0700 | [diff] [blame] | 54 | enum ofp_calient_optical_port_oper_capability in_oper_capability;/* currently not present in backend */ |
Brian O'Connor | 58a73e3 | 2015-05-28 11:51:27 -0700 | [diff] [blame] | 55 | enum ofp_calient_optical_port_admin_state out_admin_status; |
| 56 | enum ofp_calient_optical_port_oper_state out_oper_status; |
| 57 | enum ofp_calient_optical_port_oper_capability out_oper_capability; |
| 58 | of_str6_t inport_power; /* Input Port Power */ |
| 59 | of_str6_t outport_power; /* Output Port Power */ |
| 60 | pad(2); |
| 61 | uint64_t in_peer_node; /* Peer node datapath id connected to the input optical port */ |
| 62 | uint64_t out_peer_node; /* Peer node datapath id connected to the output optical port */ |
| 63 | uint16_t in_peer_port; /* Peer port number connected to the input optical port */ |
| 64 | uint16_t out_peer_port; /* Peer port number connected to the output optical port */ |
| 65 | pad(4); |
| 66 | of_str32_t in_circuit_id; /* Circuit Id associated with the input port */ |
| 67 | of_str32_t out_circuit_id; /* Circuit id associated with the output port */ |
| 68 | of_str64_t in_alias; /* Alias(name) for the input port */ |
| 69 | of_str64_t out_alias; /* Alias(name) for the output port */ |
| 70 | }; |
| 71 | |
| 72 | struct of_calient_port_desc_stats_entry { |
| 73 | uint16_t length; |
| 74 | pad(2); |
| 75 | of_port_no_t port_no; |
| 76 | of_mac_addr_t hw_addr; |
| 77 | pad(2); |
| 78 | of_port_name_t name; /* Not used.NULL */ |
| 79 | uint32_t config; /* Not used. Always 0. */ |
| 80 | uint32_t state; /* Not used. Always 0. */ |
| 81 | list(of_calient_port_desc_prop_t) properties; |
| 82 | }; |
| 83 | |
| 84 | struct of_calient_port_desc_stats_reply : of_calient_stats_reply { |
| 85 | uint8_t version; |
| 86 | uint8_t type == 19; |
| 87 | uint16_t length; |
| 88 | uint32_t xid; |
| 89 | uint16_t stats_type == 0xffff; |
| 90 | enum ofp_stats_reply_flags flags; |
| 91 | pad(4); |
| 92 | uint32_t experimenter == 0x0080F958; |
| 93 | uint32_t subtype == 1; |
| 94 | list(of_calient_port_desc_stats_entry_t)port_desc; |
| 95 | }; |
| 96 | |
| 97 | |
Marc De Leenheer | 88c0bcb | 2015-07-24 15:49:19 -0700 | [diff] [blame] | 98 | struct of_calient_port_status : of_experimenter{ |
| 99 | uint8_t version; |
| 100 | uint8_t type == 4; |
| 101 | uint16_t length; |
| 102 | uint32_t xid; |
| 103 | uint32_t experimenter == 0x0080F958; |
| 104 | uint32_t subtype == 1; |
| 105 | enum ofp_port_reason reason; |
| 106 | pad(7); |
| 107 | of_calient_port_desc_stats_entry_t desc; |
| 108 | }; |
| 109 | |