// Code generated by GoVPP's binapi-generator. DO NOT EDIT. // versions: // binapi-generator: v0.4.0-dev // VPP: 20.05-release // source: /usr/share/vpp/api/plugins/acl.api.json /* Package acl contains generated code for VPP API file acl.api (2.0.0). It consists of: 7 aliases 11 enums 38 messages 8 types 1 union */ package acl import ( "bytes" "context" "encoding/binary" "io" "math" "strconv" api "git.fd.io/govpp.git/api" codec "git.fd.io/govpp.git/codec" struc "github.com/lunixbochs/struc" interface_types "git.fd.io/govpp.git/examples/binapi/interface_types" ip_types "git.fd.io/govpp.git/examples/binapi/ip_types" ) // This is a compile-time assertion to ensure that this generated file // is compatible with the GoVPP api package it is being compiled against. // A compilation error at this line likely means your copy of the // GoVPP api package needs to be updated. const _ = api.GoVppAPIPackageIsVersion2 // please upgrade the GoVPP api package const ( // ModuleName is the name of this module. ModuleName = "acl" // APIVersion is the API version of this module. APIVersion = "2.0.0" // VersionCrc is the CRC of this module. VersionCrc = 0x68c4cb37 ) // ACLAction represents VPP binary API enum 'acl_action'. type ACLAction uint8 const ( ACL_ACTION_API_DENY ACLAction = 0 ACL_ACTION_API_PERMIT ACLAction = 1 ACL_ACTION_API_PERMIT_REFLECT ACLAction = 2 ) var ( ACLAction_name = map[uint8]string{ 0: "ACL_ACTION_API_DENY", 1: "ACL_ACTION_API_PERMIT", 2: "ACL_ACTION_API_PERMIT_REFLECT", } ACLAction_value = map[string]uint8{ "ACL_ACTION_API_DENY": 0, "ACL_ACTION_API_PERMIT": 1, "ACL_ACTION_API_PERMIT_REFLECT": 2, } ) func (x ACLAction) String() string { s, ok := ACLAction_name[uint8(x)] if ok { return s } return "ACLAction(" + strconv.Itoa(int(x)) + ")" } type AddressFamily = ip_types.AddressFamily type IfStatusFlags = interface_types.IfStatusFlags type IfType = interface_types.IfType type IPDscp = ip_types.IPDscp type IPEcn = ip_types.IPEcn type IPProto = ip_types.IPProto type LinkDuplex = interface_types.LinkDuplex type MtuProto = interface_types.MtuProto type RxMode = interface_types.RxMode type SubIfFlags = interface_types.SubIfFlags type AddressWithPrefix = ip_types.AddressWithPrefix type InterfaceIndex = interface_types.InterfaceIndex type IP4Address = ip_types.IP4Address type IP4AddressWithPrefix = ip_types.IP4AddressWithPrefix type IP6Address = ip_types.IP6Address type IP6AddressWithPrefix = ip_types.IP6AddressWithPrefix // MacAddress represents VPP binary API alias 'mac_address'. type MacAddress [6]uint8 // ACLRule represents VPP binary API type 'acl_rule'. type ACLRule struct { IsPermit ACLAction `binapi:"acl_action,name=is_permit" json:"is_permit,omitempty"` SrcPrefix Prefix `binapi:"prefix,name=src_prefix" json:"src_prefix,omitempty"` DstPrefix Prefix `binapi:"prefix,name=dst_prefix" json:"dst_prefix,omitempty"` Proto IPProto `binapi:"ip_proto,name=proto" json:"proto,omitempty"` SrcportOrIcmptypeFirst uint16 `binapi:"u16,name=srcport_or_icmptype_first" json:"srcport_or_icmptype_first,omitempty"` SrcportOrIcmptypeLast uint16 `binapi:"u16,name=srcport_or_icmptype_last" json:"srcport_or_icmptype_last,omitempty"` DstportOrIcmpcodeFirst uint16 `binapi:"u16,name=dstport_or_icmpcode_first" json:"dstport_or_icmpcode_first,omitempty"` DstportOrIcmpcodeLast uint16 `binapi:"u16,name=dstport_or_icmpcode_last" json:"dstport_or_icmpcode_last,omitempty"` TCPFlagsMask uint8 `binapi:"u8,name=tcp_flags_mask" json:"tcp_flags_mask,omitempty"` TCPFlagsValue uint8 `binapi:"u8,name=tcp_flags_value" json:"tcp_flags_value,omitempty"` } func (*ACLRule) GetTypeName() string { return "acl_rule" } type Address = ip_types.Address type IP4Prefix = ip_types.IP4Prefix type IP6Prefix = ip_types.IP6Prefix // MacipACLRule represents VPP binary API type 'macip_acl_rule'. type MacipACLRule struct { IsPermit ACLAction `binapi:"acl_action,name=is_permit" json:"is_permit,omitempty"` SrcMac MacAddress `binapi:"mac_address,name=src_mac" json:"src_mac,omitempty"` SrcMacMask MacAddress `binapi:"mac_address,name=src_mac_mask" json:"src_mac_mask,omitempty"` SrcPrefix Prefix `binapi:"prefix,name=src_prefix" json:"src_prefix,omitempty"` } func (*MacipACLRule) GetTypeName() string { return "macip_acl_rule" } type Mprefix = ip_types.Mprefix type Prefix = ip_types.Prefix type PrefixMatcher = ip_types.PrefixMatcher type AddressUnion = ip_types.AddressUnion // ACLAddReplace represents VPP binary API message 'acl_add_replace'. type ACLAddReplace struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` Tag string `binapi:"string[64],name=tag" json:"tag,omitempty" struc:"[64]byte"` Count uint32 `binapi:"u32,name=count" json:"count,omitempty" struc:"sizeof=R"` R []ACLRule `binapi:"acl_rule[count],name=r" json:"r,omitempty"` } func (m *ACLAddReplace) Reset() { *m = ACLAddReplace{} } func (*ACLAddReplace) GetMessageName() string { return "acl_add_replace" } func (*ACLAddReplace) GetCrcString() string { return "1cabdeab" } func (*ACLAddReplace) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLAddReplace) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 // field[1] m.Tag size += 64 // field[1] m.Count size += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var s1 ACLRule _ = s1 if j1 < len(m.R) { s1 = m.R[j1] } // field[2] s1.IsPermit size += 1 // field[2] s1.SrcPrefix // field[3] s1.SrcPrefix.Address // field[4] s1.SrcPrefix.Address.Af size += 1 // field[4] s1.SrcPrefix.Address.Un size += 16 // field[3] s1.SrcPrefix.Len size += 1 // field[2] s1.DstPrefix // field[3] s1.DstPrefix.Address // field[4] s1.DstPrefix.Address.Af size += 1 // field[4] s1.DstPrefix.Address.Un size += 16 // field[3] s1.DstPrefix.Len size += 1 // field[2] s1.Proto size += 1 // field[2] s1.SrcportOrIcmptypeFirst size += 2 // field[2] s1.SrcportOrIcmptypeLast size += 2 // field[2] s1.DstportOrIcmpcodeFirst size += 2 // field[2] s1.DstportOrIcmpcodeLast size += 2 // field[2] s1.TCPFlagsMask size += 1 // field[2] s1.TCPFlagsValue size += 1 } return size } func (m *ACLAddReplace) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 // field[1] m.Tag copy(buf[pos:pos+64], m.Tag) pos += 64 // field[1] m.Count o.PutUint32(buf[pos:pos+4], uint32(len(m.R))) pos += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var v1 ACLRule if j1 < len(m.R) { v1 = m.R[j1] } // field[2] v1.IsPermit buf[pos] = uint8(v1.IsPermit) pos += 1 // field[2] v1.SrcPrefix // field[3] v1.SrcPrefix.Address // field[4] v1.SrcPrefix.Address.Af buf[pos] = uint8(v1.SrcPrefix.Address.Af) pos += 1 // field[4] v1.SrcPrefix.Address.Un copy(buf[pos:pos+16], v1.SrcPrefix.Address.Un.XXX_UnionData[:]) pos += 16 // field[3] v1.SrcPrefix.Len buf[pos] = uint8(v1.SrcPrefix.Len) pos += 1 // field[2] v1.DstPrefix // field[3] v1.DstPrefix.Address // field[4] v1.DstPrefix.Address.Af buf[pos] = uint8(v1.DstPrefix.Address.Af) pos += 1 // field[4] v1.DstPrefix.Address.Un copy(buf[pos:pos+16], v1.DstPrefix.Address.Un.XXX_UnionData[:]) pos += 16 // field[3] v1.DstPrefix.Len buf[pos] = uint8(v1.DstPrefix.Len) pos += 1 // field[2] v1.Proto buf[pos] = uint8(v1.Proto) pos += 1 // field[2] v1.SrcportOrIcmptypeFirst o.PutUint16(buf[pos:pos+2], uint16(v1.SrcportOrIcmptypeFirst)) pos += 2 // field[2] v1.SrcportOrIcmptypeLast o.PutUint16(buf[pos:pos+2], uint16(v1.SrcportOrIcmptypeLast)) pos += 2 // field[2] v1.DstportOrIcmpcodeFirst o.PutUint16(buf[pos:pos+2], uint16(v1.DstportOrIcmpcodeFirst)) pos += 2 // field[2] v1.DstportOrIcmpcodeLast o.PutUint16(buf[pos:pos+2], uint16(v1.DstportOrIcmpcodeLast)) pos += 2 // field[2] v1.TCPFlagsMask buf[pos] = uint8(v1.TCPFlagsMask) pos += 1 // field[2] v1.TCPFlagsValue buf[pos] = uint8(v1.TCPFlagsValue) pos += 1 } return buf, nil } func (m *ACLAddReplace) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Tag { nul := bytes.Index(tmp[pos:pos+64], []byte{0x00}) m.Tag = codec.DecodeString(tmp[pos : pos+nul]) pos += 64 } // field[1] m.Count m.Count = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.R m.R = make([]ACLRule, int(m.Count)) for j1 := 0; j1 < int(m.Count); j1++ { // field[2] m.R[j1].IsPermit m.R[j1].IsPermit = ACLAction(tmp[pos]) pos += 1 // field[2] m.R[j1].SrcPrefix // field[3] m.R[j1].SrcPrefix.Address // field[4] m.R[j1].SrcPrefix.Address.Af m.R[j1].SrcPrefix.Address.Af = AddressFamily(tmp[pos]) pos += 1 // field[4] m.R[j1].SrcPrefix.Address.Un copy(m.R[j1].SrcPrefix.Address.Un.XXX_UnionData[:], tmp[pos:pos+16]) pos += 16 // field[3] m.R[j1].SrcPrefix.Len m.R[j1].SrcPrefix.Len = uint8(tmp[pos]) pos += 1 // field[2] m.R[j1].DstPrefix // field[3] m.R[j1].DstPrefix.Address // field[4] m.R[j1].DstPrefix.Address.Af m.R[j1].DstPrefix.Address.Af = AddressFamily(tmp[pos]) pos += 1 // field[4] m.R[j1].DstPrefix.Address.Un copy(m.R[j1].DstPrefix.Address.Un.XXX_UnionData[:], tmp[pos:pos+16]) pos += 16 // field[3] m.R[j1].DstPrefix.Len m.R[j1].DstPrefix.Len = uint8(tmp[pos]) pos += 1 // field[2] m.R[j1].Proto m.R[j1].Proto = IPProto(tmp[pos]) pos += 1 // field[2] m.R[j1].SrcportOrIcmptypeFirst m.R[j1].SrcportOrIcmptypeFirst = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 // field[2] m.R[j1].SrcportOrIcmptypeLast m.R[j1].SrcportOrIcmptypeLast = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 // field[2] m.R[j1].DstportOrIcmpcodeFirst m.R[j1].DstportOrIcmpcodeFirst = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 // field[2] m.R[j1].DstportOrIcmpcodeLast m.R[j1].DstportOrIcmpcodeLast = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 // field[2] m.R[j1].TCPFlagsMask m.R[j1].TCPFlagsMask = uint8(tmp[pos]) pos += 1 // field[2] m.R[j1].TCPFlagsValue m.R[j1].TCPFlagsValue = uint8(tmp[pos]) pos += 1 } return nil } // ACLAddReplaceReply represents VPP binary API message 'acl_add_replace_reply'. type ACLAddReplaceReply struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *ACLAddReplaceReply) Reset() { *m = ACLAddReplaceReply{} } func (*ACLAddReplaceReply) GetMessageName() string { return "acl_add_replace_reply" } func (*ACLAddReplaceReply) GetCrcString() string { return "ac407b0c" } func (*ACLAddReplaceReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLAddReplaceReply) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 // field[1] m.Retval size += 4 return size } func (m *ACLAddReplaceReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *ACLAddReplaceReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLDel represents VPP binary API message 'acl_del'. type ACLDel struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` } func (m *ACLDel) Reset() { *m = ACLDel{} } func (*ACLDel) GetMessageName() string { return "acl_del" } func (*ACLDel) GetCrcString() string { return "ef34fea4" } func (*ACLDel) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLDel) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 return size } func (m *ACLDel) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 return buf, nil } func (m *ACLDel) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLDelReply represents VPP binary API message 'acl_del_reply'. type ACLDelReply struct { Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *ACLDelReply) Reset() { *m = ACLDelReply{} } func (*ACLDelReply) GetMessageName() string { return "acl_del_reply" } func (*ACLDelReply) GetCrcString() string { return "e8d4e804" } func (*ACLDelReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLDelReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Retval size += 4 return size } func (m *ACLDelReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *ACLDelReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLDetails represents VPP binary API message 'acl_details'. type ACLDetails struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` Tag string `binapi:"string[64],name=tag" json:"tag,omitempty" struc:"[64]byte"` Count uint32 `binapi:"u32,name=count" json:"count,omitempty" struc:"sizeof=R"` R []ACLRule `binapi:"acl_rule[count],name=r" json:"r,omitempty"` } func (m *ACLDetails) Reset() { *m = ACLDetails{} } func (*ACLDetails) GetMessageName() string { return "acl_details" } func (*ACLDetails) GetCrcString() string { return "7a97f21c" } func (*ACLDetails) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLDetails) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 // field[1] m.Tag size += 64 // field[1] m.Count size += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var s1 ACLRule _ = s1 if j1 < len(m.R) { s1 = m.R[j1] } // field[2] s1.IsPermit size += 1 // field[2] s1.SrcPrefix // field[3] s1.SrcPrefix.Address // field[4] s1.SrcPrefix.Address.Af size += 1 // field[4] s1.SrcPrefix.Address.Un size += 16 // field[3] s1.SrcPrefix.Len size += 1 // field[2] s1.DstPrefix // field[3] s1.DstPrefix.Address // field[4] s1.DstPrefix.Address.Af size += 1 // field[4] s1.DstPrefix.Address.Un size += 16 // field[3] s1.DstPrefix.Len size += 1 // field[2] s1.Proto size += 1 // field[2] s1.SrcportOrIcmptypeFirst size += 2 // field[2] s1.SrcportOrIcmptypeLast size += 2 // field[2] s1.DstportOrIcmpcodeFirst size += 2 // field[2] s1.DstportOrIcmpcodeLast size += 2 // field[2] s1.TCPFlagsMask size += 1 // field[2] s1.TCPFlagsValue size += 1 } return size } func (m *ACLDetails) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 // field[1] m.Tag copy(buf[pos:pos+64], m.Tag) pos += 64 // field[1] m.Count o.PutUint32(buf[pos:pos+4], uint32(len(m.R))) pos += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var v1 ACLRule if j1 < len(m.R) { v1 = m.R[j1] } // field[2] v1.IsPermit buf[pos] = uint8(v1.IsPermit) pos += 1 // field[2] v1.SrcPrefix // field[3] v1.SrcPrefix.Address // field[4] v1.SrcPrefix.Address.Af buf[pos] = uint8(v1.SrcPrefix.Address.Af) pos += 1 // field[4] v1.SrcPrefix.Address.Un copy(buf[pos:pos+16], v1.SrcPrefix.Address.Un.XXX_UnionData[:]) pos += 16 // field[3] v1.SrcPrefix.Len buf[pos] = uint8(v1.SrcPrefix.Len) pos += 1 // field[2] v1.DstPrefix // field[3] v1.DstPrefix.Address // field[4] v1.DstPrefix.Address.Af buf[pos] = uint8(v1.DstPrefix.Address.Af) pos += 1 // field[4] v1.DstPrefix.Address.Un copy(buf[pos:pos+16], v1.DstPrefix.Address.Un.XXX_UnionData[:]) pos += 16 // field[3] v1.DstPrefix.Len buf[pos] = uint8(v1.DstPrefix.Len) pos += 1 // field[2] v1.Proto buf[pos] = uint8(v1.Proto) pos += 1 // field[2] v1.SrcportOrIcmptypeFirst o.PutUint16(buf[pos:pos+2], uint16(v1.SrcportOrIcmptypeFirst)) pos += 2 // field[2] v1.SrcportOrIcmptypeLast o.PutUint16(buf[pos:pos+2], uint16(v1.SrcportOrIcmptypeLast)) pos += 2 // field[2] v1.DstportOrIcmpcodeFirst o.PutUint16(buf[pos:pos+2], uint16(v1.DstportOrIcmpcodeFirst)) pos += 2 // field[2] v1.DstportOrIcmpcodeLast o.PutUint16(buf[pos:pos+2], uint16(v1.DstportOrIcmpcodeLast)) pos += 2 // field[2] v1.TCPFlagsMask buf[pos] = uint8(v1.TCPFlagsMask) pos += 1 // field[2] v1.TCPFlagsValue buf[pos] = uint8(v1.TCPFlagsValue) pos += 1 } return buf, nil } func (m *ACLDetails) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Tag { nul := bytes.Index(tmp[pos:pos+64], []byte{0x00}) m.Tag = codec.DecodeString(tmp[pos : pos+nul]) pos += 64 } // field[1] m.Count m.Count = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.R m.R = make([]ACLRule, int(m.Count)) for j1 := 0; j1 < int(m.Count); j1++ { // field[2] m.R[j1].IsPermit m.R[j1].IsPermit = ACLAction(tmp[pos]) pos += 1 // field[2] m.R[j1].SrcPrefix // field[3] m.R[j1].SrcPrefix.Address // field[4] m.R[j1].SrcPrefix.Address.Af m.R[j1].SrcPrefix.Address.Af = AddressFamily(tmp[pos]) pos += 1 // field[4] m.R[j1].SrcPrefix.Address.Un copy(m.R[j1].SrcPrefix.Address.Un.XXX_UnionData[:], tmp[pos:pos+16]) pos += 16 // field[3] m.R[j1].SrcPrefix.Len m.R[j1].SrcPrefix.Len = uint8(tmp[pos]) pos += 1 // field[2] m.R[j1].DstPrefix // field[3] m.R[j1].DstPrefix.Address // field[4] m.R[j1].DstPrefix.Address.Af m.R[j1].DstPrefix.Address.Af = AddressFamily(tmp[pos]) pos += 1 // field[4] m.R[j1].DstPrefix.Address.Un copy(m.R[j1].DstPrefix.Address.Un.XXX_UnionData[:], tmp[pos:pos+16]) pos += 16 // field[3] m.R[j1].DstPrefix.Len m.R[j1].DstPrefix.Len = uint8(tmp[pos]) pos += 1 // field[2] m.R[j1].Proto m.R[j1].Proto = IPProto(tmp[pos]) pos += 1 // field[2] m.R[j1].SrcportOrIcmptypeFirst m.R[j1].SrcportOrIcmptypeFirst = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 // field[2] m.R[j1].SrcportOrIcmptypeLast m.R[j1].SrcportOrIcmptypeLast = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 // field[2] m.R[j1].DstportOrIcmpcodeFirst m.R[j1].DstportOrIcmpcodeFirst = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 // field[2] m.R[j1].DstportOrIcmpcodeLast m.R[j1].DstportOrIcmpcodeLast = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 // field[2] m.R[j1].TCPFlagsMask m.R[j1].TCPFlagsMask = uint8(tmp[pos]) pos += 1 // field[2] m.R[j1].TCPFlagsValue m.R[j1].TCPFlagsValue = uint8(tmp[pos]) pos += 1 } return nil } // ACLDump represents VPP binary API message 'acl_dump'. type ACLDump struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` } func (m *ACLDump) Reset() { *m = ACLDump{} } func (*ACLDump) GetMessageName() string { return "acl_dump" } func (*ACLDump) GetCrcString() string { return "ef34fea4" } func (*ACLDump) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLDump) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 return size } func (m *ACLDump) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 return buf, nil } func (m *ACLDump) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLInterfaceAddDel represents VPP binary API message 'acl_interface_add_del'. type ACLInterfaceAddDel struct { IsAdd bool `binapi:"bool,name=is_add,default=true" json:"is_add,omitempty"` IsInput bool `binapi:"bool,name=is_input" json:"is_input,omitempty"` SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` } func (m *ACLInterfaceAddDel) Reset() { *m = ACLInterfaceAddDel{} } func (*ACLInterfaceAddDel) GetMessageName() string { return "acl_interface_add_del" } func (*ACLInterfaceAddDel) GetCrcString() string { return "4b54bebd" } func (*ACLInterfaceAddDel) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLInterfaceAddDel) Size() int { if m == nil { return 0 } var size int // field[1] m.IsAdd size += 1 // field[1] m.IsInput size += 1 // field[1] m.SwIfIndex size += 4 // field[1] m.ACLIndex size += 4 return size } func (m *ACLInterfaceAddDel) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.IsAdd if m.IsAdd { buf[pos] = 1 } pos += 1 // field[1] m.IsInput if m.IsInput { buf[pos] = 1 } pos += 1 // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 return buf, nil } func (m *ACLInterfaceAddDel) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.IsAdd m.IsAdd = tmp[pos] != 0 pos += 1 // field[1] m.IsInput m.IsInput = tmp[pos] != 0 pos += 1 // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLInterfaceAddDelReply represents VPP binary API message 'acl_interface_add_del_reply'. type ACLInterfaceAddDelReply struct { Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *ACLInterfaceAddDelReply) Reset() { *m = ACLInterfaceAddDelReply{} } func (*ACLInterfaceAddDelReply) GetMessageName() string { return "acl_interface_add_del_reply" } func (*ACLInterfaceAddDelReply) GetCrcString() string { return "e8d4e804" } func (*ACLInterfaceAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLInterfaceAddDelReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Retval size += 4 return size } func (m *ACLInterfaceAddDelReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *ACLInterfaceAddDelReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLInterfaceEtypeWhitelistDetails represents VPP binary API message 'acl_interface_etype_whitelist_details'. type ACLInterfaceEtypeWhitelistDetails struct { SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` Count uint8 `binapi:"u8,name=count" json:"count,omitempty" struc:"sizeof=Whitelist"` NInput uint8 `binapi:"u8,name=n_input" json:"n_input,omitempty"` Whitelist []uint16 `binapi:"u16[count],name=whitelist" json:"whitelist,omitempty"` } func (m *ACLInterfaceEtypeWhitelistDetails) Reset() { *m = ACLInterfaceEtypeWhitelistDetails{} } func (*ACLInterfaceEtypeWhitelistDetails) GetMessageName() string { return "acl_interface_etype_whitelist_details" } func (*ACLInterfaceEtypeWhitelistDetails) GetCrcString() string { return "cc2bfded" } func (*ACLInterfaceEtypeWhitelistDetails) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLInterfaceEtypeWhitelistDetails) Size() int { if m == nil { return 0 } var size int // field[1] m.SwIfIndex size += 4 // field[1] m.Count size += 1 // field[1] m.NInput size += 1 // field[1] m.Whitelist size += 2 * len(m.Whitelist) return size } func (m *ACLInterfaceEtypeWhitelistDetails) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 // field[1] m.Count buf[pos] = uint8(len(m.Whitelist)) pos += 1 // field[1] m.NInput buf[pos] = uint8(m.NInput) pos += 1 // field[1] m.Whitelist for i := 0; i < len(m.Whitelist); i++ { var x uint16 if i < len(m.Whitelist) { x = uint16(m.Whitelist[i]) } o.PutUint16(buf[pos:pos+2], uint16(x)) pos += 2 } return buf, nil } func (m *ACLInterfaceEtypeWhitelistDetails) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Count m.Count = uint8(tmp[pos]) pos += 1 // field[1] m.NInput m.NInput = uint8(tmp[pos]) pos += 1 // field[1] m.Whitelist m.Whitelist = make([]uint16, m.Count) for i := 0; i < len(m.Whitelist); i++ { m.Whitelist[i] = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 } return nil } // ACLInterfaceEtypeWhitelistDump represents VPP binary API message 'acl_interface_etype_whitelist_dump'. type ACLInterfaceEtypeWhitelistDump struct { SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` } func (m *ACLInterfaceEtypeWhitelistDump) Reset() { *m = ACLInterfaceEtypeWhitelistDump{} } func (*ACLInterfaceEtypeWhitelistDump) GetMessageName() string { return "acl_interface_etype_whitelist_dump" } func (*ACLInterfaceEtypeWhitelistDump) GetCrcString() string { return "f9e6675e" } func (*ACLInterfaceEtypeWhitelistDump) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLInterfaceEtypeWhitelistDump) Size() int { if m == nil { return 0 } var size int // field[1] m.SwIfIndex size += 4 return size } func (m *ACLInterfaceEtypeWhitelistDump) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 return buf, nil } func (m *ACLInterfaceEtypeWhitelistDump) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLInterfaceListDetails represents VPP binary API message 'acl_interface_list_details'. type ACLInterfaceListDetails struct { SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` Count uint8 `binapi:"u8,name=count" json:"count,omitempty" struc:"sizeof=Acls"` NInput uint8 `binapi:"u8,name=n_input" json:"n_input,omitempty"` Acls []uint32 `binapi:"u32[count],name=acls" json:"acls,omitempty"` } func (m *ACLInterfaceListDetails) Reset() { *m = ACLInterfaceListDetails{} } func (*ACLInterfaceListDetails) GetMessageName() string { return "acl_interface_list_details" } func (*ACLInterfaceListDetails) GetCrcString() string { return "e695d256" } func (*ACLInterfaceListDetails) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLInterfaceListDetails) Size() int { if m == nil { return 0 } var size int // field[1] m.SwIfIndex size += 4 // field[1] m.Count size += 1 // field[1] m.NInput size += 1 // field[1] m.Acls size += 4 * len(m.Acls) return size } func (m *ACLInterfaceListDetails) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 // field[1] m.Count buf[pos] = uint8(len(m.Acls)) pos += 1 // field[1] m.NInput buf[pos] = uint8(m.NInput) pos += 1 // field[1] m.Acls for i := 0; i < len(m.Acls); i++ { var x uint32 if i < len(m.Acls) { x = uint32(m.Acls[i]) } o.PutUint32(buf[pos:pos+4], uint32(x)) pos += 4 } return buf, nil } func (m *ACLInterfaceListDetails) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Count m.Count = uint8(tmp[pos]) pos += 1 // field[1] m.NInput m.NInput = uint8(tmp[pos]) pos += 1 // field[1] m.Acls m.Acls = make([]uint32, m.Count) for i := 0; i < len(m.Acls); i++ { m.Acls[i] = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 } return nil } // ACLInterfaceListDump represents VPP binary API message 'acl_interface_list_dump'. type ACLInterfaceListDump struct { SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index,default=4294967295" json:"sw_if_index,omitempty"` } func (m *ACLInterfaceListDump) Reset() { *m = ACLInterfaceListDump{} } func (*ACLInterfaceListDump) GetMessageName() string { return "acl_interface_list_dump" } func (*ACLInterfaceListDump) GetCrcString() string { return "f9e6675e" } func (*ACLInterfaceListDump) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLInterfaceListDump) Size() int { if m == nil { return 0 } var size int // field[1] m.SwIfIndex size += 4 return size } func (m *ACLInterfaceListDump) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 return buf, nil } func (m *ACLInterfaceListDump) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLInterfaceSetACLList represents VPP binary API message 'acl_interface_set_acl_list'. type ACLInterfaceSetACLList struct { SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` Count uint8 `binapi:"u8,name=count" json:"count,omitempty" struc:"sizeof=Acls"` NInput uint8 `binapi:"u8,name=n_input" json:"n_input,omitempty"` Acls []uint32 `binapi:"u32[count],name=acls" json:"acls,omitempty"` } func (m *ACLInterfaceSetACLList) Reset() { *m = ACLInterfaceSetACLList{} } func (*ACLInterfaceSetACLList) GetMessageName() string { return "acl_interface_set_acl_list" } func (*ACLInterfaceSetACLList) GetCrcString() string { return "473982bd" } func (*ACLInterfaceSetACLList) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLInterfaceSetACLList) Size() int { if m == nil { return 0 } var size int // field[1] m.SwIfIndex size += 4 // field[1] m.Count size += 1 // field[1] m.NInput size += 1 // field[1] m.Acls size += 4 * len(m.Acls) return size } func (m *ACLInterfaceSetACLList) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 // field[1] m.Count buf[pos] = uint8(len(m.Acls)) pos += 1 // field[1] m.NInput buf[pos] = uint8(m.NInput) pos += 1 // field[1] m.Acls for i := 0; i < len(m.Acls); i++ { var x uint32 if i < len(m.Acls) { x = uint32(m.Acls[i]) } o.PutUint32(buf[pos:pos+4], uint32(x)) pos += 4 } return buf, nil } func (m *ACLInterfaceSetACLList) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Count m.Count = uint8(tmp[pos]) pos += 1 // field[1] m.NInput m.NInput = uint8(tmp[pos]) pos += 1 // field[1] m.Acls m.Acls = make([]uint32, m.Count) for i := 0; i < len(m.Acls); i++ { m.Acls[i] = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 } return nil } // ACLInterfaceSetACLListReply represents VPP binary API message 'acl_interface_set_acl_list_reply'. type ACLInterfaceSetACLListReply struct { Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *ACLInterfaceSetACLListReply) Reset() { *m = ACLInterfaceSetACLListReply{} } func (*ACLInterfaceSetACLListReply) GetMessageName() string { return "acl_interface_set_acl_list_reply" } func (*ACLInterfaceSetACLListReply) GetCrcString() string { return "e8d4e804" } func (*ACLInterfaceSetACLListReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLInterfaceSetACLListReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Retval size += 4 return size } func (m *ACLInterfaceSetACLListReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *ACLInterfaceSetACLListReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLInterfaceSetEtypeWhitelist represents VPP binary API message 'acl_interface_set_etype_whitelist'. type ACLInterfaceSetEtypeWhitelist struct { SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` Count uint8 `binapi:"u8,name=count" json:"count,omitempty" struc:"sizeof=Whitelist"` NInput uint8 `binapi:"u8,name=n_input" json:"n_input,omitempty"` Whitelist []uint16 `binapi:"u16[count],name=whitelist" json:"whitelist,omitempty"` } func (m *ACLInterfaceSetEtypeWhitelist) Reset() { *m = ACLInterfaceSetEtypeWhitelist{} } func (*ACLInterfaceSetEtypeWhitelist) GetMessageName() string { return "acl_interface_set_etype_whitelist" } func (*ACLInterfaceSetEtypeWhitelist) GetCrcString() string { return "3f5c2d2d" } func (*ACLInterfaceSetEtypeWhitelist) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLInterfaceSetEtypeWhitelist) Size() int { if m == nil { return 0 } var size int // field[1] m.SwIfIndex size += 4 // field[1] m.Count size += 1 // field[1] m.NInput size += 1 // field[1] m.Whitelist size += 2 * len(m.Whitelist) return size } func (m *ACLInterfaceSetEtypeWhitelist) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 // field[1] m.Count buf[pos] = uint8(len(m.Whitelist)) pos += 1 // field[1] m.NInput buf[pos] = uint8(m.NInput) pos += 1 // field[1] m.Whitelist for i := 0; i < len(m.Whitelist); i++ { var x uint16 if i < len(m.Whitelist) { x = uint16(m.Whitelist[i]) } o.PutUint16(buf[pos:pos+2], uint16(x)) pos += 2 } return buf, nil } func (m *ACLInterfaceSetEtypeWhitelist) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Count m.Count = uint8(tmp[pos]) pos += 1 // field[1] m.NInput m.NInput = uint8(tmp[pos]) pos += 1 // field[1] m.Whitelist m.Whitelist = make([]uint16, m.Count) for i := 0; i < len(m.Whitelist); i++ { m.Whitelist[i] = uint16(o.Uint16(tmp[pos : pos+2])) pos += 2 } return nil } // ACLInterfaceSetEtypeWhitelistReply represents VPP binary API message 'acl_interface_set_etype_whitelist_reply'. type ACLInterfaceSetEtypeWhitelistReply struct { Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *ACLInterfaceSetEtypeWhitelistReply) Reset() { *m = ACLInterfaceSetEtypeWhitelistReply{} } func (*ACLInterfaceSetEtypeWhitelistReply) GetMessageName() string { return "acl_interface_set_etype_whitelist_reply" } func (*ACLInterfaceSetEtypeWhitelistReply) GetCrcString() string { return "e8d4e804" } func (*ACLInterfaceSetEtypeWhitelistReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLInterfaceSetEtypeWhitelistReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Retval size += 4 return size } func (m *ACLInterfaceSetEtypeWhitelistReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *ACLInterfaceSetEtypeWhitelistReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLPluginControlPing represents VPP binary API message 'acl_plugin_control_ping'. type ACLPluginControlPing struct{} func (m *ACLPluginControlPing) Reset() { *m = ACLPluginControlPing{} } func (*ACLPluginControlPing) GetMessageName() string { return "acl_plugin_control_ping" } func (*ACLPluginControlPing) GetCrcString() string { return "51077d14" } func (*ACLPluginControlPing) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLPluginControlPing) Size() int { if m == nil { return 0 } var size int return size } func (m *ACLPluginControlPing) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } return buf, nil } func (m *ACLPluginControlPing) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos return nil } // ACLPluginControlPingReply represents VPP binary API message 'acl_plugin_control_ping_reply'. type ACLPluginControlPingReply struct { Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` ClientIndex uint32 `binapi:"u32,name=client_index" json:"client_index,omitempty"` VpePID uint32 `binapi:"u32,name=vpe_pid" json:"vpe_pid,omitempty"` } func (m *ACLPluginControlPingReply) Reset() { *m = ACLPluginControlPingReply{} } func (*ACLPluginControlPingReply) GetMessageName() string { return "acl_plugin_control_ping_reply" } func (*ACLPluginControlPingReply) GetCrcString() string { return "f6b0b8ca" } func (*ACLPluginControlPingReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLPluginControlPingReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Retval size += 4 // field[1] m.ClientIndex size += 4 // field[1] m.VpePID size += 4 return size } func (m *ACLPluginControlPingReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 // field[1] m.ClientIndex o.PutUint32(buf[pos:pos+4], uint32(m.ClientIndex)) pos += 4 // field[1] m.VpePID o.PutUint32(buf[pos:pos+4], uint32(m.VpePID)) pos += 4 return buf, nil } func (m *ACLPluginControlPingReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.ClientIndex m.ClientIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.VpePID m.VpePID = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLPluginGetConnTableMaxEntries represents VPP binary API message 'acl_plugin_get_conn_table_max_entries'. type ACLPluginGetConnTableMaxEntries struct{} func (m *ACLPluginGetConnTableMaxEntries) Reset() { *m = ACLPluginGetConnTableMaxEntries{} } func (*ACLPluginGetConnTableMaxEntries) GetMessageName() string { return "acl_plugin_get_conn_table_max_entries" } func (*ACLPluginGetConnTableMaxEntries) GetCrcString() string { return "51077d14" } func (*ACLPluginGetConnTableMaxEntries) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLPluginGetConnTableMaxEntries) Size() int { if m == nil { return 0 } var size int return size } func (m *ACLPluginGetConnTableMaxEntries) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } return buf, nil } func (m *ACLPluginGetConnTableMaxEntries) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos return nil } // ACLPluginGetConnTableMaxEntriesReply represents VPP binary API message 'acl_plugin_get_conn_table_max_entries_reply'. type ACLPluginGetConnTableMaxEntriesReply struct { ConnTableMaxEntries uint64 `binapi:"u64,name=conn_table_max_entries" json:"conn_table_max_entries,omitempty"` } func (m *ACLPluginGetConnTableMaxEntriesReply) Reset() { *m = ACLPluginGetConnTableMaxEntriesReply{} } func (*ACLPluginGetConnTableMaxEntriesReply) GetMessageName() string { return "acl_plugin_get_conn_table_max_entries_reply" } func (*ACLPluginGetConnTableMaxEntriesReply) GetCrcString() string { return "7a096d3d" } func (*ACLPluginGetConnTableMaxEntriesReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLPluginGetConnTableMaxEntriesReply) Size() int { if m == nil { return 0 } var size int // field[1] m.ConnTableMaxEntries size += 8 return size } func (m *ACLPluginGetConnTableMaxEntriesReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ConnTableMaxEntries o.PutUint64(buf[pos:pos+8], uint64(m.ConnTableMaxEntries)) pos += 8 return buf, nil } func (m *ACLPluginGetConnTableMaxEntriesReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ConnTableMaxEntries m.ConnTableMaxEntries = uint64(o.Uint64(tmp[pos : pos+8])) pos += 8 return nil } // ACLPluginGetVersion represents VPP binary API message 'acl_plugin_get_version'. type ACLPluginGetVersion struct{} func (m *ACLPluginGetVersion) Reset() { *m = ACLPluginGetVersion{} } func (*ACLPluginGetVersion) GetMessageName() string { return "acl_plugin_get_version" } func (*ACLPluginGetVersion) GetCrcString() string { return "51077d14" } func (*ACLPluginGetVersion) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLPluginGetVersion) Size() int { if m == nil { return 0 } var size int return size } func (m *ACLPluginGetVersion) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } return buf, nil } func (m *ACLPluginGetVersion) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos return nil } // ACLPluginGetVersionReply represents VPP binary API message 'acl_plugin_get_version_reply'. type ACLPluginGetVersionReply struct { Major uint32 `binapi:"u32,name=major" json:"major,omitempty"` Minor uint32 `binapi:"u32,name=minor" json:"minor,omitempty"` } func (m *ACLPluginGetVersionReply) Reset() { *m = ACLPluginGetVersionReply{} } func (*ACLPluginGetVersionReply) GetMessageName() string { return "acl_plugin_get_version_reply" } func (*ACLPluginGetVersionReply) GetCrcString() string { return "9b32cf86" } func (*ACLPluginGetVersionReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLPluginGetVersionReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Major size += 4 // field[1] m.Minor size += 4 return size } func (m *ACLPluginGetVersionReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Major o.PutUint32(buf[pos:pos+4], uint32(m.Major)) pos += 4 // field[1] m.Minor o.PutUint32(buf[pos:pos+4], uint32(m.Minor)) pos += 4 return buf, nil } func (m *ACLPluginGetVersionReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Major m.Major = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Minor m.Minor = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // ACLStatsIntfCountersEnable represents VPP binary API message 'acl_stats_intf_counters_enable'. type ACLStatsIntfCountersEnable struct { Enable bool `binapi:"bool,name=enable" json:"enable,omitempty"` } func (m *ACLStatsIntfCountersEnable) Reset() { *m = ACLStatsIntfCountersEnable{} } func (*ACLStatsIntfCountersEnable) GetMessageName() string { return "acl_stats_intf_counters_enable" } func (*ACLStatsIntfCountersEnable) GetCrcString() string { return "b3e225d2" } func (*ACLStatsIntfCountersEnable) GetMessageType() api.MessageType { return api.RequestMessage } func (m *ACLStatsIntfCountersEnable) Size() int { if m == nil { return 0 } var size int // field[1] m.Enable size += 1 return size } func (m *ACLStatsIntfCountersEnable) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Enable if m.Enable { buf[pos] = 1 } pos += 1 return buf, nil } func (m *ACLStatsIntfCountersEnable) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Enable m.Enable = tmp[pos] != 0 pos += 1 return nil } // ACLStatsIntfCountersEnableReply represents VPP binary API message 'acl_stats_intf_counters_enable_reply'. type ACLStatsIntfCountersEnableReply struct { Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *ACLStatsIntfCountersEnableReply) Reset() { *m = ACLStatsIntfCountersEnableReply{} } func (*ACLStatsIntfCountersEnableReply) GetMessageName() string { return "acl_stats_intf_counters_enable_reply" } func (*ACLStatsIntfCountersEnableReply) GetCrcString() string { return "e8d4e804" } func (*ACLStatsIntfCountersEnableReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *ACLStatsIntfCountersEnableReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Retval size += 4 return size } func (m *ACLStatsIntfCountersEnableReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *ACLStatsIntfCountersEnableReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // MacipACLAdd represents VPP binary API message 'macip_acl_add'. type MacipACLAdd struct { Tag string `binapi:"string[64],name=tag" json:"tag,omitempty" struc:"[64]byte"` Count uint32 `binapi:"u32,name=count" json:"count,omitempty" struc:"sizeof=R"` R []MacipACLRule `binapi:"macip_acl_rule[count],name=r" json:"r,omitempty"` } func (m *MacipACLAdd) Reset() { *m = MacipACLAdd{} } func (*MacipACLAdd) GetMessageName() string { return "macip_acl_add" } func (*MacipACLAdd) GetCrcString() string { return "d648fd0a" } func (*MacipACLAdd) GetMessageType() api.MessageType { return api.RequestMessage } func (m *MacipACLAdd) Size() int { if m == nil { return 0 } var size int // field[1] m.Tag size += 64 // field[1] m.Count size += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var s1 MacipACLRule _ = s1 if j1 < len(m.R) { s1 = m.R[j1] } // field[2] s1.IsPermit size += 1 // field[2] s1.SrcMac size += 6 // field[2] s1.SrcMacMask size += 6 // field[2] s1.SrcPrefix // field[3] s1.SrcPrefix.Address // field[4] s1.SrcPrefix.Address.Af size += 1 // field[4] s1.SrcPrefix.Address.Un size += 16 // field[3] s1.SrcPrefix.Len size += 1 } return size } func (m *MacipACLAdd) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Tag copy(buf[pos:pos+64], m.Tag) pos += 64 // field[1] m.Count o.PutUint32(buf[pos:pos+4], uint32(len(m.R))) pos += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var v1 MacipACLRule if j1 < len(m.R) { v1 = m.R[j1] } // field[2] v1.IsPermit buf[pos] = uint8(v1.IsPermit) pos += 1 // field[2] v1.SrcMac for i := 0; i < 6; i++ { var x uint8 if i < len(v1.SrcMac) { x = uint8(v1.SrcMac[i]) } buf[pos] = uint8(x) pos += 1 } // field[2] v1.SrcMacMask for i := 0; i < 6; i++ { var x uint8 if i < len(v1.SrcMacMask) { x = uint8(v1.SrcMacMask[i]) } buf[pos] = uint8(x) pos += 1 } // field[2] v1.SrcPrefix // field[3] v1.SrcPrefix.Address // field[4] v1.SrcPrefix.Address.Af buf[pos] = uint8(v1.SrcPrefix.Address.Af) pos += 1 // field[4] v1.SrcPrefix.Address.Un copy(buf[pos:pos+16], v1.SrcPrefix.Address.Un.XXX_UnionData[:]) pos += 16 // field[3] v1.SrcPrefix.Len buf[pos] = uint8(v1.SrcPrefix.Len) pos += 1 } return buf, nil } func (m *MacipACLAdd) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Tag { nul := bytes.Index(tmp[pos:pos+64], []byte{0x00}) m.Tag = codec.DecodeString(tmp[pos : pos+nul]) pos += 64 } // field[1] m.Count m.Count = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.R m.R = make([]MacipACLRule, int(m.Count)) for j1 := 0; j1 < int(m.Count); j1++ { // field[2] m.R[j1].IsPermit m.R[j1].IsPermit = ACLAction(tmp[pos]) pos += 1 // field[2] m.R[j1].SrcMac for i := 0; i < len(m.R[j1].SrcMac); i++ { m.R[j1].SrcMac[i] = uint8(tmp[pos]) pos += 1 } // field[2] m.R[j1].SrcMacMask for i := 0; i < len(m.R[j1].SrcMacMask); i++ { m.R[j1].SrcMacMask[i] = uint8(tmp[pos]) pos += 1 } // field[2] m.R[j1].SrcPrefix // field[3] m.R[j1].SrcPrefix.Address // field[4] m.R[j1].SrcPrefix.Address.Af m.R[j1].SrcPrefix.Address.Af = AddressFamily(tmp[pos]) pos += 1 // field[4] m.R[j1].SrcPrefix.Address.Un copy(m.R[j1].SrcPrefix.Address.Un.XXX_UnionData[:], tmp[pos:pos+16]) pos += 16 // field[3] m.R[j1].SrcPrefix.Len m.R[j1].SrcPrefix.Len = uint8(tmp[pos]) pos += 1 } return nil } // MacipACLAddReplace represents VPP binary API message 'macip_acl_add_replace'. type MacipACLAddReplace struct { ACLIndex uint32 `binapi:"u32,name=acl_index,default=4.294967295e+09" json:"acl_index,omitempty"` Tag string `binapi:"string[64],name=tag" json:"tag,omitempty" struc:"[64]byte"` Count uint32 `binapi:"u32,name=count" json:"count,omitempty" struc:"sizeof=R"` R []MacipACLRule `binapi:"macip_acl_rule[count],name=r" json:"r,omitempty"` } func (m *MacipACLAddReplace) Reset() { *m = MacipACLAddReplace{} } func (*MacipACLAddReplace) GetMessageName() string { return "macip_acl_add_replace" } func (*MacipACLAddReplace) GetCrcString() string { return "e34402a7" } func (*MacipACLAddReplace) GetMessageType() api.MessageType { return api.RequestMessage } func (m *MacipACLAddReplace) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 // field[1] m.Tag size += 64 // field[1] m.Count size += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var s1 MacipACLRule _ = s1 if j1 < len(m.R) { s1 = m.R[j1] } // field[2] s1.IsPermit size += 1 // field[2] s1.SrcMac size += 6 // field[2] s1.SrcMacMask size += 6 // field[2] s1.SrcPrefix // field[3] s1.SrcPrefix.Address // field[4] s1.SrcPrefix.Address.Af size += 1 // field[4] s1.SrcPrefix.Address.Un size += 16 // field[3] s1.SrcPrefix.Len size += 1 } return size } func (m *MacipACLAddReplace) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 // field[1] m.Tag copy(buf[pos:pos+64], m.Tag) pos += 64 // field[1] m.Count o.PutUint32(buf[pos:pos+4], uint32(len(m.R))) pos += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var v1 MacipACLRule if j1 < len(m.R) { v1 = m.R[j1] } // field[2] v1.IsPermit buf[pos] = uint8(v1.IsPermit) pos += 1 // field[2] v1.SrcMac for i := 0; i < 6; i++ { var x uint8 if i < len(v1.SrcMac) { x = uint8(v1.SrcMac[i]) } buf[pos] = uint8(x) pos += 1 } // field[2] v1.SrcMacMask for i := 0; i < 6; i++ { var x uint8 if i < len(v1.SrcMacMask) { x = uint8(v1.SrcMacMask[i]) } buf[pos] = uint8(x) pos += 1 } // field[2] v1.SrcPrefix // field[3] v1.SrcPrefix.Address // field[4] v1.SrcPrefix.Address.Af buf[pos] = uint8(v1.SrcPrefix.Address.Af) pos += 1 // field[4] v1.SrcPrefix.Address.Un copy(buf[pos:pos+16], v1.SrcPrefix.Address.Un.XXX_UnionData[:]) pos += 16 // field[3] v1.SrcPrefix.Len buf[pos] = uint8(v1.SrcPrefix.Len) pos += 1 } return buf, nil } func (m *MacipACLAddReplace) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Tag { nul := bytes.Index(tmp[pos:pos+64], []byte{0x00}) m.Tag = codec.DecodeString(tmp[pos : pos+nul]) pos += 64 } // field[1] m.Count m.Count = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.R m.R = make([]MacipACLRule, int(m.Count)) for j1 := 0; j1 < int(m.Count); j1++ { // field[2] m.R[j1].IsPermit m.R[j1].IsPermit = ACLAction(tmp[pos]) pos += 1 // field[2] m.R[j1].SrcMac for i := 0; i < len(m.R[j1].SrcMac); i++ { m.R[j1].SrcMac[i] = uint8(tmp[pos]) pos += 1 } // field[2] m.R[j1].SrcMacMask for i := 0; i < len(m.R[j1].SrcMacMask); i++ { m.R[j1].SrcMacMask[i] = uint8(tmp[pos]) pos += 1 } // field[2] m.R[j1].SrcPrefix // field[3] m.R[j1].SrcPrefix.Address // field[4] m.R[j1].SrcPrefix.Address.Af m.R[j1].SrcPrefix.Address.Af = AddressFamily(tmp[pos]) pos += 1 // field[4] m.R[j1].SrcPrefix.Address.Un copy(m.R[j1].SrcPrefix.Address.Un.XXX_UnionData[:], tmp[pos:pos+16]) pos += 16 // field[3] m.R[j1].SrcPrefix.Len m.R[j1].SrcPrefix.Len = uint8(tmp[pos]) pos += 1 } return nil } // MacipACLAddReplaceReply represents VPP binary API message 'macip_acl_add_replace_reply'. type MacipACLAddReplaceReply struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *MacipACLAddReplaceReply) Reset() { *m = MacipACLAddReplaceReply{} } func (*MacipACLAddReplaceReply) GetMessageName() string { return "macip_acl_add_replace_reply" } func (*MacipACLAddReplaceReply) GetCrcString() string { return "ac407b0c" } func (*MacipACLAddReplaceReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *MacipACLAddReplaceReply) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 // field[1] m.Retval size += 4 return size } func (m *MacipACLAddReplaceReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *MacipACLAddReplaceReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // MacipACLAddReply represents VPP binary API message 'macip_acl_add_reply'. type MacipACLAddReply struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *MacipACLAddReply) Reset() { *m = MacipACLAddReply{} } func (*MacipACLAddReply) GetMessageName() string { return "macip_acl_add_reply" } func (*MacipACLAddReply) GetCrcString() string { return "ac407b0c" } func (*MacipACLAddReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *MacipACLAddReply) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 // field[1] m.Retval size += 4 return size } func (m *MacipACLAddReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *MacipACLAddReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // MacipACLDel represents VPP binary API message 'macip_acl_del'. type MacipACLDel struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` } func (m *MacipACLDel) Reset() { *m = MacipACLDel{} } func (*MacipACLDel) GetMessageName() string { return "macip_acl_del" } func (*MacipACLDel) GetCrcString() string { return "ef34fea4" } func (*MacipACLDel) GetMessageType() api.MessageType { return api.RequestMessage } func (m *MacipACLDel) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 return size } func (m *MacipACLDel) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 return buf, nil } func (m *MacipACLDel) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // MacipACLDelReply represents VPP binary API message 'macip_acl_del_reply'. type MacipACLDelReply struct { Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *MacipACLDelReply) Reset() { *m = MacipACLDelReply{} } func (*MacipACLDelReply) GetMessageName() string { return "macip_acl_del_reply" } func (*MacipACLDelReply) GetCrcString() string { return "e8d4e804" } func (*MacipACLDelReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *MacipACLDelReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Retval size += 4 return size } func (m *MacipACLDelReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *MacipACLDelReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // MacipACLDetails represents VPP binary API message 'macip_acl_details'. type MacipACLDetails struct { ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` Tag string `binapi:"string[64],name=tag" json:"tag,omitempty" struc:"[64]byte"` Count uint32 `binapi:"u32,name=count" json:"count,omitempty" struc:"sizeof=R"` R []MacipACLRule `binapi:"macip_acl_rule[count],name=r" json:"r,omitempty"` } func (m *MacipACLDetails) Reset() { *m = MacipACLDetails{} } func (*MacipACLDetails) GetMessageName() string { return "macip_acl_details" } func (*MacipACLDetails) GetCrcString() string { return "57c7482f" } func (*MacipACLDetails) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *MacipACLDetails) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 // field[1] m.Tag size += 64 // field[1] m.Count size += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var s1 MacipACLRule _ = s1 if j1 < len(m.R) { s1 = m.R[j1] } // field[2] s1.IsPermit size += 1 // field[2] s1.SrcMac size += 6 // field[2] s1.SrcMacMask size += 6 // field[2] s1.SrcPrefix // field[3] s1.SrcPrefix.Address // field[4] s1.SrcPrefix.Address.Af size += 1 // field[4] s1.SrcPrefix.Address.Un size += 16 // field[3] s1.SrcPrefix.Len size += 1 } return size } func (m *MacipACLDetails) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 // field[1] m.Tag copy(buf[pos:pos+64], m.Tag) pos += 64 // field[1] m.Count o.PutUint32(buf[pos:pos+4], uint32(len(m.R))) pos += 4 // field[1] m.R for j1 := 0; j1 < len(m.R); j1++ { var v1 MacipACLRule if j1 < len(m.R) { v1 = m.R[j1] } // field[2] v1.IsPermit buf[pos] = uint8(v1.IsPermit) pos += 1 // field[2] v1.SrcMac for i := 0; i < 6; i++ { var x uint8 if i < len(v1.SrcMac) { x = uint8(v1.SrcMac[i]) } buf[pos] = uint8(x) pos += 1 } // field[2] v1.SrcMacMask for i := 0; i < 6; i++ { var x uint8 if i < len(v1.SrcMacMask) { x = uint8(v1.SrcMacMask[i]) } buf[pos] = uint8(x) pos += 1 } // field[2] v1.SrcPrefix // field[3] v1.SrcPrefix.Address // field[4] v1.SrcPrefix.Address.Af buf[pos] = uint8(v1.SrcPrefix.Address.Af) pos += 1 // field[4] v1.SrcPrefix.Address.Un copy(buf[pos:pos+16], v1.SrcPrefix.Address.Un.XXX_UnionData[:]) pos += 16 // field[3] v1.SrcPrefix.Len buf[pos] = uint8(v1.SrcPrefix.Len) pos += 1 } return buf, nil } func (m *MacipACLDetails) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Tag { nul := bytes.Index(tmp[pos:pos+64], []byte{0x00}) m.Tag = codec.DecodeString(tmp[pos : pos+nul]) pos += 64 } // field[1] m.Count m.Count = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.R m.R = make([]MacipACLRule, int(m.Count)) for j1 := 0; j1 < int(m.Count); j1++ { // field[2] m.R[j1].IsPermit m.R[j1].IsPermit = ACLAction(tmp[pos]) pos += 1 // field[2] m.R[j1].SrcMac for i := 0; i < len(m.R[j1].SrcMac); i++ { m.R[j1].SrcMac[i] = uint8(tmp[pos]) pos += 1 } // field[2] m.R[j1].SrcMacMask for i := 0; i < len(m.R[j1].SrcMacMask); i++ { m.R[j1].SrcMacMask[i] = uint8(tmp[pos]) pos += 1 } // field[2] m.R[j1].SrcPrefix // field[3] m.R[j1].SrcPrefix.Address // field[4] m.R[j1].SrcPrefix.Address.Af m.R[j1].SrcPrefix.Address.Af = AddressFamily(tmp[pos]) pos += 1 // field[4] m.R[j1].SrcPrefix.Address.Un copy(m.R[j1].SrcPrefix.Address.Un.XXX_UnionData[:], tmp[pos:pos+16]) pos += 16 // field[3] m.R[j1].SrcPrefix.Len m.R[j1].SrcPrefix.Len = uint8(tmp[pos]) pos += 1 } return nil } // MacipACLDump represents VPP binary API message 'macip_acl_dump'. type MacipACLDump struct { ACLIndex uint32 `binapi:"u32,name=acl_index,default=4.294967295e+09" json:"acl_index,omitempty"` } func (m *MacipACLDump) Reset() { *m = MacipACLDump{} } func (*MacipACLDump) GetMessageName() string { return "macip_acl_dump" } func (*MacipACLDump) GetCrcString() string { return "ef34fea4" } func (*MacipACLDump) GetMessageType() api.MessageType { return api.RequestMessage } func (m *MacipACLDump) Size() int { if m == nil { return 0 } var size int // field[1] m.ACLIndex size += 4 return size } func (m *MacipACLDump) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 return buf, nil } func (m *MacipACLDump) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // MacipACLInterfaceAddDel represents VPP binary API message 'macip_acl_interface_add_del'. type MacipACLInterfaceAddDel struct { IsAdd bool `binapi:"bool,name=is_add,default=true" json:"is_add,omitempty"` SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` ACLIndex uint32 `binapi:"u32,name=acl_index" json:"acl_index,omitempty"` } func (m *MacipACLInterfaceAddDel) Reset() { *m = MacipACLInterfaceAddDel{} } func (*MacipACLInterfaceAddDel) GetMessageName() string { return "macip_acl_interface_add_del" } func (*MacipACLInterfaceAddDel) GetCrcString() string { return "4b8690b1" } func (*MacipACLInterfaceAddDel) GetMessageType() api.MessageType { return api.RequestMessage } func (m *MacipACLInterfaceAddDel) Size() int { if m == nil { return 0 } var size int // field[1] m.IsAdd size += 1 // field[1] m.SwIfIndex size += 4 // field[1] m.ACLIndex size += 4 return size } func (m *MacipACLInterfaceAddDel) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.IsAdd if m.IsAdd { buf[pos] = 1 } pos += 1 // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 // field[1] m.ACLIndex o.PutUint32(buf[pos:pos+4], uint32(m.ACLIndex)) pos += 4 return buf, nil } func (m *MacipACLInterfaceAddDel) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.IsAdd m.IsAdd = tmp[pos] != 0 pos += 1 // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.ACLIndex m.ACLIndex = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // MacipACLInterfaceAddDelReply represents VPP binary API message 'macip_acl_interface_add_del_reply'. type MacipACLInterfaceAddDelReply struct { Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` } func (m *MacipACLInterfaceAddDelReply) Reset() { *m = MacipACLInterfaceAddDelReply{} } func (*MacipACLInterfaceAddDelReply) GetMessageName() string { return "macip_acl_interface_add_del_reply" } func (*MacipACLInterfaceAddDelReply) GetCrcString() string { return "e8d4e804" } func (*MacipACLInterfaceAddDelReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *MacipACLInterfaceAddDelReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Retval size += 4 return size } func (m *MacipACLInterfaceAddDelReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Retval o.PutUint32(buf[pos:pos+4], uint32(m.Retval)) pos += 4 return buf, nil } func (m *MacipACLInterfaceAddDelReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Retval m.Retval = int32(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } // MacipACLInterfaceGet represents VPP binary API message 'macip_acl_interface_get'. type MacipACLInterfaceGet struct{} func (m *MacipACLInterfaceGet) Reset() { *m = MacipACLInterfaceGet{} } func (*MacipACLInterfaceGet) GetMessageName() string { return "macip_acl_interface_get" } func (*MacipACLInterfaceGet) GetCrcString() string { return "51077d14" } func (*MacipACLInterfaceGet) GetMessageType() api.MessageType { return api.RequestMessage } func (m *MacipACLInterfaceGet) Size() int { if m == nil { return 0 } var size int return size } func (m *MacipACLInterfaceGet) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } return buf, nil } func (m *MacipACLInterfaceGet) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos return nil } // MacipACLInterfaceGetReply represents VPP binary API message 'macip_acl_interface_get_reply'. type MacipACLInterfaceGetReply struct { Count uint32 `binapi:"u32,name=count" json:"count,omitempty" struc:"sizeof=Acls"` Acls []uint32 `binapi:"u32[count],name=acls" json:"acls,omitempty"` } func (m *MacipACLInterfaceGetReply) Reset() { *m = MacipACLInterfaceGetReply{} } func (*MacipACLInterfaceGetReply) GetMessageName() string { return "macip_acl_interface_get_reply" } func (*MacipACLInterfaceGetReply) GetCrcString() string { return "accf9b05" } func (*MacipACLInterfaceGetReply) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *MacipACLInterfaceGetReply) Size() int { if m == nil { return 0 } var size int // field[1] m.Count size += 4 // field[1] m.Acls size += 4 * len(m.Acls) return size } func (m *MacipACLInterfaceGetReply) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.Count o.PutUint32(buf[pos:pos+4], uint32(len(m.Acls))) pos += 4 // field[1] m.Acls for i := 0; i < len(m.Acls); i++ { var x uint32 if i < len(m.Acls) { x = uint32(m.Acls[i]) } o.PutUint32(buf[pos:pos+4], uint32(x)) pos += 4 } return buf, nil } func (m *MacipACLInterfaceGetReply) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.Count m.Count = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Acls m.Acls = make([]uint32, m.Count) for i := 0; i < len(m.Acls); i++ { m.Acls[i] = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 } return nil } // MacipACLInterfaceListDetails represents VPP binary API message 'macip_acl_interface_list_details'. type MacipACLInterfaceListDetails struct { SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` Count uint8 `binapi:"u8,name=count" json:"count,omitempty" struc:"sizeof=Acls"` Acls []uint32 `binapi:"u32[count],name=acls" json:"acls,omitempty"` } func (m *MacipACLInterfaceListDetails) Reset() { *m = MacipACLInterfaceListDetails{} } func (*MacipACLInterfaceListDetails) GetMessageName() string { return "macip_acl_interface_list_details" } func (*MacipACLInterfaceListDetails) GetCrcString() string { return "a0c5d56d" } func (*MacipACLInterfaceListDetails) GetMessageType() api.MessageType { return api.ReplyMessage } func (m *MacipACLInterfaceListDetails) Size() int { if m == nil { return 0 } var size int // field[1] m.SwIfIndex size += 4 // field[1] m.Count size += 1 // field[1] m.Acls size += 4 * len(m.Acls) return size } func (m *MacipACLInterfaceListDetails) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 // field[1] m.Count buf[pos] = uint8(len(m.Acls)) pos += 1 // field[1] m.Acls for i := 0; i < len(m.Acls); i++ { var x uint32 if i < len(m.Acls) { x = uint32(m.Acls[i]) } o.PutUint32(buf[pos:pos+4], uint32(x)) pos += 4 } return buf, nil } func (m *MacipACLInterfaceListDetails) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 // field[1] m.Count m.Count = uint8(tmp[pos]) pos += 1 // field[1] m.Acls m.Acls = make([]uint32, m.Count) for i := 0; i < len(m.Acls); i++ { m.Acls[i] = uint32(o.Uint32(tmp[pos : pos+4])) pos += 4 } return nil } // MacipACLInterfaceListDump represents VPP binary API message 'macip_acl_interface_list_dump'. type MacipACLInterfaceListDump struct { SwIfIndex InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` } func (m *MacipACLInterfaceListDump) Reset() { *m = MacipACLInterfaceListDump{} } func (*MacipACLInterfaceListDump) GetMessageName() string { return "macip_acl_interface_list_dump" } func (*MacipACLInterfaceListDump) GetCrcString() string { return "f9e6675e" } func (*MacipACLInterfaceListDump) GetMessageType() api.MessageType { return api.RequestMessage } func (m *MacipACLInterfaceListDump) Size() int { if m == nil { return 0 } var size int // field[1] m.SwIfIndex size += 4 return size } func (m *MacipACLInterfaceListDump) Marshal(b []byte) ([]byte, error) { o := binary.BigEndian _ = o pos := 0 _ = pos var buf []byte if b == nil { buf = make([]byte, m.Size()) } else { buf = b } // field[1] m.SwIfIndex o.PutUint32(buf[pos:pos+4], uint32(m.SwIfIndex)) pos += 4 return buf, nil } func (m *MacipACLInterfaceListDump) Unmarshal(tmp []byte) error { o := binary.BigEndian _ = o pos := 0 _ = pos // field[1] m.SwIfIndex m.SwIfIndex = InterfaceIndex(o.Uint32(tmp[pos : pos+4])) pos += 4 return nil } func init() { file_acl_binapi_init() } func file_acl_binapi_init() { api.RegisterMessage((*ACLAddReplace)(nil), "acl.ACLAddReplace") api.RegisterMessage((*ACLAddReplaceReply)(nil), "acl.ACLAddReplaceReply") api.RegisterMessage((*ACLDel)(nil), "acl.ACLDel") api.RegisterMessage((*ACLDelReply)(nil), "acl.ACLDelReply") api.RegisterMessage((*ACLDetails)(nil), "acl.ACLDetails") api.RegisterMessage((*ACLDump)(nil), "acl.ACLDump") api.RegisterMessage((*ACLInterfaceAddDel)(nil), "acl.ACLInterfaceAddDel") api.RegisterMessage((*ACLInterfaceAddDelReply)(nil), "acl.ACLInterfaceAddDelReply") api.RegisterMessage((*ACLInterfaceEtypeWhitelistDetails)(nil), "acl.ACLInterfaceEtypeWhitelistDetails") api.RegisterMessage((*ACLInterfaceEtypeWhitelistDump)(nil), "acl.ACLInterfaceEtypeWhitelistDump") api.RegisterMessage((*ACLInterfaceListDetails)(nil), "acl.ACLInterfaceListDetails") api.RegisterMessage((*ACLInterfaceListDump)(nil), "acl.ACLInterfaceListDump") api.RegisterMessage((*ACLInterfaceSetACLList)(nil), "acl.ACLInterfaceSetACLList") api.RegisterMessage((*ACLInterfaceSetACLListReply)(nil), "acl.ACLInterfaceSetACLListReply") api.RegisterMessage((*ACLInterfaceSetEtypeWhitelist)(nil), "acl.ACLInterfaceSetEtypeWhitelist") api.RegisterMessage((*ACLInterfaceSetEtypeWhitelistReply)(nil), "acl.ACLInterfaceSetEtypeWhitelistReply") api.RegisterMessage((*ACLPluginControlPing)(nil), "acl.ACLPluginControlPing") api.RegisterMessage((*ACLPluginControlPingReply)(nil), "acl.ACLPluginControlPingReply") api.RegisterMessage((*ACLPluginGetConnTableMaxEntries)(nil), "acl.ACLPluginGetConnTableMaxEntries") api.RegisterMessage((*ACLPluginGetConnTableMaxEntriesReply)(nil), "acl.ACLPluginGetConnTableMaxEntriesReply") api.RegisterMessage((*ACLPluginGetVersion)(nil), "acl.ACLPluginGetVersion") api.RegisterMessage((*ACLPluginGetVersionReply)(nil), "acl.ACLPluginGetVersionReply") api.RegisterMessage((*ACLStatsIntfCountersEnable)(nil), "acl.ACLStatsIntfCountersEnable") api.RegisterMessage((*ACLStatsIntfCountersEnableReply)(nil), "acl.ACLStatsIntfCountersEnableReply") api.RegisterMessage((*MacipACLAdd)(nil), "acl.MacipACLAdd") api.RegisterMessage((*MacipACLAddReplace)(nil), "acl.MacipACLAddReplace") api.RegisterMessage((*MacipACLAddReplaceReply)(nil), "acl.MacipACLAddReplaceReply") api.RegisterMessage((*MacipACLAddReply)(nil), "acl.MacipACLAddReply") api.RegisterMessage((*MacipACLDel)(nil), "acl.MacipACLDel") api.RegisterMessage((*MacipACLDelReply)(nil), "acl.MacipACLDelReply") api.RegisterMessage((*MacipACLDetails)(nil), "acl.MacipACLDetails") api.RegisterMessage((*MacipACLDump)(nil), "acl.MacipACLDump") api.RegisterMessage((*MacipACLInterfaceAddDel)(nil), "acl.MacipACLInterfaceAddDel") api.RegisterMessage((*MacipACLInterfaceAddDelReply)(nil), "acl.MacipACLInterfaceAddDelReply") api.RegisterMessage((*MacipACLInterfaceGet)(nil), "acl.MacipACLInterfaceGet") api.RegisterMessage((*MacipACLInterfaceGetReply)(nil), "acl.MacipACLInterfaceGetReply") api.RegisterMessage((*MacipACLInterfaceListDetails)(nil), "acl.MacipACLInterfaceListDetails") api.RegisterMessage((*MacipACLInterfaceListDump)(nil), "acl.MacipACLInterfaceListDump") } // Messages returns list of all messages in this module. func AllMessages() []api.Message { return []api.Message{ (*ACLAddReplace)(nil), (*ACLAddReplaceReply)(nil), (*ACLDel)(nil), (*ACLDelReply)(nil), (*ACLDetails)(nil), (*ACLDump)(nil), (*ACLInterfaceAddDel)(nil), (*ACLInterfaceAddDelReply)(nil), (*ACLInterfaceEtypeWhitelistDetails)(nil), (*ACLInterfaceEtypeWhitelistDump)(nil), (*ACLInterfaceListDetails)(nil), (*ACLInterfaceListDump)(nil), (*ACLInterfaceSetACLList)(nil), (*ACLInterfaceSetACLListReply)(nil), (*ACLInterfaceSetEtypeWhitelist)(nil), (*ACLInterfaceSetEtypeWhitelistReply)(nil), (*ACLPluginControlPing)(nil), (*ACLPluginControlPingReply)(nil), (*ACLPluginGetConnTableMaxEntries)(nil), (*ACLPluginGetConnTableMaxEntriesReply)(nil), (*ACLPluginGetVersion)(nil), (*ACLPluginGetVersionReply)(nil), (*ACLStatsIntfCountersEnable)(nil), (*ACLStatsIntfCountersEnableReply)(nil), (*MacipACLAdd)(nil), (*MacipACLAddReplace)(nil), (*MacipACLAddReplaceReply)(nil), (*MacipACLAddReply)(nil), (*MacipACLDel)(nil), (*MacipACLDelReply)(nil), (*MacipACLDetails)(nil), (*MacipACLDump)(nil), (*MacipACLInterfaceAddDel)(nil), (*MacipACLInterfaceAddDelReply)(nil), (*MacipACLInterfaceGet)(nil), (*MacipACLInterfaceGetReply)(nil), (*MacipACLInterfaceListDetails)(nil), (*MacipACLInterfaceListDump)(nil), } } // Reference imports to suppress errors if they are not otherwise used. var _ = api.RegisterMessage var _ = codec.DecodeString var _ = bytes.NewBuffer var _ = context.Background var _ = io.Copy var _ = strconv.Itoa var _ = struc.Pack var _ = binary.BigEndian var _ = math.Float32bits