// Code generated by protoc-gen-go. DO NOT EDIT.
// source: gonslapi.proto

package gonslapi

import (
	context "context"
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
	math "math"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

type FieldEntry_EntryType int32

const (
	FieldEntry_NOP      FieldEntry_EntryType = 0
	FieldEntry_ETH_TYPE FieldEntry_EntryType = 1
	FieldEntry_DST_IP   FieldEntry_EntryType = 2
	FieldEntry_IP_PROTO FieldEntry_EntryType = 3
	FieldEntry_ETH_DST  FieldEntry_EntryType = 4
)

var FieldEntry_EntryType_name = map[int32]string{
	0: "NOP",
	1: "ETH_TYPE",
	2: "DST_IP",
	3: "IP_PROTO",
	4: "ETH_DST",
}

var FieldEntry_EntryType_value = map[string]int32{
	"NOP":      0,
	"ETH_TYPE": 1,
	"DST_IP":   2,
	"IP_PROTO": 3,
	"ETH_DST":  4,
}

func (x FieldEntry_EntryType) String() string {
	return proto.EnumName(FieldEntry_EntryType_name, int32(x))
}

func (FieldEntry_EntryType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{0, 0}
}

//
// FieldEntry
//
type FieldEntry struct {
	EntryType FieldEntry_EntryType `protobuf:"varint,1,opt,name=entry_type,json=entryType,proto3,enum=gonslapi.FieldEntry_EntryType" json:"entry_type,omitempty"`
	// Types that are valid to be assigned to Entry:
	//	*FieldEntry_EthType
	//	*FieldEntry_DstIp
	//	*FieldEntry_IpProto
	//	*FieldEntry_EthDst
	Entry                isFieldEntry_Entry `protobuf_oneof:"entry"`
	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
	XXX_unrecognized     []byte             `json:"-"`
	XXX_sizecache        int32              `json:"-"`
}

func (m *FieldEntry) Reset()         { *m = FieldEntry{} }
func (m *FieldEntry) String() string { return proto.CompactTextString(m) }
func (*FieldEntry) ProtoMessage()    {}
func (*FieldEntry) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{0}
}

func (m *FieldEntry) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FieldEntry.Unmarshal(m, b)
}
func (m *FieldEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FieldEntry.Marshal(b, m, deterministic)
}
func (m *FieldEntry) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FieldEntry.Merge(m, src)
}
func (m *FieldEntry) XXX_Size() int {
	return xxx_messageInfo_FieldEntry.Size(m)
}
func (m *FieldEntry) XXX_DiscardUnknown() {
	xxx_messageInfo_FieldEntry.DiscardUnknown(m)
}

var xxx_messageInfo_FieldEntry proto.InternalMessageInfo

func (m *FieldEntry) GetEntryType() FieldEntry_EntryType {
	if m != nil {
		return m.EntryType
	}
	return FieldEntry_NOP
}

type isFieldEntry_Entry interface {
	isFieldEntry_Entry()
}

type FieldEntry_EthType struct {
	EthType *EthTypeFieldEntry `protobuf:"bytes,2,opt,name=eth_type,json=ethType,proto3,oneof"`
}

type FieldEntry_DstIp struct {
	DstIp *DstIpFieldEntry `protobuf:"bytes,3,opt,name=dst_ip,json=dstIp,proto3,oneof"`
}

type FieldEntry_IpProto struct {
	IpProto *IpProtoFieldEntry `protobuf:"bytes,4,opt,name=ip_proto,json=ipProto,proto3,oneof"`
}

type FieldEntry_EthDst struct {
	EthDst *EthDstFieldEntry `protobuf:"bytes,5,opt,name=eth_dst,json=ethDst,proto3,oneof"`
}

func (*FieldEntry_EthType) isFieldEntry_Entry() {}

func (*FieldEntry_DstIp) isFieldEntry_Entry() {}

func (*FieldEntry_IpProto) isFieldEntry_Entry() {}

func (*FieldEntry_EthDst) isFieldEntry_Entry() {}

func (m *FieldEntry) GetEntry() isFieldEntry_Entry {
	if m != nil {
		return m.Entry
	}
	return nil
}

func (m *FieldEntry) GetEthType() *EthTypeFieldEntry {
	if x, ok := m.GetEntry().(*FieldEntry_EthType); ok {
		return x.EthType
	}
	return nil
}

func (m *FieldEntry) GetDstIp() *DstIpFieldEntry {
	if x, ok := m.GetEntry().(*FieldEntry_DstIp); ok {
		return x.DstIp
	}
	return nil
}

func (m *FieldEntry) GetIpProto() *IpProtoFieldEntry {
	if x, ok := m.GetEntry().(*FieldEntry_IpProto); ok {
		return x.IpProto
	}
	return nil
}

func (m *FieldEntry) GetEthDst() *EthDstFieldEntry {
	if x, ok := m.GetEntry().(*FieldEntry_EthDst); ok {
		return x.EthDst
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*FieldEntry) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*FieldEntry_EthType)(nil),
		(*FieldEntry_DstIp)(nil),
		(*FieldEntry_IpProto)(nil),
		(*FieldEntry_EthDst)(nil),
	}
}

type EthDstFieldEntry struct {
	EthDst               string   `protobuf:"bytes,1,opt,name=eth_dst,json=ethDst,proto3" json:"eth_dst,omitempty"`
	EthMask              string   `protobuf:"bytes,2,opt,name=eth_mask,json=ethMask,proto3" json:"eth_mask,omitempty"`
	InPort               uint32   `protobuf:"varint,3,opt,name=in_port,json=inPort,proto3" json:"in_port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EthDstFieldEntry) Reset()         { *m = EthDstFieldEntry{} }
func (m *EthDstFieldEntry) String() string { return proto.CompactTextString(m) }
func (*EthDstFieldEntry) ProtoMessage()    {}
func (*EthDstFieldEntry) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{1}
}

func (m *EthDstFieldEntry) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EthDstFieldEntry.Unmarshal(m, b)
}
func (m *EthDstFieldEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EthDstFieldEntry.Marshal(b, m, deterministic)
}
func (m *EthDstFieldEntry) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EthDstFieldEntry.Merge(m, src)
}
func (m *EthDstFieldEntry) XXX_Size() int {
	return xxx_messageInfo_EthDstFieldEntry.Size(m)
}
func (m *EthDstFieldEntry) XXX_DiscardUnknown() {
	xxx_messageInfo_EthDstFieldEntry.DiscardUnknown(m)
}

var xxx_messageInfo_EthDstFieldEntry proto.InternalMessageInfo

func (m *EthDstFieldEntry) GetEthDst() string {
	if m != nil {
		return m.EthDst
	}
	return ""
}

func (m *EthDstFieldEntry) GetEthMask() string {
	if m != nil {
		return m.EthMask
	}
	return ""
}

func (m *EthDstFieldEntry) GetInPort() uint32 {
	if m != nil {
		return m.InPort
	}
	return 0
}

type EthTypeFieldEntry struct {
	EthType              uint32   `protobuf:"varint,1,opt,name=eth_type,json=ethType,proto3" json:"eth_type,omitempty"`
	InPort               uint32   `protobuf:"varint,2,opt,name=in_port,json=inPort,proto3" json:"in_port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EthTypeFieldEntry) Reset()         { *m = EthTypeFieldEntry{} }
func (m *EthTypeFieldEntry) String() string { return proto.CompactTextString(m) }
func (*EthTypeFieldEntry) ProtoMessage()    {}
func (*EthTypeFieldEntry) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{2}
}

func (m *EthTypeFieldEntry) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EthTypeFieldEntry.Unmarshal(m, b)
}
func (m *EthTypeFieldEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EthTypeFieldEntry.Marshal(b, m, deterministic)
}
func (m *EthTypeFieldEntry) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EthTypeFieldEntry.Merge(m, src)
}
func (m *EthTypeFieldEntry) XXX_Size() int {
	return xxx_messageInfo_EthTypeFieldEntry.Size(m)
}
func (m *EthTypeFieldEntry) XXX_DiscardUnknown() {
	xxx_messageInfo_EthTypeFieldEntry.DiscardUnknown(m)
}

var xxx_messageInfo_EthTypeFieldEntry proto.InternalMessageInfo

func (m *EthTypeFieldEntry) GetEthType() uint32 {
	if m != nil {
		return m.EthType
	}
	return 0
}

func (m *EthTypeFieldEntry) GetInPort() uint32 {
	if m != nil {
		return m.InPort
	}
	return 0
}

type DstIpFieldEntry struct {
	EthType              uint32   `protobuf:"varint,1,opt,name=eth_type,json=ethType,proto3" json:"eth_type,omitempty"`
	IpDst                string   `protobuf:"bytes,2,opt,name=ip_dst,json=ipDst,proto3" json:"ip_dst,omitempty"`
	InPort               uint32   `protobuf:"varint,3,opt,name=in_port,json=inPort,proto3" json:"in_port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DstIpFieldEntry) Reset()         { *m = DstIpFieldEntry{} }
func (m *DstIpFieldEntry) String() string { return proto.CompactTextString(m) }
func (*DstIpFieldEntry) ProtoMessage()    {}
func (*DstIpFieldEntry) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{3}
}

func (m *DstIpFieldEntry) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DstIpFieldEntry.Unmarshal(m, b)
}
func (m *DstIpFieldEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DstIpFieldEntry.Marshal(b, m, deterministic)
}
func (m *DstIpFieldEntry) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DstIpFieldEntry.Merge(m, src)
}
func (m *DstIpFieldEntry) XXX_Size() int {
	return xxx_messageInfo_DstIpFieldEntry.Size(m)
}
func (m *DstIpFieldEntry) XXX_DiscardUnknown() {
	xxx_messageInfo_DstIpFieldEntry.DiscardUnknown(m)
}

var xxx_messageInfo_DstIpFieldEntry proto.InternalMessageInfo

func (m *DstIpFieldEntry) GetEthType() uint32 {
	if m != nil {
		return m.EthType
	}
	return 0
}

func (m *DstIpFieldEntry) GetIpDst() string {
	if m != nil {
		return m.IpDst
	}
	return ""
}

func (m *DstIpFieldEntry) GetInPort() uint32 {
	if m != nil {
		return m.InPort
	}
	return 0
}

type IpProtoFieldEntry struct {
	EthType              uint32   `protobuf:"varint,1,opt,name=eth_type,json=ethType,proto3" json:"eth_type,omitempty"`
	IpProto              uint32   `protobuf:"varint,2,opt,name=ip_proto,json=ipProto,proto3" json:"ip_proto,omitempty"`
	InPort               uint32   `protobuf:"varint,3,opt,name=in_port,json=inPort,proto3" json:"in_port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *IpProtoFieldEntry) Reset()         { *m = IpProtoFieldEntry{} }
func (m *IpProtoFieldEntry) String() string { return proto.CompactTextString(m) }
func (*IpProtoFieldEntry) ProtoMessage()    {}
func (*IpProtoFieldEntry) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{4}
}

func (m *IpProtoFieldEntry) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_IpProtoFieldEntry.Unmarshal(m, b)
}
func (m *IpProtoFieldEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_IpProtoFieldEntry.Marshal(b, m, deterministic)
}
func (m *IpProtoFieldEntry) XXX_Merge(src proto.Message) {
	xxx_messageInfo_IpProtoFieldEntry.Merge(m, src)
}
func (m *IpProtoFieldEntry) XXX_Size() int {
	return xxx_messageInfo_IpProtoFieldEntry.Size(m)
}
func (m *IpProtoFieldEntry) XXX_DiscardUnknown() {
	xxx_messageInfo_IpProtoFieldEntry.DiscardUnknown(m)
}

var xxx_messageInfo_IpProtoFieldEntry proto.InternalMessageInfo

func (m *IpProtoFieldEntry) GetEthType() uint32 {
	if m != nil {
		return m.EthType
	}
	return 0
}

func (m *IpProtoFieldEntry) GetIpProto() uint32 {
	if m != nil {
		return m.IpProto
	}
	return 0
}

func (m *IpProtoFieldEntry) GetInPort() uint32 {
	if m != nil {
		return m.InPort
	}
	return 0
}

type GetFieldEntriesRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetFieldEntriesRequest) Reset()         { *m = GetFieldEntriesRequest{} }
func (m *GetFieldEntriesRequest) String() string { return proto.CompactTextString(m) }
func (*GetFieldEntriesRequest) ProtoMessage()    {}
func (*GetFieldEntriesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{5}
}

func (m *GetFieldEntriesRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetFieldEntriesRequest.Unmarshal(m, b)
}
func (m *GetFieldEntriesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetFieldEntriesRequest.Marshal(b, m, deterministic)
}
func (m *GetFieldEntriesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetFieldEntriesRequest.Merge(m, src)
}
func (m *GetFieldEntriesRequest) XXX_Size() int {
	return xxx_messageInfo_GetFieldEntriesRequest.Size(m)
}
func (m *GetFieldEntriesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetFieldEntriesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetFieldEntriesRequest proto.InternalMessageInfo

type GetFieldEntriesReply struct {
	Entries              []*FieldEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *GetFieldEntriesReply) Reset()         { *m = GetFieldEntriesReply{} }
func (m *GetFieldEntriesReply) String() string { return proto.CompactTextString(m) }
func (*GetFieldEntriesReply) ProtoMessage()    {}
func (*GetFieldEntriesReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{6}
}

func (m *GetFieldEntriesReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetFieldEntriesReply.Unmarshal(m, b)
}
func (m *GetFieldEntriesReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetFieldEntriesReply.Marshal(b, m, deterministic)
}
func (m *GetFieldEntriesReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetFieldEntriesReply.Merge(m, src)
}
func (m *GetFieldEntriesReply) XXX_Size() int {
	return xxx_messageInfo_GetFieldEntriesReply.Size(m)
}
func (m *GetFieldEntriesReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetFieldEntriesReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetFieldEntriesReply proto.InternalMessageInfo

func (m *GetFieldEntriesReply) GetEntries() []*FieldEntry {
	if m != nil {
		return m.Entries
	}
	return nil
}

//
// Port
//
type PortInfo struct {
	Port                 uint32   `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
	LinkStatus           int32    `protobuf:"varint,2,opt,name=link_status,json=linkStatus,proto3" json:"link_status,omitempty"`
	UntaggedVlan         uint32   `protobuf:"varint,3,opt,name=untagged_vlan,json=untaggedVlan,proto3" json:"untagged_vlan,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PortInfo) Reset()         { *m = PortInfo{} }
func (m *PortInfo) String() string { return proto.CompactTextString(m) }
func (*PortInfo) ProtoMessage()    {}
func (*PortInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{7}
}

func (m *PortInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PortInfo.Unmarshal(m, b)
}
func (m *PortInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PortInfo.Marshal(b, m, deterministic)
}
func (m *PortInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PortInfo.Merge(m, src)
}
func (m *PortInfo) XXX_Size() int {
	return xxx_messageInfo_PortInfo.Size(m)
}
func (m *PortInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_PortInfo.DiscardUnknown(m)
}

var xxx_messageInfo_PortInfo proto.InternalMessageInfo

func (m *PortInfo) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

func (m *PortInfo) GetLinkStatus() int32 {
	if m != nil {
		return m.LinkStatus
	}
	return 0
}

func (m *PortInfo) GetUntaggedVlan() uint32 {
	if m != nil {
		return m.UntaggedVlan
	}
	return 0
}

type GetPortInfosRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetPortInfosRequest) Reset()         { *m = GetPortInfosRequest{} }
func (m *GetPortInfosRequest) String() string { return proto.CompactTextString(m) }
func (*GetPortInfosRequest) ProtoMessage()    {}
func (*GetPortInfosRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{8}
}

func (m *GetPortInfosRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetPortInfosRequest.Unmarshal(m, b)
}
func (m *GetPortInfosRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetPortInfosRequest.Marshal(b, m, deterministic)
}
func (m *GetPortInfosRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetPortInfosRequest.Merge(m, src)
}
func (m *GetPortInfosRequest) XXX_Size() int {
	return xxx_messageInfo_GetPortInfosRequest.Size(m)
}
func (m *GetPortInfosRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetPortInfosRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetPortInfosRequest proto.InternalMessageInfo

type GetPortInfosReply struct {
	PortInfos            []*PortInfo `protobuf:"bytes,1,rep,name=port_infos,json=portInfos,proto3" json:"port_infos,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *GetPortInfosReply) Reset()         { *m = GetPortInfosReply{} }
func (m *GetPortInfosReply) String() string { return proto.CompactTextString(m) }
func (*GetPortInfosReply) ProtoMessage()    {}
func (*GetPortInfosReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{9}
}

func (m *GetPortInfosReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetPortInfosReply.Unmarshal(m, b)
}
func (m *GetPortInfosReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetPortInfosReply.Marshal(b, m, deterministic)
}
func (m *GetPortInfosReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetPortInfosReply.Merge(m, src)
}
func (m *GetPortInfosReply) XXX_Size() int {
	return xxx_messageInfo_GetPortInfosReply.Size(m)
}
func (m *GetPortInfosReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetPortInfosReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetPortInfosReply proto.InternalMessageInfo

func (m *GetPortInfosReply) GetPortInfos() []*PortInfo {
	if m != nil {
		return m.PortInfos
	}
	return nil
}

//
// Vlan
//
type VlanEntry struct {
	Vid                  uint32   `protobuf:"varint,1,opt,name=vid,proto3" json:"vid,omitempty"`
	Ports                []uint32 `protobuf:"varint,2,rep,packed,name=ports,proto3" json:"ports,omitempty"`
	UntagPorts           []uint32 `protobuf:"varint,3,rep,packed,name=untag_ports,json=untagPorts,proto3" json:"untag_ports,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *VlanEntry) Reset()         { *m = VlanEntry{} }
func (m *VlanEntry) String() string { return proto.CompactTextString(m) }
func (*VlanEntry) ProtoMessage()    {}
func (*VlanEntry) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{10}
}

func (m *VlanEntry) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_VlanEntry.Unmarshal(m, b)
}
func (m *VlanEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_VlanEntry.Marshal(b, m, deterministic)
}
func (m *VlanEntry) XXX_Merge(src proto.Message) {
	xxx_messageInfo_VlanEntry.Merge(m, src)
}
func (m *VlanEntry) XXX_Size() int {
	return xxx_messageInfo_VlanEntry.Size(m)
}
func (m *VlanEntry) XXX_DiscardUnknown() {
	xxx_messageInfo_VlanEntry.DiscardUnknown(m)
}

var xxx_messageInfo_VlanEntry proto.InternalMessageInfo

func (m *VlanEntry) GetVid() uint32 {
	if m != nil {
		return m.Vid
	}
	return 0
}

func (m *VlanEntry) GetPorts() []uint32 {
	if m != nil {
		return m.Ports
	}
	return nil
}

func (m *VlanEntry) GetUntagPorts() []uint32 {
	if m != nil {
		return m.UntagPorts
	}
	return nil
}

type GetVlansRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetVlansRequest) Reset()         { *m = GetVlansRequest{} }
func (m *GetVlansRequest) String() string { return proto.CompactTextString(m) }
func (*GetVlansRequest) ProtoMessage()    {}
func (*GetVlansRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{11}
}

func (m *GetVlansRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetVlansRequest.Unmarshal(m, b)
}
func (m *GetVlansRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetVlansRequest.Marshal(b, m, deterministic)
}
func (m *GetVlansRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetVlansRequest.Merge(m, src)
}
func (m *GetVlansRequest) XXX_Size() int {
	return xxx_messageInfo_GetVlansRequest.Size(m)
}
func (m *GetVlansRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetVlansRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetVlansRequest proto.InternalMessageInfo

type GetVlansReply struct {
	Vlans                []*VlanEntry `protobuf:"bytes,1,rep,name=vlans,proto3" json:"vlans,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *GetVlansReply) Reset()         { *m = GetVlansReply{} }
func (m *GetVlansReply) String() string { return proto.CompactTextString(m) }
func (*GetVlansReply) ProtoMessage()    {}
func (*GetVlansReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{12}
}

func (m *GetVlansReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetVlansReply.Unmarshal(m, b)
}
func (m *GetVlansReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetVlansReply.Marshal(b, m, deterministic)
}
func (m *GetVlansReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetVlansReply.Merge(m, src)
}
func (m *GetVlansReply) XXX_Size() int {
	return xxx_messageInfo_GetVlansReply.Size(m)
}
func (m *GetVlansReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetVlansReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetVlansReply proto.InternalMessageInfo

func (m *GetVlansReply) GetVlans() []*VlanEntry {
	if m != nil {
		return m.Vlans
	}
	return nil
}

//
// L2 Addr
//
type L2Addr struct {
	Flags                uint32   `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
	Mac                  string   `protobuf:"bytes,2,opt,name=mac,proto3" json:"mac,omitempty"`
	Vid                  uint32   `protobuf:"varint,3,opt,name=vid,proto3" json:"vid,omitempty"`
	Port                 uint32   `protobuf:"varint,4,opt,name=port,proto3" json:"port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *L2Addr) Reset()         { *m = L2Addr{} }
func (m *L2Addr) String() string { return proto.CompactTextString(m) }
func (*L2Addr) ProtoMessage()    {}
func (*L2Addr) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{13}
}

func (m *L2Addr) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_L2Addr.Unmarshal(m, b)
}
func (m *L2Addr) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_L2Addr.Marshal(b, m, deterministic)
}
func (m *L2Addr) XXX_Merge(src proto.Message) {
	xxx_messageInfo_L2Addr.Merge(m, src)
}
func (m *L2Addr) XXX_Size() int {
	return xxx_messageInfo_L2Addr.Size(m)
}
func (m *L2Addr) XXX_DiscardUnknown() {
	xxx_messageInfo_L2Addr.DiscardUnknown(m)
}

var xxx_messageInfo_L2Addr proto.InternalMessageInfo

func (m *L2Addr) GetFlags() uint32 {
	if m != nil {
		return m.Flags
	}
	return 0
}

func (m *L2Addr) GetMac() string {
	if m != nil {
		return m.Mac
	}
	return ""
}

func (m *L2Addr) GetVid() uint32 {
	if m != nil {
		return m.Vid
	}
	return 0
}

func (m *L2Addr) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

type GetL2AddrsRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetL2AddrsRequest) Reset()         { *m = GetL2AddrsRequest{} }
func (m *GetL2AddrsRequest) String() string { return proto.CompactTextString(m) }
func (*GetL2AddrsRequest) ProtoMessage()    {}
func (*GetL2AddrsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{14}
}

func (m *GetL2AddrsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL2AddrsRequest.Unmarshal(m, b)
}
func (m *GetL2AddrsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL2AddrsRequest.Marshal(b, m, deterministic)
}
func (m *GetL2AddrsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL2AddrsRequest.Merge(m, src)
}
func (m *GetL2AddrsRequest) XXX_Size() int {
	return xxx_messageInfo_GetL2AddrsRequest.Size(m)
}
func (m *GetL2AddrsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL2AddrsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetL2AddrsRequest proto.InternalMessageInfo

type GetL2AddrsReply struct {
	Addrs                []*L2Addr `protobuf:"bytes,1,rep,name=addrs,proto3" json:"addrs,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *GetL2AddrsReply) Reset()         { *m = GetL2AddrsReply{} }
func (m *GetL2AddrsReply) String() string { return proto.CompactTextString(m) }
func (*GetL2AddrsReply) ProtoMessage()    {}
func (*GetL2AddrsReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{15}
}

func (m *GetL2AddrsReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL2AddrsReply.Unmarshal(m, b)
}
func (m *GetL2AddrsReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL2AddrsReply.Marshal(b, m, deterministic)
}
func (m *GetL2AddrsReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL2AddrsReply.Merge(m, src)
}
func (m *GetL2AddrsReply) XXX_Size() int {
	return xxx_messageInfo_GetL2AddrsReply.Size(m)
}
func (m *GetL2AddrsReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL2AddrsReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetL2AddrsReply proto.InternalMessageInfo

func (m *GetL2AddrsReply) GetAddrs() []*L2Addr {
	if m != nil {
		return m.Addrs
	}
	return nil
}

//
// L2 Station
//
type L2Station struct {
	Flags                uint32   `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
	DstMac               string   `protobuf:"bytes,2,opt,name=dst_mac,json=dstMac,proto3" json:"dst_mac,omitempty"`
	DstMacMask           string   `protobuf:"bytes,3,opt,name=dst_mac_mask,json=dstMacMask,proto3" json:"dst_mac_mask,omitempty"`
	Vlan                 uint32   `protobuf:"varint,4,opt,name=vlan,proto3" json:"vlan,omitempty"`
	VlanMask             uint32   `protobuf:"varint,5,opt,name=vlan_mask,json=vlanMask,proto3" json:"vlan_mask,omitempty"`
	SrcPort              uint32   `protobuf:"varint,6,opt,name=src_port,json=srcPort,proto3" json:"src_port,omitempty"`
	SrcPortMask          uint32   `protobuf:"varint,7,opt,name=src_port_mask,json=srcPortMask,proto3" json:"src_port_mask,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *L2Station) Reset()         { *m = L2Station{} }
func (m *L2Station) String() string { return proto.CompactTextString(m) }
func (*L2Station) ProtoMessage()    {}
func (*L2Station) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{16}
}

func (m *L2Station) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_L2Station.Unmarshal(m, b)
}
func (m *L2Station) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_L2Station.Marshal(b, m, deterministic)
}
func (m *L2Station) XXX_Merge(src proto.Message) {
	xxx_messageInfo_L2Station.Merge(m, src)
}
func (m *L2Station) XXX_Size() int {
	return xxx_messageInfo_L2Station.Size(m)
}
func (m *L2Station) XXX_DiscardUnknown() {
	xxx_messageInfo_L2Station.DiscardUnknown(m)
}

var xxx_messageInfo_L2Station proto.InternalMessageInfo

func (m *L2Station) GetFlags() uint32 {
	if m != nil {
		return m.Flags
	}
	return 0
}

func (m *L2Station) GetDstMac() string {
	if m != nil {
		return m.DstMac
	}
	return ""
}

func (m *L2Station) GetDstMacMask() string {
	if m != nil {
		return m.DstMacMask
	}
	return ""
}

func (m *L2Station) GetVlan() uint32 {
	if m != nil {
		return m.Vlan
	}
	return 0
}

func (m *L2Station) GetVlanMask() uint32 {
	if m != nil {
		return m.VlanMask
	}
	return 0
}

func (m *L2Station) GetSrcPort() uint32 {
	if m != nil {
		return m.SrcPort
	}
	return 0
}

func (m *L2Station) GetSrcPortMask() uint32 {
	if m != nil {
		return m.SrcPortMask
	}
	return 0
}

type GetL2StationsRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetL2StationsRequest) Reset()         { *m = GetL2StationsRequest{} }
func (m *GetL2StationsRequest) String() string { return proto.CompactTextString(m) }
func (*GetL2StationsRequest) ProtoMessage()    {}
func (*GetL2StationsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{17}
}

func (m *GetL2StationsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL2StationsRequest.Unmarshal(m, b)
}
func (m *GetL2StationsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL2StationsRequest.Marshal(b, m, deterministic)
}
func (m *GetL2StationsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL2StationsRequest.Merge(m, src)
}
func (m *GetL2StationsRequest) XXX_Size() int {
	return xxx_messageInfo_GetL2StationsRequest.Size(m)
}
func (m *GetL2StationsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL2StationsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetL2StationsRequest proto.InternalMessageInfo

type GetL2StationsReply struct {
	Stations             []*L2Station `protobuf:"bytes,1,rep,name=stations,proto3" json:"stations,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *GetL2StationsReply) Reset()         { *m = GetL2StationsReply{} }
func (m *GetL2StationsReply) String() string { return proto.CompactTextString(m) }
func (*GetL2StationsReply) ProtoMessage()    {}
func (*GetL2StationsReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{18}
}

func (m *GetL2StationsReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL2StationsReply.Unmarshal(m, b)
}
func (m *GetL2StationsReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL2StationsReply.Marshal(b, m, deterministic)
}
func (m *GetL2StationsReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL2StationsReply.Merge(m, src)
}
func (m *GetL2StationsReply) XXX_Size() int {
	return xxx_messageInfo_GetL2StationsReply.Size(m)
}
func (m *GetL2StationsReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL2StationsReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetL2StationsReply proto.InternalMessageInfo

func (m *GetL2StationsReply) GetStations() []*L2Station {
	if m != nil {
		return m.Stations
	}
	return nil
}

//
// L3 Interface
//
type L3Iface struct {
	Flags                uint32   `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
	IfaceId              uint32   `protobuf:"varint,2,opt,name=iface_id,json=ifaceId,proto3" json:"iface_id,omitempty"`
	Mac                  string   `protobuf:"bytes,3,opt,name=mac,proto3" json:"mac,omitempty"`
	Mtu                  uint32   `protobuf:"varint,4,opt,name=mtu,proto3" json:"mtu,omitempty"`
	MtuFwd               uint32   `protobuf:"varint,5,opt,name=mtu_fwd,json=mtuFwd,proto3" json:"mtu_fwd,omitempty"`
	Ttl                  uint32   `protobuf:"varint,6,opt,name=ttl,proto3" json:"ttl,omitempty"`
	Vid                  uint32   `protobuf:"varint,7,opt,name=vid,proto3" json:"vid,omitempty"`
	Vrf                  uint32   `protobuf:"varint,8,opt,name=vrf,proto3" json:"vrf,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *L3Iface) Reset()         { *m = L3Iface{} }
func (m *L3Iface) String() string { return proto.CompactTextString(m) }
func (*L3Iface) ProtoMessage()    {}
func (*L3Iface) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{19}
}

func (m *L3Iface) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_L3Iface.Unmarshal(m, b)
}
func (m *L3Iface) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_L3Iface.Marshal(b, m, deterministic)
}
func (m *L3Iface) XXX_Merge(src proto.Message) {
	xxx_messageInfo_L3Iface.Merge(m, src)
}
func (m *L3Iface) XXX_Size() int {
	return xxx_messageInfo_L3Iface.Size(m)
}
func (m *L3Iface) XXX_DiscardUnknown() {
	xxx_messageInfo_L3Iface.DiscardUnknown(m)
}

var xxx_messageInfo_L3Iface proto.InternalMessageInfo

func (m *L3Iface) GetFlags() uint32 {
	if m != nil {
		return m.Flags
	}
	return 0
}

func (m *L3Iface) GetIfaceId() uint32 {
	if m != nil {
		return m.IfaceId
	}
	return 0
}

func (m *L3Iface) GetMac() string {
	if m != nil {
		return m.Mac
	}
	return ""
}

func (m *L3Iface) GetMtu() uint32 {
	if m != nil {
		return m.Mtu
	}
	return 0
}

func (m *L3Iface) GetMtuFwd() uint32 {
	if m != nil {
		return m.MtuFwd
	}
	return 0
}

func (m *L3Iface) GetTtl() uint32 {
	if m != nil {
		return m.Ttl
	}
	return 0
}

func (m *L3Iface) GetVid() uint32 {
	if m != nil {
		return m.Vid
	}
	return 0
}

func (m *L3Iface) GetVrf() uint32 {
	if m != nil {
		return m.Vrf
	}
	return 0
}

type FindL3IfaceRequest struct {
	Mac                  string   `protobuf:"bytes,1,opt,name=mac,proto3" json:"mac,omitempty"`
	Vid                  uint32   `protobuf:"varint,2,opt,name=vid,proto3" json:"vid,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FindL3IfaceRequest) Reset()         { *m = FindL3IfaceRequest{} }
func (m *FindL3IfaceRequest) String() string { return proto.CompactTextString(m) }
func (*FindL3IfaceRequest) ProtoMessage()    {}
func (*FindL3IfaceRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{20}
}

func (m *FindL3IfaceRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FindL3IfaceRequest.Unmarshal(m, b)
}
func (m *FindL3IfaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FindL3IfaceRequest.Marshal(b, m, deterministic)
}
func (m *FindL3IfaceRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FindL3IfaceRequest.Merge(m, src)
}
func (m *FindL3IfaceRequest) XXX_Size() int {
	return xxx_messageInfo_FindL3IfaceRequest.Size(m)
}
func (m *FindL3IfaceRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_FindL3IfaceRequest.DiscardUnknown(m)
}

var xxx_messageInfo_FindL3IfaceRequest proto.InternalMessageInfo

func (m *FindL3IfaceRequest) GetMac() string {
	if m != nil {
		return m.Mac
	}
	return ""
}

func (m *FindL3IfaceRequest) GetVid() uint32 {
	if m != nil {
		return m.Vid
	}
	return 0
}

type FindL3IfaceReply struct {
	Iface                *L3Iface `protobuf:"bytes,1,opt,name=iface,proto3" json:"iface,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FindL3IfaceReply) Reset()         { *m = FindL3IfaceReply{} }
func (m *FindL3IfaceReply) String() string { return proto.CompactTextString(m) }
func (*FindL3IfaceReply) ProtoMessage()    {}
func (*FindL3IfaceReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{21}
}

func (m *FindL3IfaceReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FindL3IfaceReply.Unmarshal(m, b)
}
func (m *FindL3IfaceReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FindL3IfaceReply.Marshal(b, m, deterministic)
}
func (m *FindL3IfaceReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FindL3IfaceReply.Merge(m, src)
}
func (m *FindL3IfaceReply) XXX_Size() int {
	return xxx_messageInfo_FindL3IfaceReply.Size(m)
}
func (m *FindL3IfaceReply) XXX_DiscardUnknown() {
	xxx_messageInfo_FindL3IfaceReply.DiscardUnknown(m)
}

var xxx_messageInfo_FindL3IfaceReply proto.InternalMessageInfo

func (m *FindL3IfaceReply) GetIface() *L3Iface {
	if m != nil {
		return m.Iface
	}
	return nil
}

type GetL3IfaceRequest struct {
	IfaceId              uint32   `protobuf:"varint,1,opt,name=iface_id,json=ifaceId,proto3" json:"iface_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetL3IfaceRequest) Reset()         { *m = GetL3IfaceRequest{} }
func (m *GetL3IfaceRequest) String() string { return proto.CompactTextString(m) }
func (*GetL3IfaceRequest) ProtoMessage()    {}
func (*GetL3IfaceRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{22}
}

func (m *GetL3IfaceRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3IfaceRequest.Unmarshal(m, b)
}
func (m *GetL3IfaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3IfaceRequest.Marshal(b, m, deterministic)
}
func (m *GetL3IfaceRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3IfaceRequest.Merge(m, src)
}
func (m *GetL3IfaceRequest) XXX_Size() int {
	return xxx_messageInfo_GetL3IfaceRequest.Size(m)
}
func (m *GetL3IfaceRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3IfaceRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3IfaceRequest proto.InternalMessageInfo

func (m *GetL3IfaceRequest) GetIfaceId() uint32 {
	if m != nil {
		return m.IfaceId
	}
	return 0
}

type GetL3IfaceReply struct {
	Iface                *L3Iface `protobuf:"bytes,1,opt,name=iface,proto3" json:"iface,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetL3IfaceReply) Reset()         { *m = GetL3IfaceReply{} }
func (m *GetL3IfaceReply) String() string { return proto.CompactTextString(m) }
func (*GetL3IfaceReply) ProtoMessage()    {}
func (*GetL3IfaceReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{23}
}

func (m *GetL3IfaceReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3IfaceReply.Unmarshal(m, b)
}
func (m *GetL3IfaceReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3IfaceReply.Marshal(b, m, deterministic)
}
func (m *GetL3IfaceReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3IfaceReply.Merge(m, src)
}
func (m *GetL3IfaceReply) XXX_Size() int {
	return xxx_messageInfo_GetL3IfaceReply.Size(m)
}
func (m *GetL3IfaceReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3IfaceReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3IfaceReply proto.InternalMessageInfo

func (m *GetL3IfaceReply) GetIface() *L3Iface {
	if m != nil {
		return m.Iface
	}
	return nil
}

type GetL3IfacesRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetL3IfacesRequest) Reset()         { *m = GetL3IfacesRequest{} }
func (m *GetL3IfacesRequest) String() string { return proto.CompactTextString(m) }
func (*GetL3IfacesRequest) ProtoMessage()    {}
func (*GetL3IfacesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{24}
}

func (m *GetL3IfacesRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3IfacesRequest.Unmarshal(m, b)
}
func (m *GetL3IfacesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3IfacesRequest.Marshal(b, m, deterministic)
}
func (m *GetL3IfacesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3IfacesRequest.Merge(m, src)
}
func (m *GetL3IfacesRequest) XXX_Size() int {
	return xxx_messageInfo_GetL3IfacesRequest.Size(m)
}
func (m *GetL3IfacesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3IfacesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3IfacesRequest proto.InternalMessageInfo

type GetL3IfacesReply struct {
	Ifaces               []*L3Iface `protobuf:"bytes,1,rep,name=ifaces,proto3" json:"ifaces,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *GetL3IfacesReply) Reset()         { *m = GetL3IfacesReply{} }
func (m *GetL3IfacesReply) String() string { return proto.CompactTextString(m) }
func (*GetL3IfacesReply) ProtoMessage()    {}
func (*GetL3IfacesReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{25}
}

func (m *GetL3IfacesReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3IfacesReply.Unmarshal(m, b)
}
func (m *GetL3IfacesReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3IfacesReply.Marshal(b, m, deterministic)
}
func (m *GetL3IfacesReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3IfacesReply.Merge(m, src)
}
func (m *GetL3IfacesReply) XXX_Size() int {
	return xxx_messageInfo_GetL3IfacesReply.Size(m)
}
func (m *GetL3IfacesReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3IfacesReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3IfacesReply proto.InternalMessageInfo

func (m *GetL3IfacesReply) GetIfaces() []*L3Iface {
	if m != nil {
		return m.Ifaces
	}
	return nil
}

//
// L3 Egress
//
type L3Egress struct {
	Flags                uint32   `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
	Flags2               uint32   `protobuf:"varint,2,opt,name=flags2,proto3" json:"flags2,omitempty"`
	EgressId             uint32   `protobuf:"varint,3,opt,name=egress_id,json=egressId,proto3" json:"egress_id,omitempty"`
	IfaceId              uint32   `protobuf:"varint,4,opt,name=iface_id,json=ifaceId,proto3" json:"iface_id,omitempty"`
	Mac                  string   `protobuf:"bytes,5,opt,name=mac,proto3" json:"mac,omitempty"`
	Vid                  uint32   `protobuf:"varint,6,opt,name=vid,proto3" json:"vid,omitempty"`
	Port                 uint32   `protobuf:"varint,7,opt,name=port,proto3" json:"port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *L3Egress) Reset()         { *m = L3Egress{} }
func (m *L3Egress) String() string { return proto.CompactTextString(m) }
func (*L3Egress) ProtoMessage()    {}
func (*L3Egress) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{26}
}

func (m *L3Egress) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_L3Egress.Unmarshal(m, b)
}
func (m *L3Egress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_L3Egress.Marshal(b, m, deterministic)
}
func (m *L3Egress) XXX_Merge(src proto.Message) {
	xxx_messageInfo_L3Egress.Merge(m, src)
}
func (m *L3Egress) XXX_Size() int {
	return xxx_messageInfo_L3Egress.Size(m)
}
func (m *L3Egress) XXX_DiscardUnknown() {
	xxx_messageInfo_L3Egress.DiscardUnknown(m)
}

var xxx_messageInfo_L3Egress proto.InternalMessageInfo

func (m *L3Egress) GetFlags() uint32 {
	if m != nil {
		return m.Flags
	}
	return 0
}

func (m *L3Egress) GetFlags2() uint32 {
	if m != nil {
		return m.Flags2
	}
	return 0
}

func (m *L3Egress) GetEgressId() uint32 {
	if m != nil {
		return m.EgressId
	}
	return 0
}

func (m *L3Egress) GetIfaceId() uint32 {
	if m != nil {
		return m.IfaceId
	}
	return 0
}

func (m *L3Egress) GetMac() string {
	if m != nil {
		return m.Mac
	}
	return ""
}

func (m *L3Egress) GetVid() uint32 {
	if m != nil {
		return m.Vid
	}
	return 0
}

func (m *L3Egress) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

type GetL3EgressesRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetL3EgressesRequest) Reset()         { *m = GetL3EgressesRequest{} }
func (m *GetL3EgressesRequest) String() string { return proto.CompactTextString(m) }
func (*GetL3EgressesRequest) ProtoMessage()    {}
func (*GetL3EgressesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{27}
}

func (m *GetL3EgressesRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3EgressesRequest.Unmarshal(m, b)
}
func (m *GetL3EgressesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3EgressesRequest.Marshal(b, m, deterministic)
}
func (m *GetL3EgressesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3EgressesRequest.Merge(m, src)
}
func (m *GetL3EgressesRequest) XXX_Size() int {
	return xxx_messageInfo_GetL3EgressesRequest.Size(m)
}
func (m *GetL3EgressesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3EgressesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3EgressesRequest proto.InternalMessageInfo

type GetL3EgressesReply struct {
	Egresses             []*L3Egress `protobuf:"bytes,1,rep,name=egresses,proto3" json:"egresses,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *GetL3EgressesReply) Reset()         { *m = GetL3EgressesReply{} }
func (m *GetL3EgressesReply) String() string { return proto.CompactTextString(m) }
func (*GetL3EgressesReply) ProtoMessage()    {}
func (*GetL3EgressesReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{28}
}

func (m *GetL3EgressesReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3EgressesReply.Unmarshal(m, b)
}
func (m *GetL3EgressesReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3EgressesReply.Marshal(b, m, deterministic)
}
func (m *GetL3EgressesReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3EgressesReply.Merge(m, src)
}
func (m *GetL3EgressesReply) XXX_Size() int {
	return xxx_messageInfo_GetL3EgressesReply.Size(m)
}
func (m *GetL3EgressesReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3EgressesReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3EgressesReply proto.InternalMessageInfo

func (m *GetL3EgressesReply) GetEgresses() []*L3Egress {
	if m != nil {
		return m.Egresses
	}
	return nil
}

//
// L3 Host
//
type L3Host struct {
	Flags                uint32   `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
	EgressId             uint32   `protobuf:"varint,2,opt,name=egress_id,json=egressId,proto3" json:"egress_id,omitempty"`
	IpAddr               string   `protobuf:"bytes,3,opt,name=ip_addr,json=ipAddr,proto3" json:"ip_addr,omitempty"`
	Ip6Addr              string   `protobuf:"bytes,4,opt,name=ip6_addr,json=ip6Addr,proto3" json:"ip6_addr,omitempty"`
	Mac                  string   `protobuf:"bytes,5,opt,name=mac,proto3" json:"mac,omitempty"`
	Vrf                  uint32   `protobuf:"varint,6,opt,name=vrf,proto3" json:"vrf,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *L3Host) Reset()         { *m = L3Host{} }
func (m *L3Host) String() string { return proto.CompactTextString(m) }
func (*L3Host) ProtoMessage()    {}
func (*L3Host) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{29}
}

func (m *L3Host) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_L3Host.Unmarshal(m, b)
}
func (m *L3Host) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_L3Host.Marshal(b, m, deterministic)
}
func (m *L3Host) XXX_Merge(src proto.Message) {
	xxx_messageInfo_L3Host.Merge(m, src)
}
func (m *L3Host) XXX_Size() int {
	return xxx_messageInfo_L3Host.Size(m)
}
func (m *L3Host) XXX_DiscardUnknown() {
	xxx_messageInfo_L3Host.DiscardUnknown(m)
}

var xxx_messageInfo_L3Host proto.InternalMessageInfo

func (m *L3Host) GetFlags() uint32 {
	if m != nil {
		return m.Flags
	}
	return 0
}

func (m *L3Host) GetEgressId() uint32 {
	if m != nil {
		return m.EgressId
	}
	return 0
}

func (m *L3Host) GetIpAddr() string {
	if m != nil {
		return m.IpAddr
	}
	return ""
}

func (m *L3Host) GetIp6Addr() string {
	if m != nil {
		return m.Ip6Addr
	}
	return ""
}

func (m *L3Host) GetMac() string {
	if m != nil {
		return m.Mac
	}
	return ""
}

func (m *L3Host) GetVrf() uint32 {
	if m != nil {
		return m.Vrf
	}
	return 0
}

type GetL3HostsRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetL3HostsRequest) Reset()         { *m = GetL3HostsRequest{} }
func (m *GetL3HostsRequest) String() string { return proto.CompactTextString(m) }
func (*GetL3HostsRequest) ProtoMessage()    {}
func (*GetL3HostsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{30}
}

func (m *GetL3HostsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3HostsRequest.Unmarshal(m, b)
}
func (m *GetL3HostsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3HostsRequest.Marshal(b, m, deterministic)
}
func (m *GetL3HostsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3HostsRequest.Merge(m, src)
}
func (m *GetL3HostsRequest) XXX_Size() int {
	return xxx_messageInfo_GetL3HostsRequest.Size(m)
}
func (m *GetL3HostsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3HostsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3HostsRequest proto.InternalMessageInfo

type GetL3HostsReply struct {
	Hosts                []*L3Host `protobuf:"bytes,1,rep,name=hosts,proto3" json:"hosts,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *GetL3HostsReply) Reset()         { *m = GetL3HostsReply{} }
func (m *GetL3HostsReply) String() string { return proto.CompactTextString(m) }
func (*GetL3HostsReply) ProtoMessage()    {}
func (*GetL3HostsReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{31}
}

func (m *GetL3HostsReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3HostsReply.Unmarshal(m, b)
}
func (m *GetL3HostsReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3HostsReply.Marshal(b, m, deterministic)
}
func (m *GetL3HostsReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3HostsReply.Merge(m, src)
}
func (m *GetL3HostsReply) XXX_Size() int {
	return xxx_messageInfo_GetL3HostsReply.Size(m)
}
func (m *GetL3HostsReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3HostsReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3HostsReply proto.InternalMessageInfo

func (m *GetL3HostsReply) GetHosts() []*L3Host {
	if m != nil {
		return m.Hosts
	}
	return nil
}

//
// L3 Route
//
type L3Route struct {
	Flags                uint32   `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
	EgressId             uint32   `protobuf:"varint,2,opt,name=egress_id,json=egressId,proto3" json:"egress_id,omitempty"`
	IpAddr               string   `protobuf:"bytes,3,opt,name=ip_addr,json=ipAddr,proto3" json:"ip_addr,omitempty"`
	Ip6Addr              string   `protobuf:"bytes,4,opt,name=ip6_addr,json=ip6Addr,proto3" json:"ip6_addr,omitempty"`
	Vrf                  uint32   `protobuf:"varint,5,opt,name=vrf,proto3" json:"vrf,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *L3Route) Reset()         { *m = L3Route{} }
func (m *L3Route) String() string { return proto.CompactTextString(m) }
func (*L3Route) ProtoMessage()    {}
func (*L3Route) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{32}
}

func (m *L3Route) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_L3Route.Unmarshal(m, b)
}
func (m *L3Route) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_L3Route.Marshal(b, m, deterministic)
}
func (m *L3Route) XXX_Merge(src proto.Message) {
	xxx_messageInfo_L3Route.Merge(m, src)
}
func (m *L3Route) XXX_Size() int {
	return xxx_messageInfo_L3Route.Size(m)
}
func (m *L3Route) XXX_DiscardUnknown() {
	xxx_messageInfo_L3Route.DiscardUnknown(m)
}

var xxx_messageInfo_L3Route proto.InternalMessageInfo

func (m *L3Route) GetFlags() uint32 {
	if m != nil {
		return m.Flags
	}
	return 0
}

func (m *L3Route) GetEgressId() uint32 {
	if m != nil {
		return m.EgressId
	}
	return 0
}

func (m *L3Route) GetIpAddr() string {
	if m != nil {
		return m.IpAddr
	}
	return ""
}

func (m *L3Route) GetIp6Addr() string {
	if m != nil {
		return m.Ip6Addr
	}
	return ""
}

func (m *L3Route) GetVrf() uint32 {
	if m != nil {
		return m.Vrf
	}
	return 0
}

type GetL3RoutesRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetL3RoutesRequest) Reset()         { *m = GetL3RoutesRequest{} }
func (m *GetL3RoutesRequest) String() string { return proto.CompactTextString(m) }
func (*GetL3RoutesRequest) ProtoMessage()    {}
func (*GetL3RoutesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{33}
}

func (m *GetL3RoutesRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3RoutesRequest.Unmarshal(m, b)
}
func (m *GetL3RoutesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3RoutesRequest.Marshal(b, m, deterministic)
}
func (m *GetL3RoutesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3RoutesRequest.Merge(m, src)
}
func (m *GetL3RoutesRequest) XXX_Size() int {
	return xxx_messageInfo_GetL3RoutesRequest.Size(m)
}
func (m *GetL3RoutesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3RoutesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3RoutesRequest proto.InternalMessageInfo

type GetL3RoutesReply struct {
	Routes               []*L3Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *GetL3RoutesReply) Reset()         { *m = GetL3RoutesReply{} }
func (m *GetL3RoutesReply) String() string { return proto.CompactTextString(m) }
func (*GetL3RoutesReply) ProtoMessage()    {}
func (*GetL3RoutesReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{34}
}

func (m *GetL3RoutesReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetL3RoutesReply.Unmarshal(m, b)
}
func (m *GetL3RoutesReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetL3RoutesReply.Marshal(b, m, deterministic)
}
func (m *GetL3RoutesReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetL3RoutesReply.Merge(m, src)
}
func (m *GetL3RoutesReply) XXX_Size() int {
	return xxx_messageInfo_GetL3RoutesReply.Size(m)
}
func (m *GetL3RoutesReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetL3RoutesReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetL3RoutesReply proto.InternalMessageInfo

func (m *GetL3RoutesReply) GetRoutes() []*L3Route {
	if m != nil {
		return m.Routes
	}
	return nil
}

//
// Tunnel
//
type TunnelInitiator struct {
	Flags                uint32   `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
	TunnelId             uint32   `protobuf:"varint,2,opt,name=tunnel_id,json=tunnelId,proto3" json:"tunnel_id,omitempty"`
	TunnelType           string   `protobuf:"bytes,3,opt,name=tunnel_type,json=tunnelType,proto3" json:"tunnel_type,omitempty"`
	L3IfaceId            uint32   `protobuf:"varint,4,opt,name=l3_iface_id,json=l3IfaceId,proto3" json:"l3_iface_id,omitempty"`
	DstMac               string   `protobuf:"bytes,5,opt,name=dst_mac,json=dstMac,proto3" json:"dst_mac,omitempty"`
	SrcMac               string   `protobuf:"bytes,6,opt,name=src_mac,json=srcMac,proto3" json:"src_mac,omitempty"`
	DstIp                string   `protobuf:"bytes,7,opt,name=dst_ip,json=dstIp,proto3" json:"dst_ip,omitempty"`
	SrcIp                string   `protobuf:"bytes,8,opt,name=src_ip,json=srcIp,proto3" json:"src_ip,omitempty"`
	DstPort              uint32   `protobuf:"varint,9,opt,name=dst_port,json=dstPort,proto3" json:"dst_port,omitempty"`
	SrcPort              uint32   `protobuf:"varint,10,opt,name=src_port,json=srcPort,proto3" json:"src_port,omitempty"`
	Ttl                  uint32   `protobuf:"varint,11,opt,name=ttl,proto3" json:"ttl,omitempty"`
	Mtu                  uint32   `protobuf:"varint,12,opt,name=mtu,proto3" json:"mtu,omitempty"`
	Vlan                 uint32   `protobuf:"varint,13,opt,name=vlan,proto3" json:"vlan,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *TunnelInitiator) Reset()         { *m = TunnelInitiator{} }
func (m *TunnelInitiator) String() string { return proto.CompactTextString(m) }
func (*TunnelInitiator) ProtoMessage()    {}
func (*TunnelInitiator) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{35}
}

func (m *TunnelInitiator) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TunnelInitiator.Unmarshal(m, b)
}
func (m *TunnelInitiator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TunnelInitiator.Marshal(b, m, deterministic)
}
func (m *TunnelInitiator) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TunnelInitiator.Merge(m, src)
}
func (m *TunnelInitiator) XXX_Size() int {
	return xxx_messageInfo_TunnelInitiator.Size(m)
}
func (m *TunnelInitiator) XXX_DiscardUnknown() {
	xxx_messageInfo_TunnelInitiator.DiscardUnknown(m)
}

var xxx_messageInfo_TunnelInitiator proto.InternalMessageInfo

func (m *TunnelInitiator) GetFlags() uint32 {
	if m != nil {
		return m.Flags
	}
	return 0
}

func (m *TunnelInitiator) GetTunnelId() uint32 {
	if m != nil {
		return m.TunnelId
	}
	return 0
}

func (m *TunnelInitiator) GetTunnelType() string {
	if m != nil {
		return m.TunnelType
	}
	return ""
}

func (m *TunnelInitiator) GetL3IfaceId() uint32 {
	if m != nil {
		return m.L3IfaceId
	}
	return 0
}

func (m *TunnelInitiator) GetDstMac() string {
	if m != nil {
		return m.DstMac
	}
	return ""
}

func (m *TunnelInitiator) GetSrcMac() string {
	if m != nil {
		return m.SrcMac
	}
	return ""
}

func (m *TunnelInitiator) GetDstIp() string {
	if m != nil {
		return m.DstIp
	}
	return ""
}

func (m *TunnelInitiator) GetSrcIp() string {
	if m != nil {
		return m.SrcIp
	}
	return ""
}

func (m *TunnelInitiator) GetDstPort() uint32 {
	if m != nil {
		return m.DstPort
	}
	return 0
}

func (m *TunnelInitiator) GetSrcPort() uint32 {
	if m != nil {
		return m.SrcPort
	}
	return 0
}

func (m *TunnelInitiator) GetTtl() uint32 {
	if m != nil {
		return m.Ttl
	}
	return 0
}

func (m *TunnelInitiator) GetMtu() uint32 {
	if m != nil {
		return m.Mtu
	}
	return 0
}

func (m *TunnelInitiator) GetVlan() uint32 {
	if m != nil {
		return m.Vlan
	}
	return 0
}

type TunnelTerminator struct {
	Flags                uint32   `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
	TunnelId             uint32   `protobuf:"varint,2,opt,name=tunnel_id,json=tunnelId,proto3" json:"tunnel_id,omitempty"`
	TunnelType           string   `protobuf:"bytes,3,opt,name=tunnel_type,json=tunnelType,proto3" json:"tunnel_type,omitempty"`
	RemotePort           uint32   `protobuf:"varint,4,opt,name=remote_port,json=remotePort,proto3" json:"remote_port,omitempty"`
	DstIp                string   `protobuf:"bytes,5,opt,name=dst_ip,json=dstIp,proto3" json:"dst_ip,omitempty"`
	SrcIp                string   `protobuf:"bytes,6,opt,name=src_ip,json=srcIp,proto3" json:"src_ip,omitempty"`
	DstPort              uint32   `protobuf:"varint,7,opt,name=dst_port,json=dstPort,proto3" json:"dst_port,omitempty"`
	SrcPort              uint32   `protobuf:"varint,8,opt,name=src_port,json=srcPort,proto3" json:"src_port,omitempty"`
	Vlan                 uint32   `protobuf:"varint,9,opt,name=vlan,proto3" json:"vlan,omitempty"`
	Vrf                  uint32   `protobuf:"varint,10,opt,name=vrf,proto3" json:"vrf,omitempty"`
	Pbmp                 []uint32 `protobuf:"varint,11,rep,packed,name=pbmp,proto3" json:"pbmp,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *TunnelTerminator) Reset()         { *m = TunnelTerminator{} }
func (m *TunnelTerminator) String() string { return proto.CompactTextString(m) }
func (*TunnelTerminator) ProtoMessage()    {}
func (*TunnelTerminator) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{36}
}

func (m *TunnelTerminator) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TunnelTerminator.Unmarshal(m, b)
}
func (m *TunnelTerminator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TunnelTerminator.Marshal(b, m, deterministic)
}
func (m *TunnelTerminator) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TunnelTerminator.Merge(m, src)
}
func (m *TunnelTerminator) XXX_Size() int {
	return xxx_messageInfo_TunnelTerminator.Size(m)
}
func (m *TunnelTerminator) XXX_DiscardUnknown() {
	xxx_messageInfo_TunnelTerminator.DiscardUnknown(m)
}

var xxx_messageInfo_TunnelTerminator proto.InternalMessageInfo

func (m *TunnelTerminator) GetFlags() uint32 {
	if m != nil {
		return m.Flags
	}
	return 0
}

func (m *TunnelTerminator) GetTunnelId() uint32 {
	if m != nil {
		return m.TunnelId
	}
	return 0
}

func (m *TunnelTerminator) GetTunnelType() string {
	if m != nil {
		return m.TunnelType
	}
	return ""
}

func (m *TunnelTerminator) GetRemotePort() uint32 {
	if m != nil {
		return m.RemotePort
	}
	return 0
}

func (m *TunnelTerminator) GetDstIp() string {
	if m != nil {
		return m.DstIp
	}
	return ""
}

func (m *TunnelTerminator) GetSrcIp() string {
	if m != nil {
		return m.SrcIp
	}
	return ""
}

func (m *TunnelTerminator) GetDstPort() uint32 {
	if m != nil {
		return m.DstPort
	}
	return 0
}

func (m *TunnelTerminator) GetSrcPort() uint32 {
	if m != nil {
		return m.SrcPort
	}
	return 0
}

func (m *TunnelTerminator) GetVlan() uint32 {
	if m != nil {
		return m.Vlan
	}
	return 0
}

func (m *TunnelTerminator) GetVrf() uint32 {
	if m != nil {
		return m.Vrf
	}
	return 0
}

func (m *TunnelTerminator) GetPbmp() []uint32 {
	if m != nil {
		return m.Pbmp
	}
	return nil
}

type GetTunnelInitiatorsRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetTunnelInitiatorsRequest) Reset()         { *m = GetTunnelInitiatorsRequest{} }
func (m *GetTunnelInitiatorsRequest) String() string { return proto.CompactTextString(m) }
func (*GetTunnelInitiatorsRequest) ProtoMessage()    {}
func (*GetTunnelInitiatorsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{37}
}

func (m *GetTunnelInitiatorsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetTunnelInitiatorsRequest.Unmarshal(m, b)
}
func (m *GetTunnelInitiatorsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetTunnelInitiatorsRequest.Marshal(b, m, deterministic)
}
func (m *GetTunnelInitiatorsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetTunnelInitiatorsRequest.Merge(m, src)
}
func (m *GetTunnelInitiatorsRequest) XXX_Size() int {
	return xxx_messageInfo_GetTunnelInitiatorsRequest.Size(m)
}
func (m *GetTunnelInitiatorsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetTunnelInitiatorsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetTunnelInitiatorsRequest proto.InternalMessageInfo

type GetTunnelInitiatorsReply struct {
	Tunnels              []*TunnelInitiator `protobuf:"bytes,1,rep,name=tunnels,proto3" json:"tunnels,omitempty"`
	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
	XXX_unrecognized     []byte             `json:"-"`
	XXX_sizecache        int32              `json:"-"`
}

func (m *GetTunnelInitiatorsReply) Reset()         { *m = GetTunnelInitiatorsReply{} }
func (m *GetTunnelInitiatorsReply) String() string { return proto.CompactTextString(m) }
func (*GetTunnelInitiatorsReply) ProtoMessage()    {}
func (*GetTunnelInitiatorsReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{38}
}

func (m *GetTunnelInitiatorsReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetTunnelInitiatorsReply.Unmarshal(m, b)
}
func (m *GetTunnelInitiatorsReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetTunnelInitiatorsReply.Marshal(b, m, deterministic)
}
func (m *GetTunnelInitiatorsReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetTunnelInitiatorsReply.Merge(m, src)
}
func (m *GetTunnelInitiatorsReply) XXX_Size() int {
	return xxx_messageInfo_GetTunnelInitiatorsReply.Size(m)
}
func (m *GetTunnelInitiatorsReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetTunnelInitiatorsReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetTunnelInitiatorsReply proto.InternalMessageInfo

func (m *GetTunnelInitiatorsReply) GetTunnels() []*TunnelInitiator {
	if m != nil {
		return m.Tunnels
	}
	return nil
}

type GetTunnelTerminatorsRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetTunnelTerminatorsRequest) Reset()         { *m = GetTunnelTerminatorsRequest{} }
func (m *GetTunnelTerminatorsRequest) String() string { return proto.CompactTextString(m) }
func (*GetTunnelTerminatorsRequest) ProtoMessage()    {}
func (*GetTunnelTerminatorsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{39}
}

func (m *GetTunnelTerminatorsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetTunnelTerminatorsRequest.Unmarshal(m, b)
}
func (m *GetTunnelTerminatorsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetTunnelTerminatorsRequest.Marshal(b, m, deterministic)
}
func (m *GetTunnelTerminatorsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetTunnelTerminatorsRequest.Merge(m, src)
}
func (m *GetTunnelTerminatorsRequest) XXX_Size() int {
	return xxx_messageInfo_GetTunnelTerminatorsRequest.Size(m)
}
func (m *GetTunnelTerminatorsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetTunnelTerminatorsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetTunnelTerminatorsRequest proto.InternalMessageInfo

type GetTunnelTerminatorsReply struct {
	Tunnels              []*TunnelTerminator `protobuf:"bytes,1,rep,name=tunnels,proto3" json:"tunnels,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *GetTunnelTerminatorsReply) Reset()         { *m = GetTunnelTerminatorsReply{} }
func (m *GetTunnelTerminatorsReply) String() string { return proto.CompactTextString(m) }
func (*GetTunnelTerminatorsReply) ProtoMessage()    {}
func (*GetTunnelTerminatorsReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{40}
}

func (m *GetTunnelTerminatorsReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetTunnelTerminatorsReply.Unmarshal(m, b)
}
func (m *GetTunnelTerminatorsReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetTunnelTerminatorsReply.Marshal(b, m, deterministic)
}
func (m *GetTunnelTerminatorsReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetTunnelTerminatorsReply.Merge(m, src)
}
func (m *GetTunnelTerminatorsReply) XXX_Size() int {
	return xxx_messageInfo_GetTunnelTerminatorsReply.Size(m)
}
func (m *GetTunnelTerminatorsReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetTunnelTerminatorsReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetTunnelTerminatorsReply proto.InternalMessageInfo

func (m *GetTunnelTerminatorsReply) GetTunnels() []*TunnelTerminator {
	if m != nil {
		return m.Tunnels
	}
	return nil
}

//
// ID map
//
type IDMapEntry struct {
	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Key                  string   `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
	Value                uint32   `protobuf:"varint,3,opt,name=value,proto3" json:"value,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *IDMapEntry) Reset()         { *m = IDMapEntry{} }
func (m *IDMapEntry) String() string { return proto.CompactTextString(m) }
func (*IDMapEntry) ProtoMessage()    {}
func (*IDMapEntry) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{41}
}

func (m *IDMapEntry) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_IDMapEntry.Unmarshal(m, b)
}
func (m *IDMapEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_IDMapEntry.Marshal(b, m, deterministic)
}
func (m *IDMapEntry) XXX_Merge(src proto.Message) {
	xxx_messageInfo_IDMapEntry.Merge(m, src)
}
func (m *IDMapEntry) XXX_Size() int {
	return xxx_messageInfo_IDMapEntry.Size(m)
}
func (m *IDMapEntry) XXX_DiscardUnknown() {
	xxx_messageInfo_IDMapEntry.DiscardUnknown(m)
}

var xxx_messageInfo_IDMapEntry proto.InternalMessageInfo

func (m *IDMapEntry) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *IDMapEntry) GetKey() string {
	if m != nil {
		return m.Key
	}
	return ""
}

func (m *IDMapEntry) GetValue() uint32 {
	if m != nil {
		return m.Value
	}
	return 0
}

type GetIDMapEntriesRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetIDMapEntriesRequest) Reset()         { *m = GetIDMapEntriesRequest{} }
func (m *GetIDMapEntriesRequest) String() string { return proto.CompactTextString(m) }
func (*GetIDMapEntriesRequest) ProtoMessage()    {}
func (*GetIDMapEntriesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{42}
}

func (m *GetIDMapEntriesRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetIDMapEntriesRequest.Unmarshal(m, b)
}
func (m *GetIDMapEntriesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetIDMapEntriesRequest.Marshal(b, m, deterministic)
}
func (m *GetIDMapEntriesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetIDMapEntriesRequest.Merge(m, src)
}
func (m *GetIDMapEntriesRequest) XXX_Size() int {
	return xxx_messageInfo_GetIDMapEntriesRequest.Size(m)
}
func (m *GetIDMapEntriesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetIDMapEntriesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetIDMapEntriesRequest proto.InternalMessageInfo

type GetIDMapEntriesReply struct {
	Entries              []*IDMapEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *GetIDMapEntriesReply) Reset()         { *m = GetIDMapEntriesReply{} }
func (m *GetIDMapEntriesReply) String() string { return proto.CompactTextString(m) }
func (*GetIDMapEntriesReply) ProtoMessage()    {}
func (*GetIDMapEntriesReply) Descriptor() ([]byte, []int) {
	return fileDescriptor_a6347f14b9114d11, []int{43}
}

func (m *GetIDMapEntriesReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetIDMapEntriesReply.Unmarshal(m, b)
}
func (m *GetIDMapEntriesReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetIDMapEntriesReply.Marshal(b, m, deterministic)
}
func (m *GetIDMapEntriesReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetIDMapEntriesReply.Merge(m, src)
}
func (m *GetIDMapEntriesReply) XXX_Size() int {
	return xxx_messageInfo_GetIDMapEntriesReply.Size(m)
}
func (m *GetIDMapEntriesReply) XXX_DiscardUnknown() {
	xxx_messageInfo_GetIDMapEntriesReply.DiscardUnknown(m)
}

var xxx_messageInfo_GetIDMapEntriesReply proto.InternalMessageInfo

func (m *GetIDMapEntriesReply) GetEntries() []*IDMapEntry {
	if m != nil {
		return m.Entries
	}
	return nil
}

func init() {
	proto.RegisterEnum("gonslapi.FieldEntry_EntryType", FieldEntry_EntryType_name, FieldEntry_EntryType_value)
	proto.RegisterType((*FieldEntry)(nil), "gonslapi.FieldEntry")
	proto.RegisterType((*EthDstFieldEntry)(nil), "gonslapi.EthDstFieldEntry")
	proto.RegisterType((*EthTypeFieldEntry)(nil), "gonslapi.EthTypeFieldEntry")
	proto.RegisterType((*DstIpFieldEntry)(nil), "gonslapi.DstIpFieldEntry")
	proto.RegisterType((*IpProtoFieldEntry)(nil), "gonslapi.IpProtoFieldEntry")
	proto.RegisterType((*GetFieldEntriesRequest)(nil), "gonslapi.GetFieldEntriesRequest")
	proto.RegisterType((*GetFieldEntriesReply)(nil), "gonslapi.GetFieldEntriesReply")
	proto.RegisterType((*PortInfo)(nil), "gonslapi.PortInfo")
	proto.RegisterType((*GetPortInfosRequest)(nil), "gonslapi.GetPortInfosRequest")
	proto.RegisterType((*GetPortInfosReply)(nil), "gonslapi.GetPortInfosReply")
	proto.RegisterType((*VlanEntry)(nil), "gonslapi.VlanEntry")
	proto.RegisterType((*GetVlansRequest)(nil), "gonslapi.GetVlansRequest")
	proto.RegisterType((*GetVlansReply)(nil), "gonslapi.GetVlansReply")
	proto.RegisterType((*L2Addr)(nil), "gonslapi.L2Addr")
	proto.RegisterType((*GetL2AddrsRequest)(nil), "gonslapi.GetL2AddrsRequest")
	proto.RegisterType((*GetL2AddrsReply)(nil), "gonslapi.GetL2AddrsReply")
	proto.RegisterType((*L2Station)(nil), "gonslapi.L2Station")
	proto.RegisterType((*GetL2StationsRequest)(nil), "gonslapi.GetL2StationsRequest")
	proto.RegisterType((*GetL2StationsReply)(nil), "gonslapi.GetL2StationsReply")
	proto.RegisterType((*L3Iface)(nil), "gonslapi.L3Iface")
	proto.RegisterType((*FindL3IfaceRequest)(nil), "gonslapi.FindL3IfaceRequest")
	proto.RegisterType((*FindL3IfaceReply)(nil), "gonslapi.FindL3IfaceReply")
	proto.RegisterType((*GetL3IfaceRequest)(nil), "gonslapi.GetL3IfaceRequest")
	proto.RegisterType((*GetL3IfaceReply)(nil), "gonslapi.GetL3IfaceReply")
	proto.RegisterType((*GetL3IfacesRequest)(nil), "gonslapi.GetL3IfacesRequest")
	proto.RegisterType((*GetL3IfacesReply)(nil), "gonslapi.GetL3IfacesReply")
	proto.RegisterType((*L3Egress)(nil), "gonslapi.L3Egress")
	proto.RegisterType((*GetL3EgressesRequest)(nil), "gonslapi.GetL3EgressesRequest")
	proto.RegisterType((*GetL3EgressesReply)(nil), "gonslapi.GetL3EgressesReply")
	proto.RegisterType((*L3Host)(nil), "gonslapi.L3Host")
	proto.RegisterType((*GetL3HostsRequest)(nil), "gonslapi.GetL3HostsRequest")
	proto.RegisterType((*GetL3HostsReply)(nil), "gonslapi.GetL3HostsReply")
	proto.RegisterType((*L3Route)(nil), "gonslapi.L3Route")
	proto.RegisterType((*GetL3RoutesRequest)(nil), "gonslapi.GetL3RoutesRequest")
	proto.RegisterType((*GetL3RoutesReply)(nil), "gonslapi.GetL3RoutesReply")
	proto.RegisterType((*TunnelInitiator)(nil), "gonslapi.TunnelInitiator")
	proto.RegisterType((*TunnelTerminator)(nil), "gonslapi.TunnelTerminator")
	proto.RegisterType((*GetTunnelInitiatorsRequest)(nil), "gonslapi.GetTunnelInitiatorsRequest")
	proto.RegisterType((*GetTunnelInitiatorsReply)(nil), "gonslapi.GetTunnelInitiatorsReply")
	proto.RegisterType((*GetTunnelTerminatorsRequest)(nil), "gonslapi.GetTunnelTerminatorsRequest")
	proto.RegisterType((*GetTunnelTerminatorsReply)(nil), "gonslapi.GetTunnelTerminatorsReply")
	proto.RegisterType((*IDMapEntry)(nil), "gonslapi.IDMapEntry")
	proto.RegisterType((*GetIDMapEntriesRequest)(nil), "gonslapi.GetIDMapEntriesRequest")
	proto.RegisterType((*GetIDMapEntriesReply)(nil), "gonslapi.GetIDMapEntriesReply")
}

func init() { proto.RegisterFile("gonslapi.proto", fileDescriptor_a6347f14b9114d11) }

var fileDescriptor_a6347f14b9114d11 = []byte{
	// 1639 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0xdb, 0x6e, 0xdb, 0x46,
	0x13, 0xb6, 0x4e, 0x14, 0x35, 0xb2, 0x13, 0x79, 0x63, 0xc7, 0x92, 0xec, 0x38, 0xc6, 0xe6, 0xff,
	0x5b, 0xf7, 0xc6, 0x45, 0xe5, 0x36, 0x48, 0x53, 0x04, 0x68, 0x0a, 0x9f, 0x04, 0x38, 0xb1, 0x4b,
	0xab, 0x01, 0x0a, 0x14, 0x20, 0x18, 0x73, 0xe5, 0x10, 0x96, 0x28, 0x96, 0xa4, 0x12, 0xe8, 0xb6,
	0xaf, 0xd0, 0x67, 0x28, 0xd0, 0x9b, 0xbe, 0x49, 0xef, 0xfa, 0x1a, 0x7d, 0x86, 0xa2, 0x98, 0x3d,
	0x70, 0x79, 0x52, 0x02, 0x14, 0x68, 0x6f, 0x92, 0xe5, 0x1c, 0x76, 0x66, 0xbe, 0x39, 0xec, 0xc8,
	0x70, 0xe7, 0x66, 0xe6, 0x47, 0x13, 0x27, 0xf0, 0x0e, 0x82, 0x70, 0x16, 0xcf, 0x88, 0xa9, 0xbe,
	0xe9, 0x5f, 0x55, 0x80, 0x13, 0x8f, 0x4d, 0xdc, 0x63, 0x3f, 0x0e, 0x17, 0xe4, 0x19, 0x00, 0xc3,
	0x83, 0x1d, 0x2f, 0x02, 0xd6, 0xad, 0xec, 0x55, 0xf6, 0xef, 0x0c, 0x76, 0x0f, 0x12, 0x6d, 0x2d,
	0x79, 0xc0, 0xff, 0x1d, 0x2d, 0x02, 0x66, 0xb5, 0x98, 0x3a, 0x92, 0x27, 0x60, 0xb2, 0xf8, 0x8d,
	0x50, 0xae, 0xee, 0x55, 0xf6, 0xdb, 0x83, 0x6d, 0xad, 0x7c, 0x1c, 0xbf, 0x41, 0x21, 0x7d, 0xc7,
	0xd9, 0x8a, 0xd5, 0x64, 0x82, 0x48, 0x06, 0x60, 0xb8, 0x51, 0x6c, 0x7b, 0x41, 0xb7, 0xc6, 0xf5,
	0x7a, 0x5a, 0xef, 0x28, 0x8a, 0x87, 0x41, 0x46, 0xab, 0xe1, 0x22, 0x09, 0xad, 0x79, 0x81, 0xcd,
	0x23, 0xea, 0xd6, 0xf3, 0xd6, 0x86, 0xc1, 0x25, 0x32, 0xb2, 0xd6, 0x3c, 0x41, 0x24, 0x5f, 0x00,
	0x1a, 0xb6, 0xdd, 0x28, 0xee, 0x36, 0xb8, 0x62, 0x3f, 0xe3, 0xe6, 0x51, 0x14, 0x67, 0xf4, 0x0c,
	0xc6, 0x69, 0x74, 0x08, 0xad, 0x24, 0x6c, 0xd2, 0x84, 0xda, 0xcb, 0x8b, 0xcb, 0xce, 0x0a, 0x59,
	0x05, 0xf3, 0x78, 0x74, 0x66, 0x8f, 0xbe, 0xbf, 0x3c, 0xee, 0x54, 0x08, 0x80, 0x71, 0x74, 0x35,
	0xb2, 0x87, 0x97, 0x9d, 0x2a, 0x72, 0x86, 0x97, 0xf6, 0xa5, 0x75, 0x31, 0xba, 0xe8, 0xd4, 0x48,
	0x1b, 0x9a, 0x28, 0x77, 0x74, 0x35, 0xea, 0xd4, 0xbf, 0x69, 0x42, 0x83, 0xc3, 0x46, 0x6d, 0xe8,
	0xe4, 0x2d, 0x92, 0x2d, 0xed, 0x1e, 0xa6, 0xa0, 0xa5, 0x1c, 0x20, 0x3d, 0x81, 0xef, 0xd4, 0x89,
	0x6e, 0x39, 0xbe, 0x2d, 0x0e, 0xe0, 0x0b, 0x27, 0xba, 0x45, 0x1d, 0xcf, 0xb7, 0x83, 0x59, 0x18,
	0x73, 0x04, 0xd7, 0x2c, 0xc3, 0xf3, 0x2f, 0x67, 0x61, 0x4c, 0x4f, 0x61, 0xbd, 0x80, 0xbc, 0xba,
	0x28, 0xc9, 0xf2, 0x9a, 0xce, 0x44, 0xea, 0xa2, 0x6a, 0xe6, 0xa2, 0x1f, 0xe0, 0x6e, 0x2e, 0x15,
	0xef, 0xbb, 0x66, 0x13, 0x0c, 0x2f, 0xe0, 0x21, 0x08, 0x47, 0x1b, 0x5e, 0x80, 0x11, 0x2c, 0x75,
	0xf3, 0x35, 0xac, 0x17, 0x52, 0xf6, 0xbe, 0xfb, 0x7b, 0xa9, 0xe4, 0x0b, 0x3f, 0x93, 0xec, 0x2e,
	0xb5, 0xd1, 0x85, 0xfb, 0xa7, 0x4c, 0x03, 0xed, 0xb1, 0xc8, 0x62, 0x3f, 0xce, 0x59, 0x14, 0xd3,
	0x13, 0xd8, 0x28, 0x70, 0x82, 0xc9, 0x82, 0x1c, 0x40, 0x93, 0x89, 0xef, 0x6e, 0x65, 0xaf, 0xb6,
	0xdf, 0x1e, 0x6c, 0x94, 0x35, 0x83, 0xa5, 0x84, 0xa8, 0x0b, 0x26, 0x5a, 0x1a, 0xfa, 0xe3, 0x19,
	0x21, 0x50, 0xe7, 0x3e, 0x08, 0xc7, 0xf9, 0x99, 0x3c, 0x84, 0xf6, 0xc4, 0xf3, 0x6f, 0xed, 0x28,
	0x76, 0xe2, 0x79, 0xc4, 0x1d, 0x6f, 0x58, 0x80, 0xa4, 0x2b, 0x4e, 0x21, 0x8f, 0x60, 0x6d, 0xee,
	0xc7, 0xce, 0xcd, 0x0d, 0x73, 0xed, 0xb7, 0x13, 0xc7, 0x97, 0x11, 0xac, 0x2a, 0xe2, 0xab, 0x89,
	0xe3, 0xd3, 0x4d, 0xb8, 0x77, 0xca, 0x62, 0x65, 0x28, 0x15, 0xc4, 0x7a, 0x96, 0x8c, 0x11, 0x7c,
	0x06, 0x80, 0x96, 0x6d, 0x0f, 0x49, 0x32, 0x08, 0xa2, 0x83, 0x50, 0xd2, 0x56, 0x2b, 0x50, 0x7a,
	0x74, 0x04, 0x2d, 0x34, 0x23, 0x52, 0xd0, 0x81, 0xda, 0x5b, 0xcf, 0x95, 0x41, 0xe0, 0x91, 0x6c,
	0x40, 0x03, 0x65, 0xd1, 0xfb, 0xda, 0xfe, 0x9a, 0x25, 0x3e, 0x30, 0x32, 0xee, 0xa3, 0x2d, 0x78,
	0x35, 0xce, 0x03, 0x4e, 0x42, 0x1b, 0x11, 0x5d, 0x87, 0xbb, 0xa7, 0x2c, 0xc6, 0x8b, 0x13, 0x87,
	0x9f, 0xc2, 0x9a, 0x26, 0xa1, 0xb3, 0x9f, 0x40, 0x03, 0x83, 0x56, 0x7e, 0xde, 0xd3, 0x7e, 0x26,
	0x0e, 0x59, 0x42, 0x82, 0xbe, 0x02, 0xe3, 0x7c, 0xf0, 0xdc, 0x75, 0x43, 0xf4, 0x67, 0x3c, 0x71,
	0x6e, 0x22, 0xe9, 0xa3, 0xf8, 0x40, 0xbf, 0xa7, 0xce, 0xb5, 0x2c, 0x3e, 0x3c, 0xaa, 0x48, 0x6a,
	0x3a, 0x12, 0x95, 0xa1, 0xba, 0xce, 0x10, 0xbd, 0xc7, 0x41, 0x14, 0x57, 0x27, 0x8e, 0x7e, 0xc9,
	0x7d, 0x4f, 0x88, 0xe8, 0xea, 0x47, 0xd0, 0x70, 0xf0, 0x4b, 0xba, 0xda, 0xd1, 0xae, 0x0a, 0x31,
	0x4b, 0xb0, 0xe9, 0xef, 0x15, 0x68, 0x9d, 0x0f, 0x30, 0xbb, 0xde, 0xcc, 0x5f, 0xe2, 0xeb, 0x16,
	0x34, 0x71, 0xf8, 0x69, 0x7f, 0x71, 0x16, 0xbe, 0x70, 0xae, 0xc9, 0x1e, 0xac, 0x4a, 0x86, 0xe8,
	0xf9, 0x1a, 0xe7, 0x82, 0xe0, 0xf2, 0xb6, 0x27, 0x50, 0xe7, 0x65, 0x22, 0x43, 0xc0, 0x33, 0xd9,
	0x86, 0x16, 0xfe, 0x2f, 0x54, 0x1a, 0x9c, 0x61, 0x22, 0x81, 0x2b, 0xf4, 0xc0, 0x8c, 0xc2, 0x6b,
	0xd1, 0x1d, 0x86, 0xe8, 0x9b, 0x28, 0xbc, 0xc6, 0x14, 0x11, 0x0a, 0x6b, 0x8a, 0x25, 0x74, 0x9b,
	0x9c, 0xdf, 0x96, 0x7c, 0x54, 0xa7, 0xf7, 0x79, 0xa3, 0x24, 0x01, 0x25, 0x08, 0x1d, 0x03, 0xc9,
	0xd1, 0x11, 0xa4, 0x4f, 0xc1, 0x8c, 0x24, 0xa1, 0x98, 0xd2, 0x44, 0xd8, 0x4a, 0x84, 0xe8, 0x6f,
	0x15, 0x68, 0x9e, 0x1f, 0x0e, 0xc7, 0xce, 0x35, 0x5b, 0x82, 0x15, 0xf6, 0x3d, 0xb2, 0x6d, 0xcf,
	0x4d, 0xfa, 0x1e, 0xbf, 0x87, 0xae, 0x4a, 0x79, 0x2d, 0x93, 0xf2, 0x69, 0x3c, 0x97, 0xe0, 0xe0,
	0x11, 0xa1, 0x9e, 0xc6, 0x73, 0x7b, 0xfc, 0xce, 0x95, 0xc8, 0x18, 0xd3, 0x78, 0x7e, 0xf2, 0x8e,
	0x2b, 0xc7, 0xf1, 0x44, 0x42, 0x82, 0x47, 0x55, 0x2f, 0x4d, 0x5d, 0x2f, 0x48, 0x09, 0xc7, 0x5d,
	0x53, 0x52, 0xc2, 0x31, 0x7d, 0x02, 0xe4, 0xc4, 0xf3, 0x5d, 0xe9, 0xb2, 0x04, 0x43, 0x39, 0x52,
	0x29, 0xd4, 0x5e, 0x35, 0xb9, 0x8b, 0x7e, 0x05, 0x9d, 0x8c, 0x26, 0xc2, 0xf5, 0x31, 0x34, 0x78,
	0x2c, 0x5c, 0xb3, 0x3d, 0x58, 0x4f, 0x61, 0x25, 0xc5, 0x04, 0x9f, 0x1e, 0x88, 0x22, 0xcd, 0x5a,
	0x4d, 0x23, 0x53, 0xc9, 0x20, 0x43, 0x9f, 0x8a, 0xfa, 0xfd, 0x47, 0xb6, 0x36, 0x44, 0x66, 0x05,
	0x31, 0xc9, 0xf7, 0x33, 0xe8, 0x64, 0xa8, 0xa2, 0x7b, 0x0d, 0xae, 0xa2, 0x72, 0x5d, 0x72, 0xa7,
	0x14, 0xa0, 0xbf, 0x56, 0xc0, 0x3c, 0x3f, 0x3c, 0xbe, 0x09, 0x59, 0x14, 0x2d, 0x49, 0xf4, 0x7d,
	0x30, 0xf8, 0x61, 0xa0, 0x9e, 0x21, 0xf1, 0x85, 0xd5, 0xcd, 0xb8, 0x9e, 0x9d, 0x34, 0xb3, 0x29,
	0x08, 0x43, 0x37, 0x83, 0x41, 0xbd, 0xb4, 0x3a, 0x1a, 0x85, 0xa4, 0x18, 0xc5, 0x81, 0xd0, 0x4c,
	0x0d, 0x04, 0x59, 0xf1, 0xd2, 0x59, 0x8d, 0xc0, 0x91, 0xc4, 0x45, 0xd3, 0xc5, 0x83, 0x21, 0x9d,
	0x61, 0x25, 0xc3, 0x56, 0x09, 0x5b, 0x89, 0x0c, 0xfd, 0xb9, 0x02, 0xc6, 0xf9, 0xe1, 0xd9, 0x2c,
	0x8a, 0x97, 0xc0, 0x90, 0x09, 0xb7, 0x9a, 0x0b, 0x17, 0x5f, 0xba, 0xc0, 0xc6, 0x41, 0x23, 0xab,
	0xde, 0xf0, 0x02, 0x3e, 0x13, 0xf9, 0xeb, 0xf8, 0x58, 0x70, 0xea, 0x62, 0x51, 0xf0, 0x82, 0xc7,
	0x9c, 0x55, 0x8e, 0x43, 0x38, 0x4e, 0x70, 0x08, 0xc7, 0x6a, 0x08, 0x72, 0xbf, 0xf2, 0x43, 0x50,
	0x11, 0xe5, 0x10, 0x7c, 0x83, 0x5f, 0x25, 0x43, 0x90, 0x8b, 0x59, 0x82, 0x4d, 0x7f, 0xe2, 0x6d,
	0x6d, 0xcd, 0xe6, 0x31, 0xfb, 0x0f, 0xc3, 0xc4, 0xa0, 0x1a, 0x3a, 0x28, 0x55, 0xc8, 0xdc, 0x8d,
	0x42, 0x21, 0x2b, 0xaa, 0x2c, 0xe4, 0x90, 0x7f, 0x96, 0x15, 0x32, 0x17, 0xb4, 0xa4, 0x00, 0xfd,
	0xa3, 0x0a, 0x77, 0x47, 0x73, 0xdf, 0x67, 0x93, 0xa1, 0xef, 0xc5, 0x9e, 0x13, 0xcf, 0xc2, 0xe5,
	0x11, 0xc6, 0x5c, 0x30, 0x15, 0xa1, 0x20, 0x0c, 0x5d, 0x7c, 0x3d, 0x25, 0x93, 0xef, 0x3a, 0x72,
	0xce, 0x0b, 0x12, 0x5f, 0x77, 0x76, 0xa1, 0x3d, 0x39, 0xb4, 0x73, 0xb5, 0xdd, 0x9a, 0x88, 0xb6,
	0x12, 0x10, 0xa9, 0x27, 0xa4, 0x91, 0x79, 0x42, 0xb6, 0x00, 0xe7, 0x3b, 0x67, 0x18, 0x82, 0x11,
	0x85, 0xd7, 0xc8, 0xd8, 0x4c, 0x36, 0xee, 0xa6, 0x58, 0xd0, 0xc4, 0x52, 0xbd, 0x09, 0x28, 0x80,
	0x64, 0x53, 0x90, 0xa3, 0xf0, 0x7a, 0x18, 0x20, 0xd2, 0x28, 0xcd, 0xbb, 0xa3, 0x25, 0x1a, 0xcb,
	0x8d, 0xf8, 0xae, 0x91, 0x79, 0x51, 0x20, 0xfb, 0xa2, 0xc8, 0xa1, 0xda, 0xce, 0x0c, 0x55, 0x9c,
	0xc8, 0xab, 0x7a, 0x22, 0xab, 0x17, 0x6c, 0x4d, 0xbf, 0x60, 0xf4, 0x97, 0x2a, 0x74, 0x04, 0xaa,
	0x23, 0x16, 0x4e, 0x3d, 0xff, 0x5f, 0x83, 0xf5, 0x21, 0xb4, 0x43, 0x36, 0x9d, 0xc5, 0xcc, 0x4e,
	0x2d, 0x02, 0x20, 0x48, 0x3c, 0x02, 0x8d, 0x52, 0xa3, 0x1c, 0x25, 0x63, 0x19, 0x4a, 0xcd, 0xe5,
	0x28, 0x99, 0x59, 0x94, 0x14, 0x02, 0xad, 0xd4, 0x1b, 0x2e, 0xcb, 0x17, 0x92, 0xf2, 0xe5, 0xb3,
	0xe9, 0xf5, 0x34, 0xe8, 0xb6, 0xf9, 0x66, 0xc5, 0xcf, 0x74, 0x07, 0xfa, 0xa7, 0x2c, 0xce, 0xd5,
	0x5f, 0x52, 0xda, 0x17, 0xd0, 0x2d, 0xe5, 0x62, 0x89, 0x1f, 0x42, 0x53, 0xc0, 0xa0, 0x6a, 0x3c,
	0xf5, 0x83, 0x2b, 0xa7, 0x61, 0x29, 0x49, 0xfa, 0x00, 0xb6, 0x93, 0x0b, 0x75, 0x62, 0x12, 0x7b,
	0xdf, 0x42, 0xaf, 0x9c, 0x8d, 0x06, 0x3f, 0xcf, 0x1b, 0xec, 0xe7, 0x0d, 0x6a, 0x15, 0x6d, 0xf1,
	0x0c, 0x60, 0x78, 0xf4, 0xc2, 0x09, 0xc4, 0x2e, 0x4a, 0xa0, 0xee, 0x3b, 0x53, 0x26, 0x1f, 0x56,
	0x7e, 0x46, 0xa0, 0x6e, 0xd9, 0x42, 0xed, 0x79, 0xb7, 0x6c, 0x81, 0x75, 0xf2, 0xd6, 0x99, 0xcc,
	0x99, 0x7c, 0x1c, 0xc4, 0x87, 0xdc, 0xfd, 0x93, 0xcb, 0x0a, 0xbb, 0x7f, 0x96, 0xf3, 0xa1, 0xdd,
	0x5f, 0x3b, 0x95, 0xec, 0xfe, 0x83, 0x3f, 0x4d, 0x30, 0x4f, 0x67, 0x2f, 0xaf, 0xce, 0x9f, 0x07,
	0x1e, 0xf9, 0x8e, 0x0f, 0xcb, 0xf4, 0x0f, 0x0a, 0xb2, 0xa7, 0xd5, 0xcb, 0x7f, 0x85, 0xf4, 0x77,
	0xdf, 0x23, 0x11, 0x4c, 0x16, 0x74, 0x85, 0x9c, 0xc3, 0x6a, 0x7a, 0xc5, 0x27, 0x0f, 0x32, 0x1a,
	0xf9, 0x5f, 0x04, 0xfd, 0xed, 0x65, 0x6c, 0x71, 0xdb, 0xd7, 0x60, 0xaa, 0xfd, 0x9b, 0xf4, 0x32,
	0xa2, 0xe9, 0x35, 0xbd, 0xbf, 0x55, 0xc6, 0x12, 0x37, 0x9c, 0x00, 0xe8, 0xc5, 0x98, 0x64, 0xcd,
	0x65, 0x77, 0xe8, 0x7e, 0xaf, 0x9c, 0x29, 0xee, 0xb9, 0xe0, 0xbf, 0x04, 0xf4, 0xfa, 0x48, 0x76,
	0x73, 0xd2, 0xb9, 0x7d, 0xb3, 0xbf, 0xb3, 0x94, 0x2f, 0x2e, 0x1c, 0x42, 0x3b, 0xb5, 0x5e, 0x91,
	0x9d, 0xf4, 0xcf, 0xb6, 0xfc, 0xbe, 0xd6, 0xef, 0x2f, 0xe1, 0x66, 0x62, 0x94, 0x37, 0xe5, 0x62,
	0xcc, 0x5e, 0xd4, 0x2b, 0x67, 0x26, 0x2e, 0xa5, 0x56, 0x26, 0xb2, 0x53, 0x26, 0x1b, 0x95, 0xb8,
	0x94, 0xdf, 0xb3, 0x34, 0x5c, 0xc9, 0xee, 0x91, 0x87, 0x2b, 0xbf, 0xac, 0xe4, 0xe1, 0xca, 0x2e,
	0x2d, 0xa9, 0x18, 0xf9, 0xdb, 0x5e, 0x88, 0x31, 0xbd, 0x06, 0x14, 0x62, 0xd4, 0xeb, 0x40, 0x2a,
	0x46, 0xf1, 0x9a, 0x16, 0x62, 0xcc, 0x3c, 0xbd, 0x85, 0x18, 0x53, 0x4f, 0x30, 0x5d, 0x91, 0x1d,
	0x94, 0x6e, 0xcb, 0x5c, 0x07, 0x95, 0xf4, 0x72, 0xae, 0x83, 0x0a, 0x3d, 0x4d, 0x57, 0x88, 0xc3,
	0x7f, 0x3b, 0xe7, 0x87, 0x22, 0xf9, 0x5f, 0x46, 0x71, 0xc9, 0x44, 0xed, 0xd3, 0x0f, 0x48, 0x09,
	0x13, 0x2e, 0x1f, 0x28, 0x85, 0x39, 0x48, 0xfe, 0x5f, 0xa2, 0x5d, 0x1c, 0xa3, 0xfd, 0x47, 0x1f,
	0x12, 0xe3, 0x56, 0x5e, 0x1b, 0xfc, 0x6f, 0x1f, 0x87, 0x7f, 0x07, 0x00, 0x00, 0xff, 0xff, 0xca,
	0xeb, 0x22, 0x52, 0xdc, 0x13, 0x00, 0x00,
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4

// GoNSLApiClient is the client API for GoNSLApi service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type GoNSLApiClient interface {
	GetFieldEntries(ctx context.Context, in *GetFieldEntriesRequest, opts ...grpc.CallOption) (*GetFieldEntriesReply, error)
	GetPortInfos(ctx context.Context, in *GetPortInfosRequest, opts ...grpc.CallOption) (*GetPortInfosReply, error)
	GetVlans(ctx context.Context, in *GetVlansRequest, opts ...grpc.CallOption) (*GetVlansReply, error)
	GetL2Addrs(ctx context.Context, in *GetL2AddrsRequest, opts ...grpc.CallOption) (*GetL2AddrsReply, error)
	GetL2Stations(ctx context.Context, in *GetL2StationsRequest, opts ...grpc.CallOption) (*GetL2StationsReply, error)
	FindL3Iface(ctx context.Context, in *FindL3IfaceRequest, opts ...grpc.CallOption) (*FindL3IfaceReply, error)
	GetL3Iface(ctx context.Context, in *GetL3IfaceRequest, opts ...grpc.CallOption) (*GetL3IfaceReply, error)
	GetL3Ifaces(ctx context.Context, in *GetL3IfacesRequest, opts ...grpc.CallOption) (*GetL3IfacesReply, error)
	GetL3Egresses(ctx context.Context, in *GetL3EgressesRequest, opts ...grpc.CallOption) (*GetL3EgressesReply, error)
	GetL3Hosts(ctx context.Context, in *GetL3HostsRequest, opts ...grpc.CallOption) (*GetL3HostsReply, error)
	GetL3Routes(ctx context.Context, in *GetL3RoutesRequest, opts ...grpc.CallOption) (*GetL3RoutesReply, error)
	GetIDMapEntries(ctx context.Context, in *GetIDMapEntriesRequest, opts ...grpc.CallOption) (*GetIDMapEntriesReply, error)
	GetTunnelInitiators(ctx context.Context, in *GetTunnelInitiatorsRequest, opts ...grpc.CallOption) (*GetTunnelInitiatorsReply, error)
	GetTunnelTerminators(ctx context.Context, in *GetTunnelTerminatorsRequest, opts ...grpc.CallOption) (*GetTunnelTerminatorsReply, error)
}

type goNSLApiClient struct {
	cc *grpc.ClientConn
}

func NewGoNSLApiClient(cc *grpc.ClientConn) GoNSLApiClient {
	return &goNSLApiClient{cc}
}

func (c *goNSLApiClient) GetFieldEntries(ctx context.Context, in *GetFieldEntriesRequest, opts ...grpc.CallOption) (*GetFieldEntriesReply, error) {
	out := new(GetFieldEntriesReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetFieldEntries", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetPortInfos(ctx context.Context, in *GetPortInfosRequest, opts ...grpc.CallOption) (*GetPortInfosReply, error) {
	out := new(GetPortInfosReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetPortInfos", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetVlans(ctx context.Context, in *GetVlansRequest, opts ...grpc.CallOption) (*GetVlansReply, error) {
	out := new(GetVlansReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetVlans", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetL2Addrs(ctx context.Context, in *GetL2AddrsRequest, opts ...grpc.CallOption) (*GetL2AddrsReply, error) {
	out := new(GetL2AddrsReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetL2Addrs", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetL2Stations(ctx context.Context, in *GetL2StationsRequest, opts ...grpc.CallOption) (*GetL2StationsReply, error) {
	out := new(GetL2StationsReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetL2Stations", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) FindL3Iface(ctx context.Context, in *FindL3IfaceRequest, opts ...grpc.CallOption) (*FindL3IfaceReply, error) {
	out := new(FindL3IfaceReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/FindL3Iface", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetL3Iface(ctx context.Context, in *GetL3IfaceRequest, opts ...grpc.CallOption) (*GetL3IfaceReply, error) {
	out := new(GetL3IfaceReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetL3Iface", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetL3Ifaces(ctx context.Context, in *GetL3IfacesRequest, opts ...grpc.CallOption) (*GetL3IfacesReply, error) {
	out := new(GetL3IfacesReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetL3Ifaces", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetL3Egresses(ctx context.Context, in *GetL3EgressesRequest, opts ...grpc.CallOption) (*GetL3EgressesReply, error) {
	out := new(GetL3EgressesReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetL3Egresses", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetL3Hosts(ctx context.Context, in *GetL3HostsRequest, opts ...grpc.CallOption) (*GetL3HostsReply, error) {
	out := new(GetL3HostsReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetL3Hosts", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetL3Routes(ctx context.Context, in *GetL3RoutesRequest, opts ...grpc.CallOption) (*GetL3RoutesReply, error) {
	out := new(GetL3RoutesReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetL3Routes", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetIDMapEntries(ctx context.Context, in *GetIDMapEntriesRequest, opts ...grpc.CallOption) (*GetIDMapEntriesReply, error) {
	out := new(GetIDMapEntriesReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetIDMapEntries", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetTunnelInitiators(ctx context.Context, in *GetTunnelInitiatorsRequest, opts ...grpc.CallOption) (*GetTunnelInitiatorsReply, error) {
	out := new(GetTunnelInitiatorsReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetTunnelInitiators", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *goNSLApiClient) GetTunnelTerminators(ctx context.Context, in *GetTunnelTerminatorsRequest, opts ...grpc.CallOption) (*GetTunnelTerminatorsReply, error) {
	out := new(GetTunnelTerminatorsReply)
	err := c.cc.Invoke(ctx, "/gonslapi.GoNSLApi/GetTunnelTerminators", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// GoNSLApiServer is the server API for GoNSLApi service.
type GoNSLApiServer interface {
	GetFieldEntries(context.Context, *GetFieldEntriesRequest) (*GetFieldEntriesReply, error)
	GetPortInfos(context.Context, *GetPortInfosRequest) (*GetPortInfosReply, error)
	GetVlans(context.Context, *GetVlansRequest) (*GetVlansReply, error)
	GetL2Addrs(context.Context, *GetL2AddrsRequest) (*GetL2AddrsReply, error)
	GetL2Stations(context.Context, *GetL2StationsRequest) (*GetL2StationsReply, error)
	FindL3Iface(context.Context, *FindL3IfaceRequest) (*FindL3IfaceReply, error)
	GetL3Iface(context.Context, *GetL3IfaceRequest) (*GetL3IfaceReply, error)
	GetL3Ifaces(context.Context, *GetL3IfacesRequest) (*GetL3IfacesReply, error)
	GetL3Egresses(context.Context, *GetL3EgressesRequest) (*GetL3EgressesReply, error)
	GetL3Hosts(context.Context, *GetL3HostsRequest) (*GetL3HostsReply, error)
	GetL3Routes(context.Context, *GetL3RoutesRequest) (*GetL3RoutesReply, error)
	GetIDMapEntries(context.Context, *GetIDMapEntriesRequest) (*GetIDMapEntriesReply, error)
	GetTunnelInitiators(context.Context, *GetTunnelInitiatorsRequest) (*GetTunnelInitiatorsReply, error)
	GetTunnelTerminators(context.Context, *GetTunnelTerminatorsRequest) (*GetTunnelTerminatorsReply, error)
}

// UnimplementedGoNSLApiServer can be embedded to have forward compatible implementations.
type UnimplementedGoNSLApiServer struct {
}

func (*UnimplementedGoNSLApiServer) GetFieldEntries(ctx context.Context, req *GetFieldEntriesRequest) (*GetFieldEntriesReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetFieldEntries not implemented")
}
func (*UnimplementedGoNSLApiServer) GetPortInfos(ctx context.Context, req *GetPortInfosRequest) (*GetPortInfosReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetPortInfos not implemented")
}
func (*UnimplementedGoNSLApiServer) GetVlans(ctx context.Context, req *GetVlansRequest) (*GetVlansReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetVlans not implemented")
}
func (*UnimplementedGoNSLApiServer) GetL2Addrs(ctx context.Context, req *GetL2AddrsRequest) (*GetL2AddrsReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetL2Addrs not implemented")
}
func (*UnimplementedGoNSLApiServer) GetL2Stations(ctx context.Context, req *GetL2StationsRequest) (*GetL2StationsReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetL2Stations not implemented")
}
func (*UnimplementedGoNSLApiServer) FindL3Iface(ctx context.Context, req *FindL3IfaceRequest) (*FindL3IfaceReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method FindL3Iface not implemented")
}
func (*UnimplementedGoNSLApiServer) GetL3Iface(ctx context.Context, req *GetL3IfaceRequest) (*GetL3IfaceReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetL3Iface not implemented")
}
func (*UnimplementedGoNSLApiServer) GetL3Ifaces(ctx context.Context, req *GetL3IfacesRequest) (*GetL3IfacesReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetL3Ifaces not implemented")
}
func (*UnimplementedGoNSLApiServer) GetL3Egresses(ctx context.Context, req *GetL3EgressesRequest) (*GetL3EgressesReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetL3Egresses not implemented")
}
func (*UnimplementedGoNSLApiServer) GetL3Hosts(ctx context.Context, req *GetL3HostsRequest) (*GetL3HostsReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetL3Hosts not implemented")
}
func (*UnimplementedGoNSLApiServer) GetL3Routes(ctx context.Context, req *GetL3RoutesRequest) (*GetL3RoutesReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetL3Routes not implemented")
}
func (*UnimplementedGoNSLApiServer) GetIDMapEntries(ctx context.Context, req *GetIDMapEntriesRequest) (*GetIDMapEntriesReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetIDMapEntries not implemented")
}
func (*UnimplementedGoNSLApiServer) GetTunnelInitiators(ctx context.Context, req *GetTunnelInitiatorsRequest) (*GetTunnelInitiatorsReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetTunnelInitiators not implemented")
}
func (*UnimplementedGoNSLApiServer) GetTunnelTerminators(ctx context.Context, req *GetTunnelTerminatorsRequest) (*GetTunnelTerminatorsReply, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetTunnelTerminators not implemented")
}

func RegisterGoNSLApiServer(s *grpc.Server, srv GoNSLApiServer) {
	s.RegisterService(&_GoNSLApi_serviceDesc, srv)
}

func _GoNSLApi_GetFieldEntries_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetFieldEntriesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetFieldEntries(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetFieldEntries",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetFieldEntries(ctx, req.(*GetFieldEntriesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetPortInfos_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetPortInfosRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetPortInfos(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetPortInfos",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetPortInfos(ctx, req.(*GetPortInfosRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetVlans_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetVlansRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetVlans(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetVlans",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetVlans(ctx, req.(*GetVlansRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetL2Addrs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetL2AddrsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetL2Addrs(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetL2Addrs",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetL2Addrs(ctx, req.(*GetL2AddrsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetL2Stations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetL2StationsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetL2Stations(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetL2Stations",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetL2Stations(ctx, req.(*GetL2StationsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_FindL3Iface_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(FindL3IfaceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).FindL3Iface(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/FindL3Iface",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).FindL3Iface(ctx, req.(*FindL3IfaceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetL3Iface_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetL3IfaceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetL3Iface(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetL3Iface",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetL3Iface(ctx, req.(*GetL3IfaceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetL3Ifaces_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetL3IfacesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetL3Ifaces(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetL3Ifaces",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetL3Ifaces(ctx, req.(*GetL3IfacesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetL3Egresses_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetL3EgressesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetL3Egresses(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetL3Egresses",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetL3Egresses(ctx, req.(*GetL3EgressesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetL3Hosts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetL3HostsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetL3Hosts(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetL3Hosts",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetL3Hosts(ctx, req.(*GetL3HostsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetL3Routes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetL3RoutesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetL3Routes(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetL3Routes",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetL3Routes(ctx, req.(*GetL3RoutesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetIDMapEntries_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetIDMapEntriesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetIDMapEntries(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetIDMapEntries",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetIDMapEntries(ctx, req.(*GetIDMapEntriesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetTunnelInitiators_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetTunnelInitiatorsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetTunnelInitiators(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetTunnelInitiators",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetTunnelInitiators(ctx, req.(*GetTunnelInitiatorsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GoNSLApi_GetTunnelTerminators_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetTunnelTerminatorsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GoNSLApiServer).GetTunnelTerminators(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gonslapi.GoNSLApi/GetTunnelTerminators",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GoNSLApiServer).GetTunnelTerminators(ctx, req.(*GetTunnelTerminatorsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _GoNSLApi_serviceDesc = grpc.ServiceDesc{
	ServiceName: "gonslapi.GoNSLApi",
	HandlerType: (*GoNSLApiServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetFieldEntries",
			Handler:    _GoNSLApi_GetFieldEntries_Handler,
		},
		{
			MethodName: "GetPortInfos",
			Handler:    _GoNSLApi_GetPortInfos_Handler,
		},
		{
			MethodName: "GetVlans",
			Handler:    _GoNSLApi_GetVlans_Handler,
		},
		{
			MethodName: "GetL2Addrs",
			Handler:    _GoNSLApi_GetL2Addrs_Handler,
		},
		{
			MethodName: "GetL2Stations",
			Handler:    _GoNSLApi_GetL2Stations_Handler,
		},
		{
			MethodName: "FindL3Iface",
			Handler:    _GoNSLApi_FindL3Iface_Handler,
		},
		{
			MethodName: "GetL3Iface",
			Handler:    _GoNSLApi_GetL3Iface_Handler,
		},
		{
			MethodName: "GetL3Ifaces",
			Handler:    _GoNSLApi_GetL3Ifaces_Handler,
		},
		{
			MethodName: "GetL3Egresses",
			Handler:    _GoNSLApi_GetL3Egresses_Handler,
		},
		{
			MethodName: "GetL3Hosts",
			Handler:    _GoNSLApi_GetL3Hosts_Handler,
		},
		{
			MethodName: "GetL3Routes",
			Handler:    _GoNSLApi_GetL3Routes_Handler,
		},
		{
			MethodName: "GetIDMapEntries",
			Handler:    _GoNSLApi_GetIDMapEntries_Handler,
		},
		{
			MethodName: "GetTunnelInitiators",
			Handler:    _GoNSLApi_GetTunnelInitiators_Handler,
		},
		{
			MethodName: "GetTunnelTerminators",
			Handler:    _GoNSLApi_GetTunnelTerminators_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "gonslapi.proto",
}
