blob: f1e830e8a119219fa43f320a6a4e970d2c56496e [file] [log] [blame]
/*
* Copyright (c) 2008 The Board of Trustees of The Leland Stanford Junior University
* Copyright (c) 2011, 2012 Open Networking Foundation
* Copyright 2013, Big Switch Networks, Inc. This library was generated by the LoxiGen Compiler.
* Copyright 2018, Red Hat, Inc.
*/
// Automatically generated by LOXI from template const.go
// Do not modify
package of13
import (
"fmt"
"strings"
)
const (
// Identifiers from group macro_definitions
MaxTableNameLen = 32 // OFP_MAX_TABLE_NAME_LEN
MaxPortNameLen = 16 // OFP_MAX_PORT_NAME_LEN
TCPPort = 6653 // OFP_TCP_PORT
SSLPort = 6653 // OFP_SSL_PORT
EthAlen = 6 // OFP_ETH_ALEN
DefaultMissSendLen = 128 // OFP_DEFAULT_MISS_SEND_LEN
VLANNone = 0 // OFP_VLAN_NONE
FlowPermanent = 0 // OFP_FLOW_PERMANENT
DefaultPriority = 32768 // OFP_DEFAULT_PRIORITY
NoBuffer = 4294967295 // OFP_NO_BUFFER
DescStrLen = 256 // DESC_STR_LEN
SerialNumLen = 32 // SERIAL_NUM_LEN
OFPQAll = 4294967295 // OFPQ_ALL
OFPQMaxRateUncfg = 65535 // OFPQ_MAX_RATE_UNCFG
OFPQMinRateUncfg = 65535 // OFPQ_MIN_RATE_UNCFG
)
const (
// Identifiers from group nx_action_controller2_prop_type
Nxac2PtMaxLen = 0 // NXAC2PT_MAX_LEN
Nxac2PtControllerID = 1 // NXAC2PT_CONTROLLER_ID
Nxac2PtReason = 2 // NXAC2PT_REASON
Nxac2PtUserdata = 3 // NXAC2PT_USERDATA
Nxac2PtPause = 4 // NXAC2PT_PAUSE
Nxac2PtMeterID = 5 // NXAC2PT_METER_ID
)
type NxActionController2PropType uint16
func (self NxActionController2PropType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group nx_bd_algorithms
NxBdAlgActiveBackup = 0 // NX_BD_ALG_ACTIVE_BACKUP
NxBdAlgHrw = 1 // NX_BD_ALG_HRW
)
type NxBdAlgorithms uint16
func (self NxBdAlgorithms) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self NxBdAlgorithms) String() string {
switch self {
case NxBdAlgActiveBackup:
return "active_backup"
case NxBdAlgHrw:
return "hrw"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group nx_conntrack_flags
NxCtFCommit = 1 // NX_CT_F_COMMIT
NxCtFForce = 2 // NX_CT_F_FORCE
)
type NxConntrackFlags uint16
func (self NxConntrackFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&NxCtFCommit == NxCtFCommit {
flags = append(flags, "\"Commit\": true")
}
if self&NxCtFForce == NxCtFForce {
flags = append(flags, "\"Force\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group nx_flow_monitor_flags
NxfmfInitial = 1 // NXFMF_INITIAL
NxfmfAdd = 2 // NXFMF_ADD
NxfmfDelete = 4 // NXFMF_DELETE
NxfmfModify = 8 // NXFMF_MODIFY
NxfmfActions = 16 // NXFMF_ACTIONS
NxfmfOwn = 32 // NXFMF_OWN
)
type NxFlowMonitorFlags uint16
func (self NxFlowMonitorFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&NxfmfInitial == NxfmfInitial {
flags = append(flags, "\"Initial\": true")
}
if self&NxfmfAdd == NxfmfAdd {
flags = append(flags, "\"Add\": true")
}
if self&NxfmfDelete == NxfmfDelete {
flags = append(flags, "\"Delete\": true")
}
if self&NxfmfModify == NxfmfModify {
flags = append(flags, "\"Modify\": true")
}
if self&NxfmfActions == NxfmfActions {
flags = append(flags, "\"Actions\": true")
}
if self&NxfmfOwn == NxfmfOwn {
flags = append(flags, "\"Own\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group nx_hash_fields
NxHashFieldsEthSrc = 0 // NX_HASH_FIELDS_ETH_SRC
NxHashFieldsSymmetricL4 = 1 // NX_HASH_FIELDS_SYMMETRIC_L4
NxHashFieldsSymmetricL3L4 = 2 // NX_HASH_FIELDS_SYMMETRIC_L3L4
NxHashFieldsSymmetricL3L4Udp = 3 // NX_HASH_FIELDS_SYMMETRIC_L3L4_UDP
NxHashFieldsNwSrc = 4 // NX_HASH_FIELDS_NW_SRC
NxHashFieldsNwDst = 5 // NX_HASH_FIELDS_NW_DST
NxHashFieldsSymmetricL3 = 6 // NX_HASH_FIELDS_SYMMETRIC_L3
)
type NxHashFields uint16
func (self NxHashFields) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self NxHashFields) String() string {
switch self {
case NxHashFieldsEthSrc:
return "eth_src"
case NxHashFieldsSymmetricL4:
return "symmetric_l4"
case NxHashFieldsSymmetricL3L4:
return "symmetric_l3l4"
case NxHashFieldsSymmetricL3L4Udp:
return "symmetric_l3l4_udp"
case NxHashFieldsNwSrc:
return "nw_src"
case NxHashFieldsNwDst:
return "nw_dst"
case NxHashFieldsSymmetricL3:
return "symmetric_l3"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group nx_mp_algorithm
NxMpAlgModuloN = 0 // NX_MP_ALG_MODULO_N
NxMpAlgHashThreshold = 1 // NX_MP_ALG_HASH_THRESHOLD
NxMpAlgHrw = 2 // NX_MP_ALG_HRW
NxMpAlgIterHash = 3 // NX_MP_ALG_ITER_HASH
)
type NxMpAlgorithm uint16
func (self NxMpAlgorithm) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self NxMpAlgorithm) String() string {
switch self {
case NxMpAlgModuloN:
return "modulo_n"
case NxMpAlgHashThreshold:
return "hash_threshold"
case NxMpAlgHrw:
return "hrw"
case NxMpAlgIterHash:
return "iter_hash"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group of_action_nx_bundle_slave_type
NxmOfInPort = 2 // NXM_OF_IN_PORT
NxmOfJustThereToDefinePrefix = 10000 // NXM_OF_JUST_THERE_TO_DEFINE_PREFIX
)
type ActionNxBundleSlaveType uint32
func (self ActionNxBundleSlaveType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self ActionNxBundleSlaveType) String() string {
switch self {
case NxmOfInPort:
return "in_port"
case NxmOfJustThereToDefinePrefix:
return "just_there_to_define_prefix"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group of_bsn_gentable_error_code
OFBSNGentableErrorUnknown = 0 // OF_BSN_GENTABLE_ERROR_UNKNOWN
OFBSNGentableErrorParam = 1 // OF_BSN_GENTABLE_ERROR_PARAM
OFBSNGentableErrorTableFull = 2 // OF_BSN_GENTABLE_ERROR_TABLE_FULL
)
type BsnGentableErrorCode uint16
func (self BsnGentableErrorCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group of_bsn_hash_gtp_port_match
OFBSNHashGtpPortMatchSrc = 1 // OF_BSN_HASH_GTP_PORT_MATCH_SRC
OFBSNHashGtpPortMatchDst = 2 // OF_BSN_HASH_GTP_PORT_MATCH_DST
OFBSNHashGtpPortMatchSrcOrDst = 3 // OF_BSN_HASH_GTP_PORT_MATCH_SRC_OR_DST
OFBSNHashGtpPortMatchSrcAndDst = 4 // OF_BSN_HASH_GTP_PORT_MATCH_SRC_AND_DST
)
type BsnHashGtpPortMatch uint8
func (self BsnHashGtpPortMatch) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group of_bsn_hash_packet_field
BSNHashFieldDstMAC = 2 // OFP_BSN_HASH_FIELD_DST_MAC
BSNHashFieldSrcMAC = 4 // OFP_BSN_HASH_FIELD_SRC_MAC
BSNHashFieldEthType = 8 // OFP_BSN_HASH_FIELD_ETH_TYPE
BSNHashFieldVLANID = 16 // OFP_BSN_HASH_FIELD_VLAN_ID
BSNHashFieldInnerL2 = 32 // OFP_BSN_HASH_FIELD_INNER_L2
BSNHashFieldInnerL3 = 64 // OFP_BSN_HASH_FIELD_INNER_L3
BSNHashFieldSrcIp = 128 // OFP_BSN_HASH_FIELD_SRC_IP
BSNHashFieldDstIp = 256 // OFP_BSN_HASH_FIELD_DST_IP
BSNHashFieldIpProto = 512 // OFP_BSN_HASH_FIELD_IP_PROTO
BSNHashFieldSrcL4Port = 1024 // OFP_BSN_HASH_FIELD_SRC_L4_PORT
BSNHashFieldDstL4Port = 2048 // OFP_BSN_HASH_FIELD_DST_L4_PORT
BSNHashFieldMplsLabel1 = 4096 // OFP_BSN_HASH_FIELD_MPLS_LABEL1
BSNHashFieldMplsLabel2 = 8192 // OFP_BSN_HASH_FIELD_MPLS_LABEL2
BSNHashFieldMplsLabel3 = 16384 // OFP_BSN_HASH_FIELD_MPLS_LABEL3
BSNHashFieldMplsLabelHiBits = 32768 // OFP_BSN_HASH_FIELD_MPLS_LABEL_HI_BITS
BSNHashFieldMplsPayloadSrcIp = 65536 // OFP_BSN_HASH_FIELD_MPLS_PAYLOAD_SRC_IP
BSNHashFieldMplsPayloadDstIp = 131072 // OFP_BSN_HASH_FIELD_MPLS_PAYLOAD_DST_IP
BSNHashFieldSymmetric = 262144 // OFP_BSN_HASH_FIELD_SYMMETRIC
)
type BsnHashPacketField uint64
func (self BsnHashPacketField) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNHashFieldDstMAC == BSNHashFieldDstMAC {
flags = append(flags, "\"DstMAC\": true")
}
if self&BSNHashFieldSrcMAC == BSNHashFieldSrcMAC {
flags = append(flags, "\"SrcMAC\": true")
}
if self&BSNHashFieldEthType == BSNHashFieldEthType {
flags = append(flags, "\"EthType\": true")
}
if self&BSNHashFieldVLANID == BSNHashFieldVLANID {
flags = append(flags, "\"VlanID\": true")
}
if self&BSNHashFieldInnerL2 == BSNHashFieldInnerL2 {
flags = append(flags, "\"InnerL2\": true")
}
if self&BSNHashFieldInnerL3 == BSNHashFieldInnerL3 {
flags = append(flags, "\"InnerL3\": true")
}
if self&BSNHashFieldSrcIp == BSNHashFieldSrcIp {
flags = append(flags, "\"SrcIp\": true")
}
if self&BSNHashFieldDstIp == BSNHashFieldDstIp {
flags = append(flags, "\"DstIp\": true")
}
if self&BSNHashFieldIpProto == BSNHashFieldIpProto {
flags = append(flags, "\"IpProto\": true")
}
if self&BSNHashFieldSrcL4Port == BSNHashFieldSrcL4Port {
flags = append(flags, "\"SrcL4Port\": true")
}
if self&BSNHashFieldDstL4Port == BSNHashFieldDstL4Port {
flags = append(flags, "\"DstL4Port\": true")
}
if self&BSNHashFieldMplsLabel1 == BSNHashFieldMplsLabel1 {
flags = append(flags, "\"MplsLabel1\": true")
}
if self&BSNHashFieldMplsLabel2 == BSNHashFieldMplsLabel2 {
flags = append(flags, "\"MplsLabel2\": true")
}
if self&BSNHashFieldMplsLabel3 == BSNHashFieldMplsLabel3 {
flags = append(flags, "\"MplsLabel3\": true")
}
if self&BSNHashFieldMplsLabelHiBits == BSNHashFieldMplsLabelHiBits {
flags = append(flags, "\"MplsLabelHiBits\": true")
}
if self&BSNHashFieldMplsPayloadSrcIp == BSNHashFieldMplsPayloadSrcIp {
flags = append(flags, "\"MplsPayloadSrcIp\": true")
}
if self&BSNHashFieldMplsPayloadDstIp == BSNHashFieldMplsPayloadDstIp {
flags = append(flags, "\"MplsPayloadDstIp\": true")
}
if self&BSNHashFieldSymmetric == BSNHashFieldSymmetric {
flags = append(flags, "\"Symmetric\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group of_bsn_hash_packet_type
OFBSNHashPacketL2 = 0 // OF_BSN_HASH_PACKET_L2
OFBSNHashPacketL2Gre = 1 // OF_BSN_HASH_PACKET_L2GRE
OFBSNHashPacketIpv4 = 3 // OF_BSN_HASH_PACKET_IPV4
OFBSNHashPacketIpv6 = 4 // OF_BSN_HASH_PACKET_IPV6
OFBSNHashPacketMpls = 5 // OF_BSN_HASH_PACKET_MPLS
OFBSNHashPacketSymmetric = 6 // OF_BSN_HASH_PACKET_SYMMETRIC
)
type BsnHashPacketType uint8
func (self BsnHashPacketType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group of_bsn_hash_type
BSNHashTypeL2 = 0 // OFP_BSN_HASH_TYPE_L2
BSNHashTypeL3 = 1 // OFP_BSN_HASH_TYPE_L3
BSNHashTypeEnhanced = 2 // OFP_BSN_HASH_TYPE_ENHANCED
)
type BsnHashType uint8
func (self BsnHashType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group of_bsn_lacp_convergence_status
LacpSuccess = 0 // LACP_SUCCESS
LacpTimedout = 1 // LACP_TIMEDOUT
LacpOutOfSync = 2 // LACP_OUT_OF_SYNC
)
type BsnLacpConvergenceStatus uint8
func (self BsnLacpConvergenceStatus) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group of_bsn_pdu_slot_num
BsnPduSlotNumAny = 255 // BSN_PDU_SLOT_NUM_ANY
)
type BsnPduSlotNum uint8
func (self BsnPduSlotNum) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group of_bsn_vlan_counter
BSNVLANCounterRxBytes = 0 // OFP_BSN_VLAN_COUNTER_RX_BYTES
BSNVLANCounterRxPackets = 1 // OFP_BSN_VLAN_COUNTER_RX_PACKETS
BSNVLANCounterTxBytes = 2 // OFP_BSN_VLAN_COUNTER_TX_BYTES
BSNVLANCounterTxPackets = 3 // OFP_BSN_VLAN_COUNTER_TX_PACKETS
)
type BsnVlanCounter uint8
func (self BsnVlanCounter) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group of_bsn_vrf_counter
BSNVrfCounterBytes = 0 // OFP_BSN_VRF_COUNTER_BYTES
BSNVrfCounterPackets = 1 // OFP_BSN_VRF_COUNTER_PACKETS
)
type BsnVrfCounter uint8
func (self BsnVrfCounter) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group of_nx_nat_range
NxNatRangeIpv4Min = 1 // NX_NAT_RANGE_IPV4_MIN
NxNatRangeIpv4Max = 2 // NX_NAT_RANGE_IPV4_MAX
NxNatRangeIpv6Min = 4 // NX_NAT_RANGE_IPV6_MIN
NxNatRangeIpv6Max = 8 // NX_NAT_RANGE_IPV6_MAX
NxNatRangeProtoMin = 16 // NX_NAT_RANGE_PROTO_MIN
NxNatRangeProtoMax = 32 // NX_NAT_RANGE_PROTO_MAX
)
type NxNatRange uint16
func (self NxNatRange) MarshalJSON() ([]byte, error) {
var flags []string
if self&NxNatRangeIpv4Min == NxNatRangeIpv4Min {
flags = append(flags, "\"Ipv4Min\": true")
}
if self&NxNatRangeIpv4Max == NxNatRangeIpv4Max {
flags = append(flags, "\"Ipv4Max\": true")
}
if self&NxNatRangeIpv6Min == NxNatRangeIpv6Min {
flags = append(flags, "\"Ipv6Min\": true")
}
if self&NxNatRangeIpv6Max == NxNatRangeIpv6Max {
flags = append(flags, "\"Ipv6Max\": true")
}
if self&NxNatRangeProtoMin == NxNatRangeProtoMin {
flags = append(flags, "\"ProtoMin\": true")
}
if self&NxNatRangeProtoMax == NxNatRangeProtoMax {
flags = append(flags, "\"ProtoMax\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_action_type
OFPATOutput = 0 // OFPAT_OUTPUT
OFPATCopyTtlOut = 11 // OFPAT_COPY_TTL_OUT
OFPATCopyTtlIn = 12 // OFPAT_COPY_TTL_IN
OFPATSetMplsTtl = 15 // OFPAT_SET_MPLS_TTL
OFPATDecMplsTtl = 16 // OFPAT_DEC_MPLS_TTL
OFPATPushVLAN = 17 // OFPAT_PUSH_VLAN
OFPATPopVLAN = 18 // OFPAT_POP_VLAN
OFPATPushMpls = 19 // OFPAT_PUSH_MPLS
OFPATPopMpls = 20 // OFPAT_POP_MPLS
OFPATSetQueue = 21 // OFPAT_SET_QUEUE
OFPATGroup = 22 // OFPAT_GROUP
OFPATSetNwTtl = 23 // OFPAT_SET_NW_TTL
OFPATDecNwTtl = 24 // OFPAT_DEC_NW_TTL
OFPATSetField = 25 // OFPAT_SET_FIELD
OFPATPushPbb = 26 // OFPAT_PUSH_PBB
OFPATPopPbb = 27 // OFPAT_POP_PBB
OFPATExperimenter = 65535 // OFPAT_EXPERIMENTER
)
type ActionType uint16
func (self ActionType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bad_action_code
OFPBACBadType = 0 // OFPBAC_BAD_TYPE
OFPBACBadLen = 1 // OFPBAC_BAD_LEN
OFPBACBadExperimenter = 2 // OFPBAC_BAD_EXPERIMENTER
OFPBACBadExperimenterType = 3 // OFPBAC_BAD_EXPERIMENTER_TYPE
OFPBACBadOutPort = 4 // OFPBAC_BAD_OUT_PORT
OFPBACBadArgument = 5 // OFPBAC_BAD_ARGUMENT
OFPBACEperm = 6 // OFPBAC_EPERM
OFPBACTooMany = 7 // OFPBAC_TOO_MANY
OFPBACBadQueue = 8 // OFPBAC_BAD_QUEUE
OFPBACBadOutGroup = 9 // OFPBAC_BAD_OUT_GROUP
OFPBACMatchInconsistent = 10 // OFPBAC_MATCH_INCONSISTENT
OFPBACUnsupportedOrder = 11 // OFPBAC_UNSUPPORTED_ORDER
OFPBACBadTag = 12 // OFPBAC_BAD_TAG
OFPBACBadSetType = 13 // OFPBAC_BAD_SET_TYPE
OFPBACBadSetLen = 14 // OFPBAC_BAD_SET_LEN
OFPBACBadSetArgument = 15 // OFPBAC_BAD_SET_ARGUMENT
)
type BadActionCode uint16
func (self BadActionCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bad_instruction_code
OFPBICUnknownInst = 0 // OFPBIC_UNKNOWN_INST
OFPBICUnsupInst = 1 // OFPBIC_UNSUP_INST
OFPBICBadTableID = 2 // OFPBIC_BAD_TABLE_ID
OFPBICUnsupMetadata = 3 // OFPBIC_UNSUP_METADATA
OFPBICUnsupMetadataMask = 4 // OFPBIC_UNSUP_METADATA_MASK
OFPBICBadExperimenter = 5 // OFPBIC_BAD_EXPERIMENTER
OFPBICBadExperimenterType = 6 // OFPBIC_BAD_EXPERIMENTER_TYPE
OFPBICBadLen = 7 // OFPBIC_BAD_LEN
OFPBICEperm = 8 // OFPBIC_EPERM
)
type BadInstructionCode uint16
func (self BadInstructionCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bad_match_code
OFPBMCBadType = 0 // OFPBMC_BAD_TYPE
OFPBMCBadLen = 1 // OFPBMC_BAD_LEN
OFPBMCBadTag = 2 // OFPBMC_BAD_TAG
OFPBMCBadDlAddrMask = 3 // OFPBMC_BAD_DL_ADDR_MASK
OFPBMCBadNwAddrMask = 4 // OFPBMC_BAD_NW_ADDR_MASK
OFPBMCBadWildcards = 5 // OFPBMC_BAD_WILDCARDS
OFPBMCBadField = 6 // OFPBMC_BAD_FIELD
OFPBMCBadValue = 7 // OFPBMC_BAD_VALUE
OFPBMCBadMask = 8 // OFPBMC_BAD_MASK
OFPBMCBadPrereq = 9 // OFPBMC_BAD_PREREQ
OFPBMCDupField = 10 // OFPBMC_DUP_FIELD
OFPBMCEperm = 11 // OFPBMC_EPERM
)
type BadMatchCode uint16
func (self BadMatchCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bad_request_code
OFPBRCBadVersion = 0 // OFPBRC_BAD_VERSION
OFPBRCBadType = 1 // OFPBRC_BAD_TYPE
OFPBRCBadStat = 2 // OFPBRC_BAD_STAT
OFPBRCBadExperimenter = 3 // OFPBRC_BAD_EXPERIMENTER
OFPBRCBadExperimenterType = 4 // OFPBRC_BAD_EXPERIMENTER_TYPE
OFPBRCEperm = 5 // OFPBRC_EPERM
OFPBRCBadLen = 6 // OFPBRC_BAD_LEN
OFPBRCBufferEmpty = 7 // OFPBRC_BUFFER_EMPTY
OFPBRCBufferUnknown = 8 // OFPBRC_BUFFER_UNKNOWN
OFPBRCBadTableID = 9 // OFPBRC_BAD_TABLE_ID
OFPBRCIsSlave = 10 // OFPBRC_IS_SLAVE
OFPBRCBadPort = 11 // OFPBRC_BAD_PORT
OFPBRCBadPacket = 12 // OFPBRC_BAD_PACKET
OFPBRCMultipartBufferOverflow = 13 // OFPBRC_MULTIPART_BUFFER_OVERFLOW
)
type BadRequestCode uint16
func (self BadRequestCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_anchor
BSNAnchorPacketStart = 0 // OFP_BSN_ANCHOR_PACKET_START
BSNAnchorL3HeaderStart = 1 // OFP_BSN_ANCHOR_L3_HEADER_START
BSNAnchorL4HeaderStart = 2 // OFP_BSN_ANCHOR_L4_HEADER_START
BSNAnchorL4PayloadStart = 3 // OFP_BSN_ANCHOR_L4_PAYLOAD_START
)
type BsnAnchor uint16
func (self BsnAnchor) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_auto_negotiation_type
BSNAutoNegotiationDefault = 0 // OFP_BSN_AUTO_NEGOTIATION_DEFAULT
BSNAutoNegotiationEnable = 1 // OFP_BSN_AUTO_NEGOTIATION_ENABLE
BSNAutoNegotiationDisable = 2 // OFP_BSN_AUTO_NEGOTIATION_DISABLE
)
type BsnAutoNegotiationType uint8
func (self BsnAutoNegotiationType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_bfd_endpoint
BSNBfdUnused = 0 // OFP_BSN_BFD_UNUSED
BSNBfdMicro = 1 // OFP_BSN_BFD_MICRO
BSNBfd1Hop = 2 // OFP_BSN_BFD_1_HOP
BSNBfdMultiHop = 3 // OFP_BSN_BFD_MULTI_HOP
)
type BsnBfdEndpoint uint8
func (self BsnBfdEndpoint) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_bfd_endpoint_state
BSNBfdEndpointStateAdmindown = 0 // OFP_BSN_BFD_ENDPOINT_STATE_ADMINDOWN
BSNBfdEndpointStateDown = 1 // OFP_BSN_BFD_ENDPOINT_STATE_DOWN
BSNBfdEndpointStateInit = 2 // OFP_BSN_BFD_ENDPOINT_STATE_INIT
BSNBfdEndpointStateUp = 3 // OFP_BSN_BFD_ENDPOINT_STATE_UP
BSNBfdEndpointSessionError = 4 // OFP_BSN_BFD_ENDPOINT_SESSION_ERROR
BSNBfdEndpointRemoteAdmindown = 5 // OFP_BSN_BFD_ENDPOINT_REMOTE_ADMINDOWN
BSNBfdEndpointParamsChange = 6 // OFP_BSN_BFD_ENDPOINT_PARAMS_CHANGE
)
type BsnBfdEndpointState uint8
func (self BsnBfdEndpointState) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_controller_connection_state
BSNControllerConnectionStateDisconnected = 0 // OFP_BSN_CONTROLLER_CONNECTION_STATE_DISCONNECTED
BSNControllerConnectionStateConnected = 1 // OFP_BSN_CONTROLLER_CONNECTION_STATE_CONNECTED
)
type BsnControllerConnectionState uint8
func (self BsnControllerConnectionState) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_controller_role_reason
BSNControllerRoleReasonMasterRequest = 0 // OFP_BSN_CONTROLLER_ROLE_REASON_MASTER_REQUEST
BSNControllerRoleReasonConfig = 1 // OFP_BSN_CONTROLLER_ROLE_REASON_CONFIG
BSNControllerRoleReasonExperimenter = 2 // OFP_BSN_CONTROLLER_ROLE_REASON_EXPERIMENTER
)
type BsnControllerRoleReason uint8
func (self BsnControllerRoleReason) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_decap
BSNDecapVxlan = 0 // OFP_BSN_DECAP_VXLAN
BSNDecapErspan = 1 // OFP_BSN_DECAP_ERSPAN
BSNDecapL2GRE = 2 // OFP_BSN_DECAP_L2_GRE
BSNDecapNvgre = 3 // OFP_BSN_DECAP_NVGRE
BSNDecapCapwap = 4 // OFP_BSN_DECAP_CAPWAP
BSNDecapL2Mpls = 5 // OFP_BSN_DECAP_L2_MPLS
BSNDecapL3GRE = 6 // OFP_BSN_DECAP_L3_GRE
BSNDecapGtp = 7 // OFP_BSN_DECAP_GTP
BSNDecapL3Mpls = 8 // OFP_BSN_DECAP_L3_MPLS
)
type BsnDecap uint16
func (self BsnDecap) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_encap
BSNEncapUnused = 0 // OFP_BSN_ENCAP_UNUSED
BSNEncapIpv4Udp = 1 // OFP_BSN_ENCAP_IPV4_UDP
BSNEncapIpv6Udp = 2 // OFP_BSN_ENCAP_IPV6_UDP
)
type BsnEncap uint8
func (self BsnEncap) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_enhanced_hash_type
BSNEnhancedHashL2 = 1 // OFP_BSN_ENHANCED_HASH_L2
BSNEnhancedHashL3 = 2 // OFP_BSN_ENHANCED_HASH_L3
BSNEnhancedHashL2Gre = 4 // OFP_BSN_ENHANCED_HASH_L2GRE
BSNEnhancedHashMpls = 8 // OFP_BSN_ENHANCED_HASH_MPLS
BSNEnhancedHashGtp = 16 // OFP_BSN_ENHANCED_HASH_GTP
BSNEnhancedHashSymmetric = 32 // OFP_BSN_ENHANCED_HASH_SYMMETRIC
)
type BsnEnhancedHashType uint64
func (self BsnEnhancedHashType) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNEnhancedHashL2 == BSNEnhancedHashL2 {
flags = append(flags, "\"L2\": true")
}
if self&BSNEnhancedHashL3 == BSNEnhancedHashL3 {
flags = append(flags, "\"L3\": true")
}
if self&BSNEnhancedHashL2Gre == BSNEnhancedHashL2Gre {
flags = append(flags, "\"L2Gre\": true")
}
if self&BSNEnhancedHashMpls == BSNEnhancedHashMpls {
flags = append(flags, "\"Mpls\": true")
}
if self&BSNEnhancedHashGtp == BSNEnhancedHashGtp {
flags = append(flags, "\"Gtp\": true")
}
if self&BSNEnhancedHashSymmetric == BSNEnhancedHashSymmetric {
flags = append(flags, "\"Symmetric\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_fabric_port_role
BSNFabricPortRolePartitionedSpine = 1 // OFP_BSN_FABRIC_PORT_ROLE_PARTITIONED_SPINE
)
type BsnFabricPortRole uint16
func (self BsnFabricPortRole) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_flow_classifier
BSNFlowClassifierNone = 0 // OFP_BSN_FLOW_CLASSIFIER_NONE
BSNFlowClassifierL2Bc = 1 // OFP_BSN_FLOW_CLASSIFIER_L2BC
BSNFlowClassifierL2Uc = 2 // OFP_BSN_FLOW_CLASSIFIER_L2UC
BSNFlowClassifierL2Unknown = 3 // OFP_BSN_FLOW_CLASSIFIER_L2UNKNOWN
BSNFlowClassifierL2Mcknown = 4 // OFP_BSN_FLOW_CLASSIFIER_L2MCKNOWN
BSNFlowClassifierL2Mcunknown = 5 // OFP_BSN_FLOW_CLASSIFIER_L2MCUNKNOWN
BSNFlowClassifierL3Mcunknown = 6 // OFP_BSN_FLOW_CLASSIFIER_L3MCUNKNOWN
BSNFlowClassifierL3Mcknown = 7 // OFP_BSN_FLOW_CLASSIFIER_L3MCKNOWN
BSNFlowClassifierL3Ucknown = 8 // OFP_BSN_FLOW_CLASSIFIER_L3UCKNOWN
BSNFlowClassifierL3Ucunknown = 9 // OFP_BSN_FLOW_CLASSIFIER_L3UCUNKNOWN
)
type BsnFlowClassifier uint16
func (self BsnFlowClassifier) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_forward_error_correction_type
BSNForwardErrorCorrectionDefault = 0 // OFP_BSN_FORWARD_ERROR_CORRECTION_DEFAULT
BSNForwardErrorCorrectionEnable = 1 // OFP_BSN_FORWARD_ERROR_CORRECTION_ENABLE
BSNForwardErrorCorrectionDisable = 2 // OFP_BSN_FORWARD_ERROR_CORRECTION_DISABLE
)
type BsnForwardErrorCorrectionType uint8
func (self BsnForwardErrorCorrectionType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_hash_algorithm_type
BSNHashAlgorithmCrc16Xor8 = 0 // OFP_BSN_HASH_ALGORITHM_CRC16XOR8
BSNHashAlgorithmCrc16Xor4 = 1 // OFP_BSN_HASH_ALGORITHM_CRC16XOR4
BSNHashAlgorithmCrc16Xor2 = 2 // OFP_BSN_HASH_ALGORITHM_CRC16XOR2
BSNHashAlgorithmCrc16Xor1 = 3 // OFP_BSN_HASH_ALGORITHM_CRC16XOR1
BSNHashAlgorithmCrc16 = 4 // OFP_BSN_HASH_ALGORITHM_CRC16
BSNHashAlgorithmXor16 = 5 // OFP_BSN_HASH_ALGORITHM_XOR16
BSNHashAlgorithmCrc16Ccitt = 6 // OFP_BSN_HASH_ALGORITHM_CRC16CCITT
BSNHashAlgorithmCrc32Lo = 7 // OFP_BSN_HASH_ALGORITHM_CRC32LO
BSNHashAlgorithmCrc32Hi = 8 // OFP_BSN_HASH_ALGORITHM_CRC32HI
)
type BsnHashAlgorithmType uint16
func (self BsnHashAlgorithmType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_hash_select_flags
BSNHashSelectSrcIp = 1 // OFP_BSN_HASH_SELECT_SRC_IP
BSNHashSelectDstIp = 2 // OFP_BSN_HASH_SELECT_DST_IP
)
type BsnHashSelectFlags uint32
func (self BsnHashSelectFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNHashSelectSrcIp == BSNHashSelectSrcIp {
flags = append(flags, "\"SrcIp\": true")
}
if self&BSNHashSelectDstIp == BSNHashSelectDstIp {
flags = append(flags, "\"DstIp\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_ip_tunnel_type
BSNIpTunnelTypeNone = 0 // OFP_BSN_IP_TUNNEL_TYPE_NONE
BSNIpTunnelTypePim = 1 // OFP_BSN_IP_TUNNEL_TYPE_PIM
)
type BsnIpTunnelType uint16
func (self BsnIpTunnelType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_lacp_state
BSNLacpStateActivity = 1 // OFP_BSN_LACP_STATE_ACTIVITY
BSNLacpStateTimeout = 2 // OFP_BSN_LACP_STATE_TIMEOUT
BSNLacpStateAggregation = 4 // OFP_BSN_LACP_STATE_AGGREGATION
BSNLacpStateSynchronization = 8 // OFP_BSN_LACP_STATE_SYNCHRONIZATION
BSNLacpStateCollecting = 16 // OFP_BSN_LACP_STATE_COLLECTING
BSNLacpStateDistributing = 32 // OFP_BSN_LACP_STATE_DISTRIBUTING
BSNLacpStateDefaulted = 64 // OFP_BSN_LACP_STATE_DEFAULTED
BSNLacpStateExpired = 128 // OFP_BSN_LACP_STATE_EXPIRED
)
type BsnLacpState uint8
func (self BsnLacpState) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNLacpStateActivity == BSNLacpStateActivity {
flags = append(flags, "\"Activity\": true")
}
if self&BSNLacpStateTimeout == BSNLacpStateTimeout {
flags = append(flags, "\"Timeout\": true")
}
if self&BSNLacpStateAggregation == BSNLacpStateAggregation {
flags = append(flags, "\"Aggregation\": true")
}
if self&BSNLacpStateSynchronization == BSNLacpStateSynchronization {
flags = append(flags, "\"Synchronization\": true")
}
if self&BSNLacpStateCollecting == BSNLacpStateCollecting {
flags = append(flags, "\"Collecting\": true")
}
if self&BSNLacpStateDistributing == BSNLacpStateDistributing {
flags = append(flags, "\"Distributing\": true")
}
if self&BSNLacpStateDefaulted == BSNLacpStateDefaulted {
flags = append(flags, "\"Defaulted\": true")
}
if self&BSNLacpStateExpired == BSNLacpStateExpired {
flags = append(flags, "\"Expired\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_lag_flag
BSNLagFlagAutoRecovery = 1 // OFP_BSN_LAG_FLAG_AUTO_RECOVERY
)
type BsnLagFlag uint16
func (self BsnLagFlag) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNLagFlagAutoRecovery == BSNLagFlagAutoRecovery {
flags = append(flags, "\"BSNLagFlagAutoRecovery\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_loglevel
BSNLoglevelMsg = 0 // OFP_BSN_LOGLEVEL_MSG
BSNLoglevelError = 1 // OFP_BSN_LOGLEVEL_ERROR
BSNLoglevelWarn = 2 // OFP_BSN_LOGLEVEL_WARN
BSNLoglevelInfo = 3 // OFP_BSN_LOGLEVEL_INFO
BSNLoglevelVerbose = 4 // OFP_BSN_LOGLEVEL_VERBOSE
BSNLoglevelTrace = 5 // OFP_BSN_LOGLEVEL_TRACE
)
type BsnLoglevel uint8
func (self BsnLoglevel) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_loopback_mode
BSNLoopbackModeNone = 0 // OFP_BSN_LOOPBACK_MODE_NONE
BSNLoopbackModeMAC = 1 // OFP_BSN_LOOPBACK_MODE_MAC
BSNLoopbackModePhy = 2 // OFP_BSN_LOOPBACK_MODE_PHY
BSNLoopbackModePhyRemote = 3 // OFP_BSN_LOOPBACK_MODE_PHY_REMOTE
)
type BsnLoopbackMode uint8
func (self BsnLoopbackMode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_lua_upload_flags
BSNLuaUploadMore = 1 // OFP_BSN_LUA_UPLOAD_MORE
BSNLuaUploadForce = 2 // OFP_BSN_LUA_UPLOAD_FORCE
)
type BsnLuaUploadFlags uint16
func (self BsnLuaUploadFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNLuaUploadMore == BSNLuaUploadMore {
flags = append(flags, "\"More\": true")
}
if self&BSNLuaUploadForce == BSNLuaUploadForce {
flags = append(flags, "\"Force\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_multicast_packet
BSNMulticastPacketNone = 0 // OFP_BSN_MULTICAST_PACKET_NONE
BSNMulticastPacketPimHello = 1 // OFP_BSN_MULTICAST_PACKET_PIM_HELLO
BSNMulticastPacketPimJoinPrune = 2 // OFP_BSN_MULTICAST_PACKET_PIM_JOIN_PRUNE
BSNMulticastPacketPimAssert = 3 // OFP_BSN_MULTICAST_PACKET_PIM_ASSERT
)
type BsnMulticastPacket uint16
func (self BsnMulticastPacket) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_pktin_flag
BSNPktinFlagPdu = 1 // OFP_BSN_PKTIN_FLAG_PDU
BSNPktinFlagNewHost = 2 // OFP_BSN_PKTIN_FLAG_NEW_HOST
BSNPktinFlagStationMove = 4 // OFP_BSN_PKTIN_FLAG_STATION_MOVE
BSNPktinFlagARP = 8 // OFP_BSN_PKTIN_FLAG_ARP
BSNPktinFlagDhcp = 16 // OFP_BSN_PKTIN_FLAG_DHCP
BSNPktinFlagL2Cpu = 32 // OFP_BSN_PKTIN_FLAG_L2_CPU
BSNPktinFlagDebug = 64 // OFP_BSN_PKTIN_FLAG_DEBUG
BSNPktinFlagTtlExpired = 128 // OFP_BSN_PKTIN_FLAG_TTL_EXPIRED
BSNPktinFlagL3Miss = 256 // OFP_BSN_PKTIN_FLAG_L3_MISS
BSNPktinFlagL3Cpu = 512 // OFP_BSN_PKTIN_FLAG_L3_CPU
BSNPktinFlagIngressAcl = 1024 // OFP_BSN_PKTIN_FLAG_INGRESS_ACL
BSNPktinFlagSflow = 2048 // OFP_BSN_PKTIN_FLAG_SFLOW
BSNPktinFlagARPCache = 4096 // OFP_BSN_PKTIN_FLAG_ARP_CACHE
BSNPktinFlagARPTarget = 8192 // OFP_BSN_PKTIN_FLAG_ARP_TARGET
BSNPktinFlagIgmp = 16384 // OFP_BSN_PKTIN_FLAG_IGMP
BSNPktinFlagPim = 32768 // OFP_BSN_PKTIN_FLAG_PIM
BSNPktinFlagVxlanSipMiss = 65536 // OFP_BSN_PKTIN_FLAG_VXLAN_SIP_MISS
BSNPktinFlagMcReserved = 131072 // OFP_BSN_PKTIN_FLAG_MC_RESERVED
BSNPktinFlagAnalytics = 262144 // OFP_BSN_PKTIN_FLAG_ANALYTICS
BSNPktinFlagIcmpv6 = 524288 // OFP_BSN_PKTIN_FLAG_ICMPV6
BSNPktinFlagIngressAclLocal = 1048576 // OFP_BSN_PKTIN_FLAG_INGRESS_ACL_LOCAL
BSNPktinFlagIpmcMiss = 2097152 // OFP_BSN_PKTIN_FLAG_IPMC_MISS
BSNPktinFlagIpmcRpfFailed = 4194304 // OFP_BSN_PKTIN_FLAG_IPMC_RPF_FAILED
BSNPktinFlagBfdSlowpath = 8388608 // OFP_BSN_PKTIN_FLAG_BFD_SLOWPATH
)
type BsnPktinFlag uint64
func (self BsnPktinFlag) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNPktinFlagPdu == BSNPktinFlagPdu {
flags = append(flags, "\"Pdu\": true")
}
if self&BSNPktinFlagNewHost == BSNPktinFlagNewHost {
flags = append(flags, "\"NewHost\": true")
}
if self&BSNPktinFlagStationMove == BSNPktinFlagStationMove {
flags = append(flags, "\"StationMove\": true")
}
if self&BSNPktinFlagARP == BSNPktinFlagARP {
flags = append(flags, "\"Arp\": true")
}
if self&BSNPktinFlagDhcp == BSNPktinFlagDhcp {
flags = append(flags, "\"Dhcp\": true")
}
if self&BSNPktinFlagL2Cpu == BSNPktinFlagL2Cpu {
flags = append(flags, "\"L2Cpu\": true")
}
if self&BSNPktinFlagDebug == BSNPktinFlagDebug {
flags = append(flags, "\"Debug\": true")
}
if self&BSNPktinFlagTtlExpired == BSNPktinFlagTtlExpired {
flags = append(flags, "\"TtlExpired\": true")
}
if self&BSNPktinFlagL3Miss == BSNPktinFlagL3Miss {
flags = append(flags, "\"L3Miss\": true")
}
if self&BSNPktinFlagL3Cpu == BSNPktinFlagL3Cpu {
flags = append(flags, "\"L3Cpu\": true")
}
if self&BSNPktinFlagIngressAcl == BSNPktinFlagIngressAcl {
flags = append(flags, "\"IngressAcl\": true")
}
if self&BSNPktinFlagSflow == BSNPktinFlagSflow {
flags = append(flags, "\"Sflow\": true")
}
if self&BSNPktinFlagARPCache == BSNPktinFlagARPCache {
flags = append(flags, "\"ArpCache\": true")
}
if self&BSNPktinFlagARPTarget == BSNPktinFlagARPTarget {
flags = append(flags, "\"ArpTarget\": true")
}
if self&BSNPktinFlagIgmp == BSNPktinFlagIgmp {
flags = append(flags, "\"Igmp\": true")
}
if self&BSNPktinFlagPim == BSNPktinFlagPim {
flags = append(flags, "\"Pim\": true")
}
if self&BSNPktinFlagVxlanSipMiss == BSNPktinFlagVxlanSipMiss {
flags = append(flags, "\"VxlanSipMiss\": true")
}
if self&BSNPktinFlagMcReserved == BSNPktinFlagMcReserved {
flags = append(flags, "\"McReserved\": true")
}
if self&BSNPktinFlagAnalytics == BSNPktinFlagAnalytics {
flags = append(flags, "\"Analytics\": true")
}
if self&BSNPktinFlagIcmpv6 == BSNPktinFlagIcmpv6 {
flags = append(flags, "\"Icmpv6\": true")
}
if self&BSNPktinFlagIngressAclLocal == BSNPktinFlagIngressAclLocal {
flags = append(flags, "\"IngressAclLocal\": true")
}
if self&BSNPktinFlagIpmcMiss == BSNPktinFlagIpmcMiss {
flags = append(flags, "\"IpmcMiss\": true")
}
if self&BSNPktinFlagIpmcRpfFailed == BSNPktinFlagIpmcRpfFailed {
flags = append(flags, "\"IpmcRpfFailed\": true")
}
if self&BSNPktinFlagBfdSlowpath == BSNPktinFlagBfdSlowpath {
flags = append(flags, "\"BfdSlowpath\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_port_counter
BSNPortCounterRxBytes = 0 // OFP_BSN_PORT_COUNTER_RX_BYTES
BSNPortCounterRxPacketsUnicast = 1 // OFP_BSN_PORT_COUNTER_RX_PACKETS_UNICAST
BSNPortCounterRxPacketsBroadcast = 2 // OFP_BSN_PORT_COUNTER_RX_PACKETS_BROADCAST
BSNPortCounterRxPacketsMulticast = 3 // OFP_BSN_PORT_COUNTER_RX_PACKETS_MULTICAST
BSNPortCounterRxDropped = 4 // OFP_BSN_PORT_COUNTER_RX_DROPPED
BSNPortCounterRxErrors = 5 // OFP_BSN_PORT_COUNTER_RX_ERRORS
BSNPortCounterTxBytes = 6 // OFP_BSN_PORT_COUNTER_TX_BYTES
BSNPortCounterTxPacketsUnicast = 7 // OFP_BSN_PORT_COUNTER_TX_PACKETS_UNICAST
BSNPortCounterTxPacketsBroadcast = 8 // OFP_BSN_PORT_COUNTER_TX_PACKETS_BROADCAST
BSNPortCounterTxPacketsMulticast = 9 // OFP_BSN_PORT_COUNTER_TX_PACKETS_MULTICAST
BSNPortCounterTxDropped = 10 // OFP_BSN_PORT_COUNTER_TX_DROPPED
BSNPortCounterTxErrors = 11 // OFP_BSN_PORT_COUNTER_TX_ERRORS
BSNPortCounterRxRunts = 12 // OFP_BSN_PORT_COUNTER_RX_RUNTS
BSNPortCounterRxGiants = 13 // OFP_BSN_PORT_COUNTER_RX_GIANTS
BSNPortCounterRxCrcErrors = 14 // OFP_BSN_PORT_COUNTER_RX_CRC_ERRORS
BSNPortCounterRxAlignmentErrors = 15 // OFP_BSN_PORT_COUNTER_RX_ALIGNMENT_ERRORS
BSNPortCounterRxSymbolErrors = 16 // OFP_BSN_PORT_COUNTER_RX_SYMBOL_ERRORS
BSNPortCounterRxPauseInput = 17 // OFP_BSN_PORT_COUNTER_RX_PAUSE_INPUT
BSNPortCounterTxCollisions = 18 // OFP_BSN_PORT_COUNTER_TX_COLLISIONS
BSNPortCounterTxLateCollisions = 19 // OFP_BSN_PORT_COUNTER_TX_LATE_COLLISIONS
BSNPortCounterTxDeferred = 20 // OFP_BSN_PORT_COUNTER_TX_DEFERRED
BSNPortCounterTxPauseOutput = 21 // OFP_BSN_PORT_COUNTER_TX_PAUSE_OUTPUT
BSNPortCounterRxPackets = 22 // OFP_BSN_PORT_COUNTER_RX_PACKETS
BSNPortCounterTxPackets = 23 // OFP_BSN_PORT_COUNTER_TX_PACKETS
BSNPortCounterRxLengthErrors = 24 // OFP_BSN_PORT_COUNTER_RX_LENGTH_ERRORS
BSNPortCounterRxOverflowErrors = 25 // OFP_BSN_PORT_COUNTER_RX_OVERFLOW_ERRORS
BSNPortCounterTxCarrierErrors = 26 // OFP_BSN_PORT_COUNTER_TX_CARRIER_ERRORS
BSNPortCounterRxPacketsBadVLAN = 27 // OFP_BSN_PORT_COUNTER_RX_PACKETS_BAD_VLAN
BSNPortCounterLinkUp = 28 // OFP_BSN_PORT_COUNTER_LINK_UP
BSNPortCounterLinkDown = 29 // OFP_BSN_PORT_COUNTER_LINK_DOWN
BSNPortCounterRxPfcControlFrame = 30 // OFP_BSN_PORT_COUNTER_RX_PFC_CONTROL_FRAME
BSNPortCounterTxPfcControlFrame = 31 // OFP_BSN_PORT_COUNTER_TX_PFC_CONTROL_FRAME
BSNPortCounterRxPfcFrameXonPriority0 = 32 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_XON_PRIORITY_0
BSNPortCounterRxPfcFrameXonPriority1 = 33 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_XON_PRIORITY_1
BSNPortCounterRxPfcFrameXonPriority2 = 34 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_XON_PRIORITY_2
BSNPortCounterRxPfcFrameXonPriority3 = 35 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_XON_PRIORITY_3
BSNPortCounterRxPfcFrameXonPriority4 = 36 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_XON_PRIORITY_4
BSNPortCounterRxPfcFrameXonPriority5 = 37 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_XON_PRIORITY_5
BSNPortCounterRxPfcFrameXonPriority6 = 38 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_XON_PRIORITY_6
BSNPortCounterRxPfcFrameXonPriority7 = 39 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_XON_PRIORITY_7
BSNPortCounterRxPfcFramePriority0 = 40 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_PRIORITY_0
BSNPortCounterRxPfcFramePriority1 = 41 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_PRIORITY_1
BSNPortCounterRxPfcFramePriority2 = 42 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_PRIORITY_2
BSNPortCounterRxPfcFramePriority3 = 43 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_PRIORITY_3
BSNPortCounterRxPfcFramePriority4 = 44 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_PRIORITY_4
BSNPortCounterRxPfcFramePriority5 = 45 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_PRIORITY_5
BSNPortCounterRxPfcFramePriority6 = 46 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_PRIORITY_6
BSNPortCounterRxPfcFramePriority7 = 47 // OFP_BSN_PORT_COUNTER_RX_PFC_FRAME_PRIORITY_7
BSNPortCounterTxPfcFramePriority0 = 48 // OFP_BSN_PORT_COUNTER_TX_PFC_FRAME_PRIORITY_0
BSNPortCounterTxPfcFramePriority1 = 49 // OFP_BSN_PORT_COUNTER_TX_PFC_FRAME_PRIORITY_1
BSNPortCounterTxPfcFramePriority2 = 50 // OFP_BSN_PORT_COUNTER_TX_PFC_FRAME_PRIORITY_2
BSNPortCounterTxPfcFramePriority3 = 51 // OFP_BSN_PORT_COUNTER_TX_PFC_FRAME_PRIORITY_3
BSNPortCounterTxPfcFramePriority4 = 52 // OFP_BSN_PORT_COUNTER_TX_PFC_FRAME_PRIORITY_4
BSNPortCounterTxPfcFramePriority5 = 53 // OFP_BSN_PORT_COUNTER_TX_PFC_FRAME_PRIORITY_5
BSNPortCounterTxPfcFramePriority6 = 54 // OFP_BSN_PORT_COUNTER_TX_PFC_FRAME_PRIORITY_6
BSNPortCounterTxPfcFramePriority7 = 55 // OFP_BSN_PORT_COUNTER_TX_PFC_FRAME_PRIORITY_7
)
type BsnPortCounter uint8
func (self BsnPortCounter) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_port_mode
BSNPortModeNone = 0 // OFP_BSN_PORT_MODE_NONE
BSNPortMode4Xx = 1 // OFP_BSN_PORT_MODE_4XX
BSNPortMode4X1 = 2 // OFP_BSN_PORT_MODE_4X1
BSNPortMode4X10 = 3 // OFP_BSN_PORT_MODE_4X10
BSNPortMode4X25 = 4 // OFP_BSN_PORT_MODE_4X25
BSNPortMode2X50 = 5 // OFP_BSN_PORT_MODE_2X50
BSNPortMode1X1 = 6 // OFP_BSN_PORT_MODE_1X1
BSNPortMode1X10 = 7 // OFP_BSN_PORT_MODE_1X10
BSNPortMode1X25 = 8 // OFP_BSN_PORT_MODE_1X25
BSNPortMode1X40 = 9 // OFP_BSN_PORT_MODE_1X40
BSNPortMode1X100 = 10 // OFP_BSN_PORT_MODE_1X100
)
type BsnPortMode uint16
func (self BsnPortMode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_port_speed_gbps_type
BSNPortSpeedGbps1 = 1 // OFP_BSN_PORT_SPEED_GBPS_1
BSNPortSpeedGbps10 = 10 // OFP_BSN_PORT_SPEED_GBPS_10
BSNPortSpeedGbps25 = 25 // OFP_BSN_PORT_SPEED_GBPS_25
BSNPortSpeedGbps40 = 40 // OFP_BSN_PORT_SPEED_GBPS_40
BSNPortSpeedGbps50 = 50 // OFP_BSN_PORT_SPEED_GBPS_50
BSNPortSpeedGbps100 = 100 // OFP_BSN_PORT_SPEED_GBPS_100
)
type BsnPortSpeedGbpsType uint32
func (self BsnPortSpeedGbpsType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_port_usage
BSNPortUnused = 0 // OFP_BSN_PORT_UNUSED
BSNPortTransmitOnly = 1 // OFP_BSN_PORT_TRANSMIT_ONLY
BSNPortReceiveOnly = 2 // OFP_BSN_PORT_RECEIVE_ONLY
BSNPortBidirection = 3 // OFP_BSN_PORT_BIDIRECTION
)
type BsnPortUsage uint16
func (self BsnPortUsage) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_port_vxlan_mode
BSNPortVxlanRecirculationEnable = 0 // OFP_BSN_PORT_VXLAN_RECIRCULATION_ENABLE
BSNPortVxlanTerminationEnable = 1 // OFP_BSN_PORT_VXLAN_TERMINATION_ENABLE
)
type BsnPortVxlanMode uint8
func (self BsnPortVxlanMode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_push_vlan
BSNPushVLANUntagged = 1 // OFP_BSN_PUSH_VLAN_UNTAGGED
BSNPushVLANSingleTagged = 2 // OFP_BSN_PUSH_VLAN_SINGLE_TAGGED
BSNPushVLANDoubleTagged = 4 // OFP_BSN_PUSH_VLAN_DOUBLE_TAGGED
)
type BsnPushVlan uint8
func (self BsnPushVlan) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNPushVLANUntagged == BSNPushVLANUntagged {
flags = append(flags, "\"Untagged\": true")
}
if self&BSNPushVLANSingleTagged == BSNPushVLANSingleTagged {
flags = append(flags, "\"SingleTagged\": true")
}
if self&BSNPushVLANDoubleTagged == BSNPushVLANDoubleTagged {
flags = append(flags, "\"DoubleTagged\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_rate_unit
BSNRateUnitPps = 0 // OFP_BSN_RATE_UNIT_PPS
BSNRateUnitKbitps = 1 // OFP_BSN_RATE_UNIT_KBITPS
)
type BsnRateUnit uint8
func (self BsnRateUnit) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_routing_param
BSNRoutingParamOspfUcast = 1 // OFP_BSN_ROUTING_PARAM_OSPF_UCAST
BSNRoutingParamOspfMcast = 2 // OFP_BSN_ROUTING_PARAM_OSPF_MCAST
BSNRoutingParamARPFrr = 3 // OFP_BSN_ROUTING_PARAM_ARP_FRR
BSNRoutingParamIpv6OspfUcast = 4 // OFP_BSN_ROUTING_PARAM_IPV6_OSPF_UCAST
BSNRoutingParamIpv6OspfMcast = 5 // OFP_BSN_ROUTING_PARAM_IPV6_OSPF_MCAST
BSNRoutingParamIpv6NdpFrr = 6 // OFP_BSN_ROUTING_PARAM_IPV6_NDP_FRR
)
type BsnRoutingParam uint16
func (self BsnRoutingParam) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_status
BSNStatusDisable = 0 // OFP_BSN_STATUS_DISABLE
BSNStatusEnable = 1 // OFP_BSN_STATUS_ENABLE
)
type BsnStatus uint8
func (self BsnStatus) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_strip_vlan
BSNStripVLANFirst = 1 // OFP_BSN_STRIP_VLAN_FIRST
BSNStripVLANSecond = 2 // OFP_BSN_STRIP_VLAN_SECOND
BSNStripVLANThird = 4 // OFP_BSN_STRIP_VLAN_THIRD
)
type BsnStripVlan uint8
func (self BsnStripVlan) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNStripVLANFirst == BSNStripVLANFirst {
flags = append(flags, "\"First\": true")
}
if self&BSNStripVLANSecond == BSNStripVLANSecond {
flags = append(flags, "\"Second\": true")
}
if self&BSNStripVLANThird == BSNStripVLANThird {
flags = append(flags, "\"Third\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_tcp_flag
BSNTCPFlagFin = 1 // OFP_BSN_TCP_FLAG_FIN
BSNTCPFlagSyn = 2 // OFP_BSN_TCP_FLAG_SYN
BSNTCPFlagRst = 4 // OFP_BSN_TCP_FLAG_RST
BSNTCPFlagPsh = 8 // OFP_BSN_TCP_FLAG_PSH
BSNTCPFlagAck = 16 // OFP_BSN_TCP_FLAG_ACK
BSNTCPFlagUrg = 32 // OFP_BSN_TCP_FLAG_URG
BSNTCPFlagEce = 64 // OFP_BSN_TCP_FLAG_ECE
BSNTCPFlagCwr = 128 // OFP_BSN_TCP_FLAG_CWR
BSNTCPFlagNs = 256 // OFP_BSN_TCP_FLAG_NS
)
type BsnTcpFlag uint16
func (self BsnTcpFlag) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNTCPFlagFin == BSNTCPFlagFin {
flags = append(flags, "\"Fin\": true")
}
if self&BSNTCPFlagSyn == BSNTCPFlagSyn {
flags = append(flags, "\"Syn\": true")
}
if self&BSNTCPFlagRst == BSNTCPFlagRst {
flags = append(flags, "\"Rst\": true")
}
if self&BSNTCPFlagPsh == BSNTCPFlagPsh {
flags = append(flags, "\"Psh\": true")
}
if self&BSNTCPFlagAck == BSNTCPFlagAck {
flags = append(flags, "\"Ack\": true")
}
if self&BSNTCPFlagUrg == BSNTCPFlagUrg {
flags = append(flags, "\"Urg\": true")
}
if self&BSNTCPFlagEce == BSNTCPFlagEce {
flags = append(flags, "\"Ece\": true")
}
if self&BSNTCPFlagCwr == BSNTCPFlagCwr {
flags = append(flags, "\"Cwr\": true")
}
if self&BSNTCPFlagNs == BSNTCPFlagNs {
flags = append(flags, "\"Ns\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_tunnel_type
BSNTunnelL2Gre = 1 // OFP_BSN_TUNNEL_L2GRE
)
type BsnTunnelType uint64
func (self BsnTunnelType) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNTunnelL2Gre == BSNTunnelL2Gre {
flags = append(flags, "\"BSNTunnelL2Gre\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_udf_anchor
BSNUdfAnchorPacketStart = 0 // OFP_BSN_UDF_ANCHOR_PACKET_START
BSNUdfAnchorL3HeaderStart = 1 // OFP_BSN_UDF_ANCHOR_L3_HEADER_START
BSNUdfAnchorL4HeaderStart = 2 // OFP_BSN_UDF_ANCHOR_L4_HEADER_START
)
type BsnUdfAnchor uint16
func (self BsnUdfAnchor) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_udf_mode
BSNUdf8X2Bytes = 1 // OFP_BSN_UDF_8X2_BYTES
)
type BsnUdfMode uint8
func (self BsnUdfMode) MarshalJSON() ([]byte, error) {
var flags []string
if self&BSNUdf8X2Bytes == BSNUdf8X2Bytes {
flags = append(flags, "\"BSNUdf8X2Bytes\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_upgrade
BSNUpgradeInvalid = 0 // OFP_BSN_UPGRADE_INVALID
BSNUpgradeInProgress = 1 // OFP_BSN_UPGRADE_IN_PROGRESS
)
type BsnUpgrade uint16
func (self BsnUpgrade) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_vlan_counter_constants
BSNVLANAll = 65535 // OFP_BSN_VLAN_ALL
)
const (
// Identifiers from group ofp_bsn_vport_l2gre_flags
OFBSNVportL2GreLocalMACIsValid = 1 // OF_BSN_VPORT_L2GRE_LOCAL_MAC_IS_VALID
OFBSNVportL2GreDSCPAssign = 2 // OF_BSN_VPORT_L2GRE_DSCP_ASSIGN
OFBSNVportL2GreDSCPCopy = 4 // OF_BSN_VPORT_L2GRE_DSCP_COPY
OFBSNVportL2GreLoopbackIsValid = 8 // OF_BSN_VPORT_L2GRE_LOOPBACK_IS_VALID
OFBSNVportL2GreRateLimitIsValid = 16 // OF_BSN_VPORT_L2GRE_RATE_LIMIT_IS_VALID
)
type BsnVportL2GreFlags uint32
func (self BsnVportL2GreFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFBSNVportL2GreLocalMACIsValid == OFBSNVportL2GreLocalMACIsValid {
flags = append(flags, "\"LocalMACIsValid\": true")
}
if self&OFBSNVportL2GreDSCPAssign == OFBSNVportL2GreDSCPAssign {
flags = append(flags, "\"DscpAssign\": true")
}
if self&OFBSNVportL2GreDSCPCopy == OFBSNVportL2GreDSCPCopy {
flags = append(flags, "\"DscpCopy\": true")
}
if self&OFBSNVportL2GreLoopbackIsValid == OFBSNVportL2GreLoopbackIsValid {
flags = append(flags, "\"LoopbackIsValid\": true")
}
if self&OFBSNVportL2GreRateLimitIsValid == OFBSNVportL2GreRateLimitIsValid {
flags = append(flags, "\"RateLimitIsValid\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_bsn_vport_q_in_q_untagged
OFBSNVportQInQUntagged = 65535 // OF_BSN_VPORT_Q_IN_Q_UNTAGGED
)
type BsnVportQInQUntagged uint16
func (self BsnVportQInQUntagged) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_bsn_vport_status
OFBSNVportStatusOk = 0 // OF_BSN_VPORT_STATUS_OK
OFBSNVportStatusFailed = 1 // OF_BSN_VPORT_STATUS_FAILED
)
const (
// Identifiers from group ofp_bsn_vrf_counter_constants
BSNVrfAll = 4294967295 // OFP_BSN_VRF_ALL
)
type BsnVrfCounterConstants uint32
func (self BsnVrfCounterConstants) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_capabilities
OFPCFlowStats = 1 // OFPC_FLOW_STATS
OFPCTableStats = 2 // OFPC_TABLE_STATS
OFPCPortStats = 4 // OFPC_PORT_STATS
OFPCGroupStats = 8 // OFPC_GROUP_STATS
OFPCIpReasm = 32 // OFPC_IP_REASM
OFPCQueueStats = 64 // OFPC_QUEUE_STATS
OFPCPortBlocked = 256 // OFPC_PORT_BLOCKED
)
type Capabilities uint32
func (self Capabilities) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPCFlowStats == OFPCFlowStats {
flags = append(flags, "\"FlowStats\": true")
}
if self&OFPCTableStats == OFPCTableStats {
flags = append(flags, "\"TableStats\": true")
}
if self&OFPCPortStats == OFPCPortStats {
flags = append(flags, "\"PortStats\": true")
}
if self&OFPCGroupStats == OFPCGroupStats {
flags = append(flags, "\"GroupStats\": true")
}
if self&OFPCIpReasm == OFPCIpReasm {
flags = append(flags, "\"IpReasm\": true")
}
if self&OFPCQueueStats == OFPCQueueStats {
flags = append(flags, "\"QueueStats\": true")
}
if self&OFPCPortBlocked == OFPCPortBlocked {
flags = append(flags, "\"PortBlocked\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_config_flags
OFPCFragNormal = 0 // OFPC_FRAG_NORMAL
OFPCFragDrop = 1 // OFPC_FRAG_DROP
OFPCFragReasm = 2 // OFPC_FRAG_REASM
OFPCFragMask = 3 // OFPC_FRAG_MASK
)
type ConfigFlags uint16
func (self ConfigFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPCFragNormal == OFPCFragNormal {
flags = append(flags, "\"Normal\": true")
}
if self&OFPCFragDrop == OFPCFragDrop {
flags = append(flags, "\"Drop\": true")
}
if self&OFPCFragReasm == OFPCFragReasm {
flags = append(flags, "\"Reasm\": true")
}
if self&OFPCFragMask == OFPCFragMask {
flags = append(flags, "\"Mask\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_controller_max_len
OFPCMLMax = 65509 // OFPCML_MAX
OFPCMLNoBuffer = 65535 // OFPCML_NO_BUFFER
)
type ControllerMaxLen uint16
func (self ControllerMaxLen) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_controller_role
OFPCRRoleNochange = 0 // OFPCR_ROLE_NOCHANGE
OFPCRRoleEqual = 1 // OFPCR_ROLE_EQUAL
OFPCRRoleMaster = 2 // OFPCR_ROLE_MASTER
OFPCRRoleSlave = 3 // OFPCR_ROLE_SLAVE
)
type ControllerRole uint32
func (self ControllerRole) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_cs_states
CsNew = 1 // OFP_CS_NEW
CsEstablished = 2 // OFP_CS_ESTABLISHED
CsRelated = 4 // OFP_CS_RELATED
CsReplyDir = 8 // OFP_CS_REPLY_DIR
CsInvalid = 16 // OFP_CS_INVALID
CsTracked = 32 // OFP_CS_TRACKED
CsSrcNat = 64 // OFP_CS_SRC_NAT
CsDstNat = 128 // OFP_CS_DST_NAT
)
type CsStates uint32
func (self CsStates) MarshalJSON() ([]byte, error) {
var flags []string
if self&CsNew == CsNew {
flags = append(flags, "\"New\": true")
}
if self&CsEstablished == CsEstablished {
flags = append(flags, "\"Established\": true")
}
if self&CsRelated == CsRelated {
flags = append(flags, "\"Related\": true")
}
if self&CsReplyDir == CsReplyDir {
flags = append(flags, "\"ReplyDir\": true")
}
if self&CsInvalid == CsInvalid {
flags = append(flags, "\"Invalid\": true")
}
if self&CsTracked == CsTracked {
flags = append(flags, "\"Tracked\": true")
}
if self&CsSrcNat == CsSrcNat {
flags = append(flags, "\"SrcNat\": true")
}
if self&CsDstNat == CsDstNat {
flags = append(flags, "\"DstNat\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_ed_nsh_prop_type
OFPPPTPropNshNone = 0 // OFPPPT_PROP_NSH_NONE
OFPPPTPropNshMdtype = 1 // OFPPPT_PROP_NSH_MDTYPE
OFPPPTPropNshTlv = 2 // OFPPPT_PROP_NSH_TLV
)
type EdNshPropType uint8
func (self EdNshPropType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_ed_prop_class
OFPPPCBasic = 0 // OFPPPC_BASIC
OFPPPCMpls = 1 // OFPPPC_MPLS
OFPPPCGRE = 2 // OFPPPC_GRE
OFPPPCGtp = 3 // OFPPPC_GTP
OFPPPCNsh = 4 // OFPPPC_NSH
OFPPPCExperimenter = 65535 // OFPPPC_EXPERIMENTER
)
type EdPropClass uint16
func (self EdPropClass) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_error_type
OFPETHelloFailed = 0 // OFPET_HELLO_FAILED
OFPETBadRequest = 1 // OFPET_BAD_REQUEST
OFPETBadAction = 2 // OFPET_BAD_ACTION
OFPETBadInstruction = 3 // OFPET_BAD_INSTRUCTION
OFPETBadMatch = 4 // OFPET_BAD_MATCH
OFPETFlowModFailed = 5 // OFPET_FLOW_MOD_FAILED
OFPETGroupModFailed = 6 // OFPET_GROUP_MOD_FAILED
OFPETPortModFailed = 7 // OFPET_PORT_MOD_FAILED
OFPETTableModFailed = 8 // OFPET_TABLE_MOD_FAILED
OFPETQueueOpFailed = 9 // OFPET_QUEUE_OP_FAILED
OFPETSwitchConfigFailed = 10 // OFPET_SWITCH_CONFIG_FAILED
OFPETRoleRequestFailed = 11 // OFPET_ROLE_REQUEST_FAILED
OFPETMeterModFailed = 12 // OFPET_METER_MOD_FAILED
OFPETTableFeaturesFailed = 13 // OFPET_TABLE_FEATURES_FAILED
OFPETExperimenter = 65535 // OFPET_EXPERIMENTER
)
type ErrorType uint16
func (self ErrorType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_ethernet_type
EthPLoop = 96 // ETH_P_LOOP
EthPPup = 512 // ETH_P_PUP
EthPPupat = 513 // ETH_P_PUPAT
EthPIp = 2048 // ETH_P_IP
EthPX25 = 2053 // ETH_P_X25
EthPARP = 2054 // ETH_P_ARP
EthPBpq = 2303 // ETH_P_BPQ
EthPIeeepup = 2560 // ETH_P_IEEEPUP
EthPIeeepupat = 2561 // ETH_P_IEEEPUPAT
EthPDec = 24576 // ETH_P_DEC
EthPDnaDl = 24577 // ETH_P_DNA_DL
EthPDnaRc = 24578 // ETH_P_DNA_RC
EthPDnaRt = 24579 // ETH_P_DNA_RT
EthPLat = 24580 // ETH_P_LAT
EthPDiag = 24581 // ETH_P_DIAG
EthPCust = 24582 // ETH_P_CUST
EthPSca = 24583 // ETH_P_SCA
EthPTeb = 25944 // ETH_P_TEB
EthPRarp = 32821 // ETH_P_RARP
EthPAtalk = 32923 // ETH_P_ATALK
EthPAarp = 33011 // ETH_P_AARP
EthP8021Q = 33024 // ETH_P_8021Q
EthPIpx = 33079 // ETH_P_IPX
EthPIpv6 = 34525 // ETH_P_IPV6
EthPPause = 34824 // ETH_P_PAUSE
EthPSlow = 34825 // ETH_P_SLOW
EthPWccp = 34878 // ETH_P_WCCP
EthPPppDisc = 34915 // ETH_P_PPP_DISC
EthPPppSes = 34916 // ETH_P_PPP_SES
EthPMplsUc = 34887 // ETH_P_MPLS_UC
EthPMplsMc = 34888 // ETH_P_MPLS_MC
EthPAtmmpoa = 34892 // ETH_P_ATMMPOA
EthPAtmfate = 34948 // ETH_P_ATMFATE
EthPPae = 34958 // ETH_P_PAE
EthPAoe = 34978 // ETH_P_AOE
EthPTipc = 35018 // ETH_P_TIPC
EthP1588 = 35063 // ETH_P_1588
EthPFcoe = 35078 // ETH_P_FCOE
EthPFip = 35092 // ETH_P_FIP
EthPEdsa = 56026 // ETH_P_EDSA
)
type EthernetType uint16
func (self EthernetType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self EthernetType) String() string {
switch self {
case EthPLoop:
return "loop"
case EthPPup:
return "pup"
case EthPPupat:
return "pupat"
case EthPIp:
return "ip"
case EthPX25:
return "x25"
case EthPARP:
return "arp"
case EthPBpq:
return "bpq"
case EthPIeeepup:
return "ieeepup"
case EthPIeeepupat:
return "ieeepupat"
case EthPDec:
return "dec"
case EthPDnaDl:
return "dna_dl"
case EthPDnaRc:
return "dna_rc"
case EthPDnaRt:
return "dna_rt"
case EthPLat:
return "lat"
case EthPDiag:
return "diag"
case EthPCust:
return "cust"
case EthPSca:
return "sca"
case EthPTeb:
return "teb"
case EthPRarp:
return "rarp"
case EthPAtalk:
return "atalk"
case EthPAarp:
return "aarp"
case EthP8021Q:
return "8021q"
case EthPIpx:
return "ipx"
case EthPIpv6:
return "ipv6"
case EthPPause:
return "pause"
case EthPSlow:
return "slow"
case EthPWccp:
return "wccp"
case EthPPppDisc:
return "ppp_disc"
case EthPPppSes:
return "ppp_ses"
case EthPMplsUc:
return "mpls_uc"
case EthPMplsMc:
return "mpls_mc"
case EthPAtmmpoa:
return "atmmpoa"
case EthPAtmfate:
return "atmfate"
case EthPPae:
return "pae"
case EthPAoe:
return "aoe"
case EthPTipc:
return "tipc"
case EthP1588:
return "1588"
case EthPFcoe:
return "fcoe"
case EthPFip:
return "fip"
case EthPEdsa:
return "edsa"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group ofp_flow_mod_command
OFPFCAdd = 0 // OFPFC_ADD
OFPFCModify = 1 // OFPFC_MODIFY
OFPFCModifyStrict = 2 // OFPFC_MODIFY_STRICT
OFPFCDelete = 3 // OFPFC_DELETE
OFPFCDeleteStrict = 4 // OFPFC_DELETE_STRICT
)
type FlowModCommand uint8
func (self FlowModCommand) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_flow_mod_failed_code
OFPFMFCUnknown = 0 // OFPFMFC_UNKNOWN
OFPFMFCTableFull = 1 // OFPFMFC_TABLE_FULL
OFPFMFCBadTableID = 2 // OFPFMFC_BAD_TABLE_ID
OFPFMFCOverlap = 3 // OFPFMFC_OVERLAP
OFPFMFCEperm = 4 // OFPFMFC_EPERM
OFPFMFCBadTimeout = 5 // OFPFMFC_BAD_TIMEOUT
OFPFMFCBadCommand = 6 // OFPFMFC_BAD_COMMAND
OFPFMFCBadFlags = 7 // OFPFMFC_BAD_FLAGS
)
type FlowModFailedCode uint16
func (self FlowModFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_flow_mod_flags
OFPFFSendFlowRem = 1 // OFPFF_SEND_FLOW_REM
OFPFFCheckOverlap = 2 // OFPFF_CHECK_OVERLAP
OFPFFResetCounts = 4 // OFPFF_RESET_COUNTS
OFPFFNoPktCounts = 8 // OFPFF_NO_PKT_COUNTS
OFPFFNoBytCounts = 16 // OFPFF_NO_BYT_COUNTS
OFPFFBSNSendIdle = 128 // OFPFF_BSN_SEND_IDLE
)
type FlowModFlags uint16
func (self FlowModFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPFFSendFlowRem == OFPFFSendFlowRem {
flags = append(flags, "\"SendFlowRem\": true")
}
if self&OFPFFCheckOverlap == OFPFFCheckOverlap {
flags = append(flags, "\"CheckOverlap\": true")
}
if self&OFPFFResetCounts == OFPFFResetCounts {
flags = append(flags, "\"ResetCounts\": true")
}
if self&OFPFFNoPktCounts == OFPFFNoPktCounts {
flags = append(flags, "\"NoPktCounts\": true")
}
if self&OFPFFNoBytCounts == OFPFFNoBytCounts {
flags = append(flags, "\"NoBytCounts\": true")
}
if self&OFPFFBSNSendIdle == OFPFFBSNSendIdle {
flags = append(flags, "\"BsnSendIdle\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_flow_removed_reason
OFPRRIdleTimeout = 0 // OFPRR_IDLE_TIMEOUT
OFPRRHardTimeout = 1 // OFPRR_HARD_TIMEOUT
OFPRRDelete = 2 // OFPRR_DELETE
OFPRRGroupDelete = 3 // OFPRR_GROUP_DELETE
)
type FlowRemovedReason uint8
func (self FlowRemovedReason) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_group
OFPGMax = 4294967040 // OFPG_MAX
OFPGAll = 4294967292 // OFPG_ALL
OFPGAny = 4294967295 // OFPG_ANY
)
type Group uint32
func (self Group) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_group_capabilities
OFPGFCSelectWeight = 1 // OFPGFC_SELECT_WEIGHT
OFPGFCSelectLiveness = 2 // OFPGFC_SELECT_LIVENESS
OFPGFCChaining = 4 // OFPGFC_CHAINING
OFPGFCChainingChecks = 8 // OFPGFC_CHAINING_CHECKS
)
type GroupCapabilities uint32
func (self GroupCapabilities) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPGFCSelectWeight == OFPGFCSelectWeight {
flags = append(flags, "\"SelectWeight\": true")
}
if self&OFPGFCSelectLiveness == OFPGFCSelectLiveness {
flags = append(flags, "\"SelectLiveness\": true")
}
if self&OFPGFCChaining == OFPGFCChaining {
flags = append(flags, "\"Chaining\": true")
}
if self&OFPGFCChainingChecks == OFPGFCChainingChecks {
flags = append(flags, "\"ChainingChecks\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_group_mod_command
OFPGCAdd = 0 // OFPGC_ADD
OFPGCModify = 1 // OFPGC_MODIFY
OFPGCDelete = 2 // OFPGC_DELETE
)
type GroupModCommand uint16
func (self GroupModCommand) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_group_mod_failed_code
OFPGMFCGroupExists = 0 // OFPGMFC_GROUP_EXISTS
OFPGMFCInvalidGroup = 1 // OFPGMFC_INVALID_GROUP
OFPGMFCWeightUnsupported = 2 // OFPGMFC_WEIGHT_UNSUPPORTED
OFPGMFCOutOfGroups = 3 // OFPGMFC_OUT_OF_GROUPS
OFPGMFCOutOfBuckets = 4 // OFPGMFC_OUT_OF_BUCKETS
OFPGMFCChainingUnsupported = 5 // OFPGMFC_CHAINING_UNSUPPORTED
OFPGMFCWatchUnsupported = 6 // OFPGMFC_WATCH_UNSUPPORTED
OFPGMFCLoop = 7 // OFPGMFC_LOOP
OFPGMFCUnknownGroup = 8 // OFPGMFC_UNKNOWN_GROUP
OFPGMFCChainedGroup = 9 // OFPGMFC_CHAINED_GROUP
OFPGMFCBadType = 10 // OFPGMFC_BAD_TYPE
OFPGMFCBadCommand = 11 // OFPGMFC_BAD_COMMAND
OFPGMFCBadBucket = 12 // OFPGMFC_BAD_BUCKET
OFPGMFCBadWatch = 13 // OFPGMFC_BAD_WATCH
OFPGMFCEperm = 14 // OFPGMFC_EPERM
)
type GroupModFailedCode uint16
func (self GroupModFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_group_type
OFPGTAll = 0 // OFPGT_ALL
OFPGTSelect = 1 // OFPGT_SELECT
OFPGTIndirect = 2 // OFPGT_INDIRECT
OFPGTFf = 3 // OFPGT_FF
)
type GroupType uint8
func (self GroupType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self GroupType) String() string {
switch self {
case OFPGTAll:
return "all"
case OFPGTSelect:
return "select"
case OFPGTIndirect:
return "indirect"
case OFPGTFf:
return "ff"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group ofp_hello_elem_type
OFPHETVersionbitmap = 1 // OFPHET_VERSIONBITMAP
)
type HelloElemType uint16
func (self HelloElemType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_hello_failed_code
OFPHFCIncompatible = 0 // OFPHFC_INCOMPATIBLE
OFPHFCEperm = 1 // OFPHFC_EPERM
)
type HelloFailedCode uint16
func (self HelloFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_icmp_type
IcmpEchoreply = 0 // ICMP_ECHOREPLY
IcmpDestUnreach = 3 // ICMP_DEST_UNREACH
IcmpSourceQuench = 4 // ICMP_SOURCE_QUENCH
IcmpRedirect = 5 // ICMP_REDIRECT
IcmpEcho = 8 // ICMP_ECHO
IcmpTimeExceeded = 11 // ICMP_TIME_EXCEEDED
IcmpParameterprob = 12 // ICMP_PARAMETERPROB
IcmpTimestamp = 13 // ICMP_TIMESTAMP
IcmpTimestampreply = 14 // ICMP_TIMESTAMPREPLY
IcmpInfoRequest = 15 // ICMP_INFO_REQUEST
IcmpInfoReply = 16 // ICMP_INFO_REPLY
IcmpAddress = 17 // ICMP_ADDRESS
IcmpAddressreply = 18 // ICMP_ADDRESSREPLY
)
type IcmpType uint8
func (self IcmpType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self IcmpType) String() string {
switch self {
case IcmpEchoreply:
return "echoreply"
case IcmpDestUnreach:
return "dest_unreach"
case IcmpSourceQuench:
return "source_quench"
case IcmpRedirect:
return "redirect"
case IcmpEcho:
return "echo"
case IcmpTimeExceeded:
return "time_exceeded"
case IcmpParameterprob:
return "parameterprob"
case IcmpTimestamp:
return "timestamp"
case IcmpTimestampreply:
return "timestampreply"
case IcmpInfoRequest:
return "info_request"
case IcmpInfoReply:
return "info_reply"
case IcmpAddress:
return "address"
case IcmpAddressreply:
return "addressreply"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group ofp_icmpv6_type
Icmpv6EchoRequest = 128 // ICMPV6_ECHO_REQUEST
Icmpv6EchoReply = 129 // ICMPV6_ECHO_REPLY
Icmpv6MgmQuery = 130 // ICMPV6_MGM_QUERY
Icmpv6MgmReport = 131 // ICMPV6_MGM_REPORT
Icmpv6MgmReduction = 132 // ICMPV6_MGM_REDUCTION
Icmpv6NiQuery = 139 // ICMPV6_NI_QUERY
Icmpv6NiReply = 140 // ICMPV6_NI_REPLY
Icmpv6Mld2Report = 143 // ICMPV6_MLD2_REPORT
Icmpv6DhaadRequest = 144 // ICMPV6_DHAAD_REQUEST
Icmpv6DhaadReply = 145 // ICMPV6_DHAAD_REPLY
Icmpv6MobilePrefixSol = 146 // ICMPV6_MOBILE_PREFIX_SOL
Icmpv6MobilePrefixAdv = 147 // ICMPV6_MOBILE_PREFIX_ADV
)
type Icmpv6Type uint8
func (self Icmpv6Type) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self Icmpv6Type) String() string {
switch self {
case Icmpv6EchoRequest:
return "echo_request"
case Icmpv6EchoReply:
return "echo_reply"
case Icmpv6MgmQuery:
return "mgm_query"
case Icmpv6MgmReport:
return "mgm_report"
case Icmpv6MgmReduction:
return "mgm_reduction"
case Icmpv6NiQuery:
return "ni_query"
case Icmpv6NiReply:
return "ni_reply"
case Icmpv6Mld2Report:
return "mld2_report"
case Icmpv6DhaadRequest:
return "dhaad_request"
case Icmpv6DhaadReply:
return "dhaad_reply"
case Icmpv6MobilePrefixSol:
return "mobile_prefix_sol"
case Icmpv6MobilePrefixAdv:
return "mobile_prefix_adv"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group ofp_instruction_type
OFPITGotoTable = 1 // OFPIT_GOTO_TABLE
OFPITWriteMetadata = 2 // OFPIT_WRITE_METADATA
OFPITWriteActions = 3 // OFPIT_WRITE_ACTIONS
OFPITApplyActions = 4 // OFPIT_APPLY_ACTIONS
OFPITClearActions = 5 // OFPIT_CLEAR_ACTIONS
OFPITMeter = 6 // OFPIT_METER
OFPITExperimenter = 65535 // OFPIT_EXPERIMENTER
)
type InstructionType uint16
func (self InstructionType) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPITGotoTable == OFPITGotoTable {
flags = append(flags, "\"GotoTable\": true")
}
if self&OFPITWriteMetadata == OFPITWriteMetadata {
flags = append(flags, "\"WriteMetadata\": true")
}
if self&OFPITWriteActions == OFPITWriteActions {
flags = append(flags, "\"WriteActions\": true")
}
if self&OFPITApplyActions == OFPITApplyActions {
flags = append(flags, "\"ApplyActions\": true")
}
if self&OFPITClearActions == OFPITClearActions {
flags = append(flags, "\"ClearActions\": true")
}
if self&OFPITMeter == OFPITMeter {
flags = append(flags, "\"Meter\": true")
}
if self&OFPITExperimenter == OFPITExperimenter {
flags = append(flags, "\"Experimenter\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_ip_prototype
IpprotoIp = 0 // IPPROTO_IP
IpprotoICMP = 1 // IPPROTO_ICMP
IpprotoIgmp = 2 // IPPROTO_IGMP
IpprotoIpip = 4 // IPPROTO_IPIP
IpprotoTCP = 6 // IPPROTO_TCP
IpprotoEgp = 8 // IPPROTO_EGP
IpprotoPup = 12 // IPPROTO_PUP
IpprotoUdp = 17 // IPPROTO_UDP
IpprotoIdp = 22 // IPPROTO_IDP
IpprotoTp = 29 // IPPROTO_TP
IpprotoDccp = 33 // IPPROTO_DCCP
IpprotoIpv6 = 41 // IPPROTO_IPV6
IpprotoRsvp = 46 // IPPROTO_RSVP
IpprotoGRE = 47 // IPPROTO_GRE
IpprotoEsp = 50 // IPPROTO_ESP
IpprotoAh = 51 // IPPROTO_AH
IpprotoMtp = 92 // IPPROTO_MTP
IpprotoBeetph = 94 // IPPROTO_BEETPH
IpprotoEncap = 98 // IPPROTO_ENCAP
IpprotoPim = 103 // IPPROTO_PIM
IpprotoComp = 108 // IPPROTO_COMP
IpprotoSctp = 132 // IPPROTO_SCTP
IpprotoUdplite = 136 // IPPROTO_UDPLITE
IpprotoMpls = 137 // IPPROTO_MPLS
IpprotoRaw = 255 // IPPROTO_RAW
IpprotoRouting = 43 // IPPROTO_ROUTING
IpprotoFragment = 44 // IPPROTO_FRAGMENT
IpprotoIcmpv6 = 58 // IPPROTO_ICMPV6
IpprotoNone = 59 // IPPROTO_NONE
IpprotoDstopts = 60 // IPPROTO_DSTOPTS
IpprotoMh = 135 // IPPROTO_MH
IpprotoL2Tp = 115 // IPPROTO_L2TP
)
type IpPrototype uint8
func (self IpPrototype) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self IpPrototype) String() string {
switch self {
case IpprotoIp:
return "ip"
case IpprotoICMP:
return "icmp"
case IpprotoIgmp:
return "igmp"
case IpprotoIpip:
return "ipip"
case IpprotoTCP:
return "tcp"
case IpprotoEgp:
return "egp"
case IpprotoPup:
return "pup"
case IpprotoUdp:
return "udp"
case IpprotoIdp:
return "idp"
case IpprotoTp:
return "tp"
case IpprotoDccp:
return "dccp"
case IpprotoIpv6:
return "ipv6"
case IpprotoRsvp:
return "rsvp"
case IpprotoGRE:
return "gre"
case IpprotoEsp:
return "esp"
case IpprotoAh:
return "ah"
case IpprotoMtp:
return "mtp"
case IpprotoBeetph:
return "beetph"
case IpprotoEncap:
return "encap"
case IpprotoPim:
return "pim"
case IpprotoComp:
return "comp"
case IpprotoSctp:
return "sctp"
case IpprotoUdplite:
return "udplite"
case IpprotoMpls:
return "mpls"
case IpprotoRaw:
return "raw"
case IpprotoRouting:
return "routing"
case IpprotoFragment:
return "fragment"
case IpprotoIcmpv6:
return "icmpv6"
case IpprotoNone:
return "none"
case IpprotoDstopts:
return "dstopts"
case IpprotoMh:
return "mh"
case IpprotoL2Tp:
return "l2tp"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group ofp_ipv6exthdr_flags
OFPIEHNonext = 1 // OFPIEH_NONEXT
OFPIEHEsp = 2 // OFPIEH_ESP
OFPIEHAuth = 4 // OFPIEH_AUTH
OFPIEHDest = 8 // OFPIEH_DEST
OFPIEHFrag = 16 // OFPIEH_FRAG
OFPIEHRouter = 32 // OFPIEH_ROUTER
OFPIEHHop = 64 // OFPIEH_HOP
OFPIEHUnrep = 128 // OFPIEH_UNREP
OFPIEHUnseq = 256 // OFPIEH_UNSEQ
)
type Ipv6ExthdrFlags uint16
func (self Ipv6ExthdrFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPIEHNonext == OFPIEHNonext {
flags = append(flags, "\"Nonext\": true")
}
if self&OFPIEHEsp == OFPIEHEsp {
flags = append(flags, "\"Esp\": true")
}
if self&OFPIEHAuth == OFPIEHAuth {
flags = append(flags, "\"Auth\": true")
}
if self&OFPIEHDest == OFPIEHDest {
flags = append(flags, "\"Dest\": true")
}
if self&OFPIEHFrag == OFPIEHFrag {
flags = append(flags, "\"Frag\": true")
}
if self&OFPIEHRouter == OFPIEHRouter {
flags = append(flags, "\"Router\": true")
}
if self&OFPIEHHop == OFPIEHHop {
flags = append(flags, "\"Hop\": true")
}
if self&OFPIEHUnrep == OFPIEHUnrep {
flags = append(flags, "\"Unrep\": true")
}
if self&OFPIEHUnseq == OFPIEHUnseq {
flags = append(flags, "\"Unseq\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_match_type
OFPMTStandard = 0 // OFPMT_STANDARD
OFPMTOXM = 1 // OFPMT_OXM
)
type MatchType uint16
func (self MatchType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_meter
OFPMMax = 4294901760 // OFPM_MAX
OFPMSlowpath = 4294967293 // OFPM_SLOWPATH
OFPMController = 4294967294 // OFPM_CONTROLLER
OFPMAll = 4294967295 // OFPM_ALL
)
type Meter uint32
func (self Meter) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_meter_band_type
OFPMBTDrop = 1 // OFPMBT_DROP
OFPMBTDSCPRemark = 2 // OFPMBT_DSCP_REMARK
OFPMBTExperimenter = 65535 // OFPMBT_EXPERIMENTER
)
type MeterBandType uint16
func (self MeterBandType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_meter_flags
OFPMFKbps = 1 // OFPMF_KBPS
OFPMFPktps = 2 // OFPMF_PKTPS
OFPMFBurst = 4 // OFPMF_BURST
OFPMFStats = 8 // OFPMF_STATS
)
type MeterFlags uint16
func (self MeterFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPMFKbps == OFPMFKbps {
flags = append(flags, "\"Kbps\": true")
}
if self&OFPMFPktps == OFPMFPktps {
flags = append(flags, "\"Pktps\": true")
}
if self&OFPMFBurst == OFPMFBurst {
flags = append(flags, "\"Burst\": true")
}
if self&OFPMFStats == OFPMFStats {
flags = append(flags, "\"Stats\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_meter_mod_command
OFPMCAdd = 0 // OFPMC_ADD
OFPMCModify = 1 // OFPMC_MODIFY
OFPMCDelete = 2 // OFPMC_DELETE
)
type MeterModCommand uint16
func (self MeterModCommand) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_meter_mod_failed_code
OFPMMFCUnknown = 0 // OFPMMFC_UNKNOWN
OFPMMFCMeterExists = 1 // OFPMMFC_METER_EXISTS
OFPMMFCInvalidMeter = 2 // OFPMMFC_INVALID_METER
OFPMMFCUnknownMeter = 3 // OFPMMFC_UNKNOWN_METER
OFPMMFCBadCommand = 4 // OFPMMFC_BAD_COMMAND
OFPMMFCBadFlags = 5 // OFPMMFC_BAD_FLAGS
OFPMMFCBadRate = 6 // OFPMMFC_BAD_RATE
OFPMMFCBadBurst = 7 // OFPMMFC_BAD_BURST
OFPMMFCBadBand = 8 // OFPMMFC_BAD_BAND
OFPMMFCBadBandValue = 9 // OFPMMFC_BAD_BAND_VALUE
OFPMMFCOutOfMeters = 10 // OFPMMFC_OUT_OF_METERS
OFPMMFCOutOfBands = 11 // OFPMMFC_OUT_OF_BANDS
)
type MeterModFailedCode uint16
func (self MeterModFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_ovs_tcp_flag
OvsTCPFlagFin = 1 // OFP_OVS_TCP_FLAG_FIN
OvsTCPFlagSyn = 2 // OFP_OVS_TCP_FLAG_SYN
OvsTCPFlagRst = 4 // OFP_OVS_TCP_FLAG_RST
OvsTCPFlagPsh = 8 // OFP_OVS_TCP_FLAG_PSH
OvsTCPFlagAck = 16 // OFP_OVS_TCP_FLAG_ACK
OvsTCPFlagUrg = 32 // OFP_OVS_TCP_FLAG_URG
OvsTCPFlagEce = 64 // OFP_OVS_TCP_FLAG_ECE
OvsTCPFlagCwr = 128 // OFP_OVS_TCP_FLAG_CWR
OvsTCPFlagNs = 256 // OFP_OVS_TCP_FLAG_NS
)
type OvsTcpFlag uint16
func (self OvsTcpFlag) MarshalJSON() ([]byte, error) {
var flags []string
if self&OvsTCPFlagFin == OvsTCPFlagFin {
flags = append(flags, "\"Fin\": true")
}
if self&OvsTCPFlagSyn == OvsTCPFlagSyn {
flags = append(flags, "\"Syn\": true")
}
if self&OvsTCPFlagRst == OvsTCPFlagRst {
flags = append(flags, "\"Rst\": true")
}
if self&OvsTCPFlagPsh == OvsTCPFlagPsh {
flags = append(flags, "\"Psh\": true")
}
if self&OvsTCPFlagAck == OvsTCPFlagAck {
flags = append(flags, "\"Ack\": true")
}
if self&OvsTCPFlagUrg == OvsTCPFlagUrg {
flags = append(flags, "\"Urg\": true")
}
if self&OvsTCPFlagEce == OvsTCPFlagEce {
flags = append(flags, "\"Ece\": true")
}
if self&OvsTCPFlagCwr == OvsTCPFlagCwr {
flags = append(flags, "\"Cwr\": true")
}
if self&OvsTCPFlagNs == OvsTCPFlagNs {
flags = append(flags, "\"Ns\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_oxm_class
OFPXMCNxm0 = 0 // OFPXMC_NXM_0
OFPXMCNxm1 = 1 // OFPXMC_NXM_1
OFPXMCOpenflowBasic = 32768 // OFPXMC_OPENFLOW_BASIC
OFPXMCExperimenter = 65535 // OFPXMC_EXPERIMENTER
)
type OxmClass uint16
func (self OxmClass) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_packet_in_reason
OFPRNoMatch = 0 // OFPR_NO_MATCH
OFPRAction = 1 // OFPR_ACTION
OFPRInvalidTtl = 2 // OFPR_INVALID_TTL
OFPRBSNNewHost = 128 // OFPR_BSN_NEW_HOST
OFPRBSNStationMove = 129 // OFPR_BSN_STATION_MOVE
OFPRBSNBadVLAN = 130 // OFPR_BSN_BAD_VLAN
OFPRBSNDestinationLookupFailure = 131 // OFPR_BSN_DESTINATION_LOOKUP_FAILURE
OFPRBSNNoRoute = 132 // OFPR_BSN_NO_ROUTE
OFPRBSNICMPEchoRequest = 133 // OFPR_BSN_ICMP_ECHO_REQUEST
OFPRBSNDestNetworkUnreachable = 134 // OFPR_BSN_DEST_NETWORK_UNREACHABLE
OFPRBSNDestHostUnreachable = 135 // OFPR_BSN_DEST_HOST_UNREACHABLE
OFPRBSNDestPortUnreachable = 136 // OFPR_BSN_DEST_PORT_UNREACHABLE
OFPRBSNFragmentationRequired = 137 // OFPR_BSN_FRAGMENTATION_REQUIRED
OFPRBSNARP = 139 // OFPR_BSN_ARP
OFPRBSNDhcp = 140 // OFPR_BSN_DHCP
OFPRBSNDebug = 141 // OFPR_BSN_DEBUG
OFPRBSNPacketOfDeath = 142 // OFPR_BSN_PACKET_OF_DEATH
)
type PacketInReason uint8
func (self PacketInReason) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_packet_type
PtEthernet = 0 // OFP_PT_ETHERNET
PtUseNextProto = 65534 // OFP_PT_USE_NEXT_PROTO
PtIpv4 = 67584 // OFP_PT_IPV4
PtMpls = 100423 // OFP_PT_MPLS
PtMplsMc = 100424 // OFP_PT_MPLS_MC
PtNsh = 100687 // OFP_PT_NSH
PtUnknown = 4294967295 // OFP_PT_UNKNOWN
)
type PacketType uint32
func (self PacketType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self PacketType) String() string {
switch self {
case PtEthernet:
return "ethernet"
case PtUseNextProto:
return "use_next_proto"
case PtIpv4:
return "ipv4"
case PtMpls:
return "mpls"
case PtMplsMc:
return "mpls_mc"
case PtNsh:
return "nsh"
case PtUnknown:
return "unknown"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group ofp_port
OFPPMax = 4294967040 // OFPP_MAX
OFPPInPort = 4294967288 // OFPP_IN_PORT
OFPPTable = 4294967289 // OFPP_TABLE
OFPPNormal = 4294967290 // OFPP_NORMAL
OFPPFlood = 4294967291 // OFPP_FLOOD
OFPPAll = 4294967292 // OFPP_ALL
OFPPController = 4294967293 // OFPP_CONTROLLER
OFPPLocal = 4294967294 // OFPP_LOCAL
OFPPAny = 4294967295 // OFPP_ANY
)
type Port uint32
func (self Port) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_port_config
OFPPCPortDown = 1 // OFPPC_PORT_DOWN
OFPPCNoRecv = 4 // OFPPC_NO_RECV
OFPPCNoFwd = 32 // OFPPC_NO_FWD
OFPPCNoPacketIn = 64 // OFPPC_NO_PACKET_IN
OFPPCBSNMirrorDest = 2147483648 // OFPPC_BSN_MIRROR_DEST
)
type PortConfig uint32
func (self PortConfig) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPPCPortDown == OFPPCPortDown {
flags = append(flags, "\"PortDown\": true")
}
if self&OFPPCNoRecv == OFPPCNoRecv {
flags = append(flags, "\"NoRecv\": true")
}
if self&OFPPCNoFwd == OFPPCNoFwd {
flags = append(flags, "\"NoFwd\": true")
}
if self&OFPPCNoPacketIn == OFPPCNoPacketIn {
flags = append(flags, "\"NoPacketIn\": true")
}
if self&OFPPCBSNMirrorDest == OFPPCBSNMirrorDest {
flags = append(flags, "\"BsnMirrorDest\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_port_features
OFPPF10MbHd = 1 // OFPPF_10MB_HD
OFPPF10MbFd = 2 // OFPPF_10MB_FD
OFPPF100MbHd = 4 // OFPPF_100MB_HD
OFPPF100MbFd = 8 // OFPPF_100MB_FD
OFPPF1GbHd = 16 // OFPPF_1GB_HD
OFPPF1GbFd = 32 // OFPPF_1GB_FD
OFPPF10GbFd = 64 // OFPPF_10GB_FD
OFPPF40GbFd = 128 // OFPPF_40GB_FD
OFPPF100GbFd = 256 // OFPPF_100GB_FD
OFPPF1TbFd = 512 // OFPPF_1TB_FD
OFPPFOther = 1024 // OFPPF_OTHER
OFPPFCopper = 2048 // OFPPF_COPPER
OFPPFFiber = 4096 // OFPPF_FIBER
OFPPFAutoneg = 8192 // OFPPF_AUTONEG
OFPPFPause = 16384 // OFPPF_PAUSE
OFPPFPauseAsym = 32768 // OFPPF_PAUSE_ASYM
OFPPFBSNBreakoutCapable = 2147483648 // OFPPF_BSN_BREAKOUT_CAPABLE
)
type PortFeatures uint32
func (self PortFeatures) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPPF10MbHd == OFPPF10MbHd {
flags = append(flags, "\"10MbHd\": true")
}
if self&OFPPF10MbFd == OFPPF10MbFd {
flags = append(flags, "\"10MbFd\": true")
}
if self&OFPPF100MbHd == OFPPF100MbHd {
flags = append(flags, "\"100MbHd\": true")
}
if self&OFPPF100MbFd == OFPPF100MbFd {
flags = append(flags, "\"100MbFd\": true")
}
if self&OFPPF1GbHd == OFPPF1GbHd {
flags = append(flags, "\"1GbHd\": true")
}
if self&OFPPF1GbFd == OFPPF1GbFd {
flags = append(flags, "\"1GbFd\": true")
}
if self&OFPPF10GbFd == OFPPF10GbFd {
flags = append(flags, "\"10GbFd\": true")
}
if self&OFPPF40GbFd == OFPPF40GbFd {
flags = append(flags, "\"40GbFd\": true")
}
if self&OFPPF100GbFd == OFPPF100GbFd {
flags = append(flags, "\"100GbFd\": true")
}
if self&OFPPF1TbFd == OFPPF1TbFd {
flags = append(flags, "\"1TbFd\": true")
}
if self&OFPPFOther == OFPPFOther {
flags = append(flags, "\"Other\": true")
}
if self&OFPPFCopper == OFPPFCopper {
flags = append(flags, "\"Copper\": true")
}
if self&OFPPFFiber == OFPPFFiber {
flags = append(flags, "\"Fiber\": true")
}
if self&OFPPFAutoneg == OFPPFAutoneg {
flags = append(flags, "\"Autoneg\": true")
}
if self&OFPPFPause == OFPPFPause {
flags = append(flags, "\"Pause\": true")
}
if self&OFPPFPauseAsym == OFPPFPauseAsym {
flags = append(flags, "\"PauseAsym\": true")
}
if self&OFPPFBSNBreakoutCapable == OFPPFBSNBreakoutCapable {
flags = append(flags, "\"BsnBreakoutCapable\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_port_mod_failed_code
OFPPMFCBadPort = 0 // OFPPMFC_BAD_PORT
OFPPMFCBadHwAddr = 1 // OFPPMFC_BAD_HW_ADDR
OFPPMFCBadConfig = 2 // OFPPMFC_BAD_CONFIG
OFPPMFCBadAdvertise = 3 // OFPPMFC_BAD_ADVERTISE
OFPPMFCEperm = 4 // OFPPMFC_EPERM
)
type PortModFailedCode uint16
func (self PortModFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_port_reason
OFPPRAdd = 0 // OFPPR_ADD
OFPPRDelete = 1 // OFPPR_DELETE
OFPPRModify = 2 // OFPPR_MODIFY
)
type PortReason uint8
func (self PortReason) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_port_state
OFPPSLinkDown = 1 // OFPPS_LINK_DOWN
OFPPSBlocked = 2 // OFPPS_BLOCKED
OFPPSLive = 4 // OFPPS_LIVE
)
type PortState uint32
func (self PortState) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPPSLinkDown == OFPPSLinkDown {
flags = append(flags, "\"LinkDown\": true")
}
if self&OFPPSBlocked == OFPPSBlocked {
flags = append(flags, "\"Blocked\": true")
}
if self&OFPPSLive == OFPPSLive {
flags = append(flags, "\"Live\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_queue_op_failed_code
OFPQOFCBadPort = 0 // OFPQOFC_BAD_PORT
OFPQOFCBadQueue = 1 // OFPQOFC_BAD_QUEUE
OFPQOFCEperm = 2 // OFPQOFC_EPERM
)
type QueueOpFailedCode uint16
func (self QueueOpFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_queue_properties
OFPQTMinRate = 1 // OFPQT_MIN_RATE
OFPQTMaxRate = 2 // OFPQT_MAX_RATE
OFPQTExperimenter = 65535 // OFPQT_EXPERIMENTER
)
type QueueProperties uint16
func (self QueueProperties) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_role_request_failed_code
OFPRRFCStale = 0 // OFPRRFC_STALE
OFPRRFCUnsup = 1 // OFPRRFC_UNSUP
OFPRRFCBadRole = 2 // OFPRRFC_BAD_ROLE
)
type RoleRequestFailedCode uint16
func (self RoleRequestFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_stats_reply_flags
OFPSFReplyMore = 1 // OFPSF_REPLY_MORE
)
type StatsReplyFlags uint16
func (self StatsReplyFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPSFReplyMore == OFPSFReplyMore {
flags = append(flags, "\"OFPSFReplyMore\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_stats_request_flags
OFPSFReqMore = 1 // OFPSF_REQ_MORE
)
type StatsRequestFlags uint16
func (self StatsRequestFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPSFReqMore == OFPSFReqMore {
flags = append(flags, "\"OFPSFReqMore\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_stats_type
OFPSTDesc = 0 // OFPST_DESC
OFPSTFlow = 1 // OFPST_FLOW
OFPSTAggregate = 2 // OFPST_AGGREGATE
OFPSTTable = 3 // OFPST_TABLE
OFPSTPort = 4 // OFPST_PORT
OFPSTQueue = 5 // OFPST_QUEUE
OFPSTGroup = 6 // OFPST_GROUP
OFPSTGroupDesc = 7 // OFPST_GROUP_DESC
OFPSTGroupFeatures = 8 // OFPST_GROUP_FEATURES
OFPSTMeter = 9 // OFPST_METER
OFPSTMeterConfig = 10 // OFPST_METER_CONFIG
OFPSTMeterFeatures = 11 // OFPST_METER_FEATURES
OFPSTTableFeatures = 12 // OFPST_TABLE_FEATURES
OFPSTPortDesc = 13 // OFPST_PORT_DESC
OFPSTExperimenter = 65535 // OFPST_EXPERIMENTER
)
type StatsType uint16
func (self StatsType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_switch_config_failed_code
OFPSCFCBadFlags = 0 // OFPSCFC_BAD_FLAGS
OFPSCFCBadLen = 1 // OFPSCFC_BAD_LEN
OFPSCFCEperm = 2 // OFPSCFC_EPERM
)
type SwitchConfigFailedCode uint16
func (self SwitchConfigFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_table
OFPTTMax = 254 // OFPTT_MAX
OFPTTAll = 255 // OFPTT_ALL
)
type Table uint8
func (self Table) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_table_config
OFPTCDeprecatedMask = 3 // OFPTC_DEPRECATED_MASK
)
type TableConfig uint32
func (self TableConfig) MarshalJSON() ([]byte, error) {
var flags []string
if self&OFPTCDeprecatedMask == OFPTCDeprecatedMask {
flags = append(flags, "\"OFPTCDeprecatedMask\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_table_feature_prop_type
OFPTFPTInstructions = 0 // OFPTFPT_INSTRUCTIONS
OFPTFPTInstructionsMiss = 1 // OFPTFPT_INSTRUCTIONS_MISS
OFPTFPTNextTables = 2 // OFPTFPT_NEXT_TABLES
OFPTFPTNextTablesMiss = 3 // OFPTFPT_NEXT_TABLES_MISS
OFPTFPTWriteActions = 4 // OFPTFPT_WRITE_ACTIONS
OFPTFPTWriteActionsMiss = 5 // OFPTFPT_WRITE_ACTIONS_MISS
OFPTFPTApplyActions = 6 // OFPTFPT_APPLY_ACTIONS
OFPTFPTApplyActionsMiss = 7 // OFPTFPT_APPLY_ACTIONS_MISS
OFPTFPTMatch = 8 // OFPTFPT_MATCH
OFPTFPTWildcards = 10 // OFPTFPT_WILDCARDS
OFPTFPTWriteSetfield = 12 // OFPTFPT_WRITE_SETFIELD
OFPTFPTWriteSetfieldMiss = 13 // OFPTFPT_WRITE_SETFIELD_MISS
OFPTFPTApplySetfield = 14 // OFPTFPT_APPLY_SETFIELD
OFPTFPTApplySetfieldMiss = 15 // OFPTFPT_APPLY_SETFIELD_MISS
OFPTFPTExperimenter = 65534 // OFPTFPT_EXPERIMENTER
OFPTFPTExperimenterMiss = 65535 // OFPTFPT_EXPERIMENTER_MISS
)
type TableFeaturePropType uint16
func (self TableFeaturePropType) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_table_features_failed_code
OFPTFFCBadTable = 0 // OFPTFFC_BAD_TABLE
OFPTFFCBadMetadata = 1 // OFPTFFC_BAD_METADATA
OFPTFFCBadType = 2 // OFPTFFC_BAD_TYPE
OFPTFFCBadLen = 3 // OFPTFFC_BAD_LEN
OFPTFFCBadArgument = 4 // OFPTFFC_BAD_ARGUMENT
OFPTFFCEperm = 5 // OFPTFFC_EPERM
)
type TableFeaturesFailedCode uint16
func (self TableFeaturesFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_table_mod_failed_code
OFPTMFCBadTable = 0 // OFPTMFC_BAD_TABLE
OFPTMFCBadConfig = 1 // OFPTMFC_BAD_CONFIG
OFPTMFCEperm = 2 // OFPTMFC_EPERM
)
type TableModFailedCode uint16
func (self TableModFailedCode) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}
const (
// Identifiers from group ofp_tcp_flags
TcpFlagCwr = 128 // TCP_FLAG_CWR
TcpFlagEce = 64 // TCP_FLAG_ECE
TcpFlagUrg = 32 // TCP_FLAG_URG
TcpFlagAck = 16 // TCP_FLAG_ACK
TcpFlagPsh = 8 // TCP_FLAG_PSH
TcpFlagRst = 4 // TCP_FLAG_RST
TcpFlagSyn = 2 // TCP_FLAG_SYN
TcpFlagFin = 1 // TCP_FLAG_FIN
)
type TcpFlags uint16
func (self TcpFlags) MarshalJSON() ([]byte, error) {
var flags []string
if self&TcpFlagCwr == TcpFlagCwr {
flags = append(flags, "\"Cwr\": true")
}
if self&TcpFlagEce == TcpFlagEce {
flags = append(flags, "\"Ece\": true")
}
if self&TcpFlagUrg == TcpFlagUrg {
flags = append(flags, "\"Urg\": true")
}
if self&TcpFlagAck == TcpFlagAck {
flags = append(flags, "\"Ack\": true")
}
if self&TcpFlagPsh == TcpFlagPsh {
flags = append(flags, "\"Psh\": true")
}
if self&TcpFlagRst == TcpFlagRst {
flags = append(flags, "\"Rst\": true")
}
if self&TcpFlagSyn == TcpFlagSyn {
flags = append(flags, "\"Syn\": true")
}
if self&TcpFlagFin == TcpFlagFin {
flags = append(flags, "\"Fin\": true")
}
return []byte("{" + strings.Join(flags, ", ") + "}"), nil
}
const (
// Identifiers from group ofp_type
OFPTHello = 0 // OFPT_HELLO
OFPTError = 1 // OFPT_ERROR
OFPTEchoRequest = 2 // OFPT_ECHO_REQUEST
OFPTEchoReply = 3 // OFPT_ECHO_REPLY
OFPTExperimenter = 4 // OFPT_EXPERIMENTER
OFPTFeaturesRequest = 5 // OFPT_FEATURES_REQUEST
OFPTFeaturesReply = 6 // OFPT_FEATURES_REPLY
OFPTGetConfigRequest = 7 // OFPT_GET_CONFIG_REQUEST
OFPTGetConfigReply = 8 // OFPT_GET_CONFIG_REPLY
OFPTSetConfig = 9 // OFPT_SET_CONFIG
OFPTPacketIn = 10 // OFPT_PACKET_IN
OFPTFlowRemoved = 11 // OFPT_FLOW_REMOVED
OFPTPortStatus = 12 // OFPT_PORT_STATUS
OFPTPacketOut = 13 // OFPT_PACKET_OUT
OFPTFlowMod = 14 // OFPT_FLOW_MOD
OFPTGroupMod = 15 // OFPT_GROUP_MOD
OFPTPortMod = 16 // OFPT_PORT_MOD
OFPTTableMod = 17 // OFPT_TABLE_MOD
OFPTStatsRequest = 18 // OFPT_STATS_REQUEST
OFPTStatsReply = 19 // OFPT_STATS_REPLY
OFPTBarrierRequest = 20 // OFPT_BARRIER_REQUEST
OFPTBarrierReply = 21 // OFPT_BARRIER_REPLY
OFPTQueueGetConfigRequest = 22 // OFPT_QUEUE_GET_CONFIG_REQUEST
OFPTQueueGetConfigReply = 23 // OFPT_QUEUE_GET_CONFIG_REPLY
OFPTRoleRequest = 24 // OFPT_ROLE_REQUEST
OFPTRoleReply = 25 // OFPT_ROLE_REPLY
OFPTGetAsyncRequest = 26 // OFPT_GET_ASYNC_REQUEST
OFPTGetAsyncReply = 27 // OFPT_GET_ASYNC_REPLY
OFPTSetAsync = 28 // OFPT_SET_ASYNC
OFPTMeterMod = 29 // OFPT_METER_MOD
)
type Type uint8
func (self Type) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("\"%s\"", self)), nil
}
func (self Type) String() string {
switch self {
case OFPTHello:
return "hello"
case OFPTError:
return "error"
case OFPTEchoRequest:
return "echo_request"
case OFPTEchoReply:
return "echo_reply"
case OFPTExperimenter:
return "experimenter"
case OFPTFeaturesRequest:
return "features_request"
case OFPTFeaturesReply:
return "features_reply"
case OFPTGetConfigRequest:
return "get_config_request"
case OFPTGetConfigReply:
return "get_config_reply"
case OFPTSetConfig:
return "set_config"
case OFPTPacketIn:
return "packet_in"
case OFPTFlowRemoved:
return "flow_removed"
case OFPTPortStatus:
return "port_status"
case OFPTPacketOut:
return "packet_out"
case OFPTFlowMod:
return "flow_mod"
case OFPTGroupMod:
return "group_mod"
case OFPTPortMod:
return "port_mod"
case OFPTTableMod:
return "table_mod"
case OFPTStatsRequest:
return "stats_request"
case OFPTStatsReply:
return "stats_reply"
case OFPTBarrierRequest:
return "barrier_request"
case OFPTBarrierReply:
return "barrier_reply"
case OFPTQueueGetConfigRequest:
return "queue_get_config_request"
case OFPTQueueGetConfigReply:
return "queue_get_config_reply"
case OFPTRoleRequest:
return "role_request"
case OFPTRoleReply:
return "role_reply"
case OFPTGetAsyncRequest:
return "get_async_request"
case OFPTGetAsyncReply:
return "get_async_reply"
case OFPTSetAsync:
return "set_async"
case OFPTMeterMod:
return "meter_mod"
default:
return fmt.Sprintf("%d", self)
}
}
const (
// Identifiers from group ofp_vlan_id
OFPVIDNone = 0 // OFPVID_NONE
OFPVIDPresent = 4096 // OFPVID_PRESENT
)
type VlanId uint16
func (self VlanId) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf("%d", self)), nil
}