Documentation ¶
Overview ¶
Package service_layer is a generated protocol buffer package.
It is generated from these files:
sl_common_types.proto sl_global.proto sl_route_common.proto sl_route_ipv6.proto sl_version.proto
It has these top-level messages:
SLErrorStatus SLInterface SLIpAddress SLInitMsg SLInitMsgRsp SLGlobalNotif SLGlobalsGetMsg SLGlobalsGetMsgRsp SLRouteGlobalsGetMsg SLRouteGlobalsGetMsgRsp SLRouteGlobalStatsGetMsg SLRouteGlobalStatsGetMsgRsp SLVrfReg SLVrfRegMsg SLVrfRegMsgRes SLVrfRegMsgRsp SLVrfRegGetMsg SLVrfRegGetMsgRsp SLVRFGetStatsMsgRes SLVRFGetStatsMsgRsp SLRouteCommon SLRoutePath SLRoutev6 SLRoutev6Msg SLRoutev6Res SLRoutev6MsgRsp SLRoutev6GetMsg SLRoutev6GetMsgRsp
Index ¶
- Variables
- func RegisterSLGlobalServer(s *grpc.Server, srv SLGlobalServer)
- func RegisterSLRoutev6OperServer(s *grpc.Server, srv SLRoutev6OperServer)
- type SLErrorStatus
- type SLErrorStatus_SLErrno
- type SLGlobalClient
- type SLGlobalNotif
- func (*SLGlobalNotif) Descriptor() ([]byte, []int)
- func (m *SLGlobalNotif) GetErrStatus() *SLErrorStatus
- func (m *SLGlobalNotif) GetEvent() isSLGlobalNotif_Event
- func (m *SLGlobalNotif) GetEventType() SLGlobalNotifType
- func (m *SLGlobalNotif) GetInitRspMsg() *SLInitMsgRsp
- func (*SLGlobalNotif) ProtoMessage()
- func (m *SLGlobalNotif) Reset()
- func (m *SLGlobalNotif) String() string
- func (*SLGlobalNotif) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, ...)
- type SLGlobalNotifType
- type SLGlobalNotif_InitRspMsg
- type SLGlobalServer
- type SLGlobal_SLGlobalInitNotifClient
- type SLGlobal_SLGlobalInitNotifServer
- type SLGlobalsGetMsg
- type SLGlobalsGetMsgRsp
- func (*SLGlobalsGetMsgRsp) Descriptor() ([]byte, []int)
- func (m *SLGlobalsGetMsgRsp) GetErrStatus() *SLErrorStatus
- func (m *SLGlobalsGetMsgRsp) GetMaxBackupPathIdNum() uint32
- func (m *SLGlobalsGetMsgRsp) GetMaxBackupPathPerEntry() uint32
- func (m *SLGlobalsGetMsgRsp) GetMaxInterfaceNameLength() uint32
- func (m *SLGlobalsGetMsgRsp) GetMaxMplsLabelsPerPath() uint32
- func (m *SLGlobalsGetMsgRsp) GetMaxPathsPerEntry() uint32
- func (m *SLGlobalsGetMsgRsp) GetMaxPrimaryPathIdNum() uint32
- func (m *SLGlobalsGetMsgRsp) GetMaxPrimaryPathPerEntry() uint32
- func (m *SLGlobalsGetMsgRsp) GetMaxRemoteAddressNum() uint32
- func (m *SLGlobalsGetMsgRsp) GetMaxVrfNameLength() uint32
- func (m *SLGlobalsGetMsgRsp) GetMinBackupPathIdNum() uint32
- func (m *SLGlobalsGetMsgRsp) GetMinPrimaryPathIdNum() uint32
- func (*SLGlobalsGetMsgRsp) ProtoMessage()
- func (m *SLGlobalsGetMsgRsp) Reset()
- func (m *SLGlobalsGetMsgRsp) String() string
- type SLInitMsg
- type SLInitMsgRsp
- type SLInterface
- func (*SLInterface) Descriptor() ([]byte, []int)
- func (m *SLInterface) GetHandle() uint32
- func (m *SLInterface) GetInterface() isSLInterface_Interface
- func (m *SLInterface) GetName() string
- func (*SLInterface) ProtoMessage()
- func (m *SLInterface) Reset()
- func (m *SLInterface) String() string
- func (*SLInterface) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, ...)
- type SLInterface_Handle
- type SLInterface_Name
- type SLIpAddress
- func (*SLIpAddress) Descriptor() ([]byte, []int)
- func (m *SLIpAddress) GetAddress() isSLIpAddress_Address
- func (m *SLIpAddress) GetV4Address() uint32
- func (m *SLIpAddress) GetV6Address() []byte
- func (*SLIpAddress) ProtoMessage()
- func (m *SLIpAddress) Reset()
- func (m *SLIpAddress) String() string
- func (*SLIpAddress) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, ...)
- type SLIpAddress_V4Address
- type SLIpAddress_V6Address
- type SLNotifOp
- type SLObjectOp
- type SLRegOp
- type SLRouteCommon
- type SLRouteGlobalStatsGetMsg
- type SLRouteGlobalStatsGetMsgRsp
- func (*SLRouteGlobalStatsGetMsgRsp) Descriptor() ([]byte, []int)
- func (m *SLRouteGlobalStatsGetMsgRsp) GetErrStatus() *SLErrorStatus
- func (m *SLRouteGlobalStatsGetMsgRsp) GetRouteCount() uint32
- func (m *SLRouteGlobalStatsGetMsgRsp) GetVrfCount() uint32
- func (*SLRouteGlobalStatsGetMsgRsp) ProtoMessage()
- func (m *SLRouteGlobalStatsGetMsgRsp) Reset()
- func (m *SLRouteGlobalStatsGetMsgRsp) String() string
- type SLRouteGlobalsGetMsg
- type SLRouteGlobalsGetMsgRsp
- func (*SLRouteGlobalsGetMsgRsp) Descriptor() ([]byte, []int)
- func (m *SLRouteGlobalsGetMsgRsp) GetErrStatus() *SLErrorStatus
- func (m *SLRouteGlobalsGetMsgRsp) GetMaxRoutePerRoutemsg() uint32
- func (m *SLRouteGlobalsGetMsgRsp) GetMaxVrfregPerVrfregmsg() uint32
- func (*SLRouteGlobalsGetMsgRsp) ProtoMessage()
- func (m *SLRouteGlobalsGetMsgRsp) Reset()
- func (m *SLRouteGlobalsGetMsgRsp) String() string
- type SLRoutePath
- func (*SLRoutePath) Descriptor() ([]byte, []int)
- func (m *SLRoutePath) GetLabelStack() []uint32
- func (m *SLRoutePath) GetLoadMetric() uint32
- func (m *SLRoutePath) GetMetric() uint32
- func (m *SLRoutePath) GetNexthopAddress() *SLIpAddress
- func (m *SLRoutePath) GetNexthopInterface() *SLInterface
- func (m *SLRoutePath) GetPathId() uint32
- func (m *SLRoutePath) GetProtectedPathBitmap() []uint64
- func (m *SLRoutePath) GetRemoteAddress() []*SLIpAddress
- func (m *SLRoutePath) GetVrfName() string
- func (*SLRoutePath) ProtoMessage()
- func (m *SLRoutePath) Reset()
- func (m *SLRoutePath) String() string
- type SLRoutev6
- func (*SLRoutev6) Descriptor() ([]byte, []int)
- func (m *SLRoutev6) GetPathList() []*SLRoutePath
- func (m *SLRoutev6) GetPrefix() []byte
- func (m *SLRoutev6) GetPrefixLen() uint32
- func (m *SLRoutev6) GetRouteCommon() *SLRouteCommon
- func (*SLRoutev6) ProtoMessage()
- func (m *SLRoutev6) Reset()
- func (m *SLRoutev6) String() string
- type SLRoutev6GetMsg
- func (*SLRoutev6GetMsg) Descriptor() ([]byte, []int)
- func (m *SLRoutev6GetMsg) GetCorrelator() uint64
- func (m *SLRoutev6GetMsg) GetEntriesCount() uint32
- func (m *SLRoutev6GetMsg) GetGetNext() bool
- func (m *SLRoutev6GetMsg) GetPrefix() []byte
- func (m *SLRoutev6GetMsg) GetPrefixLen() uint32
- func (m *SLRoutev6GetMsg) GetVrfName() string
- func (*SLRoutev6GetMsg) ProtoMessage()
- func (m *SLRoutev6GetMsg) Reset()
- func (m *SLRoutev6GetMsg) String() string
- type SLRoutev6GetMsgRsp
- func (*SLRoutev6GetMsgRsp) Descriptor() ([]byte, []int)
- func (m *SLRoutev6GetMsgRsp) GetCorrelator() uint64
- func (m *SLRoutev6GetMsgRsp) GetEntries() []*SLRoutev6
- func (m *SLRoutev6GetMsgRsp) GetEof() bool
- func (m *SLRoutev6GetMsgRsp) GetErrStatus() *SLErrorStatus
- func (m *SLRoutev6GetMsgRsp) GetVrfName() string
- func (*SLRoutev6GetMsgRsp) ProtoMessage()
- func (m *SLRoutev6GetMsgRsp) Reset()
- func (m *SLRoutev6GetMsgRsp) String() string
- type SLRoutev6Msg
- func (*SLRoutev6Msg) Descriptor() ([]byte, []int)
- func (m *SLRoutev6Msg) GetCorrelator() uint64
- func (m *SLRoutev6Msg) GetOper() SLObjectOp
- func (m *SLRoutev6Msg) GetRoutes() []*SLRoutev6
- func (m *SLRoutev6Msg) GetVrfName() string
- func (*SLRoutev6Msg) ProtoMessage()
- func (m *SLRoutev6Msg) Reset()
- func (m *SLRoutev6Msg) String() string
- type SLRoutev6MsgRsp
- func (*SLRoutev6MsgRsp) Descriptor() ([]byte, []int)
- func (m *SLRoutev6MsgRsp) GetCorrelator() uint64
- func (m *SLRoutev6MsgRsp) GetResults() []*SLRoutev6Res
- func (m *SLRoutev6MsgRsp) GetStatusSummary() *SLErrorStatus
- func (m *SLRoutev6MsgRsp) GetVrfName() string
- func (*SLRoutev6MsgRsp) ProtoMessage()
- func (m *SLRoutev6MsgRsp) Reset()
- func (m *SLRoutev6MsgRsp) String() string
- type SLRoutev6OperClient
- type SLRoutev6OperServer
- type SLRoutev6Oper_SLRoutev6GetStreamClient
- type SLRoutev6Oper_SLRoutev6GetStreamServer
- type SLRoutev6Oper_SLRoutev6OpStreamClient
- type SLRoutev6Oper_SLRoutev6OpStreamServer
- type SLRoutev6Res
- type SLVRFGetStatsMsgRes
- type SLVRFGetStatsMsgRsp
- func (*SLVRFGetStatsMsgRsp) Descriptor() ([]byte, []int)
- func (m *SLVRFGetStatsMsgRsp) GetEntries() []*SLVRFGetStatsMsgRes
- func (m *SLVRFGetStatsMsgRsp) GetEof() bool
- func (m *SLVRFGetStatsMsgRsp) GetErrStatus() *SLErrorStatus
- func (*SLVRFGetStatsMsgRsp) ProtoMessage()
- func (m *SLVRFGetStatsMsgRsp) Reset()
- func (m *SLVRFGetStatsMsgRsp) String() string
- type SLVersion
- type SLVrfReg
- type SLVrfRegGetMsg
- func (*SLVrfRegGetMsg) Descriptor() ([]byte, []int)
- func (m *SLVrfRegGetMsg) GetEntriesCount() uint32
- func (m *SLVrfRegGetMsg) GetGetNext() bool
- func (m *SLVrfRegGetMsg) GetVrfName() string
- func (*SLVrfRegGetMsg) ProtoMessage()
- func (m *SLVrfRegGetMsg) Reset()
- func (m *SLVrfRegGetMsg) String() string
- type SLVrfRegGetMsgRsp
- func (*SLVrfRegGetMsgRsp) Descriptor() ([]byte, []int)
- func (m *SLVrfRegGetMsgRsp) GetEntries() []*SLVrfReg
- func (m *SLVrfRegGetMsgRsp) GetEof() bool
- func (m *SLVrfRegGetMsgRsp) GetErrStatus() *SLErrorStatus
- func (*SLVrfRegGetMsgRsp) ProtoMessage()
- func (m *SLVrfRegGetMsgRsp) Reset()
- func (m *SLVrfRegGetMsgRsp) String() string
- type SLVrfRegMsg
- type SLVrfRegMsgRes
- type SLVrfRegMsgRsp
Constants ¶
This section is empty.
Variables ¶
var SLErrorStatus_SLErrno_name = map[int32]string{}/* 181 elements not displayed */
var SLErrorStatus_SLErrno_value = map[string]int32{}/* 181 elements not displayed */
var SLGlobalNotifType_name = map[int32]string{
0: "SL_GLOBAL_EVENT_TYPE_RESERVED",
1: "SL_GLOBAL_EVENT_TYPE_ERROR",
2: "SL_GLOBAL_EVENT_TYPE_HEARTBEAT",
3: "SL_GLOBAL_EVENT_TYPE_VERSION",
}
var SLGlobalNotifType_value = map[string]int32{
"SL_GLOBAL_EVENT_TYPE_RESERVED": 0,
"SL_GLOBAL_EVENT_TYPE_ERROR": 1,
"SL_GLOBAL_EVENT_TYPE_HEARTBEAT": 2,
"SL_GLOBAL_EVENT_TYPE_VERSION": 3,
}
var SLNotifOp_name = map[int32]string{
0: "SL_NOTIFOP_RESERVED",
1: "SL_NOTIFOP_ENABLE",
2: "SL_NOTIFOP_DISABLE",
}
var SLNotifOp_value = map[string]int32{
"SL_NOTIFOP_RESERVED": 0,
"SL_NOTIFOP_ENABLE": 1,
"SL_NOTIFOP_DISABLE": 2,
}
var SLObjectOp_name = map[int32]string{
0: "SL_OBJOP_RESERVED",
1: "SL_OBJOP_ADD",
2: "SL_OBJOP_UPDATE",
3: "SL_OBJOP_DELETE",
}
var SLObjectOp_value = map[string]int32{
"SL_OBJOP_RESERVED": 0,
"SL_OBJOP_ADD": 1,
"SL_OBJOP_UPDATE": 2,
"SL_OBJOP_DELETE": 3,
}
var SLRegOp_name = map[int32]string{
0: "SL_REGOP_RESERVED",
1: "SL_REGOP_REGISTER",
2: "SL_REGOP_UNREGISTER",
3: "SL_REGOP_EOF",
}
var SLRegOp_value = map[string]int32{
"SL_REGOP_RESERVED": 0,
"SL_REGOP_REGISTER": 1,
"SL_REGOP_UNREGISTER": 2,
"SL_REGOP_EOF": 3,
}
var SLVersion_name = map[int32]string{
0: "SL_VERSION_UNUSED",
1: "SL_SUB_VERSION",
}
var SLVersion_value = map[string]int32{
"SL_VERSION_UNUSED": 0,
"SL_MAJOR_VERSION": 0,
"SL_MINOR_VERSION": 0,
"SL_SUB_VERSION": 1,
}
Functions ¶
func RegisterSLGlobalServer ¶
func RegisterSLGlobalServer(s *grpc.Server, srv SLGlobalServer)
func RegisterSLRoutev6OperServer ¶
func RegisterSLRoutev6OperServer(s *grpc.Server, srv SLRoutev6OperServer)
Types ¶
type SLErrorStatus ¶
type SLErrorStatus struct {
Status SLErrorStatus_SLErrno `protobuf:"varint,1,opt,name=Status,enum=service_layer.SLErrorStatus_SLErrno" json:"Status,omitempty"`
}
Status codes, including errors and success codes. All service layer errors are defined below.
func (*SLErrorStatus) Descriptor ¶
func (*SLErrorStatus) Descriptor() ([]byte, []int)
func (*SLErrorStatus) GetStatus ¶
func (m *SLErrorStatus) GetStatus() SLErrorStatus_SLErrno
func (*SLErrorStatus) ProtoMessage ¶
func (*SLErrorStatus) ProtoMessage()
func (*SLErrorStatus) Reset ¶
func (m *SLErrorStatus) Reset()
func (*SLErrorStatus) String ¶
func (m *SLErrorStatus) String() string
type SLErrorStatus_SLErrno ¶
type SLErrorStatus_SLErrno int32
const ( // Success, no errors detected. 0x0. SLErrorStatus_SL_SUCCESS SLErrorStatus_SLErrno = 0 // Client is not connected. // The client is expected to remain connected after init and version // validation, RPC calls can fail with this error code otherwise. // Refer to RPC SLGlobalInitNotif. 0x1 SLErrorStatus_SL_NOT_CONNECTED SLErrorStatus_SLErrno = 1 // Operation must be retried. 0x2 SLErrorStatus_SL_EAGAIN SLErrorStatus_SLErrno = 2 // One or more components does not have sufficient memory. 0x3 SLErrorStatus_SL_ENOMEM SLErrorStatus_SLErrno = 3 // Too many outstanding requests. 0x4 SLErrorStatus_SL_EBUSY SLErrorStatus_SLErrno = 4 // One or more arguments are invalid. 0x5 SLErrorStatus_SL_EINVAL SLErrorStatus_SLErrno = 5 // Unsupported version. 0x6 SLErrorStatus_SL_UNSUPPORTED_VER SLErrorStatus_SLErrno = 6 // Not Available. 0x7 SLErrorStatus_SL_NOT_AVAILABLE SLErrorStatus_SLErrno = 7 // Stream mode not supported. 0x8 SLErrorStatus_SL_STREAM_NOT_SUPPORTED SLErrorStatus_SLErrno = 8 // Operation not supported. 0x9 SLErrorStatus_SL_ENOTSUP SLErrorStatus_SLErrno = 9 // One or more objects is errored: // Each object must be individually examined. 0xa SLErrorStatus_SL_SOME_ERR SLErrorStatus_SLErrno = 10 // Operation Timed out. // The result of the operation is undeterministic (success or fail). 0xb SLErrorStatus_SL_TIMEOUT SLErrorStatus_SLErrno = 11 // Due to some event, the client will no longer receive notification // events on this channel. 0xc // Such events include: // - Notification Session was hijacked by another client. SLErrorStatus_SL_NOTIF_TERM SLErrorStatus_SLErrno = 12 // Offset for INIT errors. 0x500 SLErrorStatus_SL_INIT_START_OFFSET SLErrorStatus_SLErrno = 1280 // Success, no errors detected - clear state. // This error is returned on the first-ever initialization, or, // when a fatal event has occured and all previous state was lost. 0x501 SLErrorStatus_SL_INIT_STATE_CLEAR SLErrorStatus_SLErrno = 1281 // Success, no errors detected - previous state fully recovered. // This error is returned on a client re-initialization with // successful recovery of state. 0x502 SLErrorStatus_SL_INIT_STATE_READY SLErrorStatus_SLErrno = 1282 // Server software incompatible with client software version. 0x503 SLErrorStatus_SL_INIT_UNSUPPORTED_VER SLErrorStatus_SLErrno = 1283 // Initialization request received while server is not ready. 0x504 SLErrorStatus_SL_INIT_SERVER_NOT_INITIALIZED SLErrorStatus_SLErrno = 1284 // Server operational mode change from stream to non-stream // or vice-versa failed. 0x505 SLErrorStatus_SL_INIT_SERVER_MODE_CHANGE_FAILED SLErrorStatus_SLErrno = 1285 // Offset for VRF errors. 0x1000 SLErrorStatus_SL_RPC_VRF_START_OFFSET SLErrorStatus_SLErrno = 4096 // Operation rejected for ALL VRFs due to too many VRF registration // messages in the request. 0x1001 SLErrorStatus_SL_RPC_VRF_TOO_MANY_VRF_REG_MSGS SLErrorStatus_SLErrno = 4097 // Operation rejected for all VRFs as server is not initialized. 0x1002 SLErrorStatus_SL_RPC_VRF_SERVER_NOT_INITIALIZED SLErrorStatus_SLErrno = 4098 // Offset for VRF errors. 0x2000 SLErrorStatus_SL_VRF_START_OFFSET SLErrorStatus_SLErrno = 8192 // VRF name in the VRF registration message is too long. 0x2001 SLErrorStatus_SL_VRF_NAME_TOOLONG SLErrorStatus_SLErrno = 8193 // VRF not found during a unregister or EOF. 0x2002 SLErrorStatus_SL_VRF_NOT_FOUND SLErrorStatus_SLErrno = 8194 // On a VRF registration, Table ID for the VRF is not found. 0x2003 SLErrorStatus_SL_VRF_NO_TABLE_ID SLErrorStatus_SLErrno = 8195 // VRF add registration message with invalid administrative distance. 0x2004 SLErrorStatus_SL_VRF_REG_INVALID_ADMIN_DISTANCE SLErrorStatus_SLErrno = 8196 // On a VRF registration, Table cannot be added to persistent memory. 0x2005 SLErrorStatus_SL_VRF_TABLE_ADD_ERR SLErrorStatus_SLErrno = 8197 // VRF table cannot be registered with RIB. 0x2006 SLErrorStatus_SL_VRF_TABLE_REGISTRATION_ERR SLErrorStatus_SLErrno = 8198 // VRF table cannot be unregistered with RIB. 0x2007 SLErrorStatus_SL_VRF_TABLE_UNREGISTRATION_ERR SLErrorStatus_SLErrno = 8199 // VRF table RIB EOF operation error. 0x2008 SLErrorStatus_SL_VRF_TABLE_EOF_ERR SLErrorStatus_SLErrno = 8200 // VRF registration message does not have a VRF name. 0x2009 SLErrorStatus_SL_VRF_REG_VRF_NAME_MISSING SLErrorStatus_SLErrno = 8201 // Offset for Route operation errors. 0x3000 SLErrorStatus_SL_RPC_ROUTE_START_OFFSET SLErrorStatus_SLErrno = 12288 // Operation rejected for ALL routes due to too many routes in the // request. 0x3001 SLErrorStatus_SL_RPC_ROUTE_TOO_MANY_ROUTES SLErrorStatus_SLErrno = 12289 // Operation rejected for ALL routes as the request's VRF name // is too long. 0x3002 SLErrorStatus_SL_RPC_ROUTE_VRF_NAME_TOOLONG SLErrorStatus_SLErrno = 12290 // Operation rejected for ALL routes as VRF for the given name // is not found. 0x3003 SLErrorStatus_SL_RPC_ROUTE_VRF_NOT_FOUND SLErrorStatus_SLErrno = 12291 // Operation rejected for ALL routes as VRF's Table ID is not found. // 0x3004 SLErrorStatus_SL_RPC_ROUTE_VRF_NO_TABLE SLErrorStatus_SLErrno = 12292 // Operation rejected for ALL routes as VRF is not registered with RIB. // 0x3005 SLErrorStatus_SL_RPC_ROUTE_VRF_TABLE_NOT_REGISTERED SLErrorStatus_SLErrno = 12293 // Route Operation rejected for ALL objects as VRF name is missing. // 0x3006 SLErrorStatus_SL_RPC_ROUTE_VRF_NAME_MISSING SLErrorStatus_SLErrno = 12294 // Operation rejected for all routes as the RPC request is // not supported for the library's initialization mode. 0x3007 SLErrorStatus_SL_RPC_ROUTE_INIT_MODE_INCOMPATIBLE SLErrorStatus_SLErrno = 12295 // Operation rejected for all routes as server is not initialized. // 0x3008 SLErrorStatus_SL_RPC_ROUTE_SERVER_NOT_INITIALIZED SLErrorStatus_SLErrno = 12296 // Offset for route errors. 0x4000 SLErrorStatus_SL_ROUTE_START_OFFSET SLErrorStatus_SLErrno = 16384 // Route add operation requested but no paths were provided. 0x4001 SLErrorStatus_SL_ROUTE_ADD_NO_PATHS SLErrorStatus_SLErrno = 16385 // Route update operation requested but no paths were provided. 0x4002 SLErrorStatus_SL_ROUTE_UPDATE_NO_PATHS SLErrorStatus_SLErrno = 16386 // Route's prefix length is invalid. 0x4003 SLErrorStatus_SL_ROUTE_INVALID_PREFIX_LEN SLErrorStatus_SLErrno = 16387 // Route's admininstrative distance is invalid. 0x4004 SLErrorStatus_SL_ROUTE_INVALID_ADMIN_DISTANCE SLErrorStatus_SLErrno = 16388 // Route's number of paths exceeds system capabilities. 0x4005 SLErrorStatus_SL_ROUTE_INVALID_NUM_PATHS SLErrorStatus_SLErrno = 16389 // Size of IPv6 prefix is invalid. 0x4006 SLErrorStatus_SL_ROUTE_INVALID_PREFIX_SZ SLErrorStatus_SLErrno = 16390 // Route's prefix is invalid. 0x4007 SLErrorStatus_SL_ROUTE_INVALID_PREFIX SLErrorStatus_SLErrno = 16391 // Route programming failed in RIB as VRF table limit reached. 0x4008 SLErrorStatus_SL_ROUTE_ERR_RIB_TABLE_LIMIT_REACHED SLErrorStatus_SLErrno = 16392 // RIB route programming failed in RIB due to invalid arguments. 0x4009 SLErrorStatus_SL_ROUTE_ERR_RIB_INVALID_ARGS SLErrorStatus_SLErrno = 16393 // One or more paths could not be programmed in RIB as VRF // table limit reached. 0x400a SLErrorStatus_SL_ROUTE_ERR_RIB_PATH_TABLE_LIMIT SLErrorStatus_SLErrno = 16394 // One or more paths could not be programmed in RIB as number of paths // reached system limit. 0x400b SLErrorStatus_SL_ROUTE_ERR_RIB_TOOMANYPATHS SLErrorStatus_SLErrno = 16395 // This route already exists in the database. 0x400c SLErrorStatus_SL_ROUTE_EEXIST SLErrorStatus_SLErrno = 16396 // Route prefix has host bits set. 0x400d SLErrorStatus_SL_ROUTE_HOST_BITS_SET SLErrorStatus_SLErrno = 16397 // IPv4 Route prefix is a multicast address. 0x400e SLErrorStatus_SL_ROUTE_INVALID_PREFIX_MCAST SLErrorStatus_SLErrno = 16398 // Route and Path AFI does not match. 0x400f SLErrorStatus_SL_ROUTE_PATH_AFI_MISMATCH SLErrorStatus_SLErrno = 16399 // Number of primary paths exceeds system capabilities. 0x4010 SLErrorStatus_SL_ROUTE_TOOMANY_PRIMARY_PATHS SLErrorStatus_SLErrno = 16400 // Number of backup paths exceeds system capabilities. 0x4011 SLErrorStatus_SL_ROUTE_TOOMANY_BACKUP_PATHS SLErrorStatus_SLErrno = 16401 // The route database is out of memory. 0x4012 SLErrorStatus_SL_ROUTE_DB_NOMEM SLErrorStatus_SLErrno = 16402 // The route has an invalid local label. 0x4013 SLErrorStatus_SL_ROUTE_INVALID_LOCAL_LABEL SLErrorStatus_SLErrno = 16403 // Offset for route path errors. 0x5000 SLErrorStatus_SL_PATH_START_OFFSET SLErrorStatus_SLErrno = 20480 // VRF table for the path could not be determined. 0x5001 SLErrorStatus_SL_PATH_NH_NO_TABLE SLErrorStatus_SLErrno = 20481 // Path next hop interface not found. 0x5002 SLErrorStatus_SL_PATH_NH_INTF_NOT_FOUND SLErrorStatus_SLErrno = 20482 // Number of labels in the path exceeds system capabilities. 0x5003 SLErrorStatus_SL_PATH_INVALID_LABEL_COUNT SLErrorStatus_SLErrno = 20483 // Path ID assigned to the path falls outside the supported range. 0x5004 SLErrorStatus_SL_PATH_INVALID_ID SLErrorStatus_SLErrno = 20484 // Path VRF name exceeds supported length. 0x5005 SLErrorStatus_SL_PATH_VRF_NAME_TOOLONG SLErrorStatus_SLErrno = 20485 // Path next hop interface name exceeds supported length. 0x5006 SLErrorStatus_SL_PATH_NH_INTF_NAME_TOOLONG SLErrorStatus_SLErrno = 20486 // Size of next hop IPv6 address is invalid. 0x5007 SLErrorStatus_SL_PATH_NH_INVALID_ADDR_SZ SLErrorStatus_SLErrno = 20487 // Next hop interface name is missing from path. 0x5008 SLErrorStatus_SL_PATH_NH_INF_NAME_MISSING SLErrorStatus_SLErrno = 20488 // Path has an invalid next hop address. 0x5009 SLErrorStatus_SL_PATH_INVALID_NEXT_HOP_ADDR SLErrorStatus_SLErrno = 20489 // Number of remote backup addresses in the path exceeds // system capabilities. 0x500a SLErrorStatus_SL_PATH_INVALID_REMOTE_ADDR_COUNT SLErrorStatus_SLErrno = 20490 // Size of IPv6 remote backup address is invalid. 0x500b SLErrorStatus_SL_PATH_REMOTE_ADDR_INVALID_SZ SLErrorStatus_SLErrno = 20491 // Route and Path remote backup address AFI does not match. 0x500c SLErrorStatus_SL_PATH_REMOTE_ADDR_AFI_MISMATCH SLErrorStatus_SLErrno = 20492 // Path has an invalid protection bitmap. 0x500d SLErrorStatus_SL_PATH_INVALID_PROTECTED_BITMAP SLErrorStatus_SLErrno = 20493 // Protection bitmap of a backup path refers to a missing path. 0x500e SLErrorStatus_SL_PATH_BACKUP_MISSING_PRIMARY_PATH SLErrorStatus_SLErrno = 20494 // Too many primary paths with same Path ID. 0x500f SLErrorStatus_SL_PATH_PRIMARY_ID_REPEATED SLErrorStatus_SLErrno = 20495 // Too many pure backup paths with same Path ID. 0x5010 SLErrorStatus_SL_PATH_BACKUP_ID_REPEATED SLErrorStatus_SLErrno = 20496 // A primary path has too many backup paths. 0x5011 SLErrorStatus_SL_PATH_PRIMARY_TOOMANY_BACKUP_PATHS SLErrorStatus_SLErrno = 20497 // A primary path has too many labels. 0x5012 SLErrorStatus_SL_PATH_PRIMARY_TOOMANY_LABELS SLErrorStatus_SLErrno = 20498 // A primary path has too many remote addresses. 0x5013 SLErrorStatus_SL_PATH_PRIMARY_TOOMANY_REMOTE_ADDR SLErrorStatus_SLErrno = 20499 // A pure backup remote address is invalid. 0x5014 SLErrorStatus_SL_PATH_REMOTE_ADDR_INVALID SLErrorStatus_SLErrno = 20500 // Path has an invalid label. 0x5015 SLErrorStatus_SL_PATH_INVALID_LABEL SLErrorStatus_SLErrno = 20501 // Offset for BFD operation errors. 0x6000 SLErrorStatus_SL_RPC_BFD_START_OFFSET SLErrorStatus_SLErrno = 24576 // BFD Operation rejected for ALL Sessions as the BFD Session count // is beyond supported limit. 0x6001 SLErrorStatus_SL_RPC_BFD_TOO_MANY_BFD_SESSIONS SLErrorStatus_SLErrno = 24577 // BFD Operation rejected due to one or many invalid parameters. 0x6002 SLErrorStatus_SL_RPC_BFD_API_BAD_PARAMETER SLErrorStatus_SLErrno = 24578 // BFD Operation failed as server is not registered with BFD. 0x6003 SLErrorStatus_SL_RPC_BFD_API_CLIENT_NOT_REGISTERED SLErrorStatus_SLErrno = 24579 // BFD Operation failed with internal error. 0x6004 SLErrorStatus_SL_RPC_BFD_API_INTERNAL_ERROR SLErrorStatus_SLErrno = 24580 // BFD Operation rejected as server is not initialized. 0x6005 SLErrorStatus_SL_RPC_BFD_SERVER_NOT_INITIALIZED SLErrorStatus_SLErrno = 24581 // BFD IPv4 not registered. 0x6006 SLErrorStatus_SL_RPC_BFD_V4_NOT_REGISTERED SLErrorStatus_SLErrno = 24582 // BFD IPv6 not registered. 0x6007 SLErrorStatus_SL_RPC_BFD_V6_NOT_REGISTERED SLErrorStatus_SLErrno = 24583 // Offset for BFD errors. 0x7000 SLErrorStatus_SL_BFD_START_OFFSET SLErrorStatus_SLErrno = 28672 // BFD Session's interface name exceeds supported length. 0x7001 SLErrorStatus_SL_BFD_INTF_NAME_TOOLONG SLErrorStatus_SLErrno = 28673 // BFD Session's interface not found. 0x7002 SLErrorStatus_SL_BFD_INTF_NOT_FOUND SLErrorStatus_SLErrno = 28674 // BFD Session's tx interval or multiplier are beyond the // supported range. 0x7003 SLErrorStatus_SL_BFD_INVALID_ATTRIBUTE SLErrorStatus_SLErrno = 28675 // BFD Session's interface name is missing. 0x7004 SLErrorStatus_SL_BFD_INTF_NAME_MISSING SLErrorStatus_SLErrno = 28676 // BFD Session's neighbor is mcast address. 0x7005 SLErrorStatus_SL_BFD_INVALID_NBR_MCAST SLErrorStatus_SLErrno = 28677 // BFD Session's neighbor address is invalid. 0x7006 SLErrorStatus_SL_BFD_INVALID_NBR SLErrorStatus_SLErrno = 28678 // BFD Session's VRF Name is too long. 0x7007 SLErrorStatus_SL_BFD_VRF_NAME_TOOLONG SLErrorStatus_SLErrno = 28679 // BFD Session's one or more parameters are invalid. // For example, Multihop BFD can not have the interface name set. 0x7008 SLErrorStatus_SL_BFD_BAD_PARAMETER SLErrorStatus_SLErrno = 28680 // BFD Session failed with internal error. 0x7009 SLErrorStatus_SL_BFD_API_INTERNAL_ERROR SLErrorStatus_SLErrno = 28681 // BFD Session's VRF not found. 0x700a SLErrorStatus_SL_BFD_VRF_NOT_FOUND SLErrorStatus_SLErrno = 28682 // BFD Session's neighbor IPv6 prefix size is invalid. 0x700b SLErrorStatus_SL_BFD_INVALID_PREFIX_SIZE SLErrorStatus_SLErrno = 28683 // BFD Session type invalid. 0x700c SLErrorStatus_SL_BFD_INVALID_SESSION_TYPE SLErrorStatus_SLErrno = 28684 // BFD Session's VRF is Invalid. 0x700d SLErrorStatus_SL_BFD_INVALID_VRF SLErrorStatus_SLErrno = 28685 // BFD Session not found. 0x700e SLErrorStatus_SL_BFD_SESSION_NOT_FOUND SLErrorStatus_SLErrno = 28686 // BFD Session exists. 0x700f SLErrorStatus_SL_BFD_SESSION_EXISTS SLErrorStatus_SLErrno = 28687 // BFD Internal database error. 0x7010 SLErrorStatus_SL_BFD_INTERNAL_DB_ERROR SLErrorStatus_SLErrno = 28688 // BFD Recovery error. 0x7011 SLErrorStatus_SL_BFD_RECOVERY_ERROR SLErrorStatus_SLErrno = 28689 // Offset for MPLS operation errors. 0x8000 SLErrorStatus_SL_RPC_MPLS_START_OFFSET SLErrorStatus_SLErrno = 32768 // Operation rejected for ALL ILMS due to too many ILMS in the // request. 0x8001 SLErrorStatus_SL_RPC_MPLS_ILM_TOO_MANY_ILMS SLErrorStatus_SLErrno = 32769 // Operation rejected for all ILMs as server is not initialized. // 0x0x8002 SLErrorStatus_SL_RPC_MPLS_SERVER_NOT_INITIALIZED SLErrorStatus_SLErrno = 32770 // Operation rejected for all ILMs as the RPC request is // not supported for the library's initialization mode. 0x8003 SLErrorStatus_SL_RPC_MPLS_INIT_MODE_INCOMPATIBLE SLErrorStatus_SLErrno = 32771 // Operation rejected for ALL label blocks due to too many // label blocks in the request. 0x8004 SLErrorStatus_SL_RPC_MPLS_LABEL_BLK_TOO_MANY_LABEL_BLKS SLErrorStatus_SLErrno = 32772 // Operation rejected for ALL ILMs as MPLS layer is not registered. // 0x8005 SLErrorStatus_SL_RPC_MPLS_NOT_REGISTERED SLErrorStatus_SLErrno = 32773 // Offset for MPLS ILM errors. 0x9000 SLErrorStatus_SL_ILM_ERR_OFFSET SLErrorStatus_SLErrno = 36864 // MPLS ILM add to service layer failed. 0x9001 SLErrorStatus_SL_ILM_ADD_FAILED SLErrorStatus_SLErrno = 36865 // MPLS ILM add to Label Switching Database failed. 0x9002 SLErrorStatus_SL_ILM_LSD_ADD_FAILED SLErrorStatus_SLErrno = 36866 // MPLS ILM NHLFE count exceeded max supported number. 0x9003 SLErrorStatus_SL_ILM_INVALID_NUM_NHLFE SLErrorStatus_SLErrno = 36867 // MPLS ILM label value out of range. 0x9004 SLErrorStatus_SL_ILM_INVALID_LABEL SLErrorStatus_SLErrno = 36868 // MPLS ILM delete from service layer failed. 0x9005 SLErrorStatus_SL_ILM_DELETE_FAILED SLErrorStatus_SLErrno = 36869 // MPLS ILM delete from Label Switching Database failed. 0x9006 SLErrorStatus_SL_ILM_LSD_DELETE_FAILED SLErrorStatus_SLErrno = 36870 // Number of primary NHLFEs exceeds system capabilities. 0x9007 SLErrorStatus_SL_ILM_TOOMANY_PRIMARY_NHLFES SLErrorStatus_SLErrno = 36871 // Number of backup NHLFEs exceeds system capabilities. 0x9008 SLErrorStatus_SL_ILM_TOOMANY_BACKUP_NHLFES SLErrorStatus_SLErrno = 36872 // MPLS ILM label alloc failed in Label switching database. 0x9009 SLErrorStatus_SL_ILM_LSD_ADD_LABEL_ALLOC_FAILED SLErrorStatus_SLErrno = 36873 // MPLS ILM NHLFE attribute invalid. 0x900a SLErrorStatus_SL_ILM_LSD_NHLFE_INVALID_ATTRIB SLErrorStatus_SLErrno = 36874 // MPLS ILM already exists in the database. 0x900b SLErrorStatus_SL_ILM_EEXIST SLErrorStatus_SLErrno = 36875 // The ILM database is out of memory. 0x900c SLErrorStatus_SL_ILM_DB_NOMEM SLErrorStatus_SLErrno = 36876 // Offset for MPLS NHLFE errors. 0xa000 SLErrorStatus_SL_NHLFE_ERR_OFFSET SLErrorStatus_SLErrno = 40960 // MPLS NHLFE vrf table could not be determined. 0xa001 SLErrorStatus_SL_NHLFE_NH_NO_TABLE SLErrorStatus_SLErrno = 40961 // Size of next hop IPv6 address is invalid. 0xa002 SLErrorStatus_SL_NHLFE_NH_INVALID_ADDR_SZ SLErrorStatus_SLErrno = 40962 // NHLFE has an invalid next hop address. 0xa003 SLErrorStatus_SL_NHLFE_INVALID_NEXT_HOP_ADDR SLErrorStatus_SLErrno = 40963 // Path VRF name exceeds supported length. 0xa004 SLErrorStatus_SL_NHLFE_VRF_NAME_TOOLONG SLErrorStatus_SLErrno = 40964 // Next hop interface name is missing from path. 0xa005 SLErrorStatus_SL_NHLFE_NH_INF_NAME_MISSING SLErrorStatus_SLErrno = 40965 // Interface name exceeds supported length. 0xa006 SLErrorStatus_SL_NHLFE_NH_INTF_NAME_TOOLONG SLErrorStatus_SLErrno = 40966 // Number of labels in the path exceeds system capabilities. 0xa007 SLErrorStatus_SL_NHLFE_INVALID_LABEL_COUNT SLErrorStatus_SLErrno = 40967 // Path id is invalid in NHLFE. 0xa008 SLErrorStatus_SL_NHLFE_INVALID_PATH_ID SLErrorStatus_SLErrno = 40968 // MPLS NHLFE label value out of range. 0xa009 SLErrorStatus_SL_NHLFE_INVALID_LABEL SLErrorStatus_SLErrno = 40969 // NHLFE has an invalid protection bitmap. 0xa00a SLErrorStatus_SL_NHLFE_INVALID_PROTECTED_BITMAP SLErrorStatus_SLErrno = 40970 // Number of remote backup addresses in the NHLFE exceeds // system capabilities. 0xa00b SLErrorStatus_SL_NHLFE_INVALID_REMOTE_ADDR_COUNT SLErrorStatus_SLErrno = 40971 // Size of IPv6 remote backup address is invalid. 0xa00c SLErrorStatus_SL_NHLFE_REMOTE_ADDR_INVALID_SZ SLErrorStatus_SLErrno = 40972 // A primary NHLFE has too many labels. 0xa00d SLErrorStatus_SL_NHLFE_PRIMARY_TOOMANY_LABELS SLErrorStatus_SLErrno = 40973 // A primary NHLFE has too many remote addresses. 0xa00e SLErrorStatus_SL_NHLFE_PRIMARY_TOOMANY_REMOTE_ADDR SLErrorStatus_SLErrno = 40974 // Too many pure backup NHLFE with same Path ID. 0xa00f SLErrorStatus_SL_NHLFE_BACKUP_ID_REPEATED SLErrorStatus_SLErrno = 40975 // Too many primary NHLFE with same Path ID. 0xa010 SLErrorStatus_SL_NHLFE_PRIMARY_ID_REPEATED SLErrorStatus_SLErrno = 40976 // Pure backup NHLFE has a empty protected bitmap. 0xa011 SLErrorStatus_SL_NHLFE_BACKUP_PROTECTED_BITMAP_EMPTY SLErrorStatus_SLErrno = 40977 // A primary NHLFE has too many backup paths. 0xa012 SLErrorStatus_SL_NHLFE_PRIMARY_TOOMANY_BACKUP_PATHS SLErrorStatus_SLErrno = 40978 // A pure backup remote address is invalid. 0xa013 SLErrorStatus_SL_NHLFE_REMOTE_ADDR_INVALID SLErrorStatus_SLErrno = 40979 // Protection bitmap of a backup NHLFE refers to a missing path. 0xa014 SLErrorStatus_SL_NHLFE_BACKUP_MISSING_PRIMARY_PATH SLErrorStatus_SLErrno = 40980 // NHLFE next-hop missing. 0xa015 SLErrorStatus_SL_NHLFE_NEXT_HOP_MISSING SLErrorStatus_SLErrno = 40981 // Label action specified is invalid. 0xa016 SLErrorStatus_SL_NHLFE_LABEL_ACTION_INVALID SLErrorStatus_SLErrno = 40982 // NHLFE next hop interface not found. 0xa017 SLErrorStatus_SL_NHLFE_NH_INTF_NOT_FOUND SLErrorStatus_SLErrno = 40983 // MPLS NHLFE operation failed. 0xa018 SLErrorStatus_SL_NHLFE_OPER_FAILED SLErrorStatus_SLErrno = 40984 // MPLS NHLFE label action missing. 0xa019 SLErrorStatus_SL_NHLFE_LABEL_ACTION_MISSING SLErrorStatus_SLErrno = 40985 // Offset for label block errors. 0xb000 SLErrorStatus_SL_LABEL_BLK_ERR_OFFSET SLErrorStatus_SLErrno = 45056 // MPLS label block add from Label Switching Database failed. 0xb001 SLErrorStatus_SL_LABEL_BLK_LSD_ADD_FAILED SLErrorStatus_SLErrno = 45057 // MPLS label block delete from Label Switching Database failed. 0xb002 SLErrorStatus_SL_LABEL_BLK_LSD_DELETE_FAILED SLErrorStatus_SLErrno = 45058 // MPLS label block not found. 0xb003 SLErrorStatus_SL_LABEL_BLK_LSD_LABEL_BLK_NOT_FOUND SLErrorStatus_SLErrno = 45059 // MPLS label block in use. 0xb004 SLErrorStatus_SL_LABEL_BLK_LSD_LABEL_BLK_IN_USE SLErrorStatus_SLErrno = 45060 // MPLS label block attribute invalid. 0xb005 SLErrorStatus_SL_LABEL_BLK_LSD_INVALID_ATTRIB SLErrorStatus_SLErrno = 45061 // MPLS label block size > max size per block. 0xb006 SLErrorStatus_SL_LABEL_BLK_INVALID_BLOCK_SIZE SLErrorStatus_SLErrno = 45062 // MPLS label start_label < min label for platform . 0xb007 SLErrorStatus_SL_LABEL_BLK_INVALID_START_LABEL SLErrorStatus_SLErrno = 45063 // MPLS label block already exists in the database. 0xb008 SLErrorStatus_SL_LABEL_BLK_EEXIST SLErrorStatus_SLErrno = 45064 // MPLS label database is out of memory. 0xb009 SLErrorStatus_SL_LABEL_BLK_DB_NOMEM SLErrorStatus_SLErrno = 45065 // Offset for MPLS registration errors. 0xc000 SLErrorStatus_SL_MPLS_REG_ERR_OFFSET SLErrorStatus_SLErrno = 49152 // MPLS registration error. 0xc001 SLErrorStatus_SL_MPLS_REG_ERR SLErrorStatus_SLErrno = 49153 // MPLS unregistration error. 0xc002 SLErrorStatus_SL_MPLS_UNREG_ERR SLErrorStatus_SLErrno = 49154 // MPLS EOF error. 0xc003 SLErrorStatus_SL_MPLS_EOF_ERR SLErrorStatus_SLErrno = 49155 // Offset for Interface operation errors. 0xd000 SLErrorStatus_SL_RPC_INTF_START_OFFSET SLErrorStatus_SLErrno = 53248 // Interface Operation rejected for ALL Sessions as the Interface // Session count is beyond supported limit. 0xd001 SLErrorStatus_SL_RPC_INTF_TOO_MANY_INTERFACES SLErrorStatus_SLErrno = 53249 // Interface Operation rejected as server is not initialized. 0xd002 SLErrorStatus_SL_RPC_INTF_SERVER_NOT_INITIALIZED SLErrorStatus_SLErrno = 53250 // Interface Operation failed as server is not registered with // interface manager. 0xd003 SLErrorStatus_SL_RPC_INTF_API_CLIENT_NOT_REGISTERED SLErrorStatus_SLErrno = 53251 // Offset for Interface object errors. 0xe000 SLErrorStatus_SL_INTF_START_OFFSET SLErrorStatus_SLErrno = 57344 // Interface object's interface name missing. 0xe001 SLErrorStatus_SL_INTF_INTERFACE_NAME_MISSING SLErrorStatus_SLErrno = 57345 // Interface object's interface name exceeds supported length. 0xe002 SLErrorStatus_SL_INTF_INTERFACE_NAME_TOOLONG SLErrorStatus_SLErrno = 57346 // Interface internal registration error. 0xe003 SLErrorStatus_SL_INTF_INTERFACE_REG_ERR SLErrorStatus_SLErrno = 57347 // Internal database error. 0xe004 SLErrorStatus_SL_INTF_INTERNAL_DB_ERROR SLErrorStatus_SLErrno = 57348 // Interface Recovery error. 0xe005 SLErrorStatus_SL_INTF_RECOVERY_ERROR SLErrorStatus_SLErrno = 57349 // Interface exists. 0xe006 SLErrorStatus_SL_INTF_INTERFACE_EXISTS SLErrorStatus_SLErrno = 57350 // Interface not found. 0xe007 SLErrorStatus_SL_INTF_INTERFACE_NOT_FOUND SLErrorStatus_SLErrno = 57351 // Offset for Internal errors. 0x100000 SLErrorStatus_SL_INTERNAL_START_OFFSET SLErrorStatus_SLErrno = 1048576 )
func (SLErrorStatus_SLErrno) EnumDescriptor ¶
func (SLErrorStatus_SLErrno) EnumDescriptor() ([]byte, []int)
func (SLErrorStatus_SLErrno) String ¶
func (x SLErrorStatus_SLErrno) String() string
type SLGlobalClient ¶
type SLGlobalClient interface { // Initialize the connection, and setup a notification channel. // This MUST be the first call to setup the Service Layer connection. // // The caller MUST maintain the notification channel to be able to // communicate with the server. // If this channel is not properly established and maintained, all other // RPC requests are rejected. // // The caller must send its version information as part of the SLInitMsg // message. The server will reply with SL_GLOBAL_EVENT_TYPE_VERSION // that tells the caller whether he can proceed or not. // Refer to message SLGlobalNotif below for further details. // // After the version handshake, the notification channel is used for // "push" event notifications, such as: // - SLGlobalNotif.EventType = SL_GLOBAL_EVENT_TYPE_HEARTBEAT // heartbeat notification messages are sent to the client on // a periodic basis. // Refer to SLGlobalNotif definition for further info. SLGlobalInitNotif(ctx context.Context, in *SLInitMsg, opts ...grpc.CallOption) (SLGlobal_SLGlobalInitNotifClient, error) // Get platform specific globals SLGlobalsGet(ctx context.Context, in *SLGlobalsGetMsg, opts ...grpc.CallOption) (*SLGlobalsGetMsgRsp, error) }
func NewSLGlobalClient ¶
func NewSLGlobalClient(cc *grpc.ClientConn) SLGlobalClient
type SLGlobalNotif ¶
type SLGlobalNotif struct { // Event Type. EventType SLGlobalNotifType `protobuf:"varint,1,opt,name=EventType,enum=service_layer.SLGlobalNotifType" json:"EventType,omitempty"` // Status code, interpreted based on the Event Type. // // case EventType == SL_GLOBAL_EVENT_TYPE_ERROR: // case ErrStatus == SL_NOTIF_TERM: // => Another client is attempting to take over the session. // This session will be closed. // case ErrStatus == (some error from SLErrorStatus) // => Client must look into the specific error message returned. // // case EventType == SL_GLOBAL_EVENT_TYPE_HEARTBEAT: // case ErrStatus == SL_SUCCESS // => Client can safely ignore this heartbeat message. // // case EventType == SL_GLOBAL_EVENT_TYPE_VERSION: // case ErrStatus == SL_SUCCESS // => Client version accepted. // case ErrStatus == SL_INIT_STATE_READY // => Client version accepted. // Any previous state was sucessfully recovered. // case ErrStatus == SL_INIT_STATE_CLEAR // => Client version accepted. Any previous state was lost. // Client must replay all previous objects to server. // case ErrStatus == SL_UNSUPPORTED_VER // => Client and Server version mismatch. The client is not // allowed to proceed, and the channel will be closed. // case ErrStatus == (some error from SLErrorStatus) // => Client must either try again, or look into the specific // error message returned. ErrStatus *SLErrorStatus `protobuf:"bytes,2,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // Further info based on EventType. // // Types that are valid to be assigned to Event: // *SLGlobalNotif_InitRspMsg Event isSLGlobalNotif_Event `protobuf_oneof:"Event"` }
Globals query message.
func (*SLGlobalNotif) Descriptor ¶
func (*SLGlobalNotif) Descriptor() ([]byte, []int)
func (*SLGlobalNotif) GetErrStatus ¶
func (m *SLGlobalNotif) GetErrStatus() *SLErrorStatus
func (*SLGlobalNotif) GetEvent ¶
func (m *SLGlobalNotif) GetEvent() isSLGlobalNotif_Event
func (*SLGlobalNotif) GetEventType ¶
func (m *SLGlobalNotif) GetEventType() SLGlobalNotifType
func (*SLGlobalNotif) GetInitRspMsg ¶
func (m *SLGlobalNotif) GetInitRspMsg() *SLInitMsgRsp
func (*SLGlobalNotif) ProtoMessage ¶
func (*SLGlobalNotif) ProtoMessage()
func (*SLGlobalNotif) Reset ¶
func (m *SLGlobalNotif) Reset()
func (*SLGlobalNotif) String ¶
func (m *SLGlobalNotif) String() string
func (*SLGlobalNotif) XXX_OneofFuncs ¶
func (*SLGlobalNotif) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
type SLGlobalNotifType ¶
type SLGlobalNotifType int32
Global Event Notification types.
const ( // Reserved. 0x0 SLGlobalNotifType_SL_GLOBAL_EVENT_TYPE_RESERVED SLGlobalNotifType = 0 // Error. ErrStatus field elaborates on the message. 0x1 SLGlobalNotifType_SL_GLOBAL_EVENT_TYPE_ERROR SLGlobalNotifType = 1 // HeartBeat. 0x2 SLGlobalNotifType_SL_GLOBAL_EVENT_TYPE_HEARTBEAT SLGlobalNotifType = 2 // Version. SLInitMsgRsp field elaborates on the server version. 0x3 SLGlobalNotifType_SL_GLOBAL_EVENT_TYPE_VERSION SLGlobalNotifType = 3 )
func (SLGlobalNotifType) EnumDescriptor ¶
func (SLGlobalNotifType) EnumDescriptor() ([]byte, []int)
func (SLGlobalNotifType) String ¶
func (x SLGlobalNotifType) String() string
type SLGlobalNotif_InitRspMsg ¶
type SLGlobalNotif_InitRspMsg struct {
InitRspMsg *SLInitMsgRsp `protobuf:"bytes,3,opt,name=InitRspMsg,oneof"`
}
type SLGlobalServer ¶
type SLGlobalServer interface { // Initialize the connection, and setup a notification channel. // This MUST be the first call to setup the Service Layer connection. // // The caller MUST maintain the notification channel to be able to // communicate with the server. // If this channel is not properly established and maintained, all other // RPC requests are rejected. // // The caller must send its version information as part of the SLInitMsg // message. The server will reply with SL_GLOBAL_EVENT_TYPE_VERSION // that tells the caller whether he can proceed or not. // Refer to message SLGlobalNotif below for further details. // // After the version handshake, the notification channel is used for // "push" event notifications, such as: // - SLGlobalNotif.EventType = SL_GLOBAL_EVENT_TYPE_HEARTBEAT // heartbeat notification messages are sent to the client on // a periodic basis. // Refer to SLGlobalNotif definition for further info. SLGlobalInitNotif(*SLInitMsg, SLGlobal_SLGlobalInitNotifServer) error // Get platform specific globals SLGlobalsGet(context.Context, *SLGlobalsGetMsg) (*SLGlobalsGetMsgRsp, error) }
type SLGlobal_SLGlobalInitNotifClient ¶
type SLGlobal_SLGlobalInitNotifClient interface { Recv() (*SLGlobalNotif, error) grpc.ClientStream }
type SLGlobal_SLGlobalInitNotifServer ¶
type SLGlobal_SLGlobalInitNotifServer interface { Send(*SLGlobalNotif) error grpc.ServerStream }
type SLGlobalsGetMsg ¶
type SLGlobalsGetMsg struct { }
Globals query message.
func (*SLGlobalsGetMsg) Descriptor ¶
func (*SLGlobalsGetMsg) Descriptor() ([]byte, []int)
func (*SLGlobalsGetMsg) ProtoMessage ¶
func (*SLGlobalsGetMsg) ProtoMessage()
func (*SLGlobalsGetMsg) Reset ¶
func (m *SLGlobalsGetMsg) Reset()
func (*SLGlobalsGetMsg) String ¶
func (m *SLGlobalsGetMsg) String() string
type SLGlobalsGetMsgRsp ¶
type SLGlobalsGetMsgRsp struct { // Corresponding error code ErrStatus *SLErrorStatus `protobuf:"bytes,1,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // Maximum vrf name length. MaxVrfNameLength uint32 `protobuf:"varint,2,opt,name=MaxVrfNameLength" json:"MaxVrfNameLength,omitempty"` // Maximum interface name length. MaxInterfaceNameLength uint32 `protobuf:"varint,3,opt,name=MaxInterfaceNameLength" json:"MaxInterfaceNameLength,omitempty"` // Maximum paths per Route/ILM Entry. MaxPathsPerEntry uint32 `protobuf:"varint,4,opt,name=MaxPathsPerEntry" json:"MaxPathsPerEntry,omitempty"` // Maximum primary paths per Route/ILM Entry. MaxPrimaryPathPerEntry uint32 `protobuf:"varint,5,opt,name=MaxPrimaryPathPerEntry" json:"MaxPrimaryPathPerEntry,omitempty"` // Maximum backup paths per Route/ILM Entry. MaxBackupPathPerEntry uint32 `protobuf:"varint,6,opt,name=MaxBackupPathPerEntry" json:"MaxBackupPathPerEntry,omitempty"` // Maximum MPLS labels per Route/ILM Entry. MaxMplsLabelsPerPath uint32 `protobuf:"varint,7,opt,name=MaxMplsLabelsPerPath" json:"MaxMplsLabelsPerPath,omitempty"` // Minimum Primary path id number. MinPrimaryPathIdNum uint32 `protobuf:"varint,8,opt,name=MinPrimaryPathIdNum" json:"MinPrimaryPathIdNum,omitempty"` // Maximum Primary path id number. MaxPrimaryPathIdNum uint32 `protobuf:"varint,9,opt,name=MaxPrimaryPathIdNum" json:"MaxPrimaryPathIdNum,omitempty"` // Minimum Pure Backup path id number. MinBackupPathIdNum uint32 `protobuf:"varint,10,opt,name=MinBackupPathIdNum" json:"MinBackupPathIdNum,omitempty"` // Maximum Pure Backup path id number. MaxBackupPathIdNum uint32 `protobuf:"varint,11,opt,name=MaxBackupPathIdNum" json:"MaxBackupPathIdNum,omitempty"` // Maximum number of remote addresses MaxRemoteAddressNum uint32 `protobuf:"varint,12,opt,name=MaxRemoteAddressNum" json:"MaxRemoteAddressNum,omitempty"` }
Platform specific globals Response.
func (*SLGlobalsGetMsgRsp) Descriptor ¶
func (*SLGlobalsGetMsgRsp) Descriptor() ([]byte, []int)
func (*SLGlobalsGetMsgRsp) GetErrStatus ¶
func (m *SLGlobalsGetMsgRsp) GetErrStatus() *SLErrorStatus
func (*SLGlobalsGetMsgRsp) GetMaxBackupPathIdNum ¶
func (m *SLGlobalsGetMsgRsp) GetMaxBackupPathIdNum() uint32
func (*SLGlobalsGetMsgRsp) GetMaxBackupPathPerEntry ¶
func (m *SLGlobalsGetMsgRsp) GetMaxBackupPathPerEntry() uint32
func (*SLGlobalsGetMsgRsp) GetMaxInterfaceNameLength ¶
func (m *SLGlobalsGetMsgRsp) GetMaxInterfaceNameLength() uint32
func (*SLGlobalsGetMsgRsp) GetMaxMplsLabelsPerPath ¶
func (m *SLGlobalsGetMsgRsp) GetMaxMplsLabelsPerPath() uint32
func (*SLGlobalsGetMsgRsp) GetMaxPathsPerEntry ¶
func (m *SLGlobalsGetMsgRsp) GetMaxPathsPerEntry() uint32
func (*SLGlobalsGetMsgRsp) GetMaxPrimaryPathIdNum ¶
func (m *SLGlobalsGetMsgRsp) GetMaxPrimaryPathIdNum() uint32
func (*SLGlobalsGetMsgRsp) GetMaxPrimaryPathPerEntry ¶
func (m *SLGlobalsGetMsgRsp) GetMaxPrimaryPathPerEntry() uint32
func (*SLGlobalsGetMsgRsp) GetMaxRemoteAddressNum ¶
func (m *SLGlobalsGetMsgRsp) GetMaxRemoteAddressNum() uint32
func (*SLGlobalsGetMsgRsp) GetMaxVrfNameLength ¶
func (m *SLGlobalsGetMsgRsp) GetMaxVrfNameLength() uint32
func (*SLGlobalsGetMsgRsp) GetMinBackupPathIdNum ¶
func (m *SLGlobalsGetMsgRsp) GetMinBackupPathIdNum() uint32
func (*SLGlobalsGetMsgRsp) GetMinPrimaryPathIdNum ¶
func (m *SLGlobalsGetMsgRsp) GetMinPrimaryPathIdNum() uint32
func (*SLGlobalsGetMsgRsp) ProtoMessage ¶
func (*SLGlobalsGetMsgRsp) ProtoMessage()
func (*SLGlobalsGetMsgRsp) Reset ¶
func (m *SLGlobalsGetMsgRsp) Reset()
func (*SLGlobalsGetMsgRsp) String ¶
func (m *SLGlobalsGetMsgRsp) String() string
type SLInitMsg ¶
type SLInitMsg struct { // Client's Major version of service-layer API (refer to sl_version.proto) MajorVer uint32 `protobuf:"varint,1,opt,name=MajorVer" json:"MajorVer,omitempty"` // Minor Version MinorVer uint32 `protobuf:"varint,2,opt,name=MinorVer" json:"MinorVer,omitempty"` // Sub-Version SubVer uint32 `protobuf:"varint,3,opt,name=SubVer" json:"SubVer,omitempty"` }
Initialization message sent to the server. If the client and server are running compatible version numbers, a connection will be made and the server response will be received with a successful status code.
func (*SLInitMsg) Descriptor ¶
func (*SLInitMsg) GetMajorVer ¶
func (*SLInitMsg) GetMinorVer ¶
func (*SLInitMsg) ProtoMessage ¶
func (*SLInitMsg) ProtoMessage()
type SLInitMsgRsp ¶
type SLInitMsgRsp struct { // Server's version of service-layer API (refer to sl_version.proto) // Major-number revisions are NOT backwards compatible, // unless otherwise specified. The Server may reject a session if there // is a version number mismatch or non-backwards compatibility. MajorVer uint32 `protobuf:"varint,1,opt,name=MajorVer" json:"MajorVer,omitempty"` // Minor Version MinorVer uint32 `protobuf:"varint,2,opt,name=MinorVer" json:"MinorVer,omitempty"` // Sub-Version SubVer uint32 `protobuf:"varint,3,opt,name=SubVer" json:"SubVer,omitempty"` }
Server's response to the SLInitMsg. On Success (ErrStatus), the session with the server is established and the client is allowed to proceed.
func (*SLInitMsgRsp) Descriptor ¶
func (*SLInitMsgRsp) Descriptor() ([]byte, []int)
func (*SLInitMsgRsp) GetMajorVer ¶
func (m *SLInitMsgRsp) GetMajorVer() uint32
func (*SLInitMsgRsp) GetMinorVer ¶
func (m *SLInitMsgRsp) GetMinorVer() uint32
func (*SLInitMsgRsp) GetSubVer ¶
func (m *SLInitMsgRsp) GetSubVer() uint32
func (*SLInitMsgRsp) ProtoMessage ¶
func (*SLInitMsgRsp) ProtoMessage()
func (*SLInitMsgRsp) Reset ¶
func (m *SLInitMsgRsp) Reset()
func (*SLInitMsgRsp) String ¶
func (m *SLInitMsgRsp) String() string
type SLInterface ¶
type SLInterface struct { // One of Interface name or handle // // Types that are valid to be assigned to Interface: // *SLInterface_Name // *SLInterface_Handle Interface isSLInterface_Interface `protobuf_oneof:"Interface"` }
Interface info.
func (*SLInterface) Descriptor ¶
func (*SLInterface) Descriptor() ([]byte, []int)
func (*SLInterface) GetHandle ¶
func (m *SLInterface) GetHandle() uint32
func (*SLInterface) GetInterface ¶
func (m *SLInterface) GetInterface() isSLInterface_Interface
func (*SLInterface) GetName ¶
func (m *SLInterface) GetName() string
func (*SLInterface) ProtoMessage ¶
func (*SLInterface) ProtoMessage()
func (*SLInterface) Reset ¶
func (m *SLInterface) Reset()
func (*SLInterface) String ¶
func (m *SLInterface) String() string
func (*SLInterface) XXX_OneofFuncs ¶
func (*SLInterface) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
type SLInterface_Handle ¶
type SLInterface_Handle struct {
Handle uint32 `protobuf:"varint,2,opt,name=Handle,oneof"`
}
type SLInterface_Name ¶
type SLInterface_Name struct {
Name string `protobuf:"bytes,1,opt,name=Name,oneof"`
}
type SLIpAddress ¶
type SLIpAddress struct { // One of IPv4 or IPv6 address // // Types that are valid to be assigned to Address: // *SLIpAddress_V4Address // *SLIpAddress_V6Address Address isSLIpAddress_Address `protobuf_oneof:"Address"` }
One of IPv4 or IPv6 addresses.
func (*SLIpAddress) Descriptor ¶
func (*SLIpAddress) Descriptor() ([]byte, []int)
func (*SLIpAddress) GetAddress ¶
func (m *SLIpAddress) GetAddress() isSLIpAddress_Address
func (*SLIpAddress) GetV4Address ¶
func (m *SLIpAddress) GetV4Address() uint32
func (*SLIpAddress) GetV6Address ¶
func (m *SLIpAddress) GetV6Address() []byte
func (*SLIpAddress) ProtoMessage ¶
func (*SLIpAddress) ProtoMessage()
func (*SLIpAddress) Reset ¶
func (m *SLIpAddress) Reset()
func (*SLIpAddress) String ¶
func (m *SLIpAddress) String() string
func (*SLIpAddress) XXX_OneofFuncs ¶
func (*SLIpAddress) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
type SLIpAddress_V4Address ¶
type SLIpAddress_V4Address struct {
V4Address uint32 `protobuf:"varint,1,opt,name=V4Address,oneof"`
}
type SLIpAddress_V6Address ¶
type SLIpAddress_V6Address struct {
V6Address []byte `protobuf:"bytes,2,opt,name=V6Address,proto3,oneof"`
}
type SLObjectOp ¶
type SLObjectOp int32
Object Operations.
const ( // Reserved. 0x0 SLObjectOp_SL_OBJOP_RESERVED SLObjectOp = 0 // Add. 0x1 SLObjectOp_SL_OBJOP_ADD SLObjectOp = 1 // Update. 0x2 SLObjectOp_SL_OBJOP_UPDATE SLObjectOp = 2 // Delete. 0x3 SLObjectOp_SL_OBJOP_DELETE SLObjectOp = 3 )
func (SLObjectOp) EnumDescriptor ¶
func (SLObjectOp) EnumDescriptor() ([]byte, []int)
func (SLObjectOp) String ¶
func (x SLObjectOp) String() string
type SLRouteCommon ¶
type SLRouteCommon struct { // Adminstrative distance of the route. [0-255]. // RIB uses this field to break the tie when multiple // sources install the same route. // Lower distance is preferred over higher distance. // The per route object admin distance overrides the default's admin // distance set at VRF registration. see SLVrfReg AdminDistance uint32 `protobuf:"varint,1,opt,name=AdminDistance" json:"AdminDistance,omitempty"` // Local label associated with this route. // This is an optional field that can be used to simulatenously setup an // ILM entry (e.g. head end of an MPLS LSP) for the same route. // This is especially useful when setting up an MPLS LSP (a /32-route // towards the remote LSP peer e.g. 2.2.2.2/32) which is required for MPLS // VPN labeled routes. // // Note: MPLS VPN labeled routes can resolve only on: // - /32-routes with valid LocalLabel and a valid egress MPLS path label LocalLabel uint32 `protobuf:"varint,2,opt,name=LocalLabel" json:"LocalLabel,omitempty"` // Route Tag. // Routes are usually tagged to prevent loops during redistribution between // protocols. Tag uint32 `protobuf:"varint,3,opt,name=Tag" json:"Tag,omitempty"` }
Common IPv4/IPv6 route attributes.
func (*SLRouteCommon) Descriptor ¶
func (*SLRouteCommon) Descriptor() ([]byte, []int)
func (*SLRouteCommon) GetAdminDistance ¶
func (m *SLRouteCommon) GetAdminDistance() uint32
func (*SLRouteCommon) GetLocalLabel ¶
func (m *SLRouteCommon) GetLocalLabel() uint32
func (*SLRouteCommon) GetTag ¶
func (m *SLRouteCommon) GetTag() uint32
func (*SLRouteCommon) ProtoMessage ¶
func (*SLRouteCommon) ProtoMessage()
func (*SLRouteCommon) Reset ¶
func (m *SLRouteCommon) Reset()
func (*SLRouteCommon) String ¶
func (m *SLRouteCommon) String() string
type SLRouteGlobalStatsGetMsg ¶
type SLRouteGlobalStatsGetMsg struct { }
Route Global Stats Get Message
func (*SLRouteGlobalStatsGetMsg) Descriptor ¶
func (*SLRouteGlobalStatsGetMsg) Descriptor() ([]byte, []int)
func (*SLRouteGlobalStatsGetMsg) ProtoMessage ¶
func (*SLRouteGlobalStatsGetMsg) ProtoMessage()
func (*SLRouteGlobalStatsGetMsg) Reset ¶
func (m *SLRouteGlobalStatsGetMsg) Reset()
func (*SLRouteGlobalStatsGetMsg) String ¶
func (m *SLRouteGlobalStatsGetMsg) String() string
type SLRouteGlobalStatsGetMsgRsp ¶
type SLRouteGlobalStatsGetMsgRsp struct { // Corresponding error code ErrStatus *SLErrorStatus `protobuf:"bytes,1,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // Num VRFs registered through the service layer. VrfCount uint32 `protobuf:"varint,2,opt,name=VrfCount" json:"VrfCount,omitempty"` // Num Routes added through the service layer. RouteCount uint32 `protobuf:"varint,3,opt,name=RouteCount" json:"RouteCount,omitempty"` }
Route Global Stats Get Message Response
func (*SLRouteGlobalStatsGetMsgRsp) Descriptor ¶
func (*SLRouteGlobalStatsGetMsgRsp) Descriptor() ([]byte, []int)
func (*SLRouteGlobalStatsGetMsgRsp) GetErrStatus ¶
func (m *SLRouteGlobalStatsGetMsgRsp) GetErrStatus() *SLErrorStatus
func (*SLRouteGlobalStatsGetMsgRsp) GetRouteCount ¶
func (m *SLRouteGlobalStatsGetMsgRsp) GetRouteCount() uint32
func (*SLRouteGlobalStatsGetMsgRsp) GetVrfCount ¶
func (m *SLRouteGlobalStatsGetMsgRsp) GetVrfCount() uint32
func (*SLRouteGlobalStatsGetMsgRsp) ProtoMessage ¶
func (*SLRouteGlobalStatsGetMsgRsp) ProtoMessage()
func (*SLRouteGlobalStatsGetMsgRsp) Reset ¶
func (m *SLRouteGlobalStatsGetMsgRsp) Reset()
func (*SLRouteGlobalStatsGetMsgRsp) String ¶
func (m *SLRouteGlobalStatsGetMsgRsp) String() string
type SLRouteGlobalsGetMsg ¶
type SLRouteGlobalsGetMsg struct { }
Route Globals Get Message
func (*SLRouteGlobalsGetMsg) Descriptor ¶
func (*SLRouteGlobalsGetMsg) Descriptor() ([]byte, []int)
func (*SLRouteGlobalsGetMsg) ProtoMessage ¶
func (*SLRouteGlobalsGetMsg) ProtoMessage()
func (*SLRouteGlobalsGetMsg) Reset ¶
func (m *SLRouteGlobalsGetMsg) Reset()
func (*SLRouteGlobalsGetMsg) String ¶
func (m *SLRouteGlobalsGetMsg) String() string
type SLRouteGlobalsGetMsgRsp ¶
type SLRouteGlobalsGetMsgRsp struct { // Corresponding error code ErrStatus *SLErrorStatus `protobuf:"bytes,1,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // Max VrfReg objects within a single VrfRegMsg message. MaxVrfregPerVrfregmsg uint32 `protobuf:"varint,2,opt,name=MaxVrfregPerVrfregmsg" json:"MaxVrfregPerVrfregmsg,omitempty"` // Max Route objects within a single RouteMsg message. MaxRoutePerRoutemsg uint32 `protobuf:"varint,3,opt,name=MaxRoutePerRoutemsg" json:"MaxRoutePerRoutemsg,omitempty"` }
Route Globals Get Message Response
func (*SLRouteGlobalsGetMsgRsp) Descriptor ¶
func (*SLRouteGlobalsGetMsgRsp) Descriptor() ([]byte, []int)
func (*SLRouteGlobalsGetMsgRsp) GetErrStatus ¶
func (m *SLRouteGlobalsGetMsgRsp) GetErrStatus() *SLErrorStatus
func (*SLRouteGlobalsGetMsgRsp) GetMaxRoutePerRoutemsg ¶
func (m *SLRouteGlobalsGetMsgRsp) GetMaxRoutePerRoutemsg() uint32
func (*SLRouteGlobalsGetMsgRsp) GetMaxVrfregPerVrfregmsg ¶
func (m *SLRouteGlobalsGetMsgRsp) GetMaxVrfregPerVrfregmsg() uint32
func (*SLRouteGlobalsGetMsgRsp) ProtoMessage ¶
func (*SLRouteGlobalsGetMsgRsp) ProtoMessage()
func (*SLRouteGlobalsGetMsgRsp) Reset ¶
func (m *SLRouteGlobalsGetMsgRsp) Reset()
func (*SLRouteGlobalsGetMsgRsp) String ¶
func (m *SLRouteGlobalsGetMsgRsp) String() string
type SLRoutePath ¶
type SLRoutePath struct { // One of IPv4 or IPv6 address NexthopAddress *SLIpAddress `protobuf:"bytes,1,opt,name=NexthopAddress" json:"NexthopAddress,omitempty"` // Outgoing interface name for the path. NexthopInterface *SLInterface `protobuf:"bytes,2,opt,name=NexthopInterface" json:"NexthopInterface,omitempty"` // Load metric for this path. // Used for equal/unequal cost load balancing of traffic distribution. LoadMetric uint32 `protobuf:"varint,3,opt,name=LoadMetric" json:"LoadMetric,omitempty"` // Path VRF name. This field is used ONLY if the path is in a different // VRF than the route (e.g. VPN cases) VrfName string `protobuf:"bytes,4,opt,name=VrfName" json:"VrfName,omitempty"` // Route Metric. // The metric is typically based on information like load, hop count, // MTU, reliability of the path, etc. Metric uint32 `protobuf:"varint,5,opt,name=Metric" json:"Metric,omitempty"` // Path identifier. // Path-id is used to uniquely identify a path when it comes to // protection (Fast Re-Route - FRR). It is not used otherwise. // // In general, for FRR, There are 3 main path attributes: // 1. Primary. The path is the main path to carry traffic. // 2. Protected. A primary path with a configured backup path. // 3. Backup. The path is protecting a primary path. // // NOTE1: a primary path (A) can be simultaneously protected (by B), and // acting as a backup for another path (C). // In this example, the primary path C is protected by A (which happens to // be primary). So the primary path (A) is Primary, Protected, and Backup. // // The following are various path types based on combinations of attributes: // 1. Pure Primary i.e. Not Protected and is not a Backup. // => PathId is optional. ProtectedPathBitmap = 0x0 // 2. Primary and Protected. Path is not a Backup. // => PathId is mandatory. ProtectedPathBitmap = 0x0 // 3. Primary and Not Protected. Path is also a Backup. // => PathId is mandatory. ProtectedPathBitmap = 0xYYYY // 4. Primary and Protected. Path is also a Backup. // => PathId is mandatory. ProtectedPathBitmap = 0xYYYY // 5. Pure Backup. Protection is not allowed for backup paths. // => PathId is mandatory. ProtectedPathBitmap = 0xYYYY // // NOTE2: Pure backup path-id uses a different range than primary path-ids. // The valid range of primary path IDs, and pure backup path IDS are // platform dependent and can be retrieved through the client init message. PathId uint32 `protobuf:"varint,6,opt,name=PathId" json:"PathId,omitempty"` // Path protection bitmap. // The bitmap of paths this Backup path is protecting. // Example: If this path is protecting paths with IDs 4, 5 and 6, then // set bitmap to: // 0x38 ==> 0011 1000 // || |-- path 4 // ||-- path 5 // |-- path 6 // (1 << (pathId_1 - 1)) | (1 << (pathId_2 - 1)) | (1 << (pathId_3 - 1)) ProtectedPathBitmap []uint64 `protobuf:"varint,7,rep,packed,name=ProtectedPathBitmap" json:"ProtectedPathBitmap,omitempty"` // MPLS label stack. // Stack of labels that is pushed when the packet is switched out. // Label size is LSB 20 bits. Forwarding will set EXP, TTL and BOS. // For primary path, typically only 1 label is used. // For backup paths, more than 1 label can be used. If more than one label // is used, remote backup addresses must be specified. // The maximum number of labels pushed for primary and backup are // platform dependent. LabelStack []uint32 `protobuf:"varint,8,rep,packed,name=LabelStack" json:"LabelStack,omitempty"` // MPLS Remote router backup address. // This field is used only for backup MPLS path with more than one label // For N+1 backup labels, N remote backup addresses must be specified. RemoteAddress []*SLIpAddress `protobuf:"bytes,9,rep,name=RemoteAddress" json:"RemoteAddress,omitempty"` }
Route Path attributes.
FRR Note: Failover from primary to backup is based on the trigger used (e.g. link down, BFD, etc.). Revertion is mainly timeout based. The timeout value is platform specific and is not configurable.
func (*SLRoutePath) Descriptor ¶
func (*SLRoutePath) Descriptor() ([]byte, []int)
func (*SLRoutePath) GetLabelStack ¶
func (m *SLRoutePath) GetLabelStack() []uint32
func (*SLRoutePath) GetLoadMetric ¶
func (m *SLRoutePath) GetLoadMetric() uint32
func (*SLRoutePath) GetMetric ¶
func (m *SLRoutePath) GetMetric() uint32
func (*SLRoutePath) GetNexthopAddress ¶
func (m *SLRoutePath) GetNexthopAddress() *SLIpAddress
func (*SLRoutePath) GetNexthopInterface ¶
func (m *SLRoutePath) GetNexthopInterface() *SLInterface
func (*SLRoutePath) GetPathId ¶
func (m *SLRoutePath) GetPathId() uint32
func (*SLRoutePath) GetProtectedPathBitmap ¶
func (m *SLRoutePath) GetProtectedPathBitmap() []uint64
func (*SLRoutePath) GetRemoteAddress ¶
func (m *SLRoutePath) GetRemoteAddress() []*SLIpAddress
func (*SLRoutePath) GetVrfName ¶
func (m *SLRoutePath) GetVrfName() string
func (*SLRoutePath) ProtoMessage ¶
func (*SLRoutePath) ProtoMessage()
func (*SLRoutePath) Reset ¶
func (m *SLRoutePath) Reset()
func (*SLRoutePath) String ¶
func (m *SLRoutePath) String() string
type SLRoutev6 ¶
type SLRoutev6 struct { // IPv6 Prefix // 0:: - ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff Prefix []byte `protobuf:"bytes,1,opt,name=Prefix,proto3" json:"Prefix,omitempty"` // IPv6 prefix length [0-128] PrefixLen uint32 `protobuf:"varint,2,opt,name=PrefixLen" json:"PrefixLen,omitempty"` // Common route attributes RouteCommon *SLRouteCommon `protobuf:"bytes,3,opt,name=RouteCommon" json:"RouteCommon,omitempty"` // List of route paths for a particular route. // Specifying more than one path is allowed for ECMP/UCMP cases PathList []*SLRoutePath `protobuf:"bytes,4,rep,name=PathList" json:"PathList,omitempty"` }
IPv6 route
func (*SLRoutev6) Descriptor ¶
func (*SLRoutev6) GetPathList ¶
func (m *SLRoutev6) GetPathList() []*SLRoutePath
func (*SLRoutev6) GetPrefixLen ¶
func (*SLRoutev6) GetRouteCommon ¶
func (m *SLRoutev6) GetRouteCommon() *SLRouteCommon
func (*SLRoutev6) ProtoMessage ¶
func (*SLRoutev6) ProtoMessage()
type SLRoutev6GetMsg ¶
type SLRoutev6GetMsg struct { // Correlator. This can be used to correlate replies with requests. // The Server simply reflects this field back in the reply. Correlator uint64 `protobuf:"varint,1,opt,name=Correlator" json:"Correlator,omitempty"` // VRF name. // If the Key is not specified, then request up to the first // 'EntriesCount' entries. VrfName string `protobuf:"bytes,2,opt,name=VrfName" json:"VrfName,omitempty"` // IPv6 Prefix Prefix []byte `protobuf:"bytes,3,opt,name=Prefix,proto3" json:"Prefix,omitempty"` // IPv6 prefix length, [0-32] PrefixLen uint32 `protobuf:"varint,4,opt,name=PrefixLen" json:"PrefixLen,omitempty"` // Number of entries requested EntriesCount uint32 `protobuf:"varint,5,opt,name=EntriesCount" json:"EntriesCount,omitempty"` // if GetNext is FALSE: // request up to 'EntriesCount' entries starting from the key // If GetNext is TRUE, or if the key exact match is not found: // request up to 'EntriesCount' entries starting from the key's next GetNext bool `protobuf:"varint,6,opt,name=GetNext" json:"GetNext,omitempty"` }
Used to retrieve route attributes
func (*SLRoutev6GetMsg) Descriptor ¶
func (*SLRoutev6GetMsg) Descriptor() ([]byte, []int)
func (*SLRoutev6GetMsg) GetCorrelator ¶
func (m *SLRoutev6GetMsg) GetCorrelator() uint64
func (*SLRoutev6GetMsg) GetEntriesCount ¶
func (m *SLRoutev6GetMsg) GetEntriesCount() uint32
func (*SLRoutev6GetMsg) GetGetNext ¶
func (m *SLRoutev6GetMsg) GetGetNext() bool
func (*SLRoutev6GetMsg) GetPrefix ¶
func (m *SLRoutev6GetMsg) GetPrefix() []byte
func (*SLRoutev6GetMsg) GetPrefixLen ¶
func (m *SLRoutev6GetMsg) GetPrefixLen() uint32
func (*SLRoutev6GetMsg) GetVrfName ¶
func (m *SLRoutev6GetMsg) GetVrfName() string
func (*SLRoutev6GetMsg) ProtoMessage ¶
func (*SLRoutev6GetMsg) ProtoMessage()
func (*SLRoutev6GetMsg) Reset ¶
func (m *SLRoutev6GetMsg) Reset()
func (*SLRoutev6GetMsg) String ¶
func (m *SLRoutev6GetMsg) String() string
type SLRoutev6GetMsgRsp ¶
type SLRoutev6GetMsgRsp struct { // Correlator. This can be used to correlate replies with requests. // The Server simply reflects this field back in the reply. Correlator uint64 `protobuf:"varint,1,opt,name=Correlator" json:"Correlator,omitempty"` // End Of File. // When set to True, it indicates that the server has returned M, where // M < N, of the original N requested Entries. Eof bool `protobuf:"varint,2,opt,name=Eof" json:"Eof,omitempty"` // VRF name. VrfName string `protobuf:"bytes,3,opt,name=VrfName" json:"VrfName,omitempty"` // Status of the Get operation ErrStatus *SLErrorStatus `protobuf:"bytes,4,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // Returned entries as requested in the Get operation. // if ErrStatus is SL_SUCCESS, Entries contains the info requested Entries []*SLRoutev6 `protobuf:"bytes,5,rep,name=Entries" json:"Entries,omitempty"` }
Gt Route message response
func (*SLRoutev6GetMsgRsp) Descriptor ¶
func (*SLRoutev6GetMsgRsp) Descriptor() ([]byte, []int)
func (*SLRoutev6GetMsgRsp) GetCorrelator ¶
func (m *SLRoutev6GetMsgRsp) GetCorrelator() uint64
func (*SLRoutev6GetMsgRsp) GetEntries ¶
func (m *SLRoutev6GetMsgRsp) GetEntries() []*SLRoutev6
func (*SLRoutev6GetMsgRsp) GetEof ¶
func (m *SLRoutev6GetMsgRsp) GetEof() bool
func (*SLRoutev6GetMsgRsp) GetErrStatus ¶
func (m *SLRoutev6GetMsgRsp) GetErrStatus() *SLErrorStatus
func (*SLRoutev6GetMsgRsp) GetVrfName ¶
func (m *SLRoutev6GetMsgRsp) GetVrfName() string
func (*SLRoutev6GetMsgRsp) ProtoMessage ¶
func (*SLRoutev6GetMsgRsp) ProtoMessage()
func (*SLRoutev6GetMsgRsp) Reset ¶
func (m *SLRoutev6GetMsgRsp) Reset()
func (*SLRoutev6GetMsgRsp) String ¶
func (m *SLRoutev6GetMsgRsp) String() string
type SLRoutev6Msg ¶
type SLRoutev6Msg struct { // Route Object Operations Oper SLObjectOp `protobuf:"varint,1,opt,name=Oper,enum=service_layer.SLObjectOp" json:"Oper,omitempty"` // Correlator. This can be used to correlate replies with requests. // The Server simply reflects this field back in the reply. Correlator uint64 `protobuf:"varint,2,opt,name=Correlator" json:"Correlator,omitempty"` // VRF name. VrfName string `protobuf:"bytes,3,opt,name=VrfName" json:"VrfName,omitempty"` // List of routes for the VRF specified above Routes []*SLRoutev6 `protobuf:"bytes,4,rep,name=Routes" json:"Routes,omitempty"` }
List of routes for bulk download
func (*SLRoutev6Msg) Descriptor ¶
func (*SLRoutev6Msg) Descriptor() ([]byte, []int)
func (*SLRoutev6Msg) GetCorrelator ¶
func (m *SLRoutev6Msg) GetCorrelator() uint64
func (*SLRoutev6Msg) GetOper ¶
func (m *SLRoutev6Msg) GetOper() SLObjectOp
func (*SLRoutev6Msg) GetRoutes ¶
func (m *SLRoutev6Msg) GetRoutes() []*SLRoutev6
func (*SLRoutev6Msg) GetVrfName ¶
func (m *SLRoutev6Msg) GetVrfName() string
func (*SLRoutev6Msg) ProtoMessage ¶
func (*SLRoutev6Msg) ProtoMessage()
func (*SLRoutev6Msg) Reset ¶
func (m *SLRoutev6Msg) Reset()
func (*SLRoutev6Msg) String ¶
func (m *SLRoutev6Msg) String() string
type SLRoutev6MsgRsp ¶
type SLRoutev6MsgRsp struct { // Correlator. This can be used to correlate replies with requests. // The Server simply reflects this field back in the reply. Correlator uint64 `protobuf:"varint,1,opt,name=Correlator" json:"Correlator,omitempty"` // VRF name (matches the VRF name of the original operation) VrfName string `protobuf:"bytes,2,opt,name=VrfName" json:"VrfName,omitempty"` // Summary result of the bulk operation (refer to enum SLErrorStatus) // In general, the StatusSummary implies one of 3 things: // 1. SL_SUCCESS: signifies that the entire bulk operation was successful. // In this case, the Results list is empty. // 2. SL_SOME_ERR: signifies that the operation failed for one or more // entries. In this case, Results holds the result for // each individual entry in the bulk. // 3. SL_RPC_XXX: signifies that the entire bulk operation failed. // In this case, the Results list is empty. StatusSummary *SLErrorStatus `protobuf:"bytes,3,opt,name=StatusSummary" json:"StatusSummary,omitempty"` // In case of errors, this field indicates which entry in the bulk was // erroneous. Results []*SLRoutev6Res `protobuf:"bytes,4,rep,name=Results" json:"Results,omitempty"` }
IPv6 bulk route result status
func (*SLRoutev6MsgRsp) Descriptor ¶
func (*SLRoutev6MsgRsp) Descriptor() ([]byte, []int)
func (*SLRoutev6MsgRsp) GetCorrelator ¶
func (m *SLRoutev6MsgRsp) GetCorrelator() uint64
func (*SLRoutev6MsgRsp) GetResults ¶
func (m *SLRoutev6MsgRsp) GetResults() []*SLRoutev6Res
func (*SLRoutev6MsgRsp) GetStatusSummary ¶
func (m *SLRoutev6MsgRsp) GetStatusSummary() *SLErrorStatus
func (*SLRoutev6MsgRsp) GetVrfName ¶
func (m *SLRoutev6MsgRsp) GetVrfName() string
func (*SLRoutev6MsgRsp) ProtoMessage ¶
func (*SLRoutev6MsgRsp) ProtoMessage()
func (*SLRoutev6MsgRsp) Reset ¶
func (m *SLRoutev6MsgRsp) Reset()
func (*SLRoutev6MsgRsp) String ¶
func (m *SLRoutev6MsgRsp) String() string
type SLRoutev6OperClient ¶
type SLRoutev6OperClient interface { // Used to retrieve Global Route information SLRoutev6GlobalsGet(ctx context.Context, in *SLRouteGlobalsGetMsg, opts ...grpc.CallOption) (*SLRouteGlobalsGetMsgRsp, error) // Used to retrieve Global Route Stats SLRoutev6GlobalStatsGet(ctx context.Context, in *SLRouteGlobalStatsGetMsg, opts ...grpc.CallOption) (*SLRouteGlobalStatsGetMsgRsp, error) // SLVrfRegMsg.Oper = SL_REGOP_REGISTER: // VRF registration: Sends a list of VRF registration messages // and expects a list of registration responses. // A client Must Register a VRF BEFORE routes can be added/modified in // the associated VRF. // // SLVrfRegMsg.Oper = SL_REGOP_UNREGISTER: // VRF Un-registeration: Sends a list of VRF un-registration messages // and expects a list of un-registration responses. // This can be used to convey that the client is no longer interested // in this VRF. All previously installed routes would be lost. // // SLVrfRegMsg.Oper = SL_REGOP_EOF: // VRF End Of File message. // After Registration, the client is expected to send an EOF // message to convey the end of replay of the client's known objects. // This is especially useful under certain restart scenarios when the // client and the server are trying to synchronize their Routes. SLRoutev6VrfRegOp(ctx context.Context, in *SLVrfRegMsg, opts ...grpc.CallOption) (*SLVrfRegMsgRsp, error) // VRF get. Used to retrieve VRF attributes from the server. SLRoutev6VrfRegGet(ctx context.Context, in *SLVrfRegGetMsg, opts ...grpc.CallOption) (*SLVrfRegGetMsgRsp, error) // Used to retrieve VRF Stats from the server. SLRoutev6VrfGetStats(ctx context.Context, in *SLVrfRegGetMsg, opts ...grpc.CallOption) (*SLVRFGetStatsMsgRsp, error) // SLRoutev6Msg.Oper = SL_OBJOP_ADD: // Route add. Fails if the route already exists. // // SLRoutev6Msg.Oper = SL_OBJOP_UPDATE: // Route update. Creates or updates the route. // // SLRoutev6Msg.Oper = SL_OBJOP_DELETE: // Route delete. The route path is not necessary to delete the route. SLRoutev6Op(ctx context.Context, in *SLRoutev6Msg, opts ...grpc.CallOption) (*SLRoutev6MsgRsp, error) // Retrieves route attributes. SLRoutev6Get(ctx context.Context, in *SLRoutev6GetMsg, opts ...grpc.CallOption) (*SLRoutev6GetMsgRsp, error) // SLRoutev6Msg.Oper = SL_OBJOP_ADD: // Route add. Fails if the route already exists. // // SLRoutev6Msg.Oper = SL_OBJOP_UPDATE: // Route update. Creates or updates the route. // // SLRoutev6Msg.Oper = SL_OBJOP_DELETE: // Route delete. The route path is not necessary to delete the route. SLRoutev6OpStream(ctx context.Context, opts ...grpc.CallOption) (SLRoutev6Oper_SLRoutev6OpStreamClient, error) // Retrieves route attributes. SLRoutev6GetStream(ctx context.Context, opts ...grpc.CallOption) (SLRoutev6Oper_SLRoutev6GetStreamClient, error) }
func NewSLRoutev6OperClient ¶
func NewSLRoutev6OperClient(cc *grpc.ClientConn) SLRoutev6OperClient
type SLRoutev6OperServer ¶
type SLRoutev6OperServer interface { // Used to retrieve Global Route information SLRoutev6GlobalsGet(context.Context, *SLRouteGlobalsGetMsg) (*SLRouteGlobalsGetMsgRsp, error) // Used to retrieve Global Route Stats SLRoutev6GlobalStatsGet(context.Context, *SLRouteGlobalStatsGetMsg) (*SLRouteGlobalStatsGetMsgRsp, error) // SLVrfRegMsg.Oper = SL_REGOP_REGISTER: // VRF registration: Sends a list of VRF registration messages // and expects a list of registration responses. // A client Must Register a VRF BEFORE routes can be added/modified in // the associated VRF. // // SLVrfRegMsg.Oper = SL_REGOP_UNREGISTER: // VRF Un-registeration: Sends a list of VRF un-registration messages // and expects a list of un-registration responses. // This can be used to convey that the client is no longer interested // in this VRF. All previously installed routes would be lost. // // SLVrfRegMsg.Oper = SL_REGOP_EOF: // VRF End Of File message. // After Registration, the client is expected to send an EOF // message to convey the end of replay of the client's known objects. // This is especially useful under certain restart scenarios when the // client and the server are trying to synchronize their Routes. SLRoutev6VrfRegOp(context.Context, *SLVrfRegMsg) (*SLVrfRegMsgRsp, error) // VRF get. Used to retrieve VRF attributes from the server. SLRoutev6VrfRegGet(context.Context, *SLVrfRegGetMsg) (*SLVrfRegGetMsgRsp, error) // Used to retrieve VRF Stats from the server. SLRoutev6VrfGetStats(context.Context, *SLVrfRegGetMsg) (*SLVRFGetStatsMsgRsp, error) // SLRoutev6Msg.Oper = SL_OBJOP_ADD: // Route add. Fails if the route already exists. // // SLRoutev6Msg.Oper = SL_OBJOP_UPDATE: // Route update. Creates or updates the route. // // SLRoutev6Msg.Oper = SL_OBJOP_DELETE: // Route delete. The route path is not necessary to delete the route. SLRoutev6Op(context.Context, *SLRoutev6Msg) (*SLRoutev6MsgRsp, error) // Retrieves route attributes. SLRoutev6Get(context.Context, *SLRoutev6GetMsg) (*SLRoutev6GetMsgRsp, error) // SLRoutev6Msg.Oper = SL_OBJOP_ADD: // Route add. Fails if the route already exists. // // SLRoutev6Msg.Oper = SL_OBJOP_UPDATE: // Route update. Creates or updates the route. // // SLRoutev6Msg.Oper = SL_OBJOP_DELETE: // Route delete. The route path is not necessary to delete the route. SLRoutev6OpStream(SLRoutev6Oper_SLRoutev6OpStreamServer) error // Retrieves route attributes. SLRoutev6GetStream(SLRoutev6Oper_SLRoutev6GetStreamServer) error }
type SLRoutev6Oper_SLRoutev6GetStreamClient ¶
type SLRoutev6Oper_SLRoutev6GetStreamClient interface { Send(*SLRoutev6GetMsg) error Recv() (*SLRoutev6GetMsgRsp, error) grpc.ClientStream }
type SLRoutev6Oper_SLRoutev6GetStreamServer ¶
type SLRoutev6Oper_SLRoutev6GetStreamServer interface { Send(*SLRoutev6GetMsgRsp) error Recv() (*SLRoutev6GetMsg, error) grpc.ServerStream }
type SLRoutev6Oper_SLRoutev6OpStreamClient ¶
type SLRoutev6Oper_SLRoutev6OpStreamClient interface { Send(*SLRoutev6Msg) error Recv() (*SLRoutev6MsgRsp, error) grpc.ClientStream }
type SLRoutev6Oper_SLRoutev6OpStreamServer ¶
type SLRoutev6Oper_SLRoutev6OpStreamServer interface { Send(*SLRoutev6MsgRsp) error Recv() (*SLRoutev6Msg, error) grpc.ServerStream }
type SLRoutev6Res ¶
type SLRoutev6Res struct { // Corresponding error code ErrStatus *SLErrorStatus `protobuf:"bytes,1,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // IPv6 Prefix Prefix []byte `protobuf:"bytes,2,opt,name=Prefix,proto3" json:"Prefix,omitempty"` // IPv6 prefix length, [0-32] PrefixLen uint32 `protobuf:"varint,3,opt,name=PrefixLen" json:"PrefixLen,omitempty"` }
IPv6 route result, uniquely identified by the Prefix/PrefixLen pair
func (*SLRoutev6Res) Descriptor ¶
func (*SLRoutev6Res) Descriptor() ([]byte, []int)
func (*SLRoutev6Res) GetErrStatus ¶
func (m *SLRoutev6Res) GetErrStatus() *SLErrorStatus
func (*SLRoutev6Res) GetPrefix ¶
func (m *SLRoutev6Res) GetPrefix() []byte
func (*SLRoutev6Res) GetPrefixLen ¶
func (m *SLRoutev6Res) GetPrefixLen() uint32
func (*SLRoutev6Res) ProtoMessage ¶
func (*SLRoutev6Res) ProtoMessage()
func (*SLRoutev6Res) Reset ¶
func (m *SLRoutev6Res) Reset()
func (*SLRoutev6Res) String ¶
func (m *SLRoutev6Res) String() string
type SLVRFGetStatsMsgRes ¶
type SLVRFGetStatsMsgRes struct { // VRF name as key VrfName string `protobuf:"bytes,1,opt,name=VrfName" json:"VrfName,omitempty"` // Num VRF Routes added through the service layer. RouteCount uint32 `protobuf:"varint,2,opt,name=RouteCount" json:"RouteCount,omitempty"` }
VRF Get Stats Message Response
func (*SLVRFGetStatsMsgRes) Descriptor ¶
func (*SLVRFGetStatsMsgRes) Descriptor() ([]byte, []int)
func (*SLVRFGetStatsMsgRes) GetRouteCount ¶
func (m *SLVRFGetStatsMsgRes) GetRouteCount() uint32
func (*SLVRFGetStatsMsgRes) GetVrfName ¶
func (m *SLVRFGetStatsMsgRes) GetVrfName() string
func (*SLVRFGetStatsMsgRes) ProtoMessage ¶
func (*SLVRFGetStatsMsgRes) ProtoMessage()
func (*SLVRFGetStatsMsgRes) Reset ¶
func (m *SLVRFGetStatsMsgRes) Reset()
func (*SLVRFGetStatsMsgRes) String ¶
func (m *SLVRFGetStatsMsgRes) String() string
type SLVRFGetStatsMsgRsp ¶
type SLVRFGetStatsMsgRsp struct { // End Of File. // When set to True, it indicates that the server has returned M, where // M < N, of the original N requested Entries. Eof bool `protobuf:"varint,1,opt,name=Eof" json:"Eof,omitempty"` // Status of the Get Stats operation ErrStatus *SLErrorStatus `protobuf:"bytes,2,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // Returned entries as requested in the Get Stats operation. // if ErrStatus is SL_SUCCESS, Entries contains the info requested Entries []*SLVRFGetStatsMsgRes `protobuf:"bytes,3,rep,name=Entries" json:"Entries,omitempty"` }
VRF Get Stats Message Response
func (*SLVRFGetStatsMsgRsp) Descriptor ¶
func (*SLVRFGetStatsMsgRsp) Descriptor() ([]byte, []int)
func (*SLVRFGetStatsMsgRsp) GetEntries ¶
func (m *SLVRFGetStatsMsgRsp) GetEntries() []*SLVRFGetStatsMsgRes
func (*SLVRFGetStatsMsgRsp) GetEof ¶
func (m *SLVRFGetStatsMsgRsp) GetEof() bool
func (*SLVRFGetStatsMsgRsp) GetErrStatus ¶
func (m *SLVRFGetStatsMsgRsp) GetErrStatus() *SLErrorStatus
func (*SLVRFGetStatsMsgRsp) ProtoMessage ¶
func (*SLVRFGetStatsMsgRsp) ProtoMessage()
func (*SLVRFGetStatsMsgRsp) Reset ¶
func (m *SLVRFGetStatsMsgRsp) Reset()
func (*SLVRFGetStatsMsgRsp) String ¶
func (m *SLVRFGetStatsMsgRsp) String() string
type SLVersion ¶
type SLVersion int32
Service Layer API version. This is used in the Global init message exchange to handshake client/server Version numbers.
func (SLVersion) EnumDescriptor ¶
type SLVrfReg ¶
type SLVrfReg struct { // VRF Name. VrfName string `protobuf:"bytes,1,opt,name=VrfName" json:"VrfName,omitempty"` // Default Admin distance for routes programmed by this application // Range [0-255] // This default value is used if route objects' AdminDistance is 0. // Refer to SLRouteCommon AdminDistance uint32 `protobuf:"varint,2,opt,name=AdminDistance" json:"AdminDistance,omitempty"` // In case the Service Layer -> RIB connection is lost, this specifies the // timeout period after which RIB will automatically purge the installed // routes, unless the service layer: // 1. Re-registers (VRF) // 2. Replay all routes // 3. And send EOF, before the purge timeout VrfPurgeIntervalSeconds uint32 `protobuf:"varint,3,opt,name=VrfPurgeIntervalSeconds" json:"VrfPurgeIntervalSeconds,omitempty"` }
VRF Registration message
func (*SLVrfReg) Descriptor ¶
func (*SLVrfReg) GetAdminDistance ¶
func (*SLVrfReg) GetVrfName ¶
func (*SLVrfReg) GetVrfPurgeIntervalSeconds ¶
func (*SLVrfReg) ProtoMessage ¶
func (*SLVrfReg) ProtoMessage()
type SLVrfRegGetMsg ¶
type SLVrfRegGetMsg struct { // VRF name (key). // If the Key is not specified, then request up to the first // 'EntriesCount' entries. VrfName string `protobuf:"bytes,1,opt,name=VrfName" json:"VrfName,omitempty"` // Number of entries requested EntriesCount uint32 `protobuf:"varint,2,opt,name=EntriesCount" json:"EntriesCount,omitempty"` // if GetNext is FALSE: // request up to 'EntriesCount' entries starting from the key // If GetNext is TRUE, or if the key exact match is not found: // request up to 'EntriesCount' entries starting from the key's next GetNext bool `protobuf:"varint,3,opt,name=GetNext" json:"GetNext,omitempty"` }
VRF Get Message
func (*SLVrfRegGetMsg) Descriptor ¶
func (*SLVrfRegGetMsg) Descriptor() ([]byte, []int)
func (*SLVrfRegGetMsg) GetEntriesCount ¶
func (m *SLVrfRegGetMsg) GetEntriesCount() uint32
func (*SLVrfRegGetMsg) GetGetNext ¶
func (m *SLVrfRegGetMsg) GetGetNext() bool
func (*SLVrfRegGetMsg) GetVrfName ¶
func (m *SLVrfRegGetMsg) GetVrfName() string
func (*SLVrfRegGetMsg) ProtoMessage ¶
func (*SLVrfRegGetMsg) ProtoMessage()
func (*SLVrfRegGetMsg) Reset ¶
func (m *SLVrfRegGetMsg) Reset()
func (*SLVrfRegGetMsg) String ¶
func (m *SLVrfRegGetMsg) String() string
type SLVrfRegGetMsgRsp ¶
type SLVrfRegGetMsgRsp struct { // End Of File. // When set to True, it indicates that the server has returned M, where // M < N, of the original N requested Entries. Eof bool `protobuf:"varint,1,opt,name=Eof" json:"Eof,omitempty"` // Status of the Get operation ErrStatus *SLErrorStatus `protobuf:"bytes,2,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // Returned entries as requested in the Get operation. // if ErrStatus is SL_SUCCESS, Entries contains the info requested Entries []*SLVrfReg `protobuf:"bytes,3,rep,name=Entries" json:"Entries,omitempty"` }
VRF Get Message Response
func (*SLVrfRegGetMsgRsp) Descriptor ¶
func (*SLVrfRegGetMsgRsp) Descriptor() ([]byte, []int)
func (*SLVrfRegGetMsgRsp) GetEntries ¶
func (m *SLVrfRegGetMsgRsp) GetEntries() []*SLVrfReg
func (*SLVrfRegGetMsgRsp) GetEof ¶
func (m *SLVrfRegGetMsgRsp) GetEof() bool
func (*SLVrfRegGetMsgRsp) GetErrStatus ¶
func (m *SLVrfRegGetMsgRsp) GetErrStatus() *SLErrorStatus
func (*SLVrfRegGetMsgRsp) ProtoMessage ¶
func (*SLVrfRegGetMsgRsp) ProtoMessage()
func (*SLVrfRegGetMsgRsp) Reset ¶
func (m *SLVrfRegGetMsgRsp) Reset()
func (*SLVrfRegGetMsgRsp) String ¶
func (m *SLVrfRegGetMsgRsp) String() string
type SLVrfRegMsg ¶
type SLVrfRegMsg struct { // Registration Operation Oper SLRegOp `protobuf:"varint,1,opt,name=Oper,enum=service_layer.SLRegOp" json:"Oper,omitempty"` // List of VRF registrations VrfRegMsgs []*SLVrfReg `protobuf:"bytes,2,rep,name=VrfRegMsgs" json:"VrfRegMsgs,omitempty"` }
VRF Registration messages.
func (*SLVrfRegMsg) Descriptor ¶
func (*SLVrfRegMsg) Descriptor() ([]byte, []int)
func (*SLVrfRegMsg) GetOper ¶
func (m *SLVrfRegMsg) GetOper() SLRegOp
func (*SLVrfRegMsg) GetVrfRegMsgs ¶
func (m *SLVrfRegMsg) GetVrfRegMsgs() []*SLVrfReg
func (*SLVrfRegMsg) ProtoMessage ¶
func (*SLVrfRegMsg) ProtoMessage()
func (*SLVrfRegMsg) Reset ¶
func (m *SLVrfRegMsg) Reset()
func (*SLVrfRegMsg) String ¶
func (m *SLVrfRegMsg) String() string
type SLVrfRegMsgRes ¶
type SLVrfRegMsgRes struct { // Corresponding error code ErrStatus *SLErrorStatus `protobuf:"bytes,1,opt,name=ErrStatus" json:"ErrStatus,omitempty"` // VRF Name VrfName string `protobuf:"bytes,2,opt,name=VrfName" json:"VrfName,omitempty"` }
VRF Registration message Result
func (*SLVrfRegMsgRes) Descriptor ¶
func (*SLVrfRegMsgRes) Descriptor() ([]byte, []int)
func (*SLVrfRegMsgRes) GetErrStatus ¶
func (m *SLVrfRegMsgRes) GetErrStatus() *SLErrorStatus
func (*SLVrfRegMsgRes) GetVrfName ¶
func (m *SLVrfRegMsgRes) GetVrfName() string
func (*SLVrfRegMsgRes) ProtoMessage ¶
func (*SLVrfRegMsgRes) ProtoMessage()
func (*SLVrfRegMsgRes) Reset ¶
func (m *SLVrfRegMsgRes) Reset()
func (*SLVrfRegMsgRes) String ¶
func (m *SLVrfRegMsgRes) String() string
type SLVrfRegMsgRsp ¶
type SLVrfRegMsgRsp struct { // Summary result of the bulk operation (refer to enum SLErrorStatus) // In general, the StatusSummary implies one of 3 things: // 1. SL_SUCCESS: signifies that the entire bulk operation was successful. // In this case, the Results list is empty. // 2. SL_SOME_ERR: signifies that the operation failed for one or more // entries. In this case, Results holds the result for // each individual entry in the bulk. // 3. SL_RPC_XXX: signifies that the entire bulk operation failed. // In this case, the Results list is empty. StatusSummary *SLErrorStatus `protobuf:"bytes,1,opt,name=StatusSummary" json:"StatusSummary,omitempty"` // In case of errors, this field indicates which entry in the bulk was // erroneous. Results []*SLVrfRegMsgRes `protobuf:"bytes,2,rep,name=Results" json:"Results,omitempty"` }
VRF Registration message Response.
func (*SLVrfRegMsgRsp) Descriptor ¶
func (*SLVrfRegMsgRsp) Descriptor() ([]byte, []int)
func (*SLVrfRegMsgRsp) GetResults ¶
func (m *SLVrfRegMsgRsp) GetResults() []*SLVrfRegMsgRes
func (*SLVrfRegMsgRsp) GetStatusSummary ¶
func (m *SLVrfRegMsgRsp) GetStatusSummary() *SLErrorStatus
func (*SLVrfRegMsgRsp) ProtoMessage ¶
func (*SLVrfRegMsgRsp) ProtoMessage()
func (*SLVrfRegMsgRsp) Reset ¶
func (m *SLVrfRegMsgRsp) Reset()
func (*SLVrfRegMsgRsp) String ¶
func (m *SLVrfRegMsgRsp) String() string