go.ligato.io/vpp-agent/v3@v3.5.0/proto/ligato/vpp/srv6/srv6.pb.go (about) 1 // Code generated by protoc-gen-go. DO NOT EDIT. 2 // versions: 3 // protoc-gen-go v1.27.1 4 // protoc v3.17.3 5 // source: ligato/vpp/srv6/srv6.proto 6 7 package vpp_srv6 8 9 import ( 10 _ "go.ligato.io/vpp-agent/v3/proto/ligato" 11 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 12 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 13 reflect "reflect" 14 sync "sync" 15 ) 16 17 const ( 18 // Verify that this generated code is sufficiently up-to-date. 19 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 20 // Verify that runtime/protoimpl is sufficiently up-to-date. 21 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 22 ) 23 24 type LocalSID struct { 25 state protoimpl.MessageState 26 sizeCache protoimpl.SizeCache 27 unknownFields protoimpl.UnknownFields 28 29 Sid string `protobuf:"bytes,1,opt,name=sid,proto3" json:"sid,omitempty"` // segment id (IPv6 Address) 30 InstallationVrfId uint32 `protobuf:"varint,2,opt,name=installation_vrf_id,json=installationVrfId,proto3" json:"installation_vrf_id,omitempty"` 31 // Configuration for end functions (all end functions are mutually exclusive) 32 // Types that are assignable to EndFunction: 33 // *LocalSID_BaseEndFunction 34 // *LocalSID_EndFunctionX 35 // *LocalSID_EndFunctionT 36 // *LocalSID_EndFunctionDx2 37 // *LocalSID_EndFunctionDx4 38 // *LocalSID_EndFunctionDx6 39 // *LocalSID_EndFunctionDt4 40 // *LocalSID_EndFunctionDt6 41 // *LocalSID_EndFunctionAd 42 EndFunction isLocalSID_EndFunction `protobuf_oneof:"end_function"` 43 } 44 45 func (x *LocalSID) Reset() { 46 *x = LocalSID{} 47 if protoimpl.UnsafeEnabled { 48 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[0] 49 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 50 ms.StoreMessageInfo(mi) 51 } 52 } 53 54 func (x *LocalSID) String() string { 55 return protoimpl.X.MessageStringOf(x) 56 } 57 58 func (*LocalSID) ProtoMessage() {} 59 60 func (x *LocalSID) ProtoReflect() protoreflect.Message { 61 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[0] 62 if protoimpl.UnsafeEnabled && x != nil { 63 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 64 if ms.LoadMessageInfo() == nil { 65 ms.StoreMessageInfo(mi) 66 } 67 return ms 68 } 69 return mi.MessageOf(x) 70 } 71 72 // Deprecated: Use LocalSID.ProtoReflect.Descriptor instead. 73 func (*LocalSID) Descriptor() ([]byte, []int) { 74 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0} 75 } 76 77 func (x *LocalSID) GetSid() string { 78 if x != nil { 79 return x.Sid 80 } 81 return "" 82 } 83 84 func (x *LocalSID) GetInstallationVrfId() uint32 { 85 if x != nil { 86 return x.InstallationVrfId 87 } 88 return 0 89 } 90 91 func (m *LocalSID) GetEndFunction() isLocalSID_EndFunction { 92 if m != nil { 93 return m.EndFunction 94 } 95 return nil 96 } 97 98 func (x *LocalSID) GetBaseEndFunction() *LocalSID_End { 99 if x, ok := x.GetEndFunction().(*LocalSID_BaseEndFunction); ok { 100 return x.BaseEndFunction 101 } 102 return nil 103 } 104 105 func (x *LocalSID) GetEndFunctionX() *LocalSID_EndX { 106 if x, ok := x.GetEndFunction().(*LocalSID_EndFunctionX); ok { 107 return x.EndFunctionX 108 } 109 return nil 110 } 111 112 func (x *LocalSID) GetEndFunctionT() *LocalSID_EndT { 113 if x, ok := x.GetEndFunction().(*LocalSID_EndFunctionT); ok { 114 return x.EndFunctionT 115 } 116 return nil 117 } 118 119 func (x *LocalSID) GetEndFunctionDx2() *LocalSID_EndDX2 { 120 if x, ok := x.GetEndFunction().(*LocalSID_EndFunctionDx2); ok { 121 return x.EndFunctionDx2 122 } 123 return nil 124 } 125 126 func (x *LocalSID) GetEndFunctionDx4() *LocalSID_EndDX4 { 127 if x, ok := x.GetEndFunction().(*LocalSID_EndFunctionDx4); ok { 128 return x.EndFunctionDx4 129 } 130 return nil 131 } 132 133 func (x *LocalSID) GetEndFunctionDx6() *LocalSID_EndDX6 { 134 if x, ok := x.GetEndFunction().(*LocalSID_EndFunctionDx6); ok { 135 return x.EndFunctionDx6 136 } 137 return nil 138 } 139 140 func (x *LocalSID) GetEndFunctionDt4() *LocalSID_EndDT4 { 141 if x, ok := x.GetEndFunction().(*LocalSID_EndFunctionDt4); ok { 142 return x.EndFunctionDt4 143 } 144 return nil 145 } 146 147 func (x *LocalSID) GetEndFunctionDt6() *LocalSID_EndDT6 { 148 if x, ok := x.GetEndFunction().(*LocalSID_EndFunctionDt6); ok { 149 return x.EndFunctionDt6 150 } 151 return nil 152 } 153 154 func (x *LocalSID) GetEndFunctionAd() *LocalSID_EndAD { 155 if x, ok := x.GetEndFunction().(*LocalSID_EndFunctionAd); ok { 156 return x.EndFunctionAd 157 } 158 return nil 159 } 160 161 type isLocalSID_EndFunction interface { 162 isLocalSID_EndFunction() 163 } 164 165 type LocalSID_BaseEndFunction struct { 166 BaseEndFunction *LocalSID_End `protobuf:"bytes,3,opt,name=base_end_function,json=baseEndFunction,proto3,oneof"` 167 } 168 169 type LocalSID_EndFunctionX struct { 170 EndFunctionX *LocalSID_EndX `protobuf:"bytes,4,opt,name=end_function_x,json=endFunctionX,proto3,oneof"` 171 } 172 173 type LocalSID_EndFunctionT struct { 174 EndFunctionT *LocalSID_EndT `protobuf:"bytes,5,opt,name=end_function_t,json=endFunctionT,proto3,oneof"` 175 } 176 177 type LocalSID_EndFunctionDx2 struct { 178 EndFunctionDx2 *LocalSID_EndDX2 `protobuf:"bytes,6,opt,name=end_function_dx2,json=endFunctionDx2,proto3,oneof"` 179 } 180 181 type LocalSID_EndFunctionDx4 struct { 182 EndFunctionDx4 *LocalSID_EndDX4 `protobuf:"bytes,7,opt,name=end_function_dx4,json=endFunctionDx4,proto3,oneof"` 183 } 184 185 type LocalSID_EndFunctionDx6 struct { 186 EndFunctionDx6 *LocalSID_EndDX6 `protobuf:"bytes,8,opt,name=end_function_dx6,json=endFunctionDx6,proto3,oneof"` 187 } 188 189 type LocalSID_EndFunctionDt4 struct { 190 EndFunctionDt4 *LocalSID_EndDT4 `protobuf:"bytes,9,opt,name=end_function_dt4,json=endFunctionDt4,proto3,oneof"` 191 } 192 193 type LocalSID_EndFunctionDt6 struct { 194 EndFunctionDt6 *LocalSID_EndDT6 `protobuf:"bytes,10,opt,name=end_function_dt6,json=endFunctionDt6,proto3,oneof"` 195 } 196 197 type LocalSID_EndFunctionAd struct { 198 EndFunctionAd *LocalSID_EndAD `protobuf:"bytes,11,opt,name=end_function_ad,json=endFunctionAd,proto3,oneof"` 199 } 200 201 func (*LocalSID_BaseEndFunction) isLocalSID_EndFunction() {} 202 203 func (*LocalSID_EndFunctionX) isLocalSID_EndFunction() {} 204 205 func (*LocalSID_EndFunctionT) isLocalSID_EndFunction() {} 206 207 func (*LocalSID_EndFunctionDx2) isLocalSID_EndFunction() {} 208 209 func (*LocalSID_EndFunctionDx4) isLocalSID_EndFunction() {} 210 211 func (*LocalSID_EndFunctionDx6) isLocalSID_EndFunction() {} 212 213 func (*LocalSID_EndFunctionDt4) isLocalSID_EndFunction() {} 214 215 func (*LocalSID_EndFunctionDt6) isLocalSID_EndFunction() {} 216 217 func (*LocalSID_EndFunctionAd) isLocalSID_EndFunction() {} 218 219 // Model for SRv6 policy (policy without at least one policy segment is only cached in ligato and not written to VPP) 220 type Policy struct { 221 state protoimpl.MessageState 222 sizeCache protoimpl.SizeCache 223 unknownFields protoimpl.UnknownFields 224 225 Bsid string `protobuf:"bytes,1,opt,name=bsid,proto3" json:"bsid,omitempty"` // binding SID (IPv6 Address) 226 InstallationVrfId uint32 `protobuf:"varint,2,opt,name=installation_vrf_id,json=installationVrfId,proto3" json:"installation_vrf_id,omitempty"` 227 SrhEncapsulation bool `protobuf:"varint,3,opt,name=srh_encapsulation,json=srhEncapsulation,proto3" json:"srh_encapsulation,omitempty"` // are SR headers handled by encapsulation? (no means insertion of SR headers) 228 SprayBehaviour bool `protobuf:"varint,4,opt,name=spray_behaviour,json=sprayBehaviour,proto3" json:"spray_behaviour,omitempty"` // spray(multicast) to all policy segments? (no means to use PolicySegment.weight to loadbalance traffic) 229 SegmentLists []*Policy_SegmentList `protobuf:"bytes,5,rep,name=segment_lists,json=segmentLists,proto3" json:"segment_lists,omitempty"` 230 } 231 232 func (x *Policy) Reset() { 233 *x = Policy{} 234 if protoimpl.UnsafeEnabled { 235 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[1] 236 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 237 ms.StoreMessageInfo(mi) 238 } 239 } 240 241 func (x *Policy) String() string { 242 return protoimpl.X.MessageStringOf(x) 243 } 244 245 func (*Policy) ProtoMessage() {} 246 247 func (x *Policy) ProtoReflect() protoreflect.Message { 248 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[1] 249 if protoimpl.UnsafeEnabled && x != nil { 250 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 251 if ms.LoadMessageInfo() == nil { 252 ms.StoreMessageInfo(mi) 253 } 254 return ms 255 } 256 return mi.MessageOf(x) 257 } 258 259 // Deprecated: Use Policy.ProtoReflect.Descriptor instead. 260 func (*Policy) Descriptor() ([]byte, []int) { 261 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{1} 262 } 263 264 func (x *Policy) GetBsid() string { 265 if x != nil { 266 return x.Bsid 267 } 268 return "" 269 } 270 271 func (x *Policy) GetInstallationVrfId() uint32 { 272 if x != nil { 273 return x.InstallationVrfId 274 } 275 return 0 276 } 277 278 func (x *Policy) GetSrhEncapsulation() bool { 279 if x != nil { 280 return x.SrhEncapsulation 281 } 282 return false 283 } 284 285 func (x *Policy) GetSprayBehaviour() bool { 286 if x != nil { 287 return x.SprayBehaviour 288 } 289 return false 290 } 291 292 func (x *Policy) GetSegmentLists() []*Policy_SegmentList { 293 if x != nil { 294 return x.SegmentLists 295 } 296 return nil 297 } 298 299 // Model for steering traffic to SRv6 policy 300 type Steering struct { 301 state protoimpl.MessageState 302 sizeCache protoimpl.SizeCache 303 unknownFields protoimpl.UnknownFields 304 305 Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` // globally unique steering identification (used in keys when is steering stored in key-value stores(i.e. ETCD)) 306 // Referencing policy that should be used for steering traffic into (all policy references are mutual exclusive) 307 // Types that are assignable to PolicyRef: 308 // *Steering_PolicyBsid 309 // *Steering_PolicyIndex 310 PolicyRef isSteering_PolicyRef `protobuf_oneof:"policy_ref"` 311 // Traffic configuration (all traffic messages are mutual exclusive) 312 // Types that are assignable to Traffic: 313 // *Steering_L2Traffic_ 314 // *Steering_L3Traffic_ 315 Traffic isSteering_Traffic `protobuf_oneof:"traffic"` 316 } 317 318 func (x *Steering) Reset() { 319 *x = Steering{} 320 if protoimpl.UnsafeEnabled { 321 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[2] 322 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 323 ms.StoreMessageInfo(mi) 324 } 325 } 326 327 func (x *Steering) String() string { 328 return protoimpl.X.MessageStringOf(x) 329 } 330 331 func (*Steering) ProtoMessage() {} 332 333 func (x *Steering) ProtoReflect() protoreflect.Message { 334 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[2] 335 if protoimpl.UnsafeEnabled && x != nil { 336 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 337 if ms.LoadMessageInfo() == nil { 338 ms.StoreMessageInfo(mi) 339 } 340 return ms 341 } 342 return mi.MessageOf(x) 343 } 344 345 // Deprecated: Use Steering.ProtoReflect.Descriptor instead. 346 func (*Steering) Descriptor() ([]byte, []int) { 347 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{2} 348 } 349 350 func (x *Steering) GetName() string { 351 if x != nil { 352 return x.Name 353 } 354 return "" 355 } 356 357 func (m *Steering) GetPolicyRef() isSteering_PolicyRef { 358 if m != nil { 359 return m.PolicyRef 360 } 361 return nil 362 } 363 364 func (x *Steering) GetPolicyBsid() string { 365 if x, ok := x.GetPolicyRef().(*Steering_PolicyBsid); ok { 366 return x.PolicyBsid 367 } 368 return "" 369 } 370 371 func (x *Steering) GetPolicyIndex() uint32 { 372 if x, ok := x.GetPolicyRef().(*Steering_PolicyIndex); ok { 373 return x.PolicyIndex 374 } 375 return 0 376 } 377 378 func (m *Steering) GetTraffic() isSteering_Traffic { 379 if m != nil { 380 return m.Traffic 381 } 382 return nil 383 } 384 385 func (x *Steering) GetL2Traffic() *Steering_L2Traffic { 386 if x, ok := x.GetTraffic().(*Steering_L2Traffic_); ok { 387 return x.L2Traffic 388 } 389 return nil 390 } 391 392 func (x *Steering) GetL3Traffic() *Steering_L3Traffic { 393 if x, ok := x.GetTraffic().(*Steering_L3Traffic_); ok { 394 return x.L3Traffic 395 } 396 return nil 397 } 398 399 type isSteering_PolicyRef interface { 400 isSteering_PolicyRef() 401 } 402 403 type Steering_PolicyBsid struct { 404 PolicyBsid string `protobuf:"bytes,1,opt,name=policy_bsid,json=policyBsid,proto3,oneof"` // BSID identifier for policy to which we want to steer routing into (policyBSID and policyIndex are mutual exclusive) 405 } 406 407 type Steering_PolicyIndex struct { 408 PolicyIndex uint32 `protobuf:"varint,2,opt,name=policy_index,json=policyIndex,proto3,oneof"` // (vpp-internal)Index identifier for policy to which we want to steer routing into (policyBSID and policyIndex are mutual exclusive) 409 } 410 411 func (*Steering_PolicyBsid) isSteering_PolicyRef() {} 412 413 func (*Steering_PolicyIndex) isSteering_PolicyRef() {} 414 415 type isSteering_Traffic interface { 416 isSteering_Traffic() 417 } 418 419 type Steering_L2Traffic_ struct { 420 L2Traffic *Steering_L2Traffic `protobuf:"bytes,3,opt,name=l2_traffic,json=l2Traffic,proto3,oneof"` 421 } 422 423 type Steering_L3Traffic_ struct { 424 L3Traffic *Steering_L3Traffic `protobuf:"bytes,4,opt,name=l3_traffic,json=l3Traffic,proto3,oneof"` 425 } 426 427 func (*Steering_L2Traffic_) isSteering_Traffic() {} 428 429 func (*Steering_L3Traffic_) isSteering_Traffic() {} 430 431 // Global SRv6 config 432 type SRv6Global struct { 433 state protoimpl.MessageState 434 sizeCache protoimpl.SizeCache 435 unknownFields protoimpl.UnknownFields 436 437 EncapSourceAddress string `protobuf:"bytes,1,opt,name=encap_source_address,json=encapSourceAddress,proto3" json:"encap_source_address,omitempty"` // IPv6 source address for sr encapsulated packets 438 } 439 440 func (x *SRv6Global) Reset() { 441 *x = SRv6Global{} 442 if protoimpl.UnsafeEnabled { 443 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[3] 444 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 445 ms.StoreMessageInfo(mi) 446 } 447 } 448 449 func (x *SRv6Global) String() string { 450 return protoimpl.X.MessageStringOf(x) 451 } 452 453 func (*SRv6Global) ProtoMessage() {} 454 455 func (x *SRv6Global) ProtoReflect() protoreflect.Message { 456 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[3] 457 if protoimpl.UnsafeEnabled && x != nil { 458 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 459 if ms.LoadMessageInfo() == nil { 460 ms.StoreMessageInfo(mi) 461 } 462 return ms 463 } 464 return mi.MessageOf(x) 465 } 466 467 // Deprecated: Use SRv6Global.ProtoReflect.Descriptor instead. 468 func (*SRv6Global) Descriptor() ([]byte, []int) { 469 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{3} 470 } 471 472 func (x *SRv6Global) GetEncapSourceAddress() string { 473 if x != nil { 474 return x.EncapSourceAddress 475 } 476 return "" 477 } 478 479 // End function behavior of simple endpoint 480 type LocalSID_End struct { 481 state protoimpl.MessageState 482 sizeCache protoimpl.SizeCache 483 unknownFields protoimpl.UnknownFields 484 485 Psp bool `protobuf:"varint,1,opt,name=psp,proto3" json:"psp,omitempty"` // use PSP (penultimate segment POP of the SRH) or by default use USP (Ultimate Segment Pop of the SRH) 486 } 487 488 func (x *LocalSID_End) Reset() { 489 *x = LocalSID_End{} 490 if protoimpl.UnsafeEnabled { 491 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[4] 492 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 493 ms.StoreMessageInfo(mi) 494 } 495 } 496 497 func (x *LocalSID_End) String() string { 498 return protoimpl.X.MessageStringOf(x) 499 } 500 501 func (*LocalSID_End) ProtoMessage() {} 502 503 func (x *LocalSID_End) ProtoReflect() protoreflect.Message { 504 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[4] 505 if protoimpl.UnsafeEnabled && x != nil { 506 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 507 if ms.LoadMessageInfo() == nil { 508 ms.StoreMessageInfo(mi) 509 } 510 return ms 511 } 512 return mi.MessageOf(x) 513 } 514 515 // Deprecated: Use LocalSID_End.ProtoReflect.Descriptor instead. 516 func (*LocalSID_End) Descriptor() ([]byte, []int) { 517 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 0} 518 } 519 520 func (x *LocalSID_End) GetPsp() bool { 521 if x != nil { 522 return x.Psp 523 } 524 return false 525 } 526 527 // End function behavior of endpoint with Layer-3 cross-connect (IPv6) 528 type LocalSID_EndX struct { 529 state protoimpl.MessageState 530 sizeCache protoimpl.SizeCache 531 unknownFields protoimpl.UnknownFields 532 533 Psp bool `protobuf:"varint,1,opt,name=psp,proto3" json:"psp,omitempty"` // use PSP (penultimate segment POP of the SRH) or by default use USP (Ultimate Segment Pop of the SRH) 534 OutgoingInterface string `protobuf:"bytes,2,opt,name=outgoing_interface,json=outgoingInterface,proto3" json:"outgoing_interface,omitempty"` // name of cross-connected outgoing interface 535 NextHop string `protobuf:"bytes,3,opt,name=next_hop,json=nextHop,proto3" json:"next_hop,omitempty"` // IPv6 next hop address for cross-connected link 536 } 537 538 func (x *LocalSID_EndX) Reset() { 539 *x = LocalSID_EndX{} 540 if protoimpl.UnsafeEnabled { 541 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[5] 542 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 543 ms.StoreMessageInfo(mi) 544 } 545 } 546 547 func (x *LocalSID_EndX) String() string { 548 return protoimpl.X.MessageStringOf(x) 549 } 550 551 func (*LocalSID_EndX) ProtoMessage() {} 552 553 func (x *LocalSID_EndX) ProtoReflect() protoreflect.Message { 554 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[5] 555 if protoimpl.UnsafeEnabled && x != nil { 556 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 557 if ms.LoadMessageInfo() == nil { 558 ms.StoreMessageInfo(mi) 559 } 560 return ms 561 } 562 return mi.MessageOf(x) 563 } 564 565 // Deprecated: Use LocalSID_EndX.ProtoReflect.Descriptor instead. 566 func (*LocalSID_EndX) Descriptor() ([]byte, []int) { 567 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 1} 568 } 569 570 func (x *LocalSID_EndX) GetPsp() bool { 571 if x != nil { 572 return x.Psp 573 } 574 return false 575 } 576 577 func (x *LocalSID_EndX) GetOutgoingInterface() string { 578 if x != nil { 579 return x.OutgoingInterface 580 } 581 return "" 582 } 583 584 func (x *LocalSID_EndX) GetNextHop() string { 585 if x != nil { 586 return x.NextHop 587 } 588 return "" 589 } 590 591 // End function behavior of endpoint with specific IPv6 table lookup 592 type LocalSID_EndT struct { 593 state protoimpl.MessageState 594 sizeCache protoimpl.SizeCache 595 unknownFields protoimpl.UnknownFields 596 597 Psp bool `protobuf:"varint,1,opt,name=psp,proto3" json:"psp,omitempty"` // use PSP (penultimate segment POP of the SRH) or by default use USP (Ultimate Segment Pop of the SRH) 598 VrfId uint32 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"` 599 } 600 601 func (x *LocalSID_EndT) Reset() { 602 *x = LocalSID_EndT{} 603 if protoimpl.UnsafeEnabled { 604 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[6] 605 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 606 ms.StoreMessageInfo(mi) 607 } 608 } 609 610 func (x *LocalSID_EndT) String() string { 611 return protoimpl.X.MessageStringOf(x) 612 } 613 614 func (*LocalSID_EndT) ProtoMessage() {} 615 616 func (x *LocalSID_EndT) ProtoReflect() protoreflect.Message { 617 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[6] 618 if protoimpl.UnsafeEnabled && x != nil { 619 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 620 if ms.LoadMessageInfo() == nil { 621 ms.StoreMessageInfo(mi) 622 } 623 return ms 624 } 625 return mi.MessageOf(x) 626 } 627 628 // Deprecated: Use LocalSID_EndT.ProtoReflect.Descriptor instead. 629 func (*LocalSID_EndT) Descriptor() ([]byte, []int) { 630 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 2} 631 } 632 633 func (x *LocalSID_EndT) GetPsp() bool { 634 if x != nil { 635 return x.Psp 636 } 637 return false 638 } 639 640 func (x *LocalSID_EndT) GetVrfId() uint32 { 641 if x != nil { 642 return x.VrfId 643 } 644 return 0 645 } 646 647 // End function behavior of endpoint with decapsulation and Layer-2 cross-connect (or DX2 with egress VLAN rewrite when VLAN notzero - not supported this variant yet) 648 type LocalSID_EndDX2 struct { 649 state protoimpl.MessageState 650 sizeCache protoimpl.SizeCache 651 unknownFields protoimpl.UnknownFields 652 653 VlanTag uint32 `protobuf:"varint,1,opt,name=vlan_tag,json=vlanTag,proto3" json:"vlan_tag,omitempty"` // Outgoing VLAN tag 654 OutgoingInterface string `protobuf:"bytes,2,opt,name=outgoing_interface,json=outgoingInterface,proto3" json:"outgoing_interface,omitempty"` // name of cross-connected outgoing interface 655 } 656 657 func (x *LocalSID_EndDX2) Reset() { 658 *x = LocalSID_EndDX2{} 659 if protoimpl.UnsafeEnabled { 660 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[7] 661 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 662 ms.StoreMessageInfo(mi) 663 } 664 } 665 666 func (x *LocalSID_EndDX2) String() string { 667 return protoimpl.X.MessageStringOf(x) 668 } 669 670 func (*LocalSID_EndDX2) ProtoMessage() {} 671 672 func (x *LocalSID_EndDX2) ProtoReflect() protoreflect.Message { 673 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[7] 674 if protoimpl.UnsafeEnabled && x != nil { 675 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 676 if ms.LoadMessageInfo() == nil { 677 ms.StoreMessageInfo(mi) 678 } 679 return ms 680 } 681 return mi.MessageOf(x) 682 } 683 684 // Deprecated: Use LocalSID_EndDX2.ProtoReflect.Descriptor instead. 685 func (*LocalSID_EndDX2) Descriptor() ([]byte, []int) { 686 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 3} 687 } 688 689 func (x *LocalSID_EndDX2) GetVlanTag() uint32 { 690 if x != nil { 691 return x.VlanTag 692 } 693 return 0 694 } 695 696 func (x *LocalSID_EndDX2) GetOutgoingInterface() string { 697 if x != nil { 698 return x.OutgoingInterface 699 } 700 return "" 701 } 702 703 // End function behavior of endpoint with decapsulation and IPv4 cross-connect 704 type LocalSID_EndDX4 struct { 705 state protoimpl.MessageState 706 sizeCache protoimpl.SizeCache 707 unknownFields protoimpl.UnknownFields 708 709 OutgoingInterface string `protobuf:"bytes,1,opt,name=outgoing_interface,json=outgoingInterface,proto3" json:"outgoing_interface,omitempty"` // name of cross-connected outgoing interface 710 NextHop string `protobuf:"bytes,2,opt,name=next_hop,json=nextHop,proto3" json:"next_hop,omitempty"` // next hop address for cross-connected link 711 } 712 713 func (x *LocalSID_EndDX4) Reset() { 714 *x = LocalSID_EndDX4{} 715 if protoimpl.UnsafeEnabled { 716 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[8] 717 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 718 ms.StoreMessageInfo(mi) 719 } 720 } 721 722 func (x *LocalSID_EndDX4) String() string { 723 return protoimpl.X.MessageStringOf(x) 724 } 725 726 func (*LocalSID_EndDX4) ProtoMessage() {} 727 728 func (x *LocalSID_EndDX4) ProtoReflect() protoreflect.Message { 729 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[8] 730 if protoimpl.UnsafeEnabled && x != nil { 731 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 732 if ms.LoadMessageInfo() == nil { 733 ms.StoreMessageInfo(mi) 734 } 735 return ms 736 } 737 return mi.MessageOf(x) 738 } 739 740 // Deprecated: Use LocalSID_EndDX4.ProtoReflect.Descriptor instead. 741 func (*LocalSID_EndDX4) Descriptor() ([]byte, []int) { 742 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 4} 743 } 744 745 func (x *LocalSID_EndDX4) GetOutgoingInterface() string { 746 if x != nil { 747 return x.OutgoingInterface 748 } 749 return "" 750 } 751 752 func (x *LocalSID_EndDX4) GetNextHop() string { 753 if x != nil { 754 return x.NextHop 755 } 756 return "" 757 } 758 759 // End function behavior of endpoint with decapsulation and IPv6 cross-connect 760 type LocalSID_EndDX6 struct { 761 state protoimpl.MessageState 762 sizeCache protoimpl.SizeCache 763 unknownFields protoimpl.UnknownFields 764 765 OutgoingInterface string `protobuf:"bytes,1,opt,name=outgoing_interface,json=outgoingInterface,proto3" json:"outgoing_interface,omitempty"` // name of cross-connected outgoing interface 766 NextHop string `protobuf:"bytes,2,opt,name=next_hop,json=nextHop,proto3" json:"next_hop,omitempty"` // next hop address for cross-connected link 767 } 768 769 func (x *LocalSID_EndDX6) Reset() { 770 *x = LocalSID_EndDX6{} 771 if protoimpl.UnsafeEnabled { 772 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[9] 773 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 774 ms.StoreMessageInfo(mi) 775 } 776 } 777 778 func (x *LocalSID_EndDX6) String() string { 779 return protoimpl.X.MessageStringOf(x) 780 } 781 782 func (*LocalSID_EndDX6) ProtoMessage() {} 783 784 func (x *LocalSID_EndDX6) ProtoReflect() protoreflect.Message { 785 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[9] 786 if protoimpl.UnsafeEnabled && x != nil { 787 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 788 if ms.LoadMessageInfo() == nil { 789 ms.StoreMessageInfo(mi) 790 } 791 return ms 792 } 793 return mi.MessageOf(x) 794 } 795 796 // Deprecated: Use LocalSID_EndDX6.ProtoReflect.Descriptor instead. 797 func (*LocalSID_EndDX6) Descriptor() ([]byte, []int) { 798 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 5} 799 } 800 801 func (x *LocalSID_EndDX6) GetOutgoingInterface() string { 802 if x != nil { 803 return x.OutgoingInterface 804 } 805 return "" 806 } 807 808 func (x *LocalSID_EndDX6) GetNextHop() string { 809 if x != nil { 810 return x.NextHop 811 } 812 return "" 813 } 814 815 // End function behavior of endpoint with decapsulation and specific IPv4 table lookup 816 type LocalSID_EndDT4 struct { 817 state protoimpl.MessageState 818 sizeCache protoimpl.SizeCache 819 unknownFields protoimpl.UnknownFields 820 821 VrfId uint32 `protobuf:"varint,1,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"` 822 } 823 824 func (x *LocalSID_EndDT4) Reset() { 825 *x = LocalSID_EndDT4{} 826 if protoimpl.UnsafeEnabled { 827 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[10] 828 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 829 ms.StoreMessageInfo(mi) 830 } 831 } 832 833 func (x *LocalSID_EndDT4) String() string { 834 return protoimpl.X.MessageStringOf(x) 835 } 836 837 func (*LocalSID_EndDT4) ProtoMessage() {} 838 839 func (x *LocalSID_EndDT4) ProtoReflect() protoreflect.Message { 840 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[10] 841 if protoimpl.UnsafeEnabled && x != nil { 842 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 843 if ms.LoadMessageInfo() == nil { 844 ms.StoreMessageInfo(mi) 845 } 846 return ms 847 } 848 return mi.MessageOf(x) 849 } 850 851 // Deprecated: Use LocalSID_EndDT4.ProtoReflect.Descriptor instead. 852 func (*LocalSID_EndDT4) Descriptor() ([]byte, []int) { 853 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 6} 854 } 855 856 func (x *LocalSID_EndDT4) GetVrfId() uint32 { 857 if x != nil { 858 return x.VrfId 859 } 860 return 0 861 } 862 863 // End function behavior of endpoint with decapsulation and specific IPv6 table lookup 864 type LocalSID_EndDT6 struct { 865 state protoimpl.MessageState 866 sizeCache protoimpl.SizeCache 867 unknownFields protoimpl.UnknownFields 868 869 VrfId uint32 `protobuf:"varint,1,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"` 870 } 871 872 func (x *LocalSID_EndDT6) Reset() { 873 *x = LocalSID_EndDT6{} 874 if protoimpl.UnsafeEnabled { 875 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[11] 876 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 877 ms.StoreMessageInfo(mi) 878 } 879 } 880 881 func (x *LocalSID_EndDT6) String() string { 882 return protoimpl.X.MessageStringOf(x) 883 } 884 885 func (*LocalSID_EndDT6) ProtoMessage() {} 886 887 func (x *LocalSID_EndDT6) ProtoReflect() protoreflect.Message { 888 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[11] 889 if protoimpl.UnsafeEnabled && x != nil { 890 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 891 if ms.LoadMessageInfo() == nil { 892 ms.StoreMessageInfo(mi) 893 } 894 return ms 895 } 896 return mi.MessageOf(x) 897 } 898 899 // Deprecated: Use LocalSID_EndDT6.ProtoReflect.Descriptor instead. 900 func (*LocalSID_EndDT6) Descriptor() ([]byte, []int) { 901 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 7} 902 } 903 904 func (x *LocalSID_EndDT6) GetVrfId() uint32 { 905 if x != nil { 906 return x.VrfId 907 } 908 return 0 909 } 910 911 // End function behavior of dynamic segment routing proxy endpoint 912 type LocalSID_EndAD struct { 913 state protoimpl.MessageState 914 sizeCache protoimpl.SizeCache 915 unknownFields protoimpl.UnknownFields 916 917 OutgoingInterface string `protobuf:"bytes,2,opt,name=outgoing_interface,json=outgoingInterface,proto3" json:"outgoing_interface,omitempty"` // name of interface on segment routing proxy side sending data to segment routing unaware service 918 IncomingInterface string `protobuf:"bytes,3,opt,name=incoming_interface,json=incomingInterface,proto3" json:"incoming_interface,omitempty"` // name of interface on segment routing proxy side receiving data from segment routing unaware service 919 L3ServiceAddress string `protobuf:"bytes,4,opt,name=l3_service_address,json=l3ServiceAddress,proto3" json:"l3_service_address,omitempty"` // IPv6/IPv4 address of L3 SR-unaware service (address type depends whether service is IPv4 or IPv6 service), in case of L2 service it must be empty 920 } 921 922 func (x *LocalSID_EndAD) Reset() { 923 *x = LocalSID_EndAD{} 924 if protoimpl.UnsafeEnabled { 925 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[12] 926 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 927 ms.StoreMessageInfo(mi) 928 } 929 } 930 931 func (x *LocalSID_EndAD) String() string { 932 return protoimpl.X.MessageStringOf(x) 933 } 934 935 func (*LocalSID_EndAD) ProtoMessage() {} 936 937 func (x *LocalSID_EndAD) ProtoReflect() protoreflect.Message { 938 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[12] 939 if protoimpl.UnsafeEnabled && x != nil { 940 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 941 if ms.LoadMessageInfo() == nil { 942 ms.StoreMessageInfo(mi) 943 } 944 return ms 945 } 946 return mi.MessageOf(x) 947 } 948 949 // Deprecated: Use LocalSID_EndAD.ProtoReflect.Descriptor instead. 950 func (*LocalSID_EndAD) Descriptor() ([]byte, []int) { 951 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{0, 8} 952 } 953 954 func (x *LocalSID_EndAD) GetOutgoingInterface() string { 955 if x != nil { 956 return x.OutgoingInterface 957 } 958 return "" 959 } 960 961 func (x *LocalSID_EndAD) GetIncomingInterface() string { 962 if x != nil { 963 return x.IncomingInterface 964 } 965 return "" 966 } 967 968 func (x *LocalSID_EndAD) GetL3ServiceAddress() string { 969 if x != nil { 970 return x.L3ServiceAddress 971 } 972 return "" 973 } 974 975 // Model for SRv6 Segment List 976 type Policy_SegmentList struct { 977 state protoimpl.MessageState 978 sizeCache protoimpl.SizeCache 979 unknownFields protoimpl.UnknownFields 980 981 Weight uint32 `protobuf:"varint,1,opt,name=weight,proto3" json:"weight,omitempty"` // used for loadbalancing in case of multiple policy segments in routing process (ignored in case of spray policies) 982 Segments []string `protobuf:"bytes,2,rep,name=segments,proto3" json:"segments,omitempty"` // list of sids creating one segmented road 983 } 984 985 func (x *Policy_SegmentList) Reset() { 986 *x = Policy_SegmentList{} 987 if protoimpl.UnsafeEnabled { 988 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[13] 989 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 990 ms.StoreMessageInfo(mi) 991 } 992 } 993 994 func (x *Policy_SegmentList) String() string { 995 return protoimpl.X.MessageStringOf(x) 996 } 997 998 func (*Policy_SegmentList) ProtoMessage() {} 999 1000 func (x *Policy_SegmentList) ProtoReflect() protoreflect.Message { 1001 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[13] 1002 if protoimpl.UnsafeEnabled && x != nil { 1003 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1004 if ms.LoadMessageInfo() == nil { 1005 ms.StoreMessageInfo(mi) 1006 } 1007 return ms 1008 } 1009 return mi.MessageOf(x) 1010 } 1011 1012 // Deprecated: Use Policy_SegmentList.ProtoReflect.Descriptor instead. 1013 func (*Policy_SegmentList) Descriptor() ([]byte, []int) { 1014 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{1, 0} 1015 } 1016 1017 func (x *Policy_SegmentList) GetWeight() uint32 { 1018 if x != nil { 1019 return x.Weight 1020 } 1021 return 0 1022 } 1023 1024 func (x *Policy_SegmentList) GetSegments() []string { 1025 if x != nil { 1026 return x.Segments 1027 } 1028 return nil 1029 } 1030 1031 type Steering_L2Traffic struct { 1032 state protoimpl.MessageState 1033 sizeCache protoimpl.SizeCache 1034 unknownFields protoimpl.UnknownFields 1035 1036 InterfaceName string `protobuf:"bytes,1,opt,name=interface_name,json=interfaceName,proto3" json:"interface_name,omitempty"` // name of interface with incoming traffic that should be steered to SR policy 1037 } 1038 1039 func (x *Steering_L2Traffic) Reset() { 1040 *x = Steering_L2Traffic{} 1041 if protoimpl.UnsafeEnabled { 1042 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[14] 1043 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1044 ms.StoreMessageInfo(mi) 1045 } 1046 } 1047 1048 func (x *Steering_L2Traffic) String() string { 1049 return protoimpl.X.MessageStringOf(x) 1050 } 1051 1052 func (*Steering_L2Traffic) ProtoMessage() {} 1053 1054 func (x *Steering_L2Traffic) ProtoReflect() protoreflect.Message { 1055 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[14] 1056 if protoimpl.UnsafeEnabled && x != nil { 1057 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1058 if ms.LoadMessageInfo() == nil { 1059 ms.StoreMessageInfo(mi) 1060 } 1061 return ms 1062 } 1063 return mi.MessageOf(x) 1064 } 1065 1066 // Deprecated: Use Steering_L2Traffic.ProtoReflect.Descriptor instead. 1067 func (*Steering_L2Traffic) Descriptor() ([]byte, []int) { 1068 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{2, 0} 1069 } 1070 1071 func (x *Steering_L2Traffic) GetInterfaceName() string { 1072 if x != nil { 1073 return x.InterfaceName 1074 } 1075 return "" 1076 } 1077 1078 type Steering_L3Traffic struct { 1079 state protoimpl.MessageState 1080 sizeCache protoimpl.SizeCache 1081 unknownFields protoimpl.UnknownFields 1082 1083 InstallationVrfId uint32 `protobuf:"varint,1,opt,name=installation_vrf_id,json=installationVrfId,proto3" json:"installation_vrf_id,omitempty"` 1084 PrefixAddress string `protobuf:"bytes,2,opt,name=prefix_address,json=prefixAddress,proto3" json:"prefix_address,omitempty"` // IPv4/IPv6 prefix address(CIRD format) of traffic destination. All traffic with given destination will be steered to given SR policy 1085 } 1086 1087 func (x *Steering_L3Traffic) Reset() { 1088 *x = Steering_L3Traffic{} 1089 if protoimpl.UnsafeEnabled { 1090 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[15] 1091 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1092 ms.StoreMessageInfo(mi) 1093 } 1094 } 1095 1096 func (x *Steering_L3Traffic) String() string { 1097 return protoimpl.X.MessageStringOf(x) 1098 } 1099 1100 func (*Steering_L3Traffic) ProtoMessage() {} 1101 1102 func (x *Steering_L3Traffic) ProtoReflect() protoreflect.Message { 1103 mi := &file_ligato_vpp_srv6_srv6_proto_msgTypes[15] 1104 if protoimpl.UnsafeEnabled && x != nil { 1105 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1106 if ms.LoadMessageInfo() == nil { 1107 ms.StoreMessageInfo(mi) 1108 } 1109 return ms 1110 } 1111 return mi.MessageOf(x) 1112 } 1113 1114 // Deprecated: Use Steering_L3Traffic.ProtoReflect.Descriptor instead. 1115 func (*Steering_L3Traffic) Descriptor() ([]byte, []int) { 1116 return file_ligato_vpp_srv6_srv6_proto_rawDescGZIP(), []int{2, 1} 1117 } 1118 1119 func (x *Steering_L3Traffic) GetInstallationVrfId() uint32 { 1120 if x != nil { 1121 return x.InstallationVrfId 1122 } 1123 return 0 1124 } 1125 1126 func (x *Steering_L3Traffic) GetPrefixAddress() string { 1127 if x != nil { 1128 return x.PrefixAddress 1129 } 1130 return "" 1131 } 1132 1133 var File_ligato_vpp_srv6_srv6_proto protoreflect.FileDescriptor 1134 1135 var file_ligato_vpp_srv6_srv6_proto_rawDesc = []byte{ 1136 0x0a, 0x1a, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2f, 0x73, 0x72, 0x76, 1137 0x36, 0x2f, 0x73, 0x72, 0x76, 0x36, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0f, 0x6c, 0x69, 1138 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 0x1a, 0x18, 0x6c, 1139 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 1140 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xaf, 0x0b, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 1141 0x6c, 0x53, 0x49, 0x44, 0x12, 0x17, 0x0a, 0x03, 0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 1142 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x03, 0x52, 0x03, 0x73, 0x69, 0x64, 0x12, 0x2e, 0x0a, 1143 0x13, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x72, 1144 0x66, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x69, 0x6e, 0x73, 0x74, 1145 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x72, 0x66, 0x49, 0x64, 0x12, 0x4b, 0x0a, 1146 0x11, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 1147 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 1148 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 1149 0x53, 0x49, 0x44, 0x2e, 0x45, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x0f, 0x62, 0x61, 0x73, 0x65, 0x45, 1150 0x6e, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x0e, 0x65, 0x6e, 1151 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x78, 0x18, 0x04, 0x20, 0x01, 1152 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 1153 0x73, 0x72, 0x76, 0x36, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x49, 0x44, 0x2e, 0x45, 0x6e, 1154 0x64, 0x58, 0x48, 0x00, 0x52, 0x0c, 0x65, 0x6e, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 1155 0x6e, 0x58, 0x12, 0x46, 0x0a, 0x0e, 0x65, 0x6e, 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 1156 0x6f, 0x6e, 0x5f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x67, 1157 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 0x2e, 0x4c, 0x6f, 0x63, 1158 0x61, 0x6c, 0x53, 0x49, 0x44, 0x2e, 0x45, 0x6e, 0x64, 0x54, 0x48, 0x00, 0x52, 0x0c, 0x65, 0x6e, 1159 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x12, 0x4c, 0x0a, 0x10, 0x65, 0x6e, 1160 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x78, 0x32, 0x18, 0x06, 1161 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 1162 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x49, 0x44, 0x2e, 1163 0x45, 0x6e, 0x64, 0x44, 0x58, 0x32, 0x48, 0x00, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x46, 0x75, 0x6e, 1164 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x78, 0x32, 0x12, 0x4c, 0x0a, 0x10, 0x65, 0x6e, 0x64, 0x5f, 1165 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x78, 0x34, 0x18, 0x07, 0x20, 0x01, 1166 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 1167 0x73, 0x72, 0x76, 0x36, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x49, 0x44, 0x2e, 0x45, 0x6e, 1168 0x64, 0x44, 0x58, 0x34, 0x48, 0x00, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 1169 0x69, 0x6f, 0x6e, 0x44, 0x78, 0x34, 0x12, 0x4c, 0x0a, 0x10, 0x65, 0x6e, 0x64, 0x5f, 0x66, 0x75, 1170 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x78, 0x36, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 1171 0x32, 0x20, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 1172 0x76, 0x36, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x49, 0x44, 0x2e, 0x45, 0x6e, 0x64, 0x44, 1173 0x58, 0x36, 0x48, 0x00, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 1174 0x6e, 0x44, 0x78, 0x36, 0x12, 0x4c, 0x0a, 0x10, 0x65, 0x6e, 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 1175 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x74, 0x34, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 1176 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 1177 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x49, 0x44, 0x2e, 0x45, 0x6e, 0x64, 0x44, 0x54, 0x34, 1178 0x48, 0x00, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 1179 0x74, 0x34, 0x12, 0x4c, 0x0a, 0x10, 0x65, 0x6e, 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 1180 0x6f, 0x6e, 0x5f, 0x64, 0x74, 0x36, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 1181 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 0x2e, 0x4c, 1182 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x49, 0x44, 0x2e, 0x45, 0x6e, 0x64, 0x44, 0x54, 0x36, 0x48, 0x00, 1183 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x74, 0x36, 1184 0x12, 0x49, 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 1185 0x5f, 0x61, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 1186 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 1187 0x6c, 0x53, 0x49, 0x44, 0x2e, 0x45, 0x6e, 0x64, 0x41, 0x44, 0x48, 0x00, 0x52, 0x0d, 0x65, 0x6e, 1188 0x64, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x1a, 0x17, 0x0a, 0x03, 0x45, 1189 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 1190 0x03, 0x70, 0x73, 0x70, 0x1a, 0x69, 0x0a, 0x04, 0x45, 0x6e, 0x64, 0x58, 0x12, 0x10, 0x0a, 0x03, 1191 0x70, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x70, 0x73, 0x70, 0x12, 0x2d, 1192 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 1193 0x66, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x75, 0x74, 0x67, 1194 0x6f, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x20, 0x0a, 1195 0x08, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 1196 0x05, 0x82, 0x7d, 0x02, 0x08, 0x03, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x48, 0x6f, 0x70, 0x1a, 1197 0x2f, 0x0a, 0x04, 0x45, 0x6e, 0x64, 0x54, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x73, 0x70, 0x18, 0x01, 1198 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x70, 0x73, 0x70, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 1199 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 1200 0x1a, 0x52, 0x0a, 0x06, 0x45, 0x6e, 0x64, 0x44, 0x58, 0x32, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x6c, 1201 0x61, 0x6e, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x6c, 1202 0x61, 0x6e, 0x54, 0x61, 0x67, 0x12, 0x2d, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 1203 0x67, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 1204 0x09, 0x52, 0x11, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x74, 0x65, 0x72, 1205 0x66, 0x61, 0x63, 0x65, 0x1a, 0x59, 0x0a, 0x06, 0x45, 0x6e, 0x64, 0x44, 0x58, 0x34, 0x12, 0x2d, 1206 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 1207 0x66, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x75, 0x74, 0x67, 1208 0x6f, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x20, 0x0a, 1209 0x08, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 1210 0x05, 0x82, 0x7d, 0x02, 0x08, 0x02, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x48, 0x6f, 0x70, 0x1a, 1211 0x59, 0x0a, 0x06, 0x45, 0x6e, 0x64, 0x44, 0x58, 0x36, 0x12, 0x2d, 0x0a, 0x12, 0x6f, 0x75, 0x74, 1212 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 1213 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x49, 1214 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x08, 0x6e, 0x65, 0x78, 0x74, 1215 0x5f, 0x68, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 1216 0x03, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x48, 0x6f, 0x70, 0x1a, 0x1f, 0x0a, 0x06, 0x45, 0x6e, 1217 0x64, 0x44, 0x54, 0x34, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 1218 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 0x1a, 0x1f, 0x0a, 0x06, 0x45, 1219 0x6e, 0x64, 0x44, 0x54, 0x36, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 1220 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 0x1a, 0x9a, 0x01, 0x0a, 1221 0x05, 0x45, 0x6e, 0x64, 0x41, 0x44, 0x12, 0x2d, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 1222 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 1223 0x28, 0x09, 0x52, 0x11, 0x6f, 0x75, 0x74, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x74, 0x65, 1224 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 1225 0x67, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 1226 0x09, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x74, 0x65, 0x72, 1227 0x66, 0x61, 0x63, 0x65, 0x12, 0x33, 0x0a, 0x12, 0x6c, 0x33, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 1228 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 1229 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x10, 0x6c, 0x33, 0x53, 0x65, 0x72, 0x76, 0x69, 1230 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x65, 0x6e, 0x64, 1231 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xbd, 0x02, 0x0a, 0x06, 0x50, 0x6f, 1232 0x6c, 0x69, 0x63, 0x79, 0x12, 0x19, 0x0a, 0x04, 0x62, 0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 1233 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x03, 0x52, 0x04, 0x62, 0x73, 0x69, 0x64, 0x12, 1234 0x2e, 0x0a, 0x13, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 1235 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x69, 0x6e, 1236 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x72, 0x66, 0x49, 0x64, 0x12, 1237 0x2b, 0x0a, 0x11, 0x73, 0x72, 0x68, 0x5f, 0x65, 0x6e, 0x63, 0x61, 0x70, 0x73, 0x75, 0x6c, 0x61, 1238 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x72, 0x68, 0x45, 1239 0x6e, 0x63, 0x61, 0x70, 0x73, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 1240 0x73, 0x70, 0x72, 0x61, 0x79, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x75, 0x72, 0x18, 1241 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x70, 0x72, 0x61, 0x79, 0x42, 0x65, 0x68, 0x61, 1242 0x76, 0x69, 0x6f, 0x75, 0x72, 0x12, 0x48, 0x0a, 0x0d, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 1243 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6c, 1244 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 0x2e, 0x50, 1245 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 1246 0x74, 0x52, 0x0c, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x1a, 1247 0x48, 0x0a, 0x0b, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 1248 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 1249 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 1250 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x03, 0x52, 1251 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xb1, 0x03, 0x0a, 0x08, 0x53, 0x74, 1252 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 1253 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0b, 0x70, 0x6f, 1254 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x62, 0x73, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 1255 0x05, 0x82, 0x7d, 0x02, 0x08, 0x03, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 1256 0x42, 0x73, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0c, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 1257 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0b, 0x70, 0x6f, 1258 0x6c, 0x69, 0x63, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x44, 0x0a, 0x0a, 0x6c, 0x32, 0x5f, 1259 0x74, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 1260 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x73, 0x72, 0x76, 0x36, 0x2e, 1261 0x53, 0x74, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x4c, 0x32, 0x54, 0x72, 0x61, 0x66, 0x66, 1262 0x69, 0x63, 0x48, 0x01, 0x52, 0x09, 0x6c, 0x32, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x12, 1263 0x44, 0x0a, 0x0a, 0x6c, 0x33, 0x5f, 0x74, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x18, 0x04, 0x20, 1264 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 1265 0x2e, 0x73, 0x72, 0x76, 0x36, 0x2e, 0x53, 0x74, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x4c, 1266 0x33, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x48, 0x01, 0x52, 0x09, 0x6c, 0x33, 0x54, 0x72, 1267 0x61, 0x66, 0x66, 0x69, 0x63, 0x1a, 0x32, 0x0a, 0x09, 0x4c, 0x32, 0x54, 0x72, 0x61, 0x66, 0x66, 1268 0x69, 0x63, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x5f, 1269 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x6e, 0x74, 0x65, 1270 0x72, 0x66, 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x69, 0x0a, 0x09, 0x4c, 0x33, 0x54, 1271 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 1272 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 1273 0x01, 0x28, 0x0d, 0x52, 0x11, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 1274 0x6e, 0x56, 0x72, 0x66, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 1275 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 1276 0x82, 0x7d, 0x02, 0x08, 0x04, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x41, 0x64, 0x64, 1277 0x72, 0x65, 0x73, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x72, 1278 0x65, 0x66, 0x42, 0x09, 0x0a, 0x07, 0x74, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x22, 0x45, 0x0a, 1279 0x0a, 0x53, 0x52, 0x76, 0x36, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x12, 0x37, 0x0a, 0x14, 0x65, 1280 0x6e, 0x63, 0x61, 0x70, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 1281 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x03, 1282 0x52, 0x12, 0x65, 0x6e, 0x63, 0x61, 0x70, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x64, 0x64, 1283 0x72, 0x65, 0x73, 0x73, 0x42, 0x3a, 0x5a, 0x38, 0x67, 0x6f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 1284 0x6f, 0x2e, 0x69, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x76, 1285 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x76, 1286 0x70, 0x70, 0x2f, 0x73, 0x72, 0x76, 0x36, 0x3b, 0x76, 0x70, 0x70, 0x5f, 0x73, 0x72, 0x76, 0x36, 1287 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 1288 } 1289 1290 var ( 1291 file_ligato_vpp_srv6_srv6_proto_rawDescOnce sync.Once 1292 file_ligato_vpp_srv6_srv6_proto_rawDescData = file_ligato_vpp_srv6_srv6_proto_rawDesc 1293 ) 1294 1295 func file_ligato_vpp_srv6_srv6_proto_rawDescGZIP() []byte { 1296 file_ligato_vpp_srv6_srv6_proto_rawDescOnce.Do(func() { 1297 file_ligato_vpp_srv6_srv6_proto_rawDescData = protoimpl.X.CompressGZIP(file_ligato_vpp_srv6_srv6_proto_rawDescData) 1298 }) 1299 return file_ligato_vpp_srv6_srv6_proto_rawDescData 1300 } 1301 1302 var file_ligato_vpp_srv6_srv6_proto_msgTypes = make([]protoimpl.MessageInfo, 16) 1303 var file_ligato_vpp_srv6_srv6_proto_goTypes = []interface{}{ 1304 (*LocalSID)(nil), // 0: ligato.vpp.srv6.LocalSID 1305 (*Policy)(nil), // 1: ligato.vpp.srv6.Policy 1306 (*Steering)(nil), // 2: ligato.vpp.srv6.Steering 1307 (*SRv6Global)(nil), // 3: ligato.vpp.srv6.SRv6Global 1308 (*LocalSID_End)(nil), // 4: ligato.vpp.srv6.LocalSID.End 1309 (*LocalSID_EndX)(nil), // 5: ligato.vpp.srv6.LocalSID.EndX 1310 (*LocalSID_EndT)(nil), // 6: ligato.vpp.srv6.LocalSID.EndT 1311 (*LocalSID_EndDX2)(nil), // 7: ligato.vpp.srv6.LocalSID.EndDX2 1312 (*LocalSID_EndDX4)(nil), // 8: ligato.vpp.srv6.LocalSID.EndDX4 1313 (*LocalSID_EndDX6)(nil), // 9: ligato.vpp.srv6.LocalSID.EndDX6 1314 (*LocalSID_EndDT4)(nil), // 10: ligato.vpp.srv6.LocalSID.EndDT4 1315 (*LocalSID_EndDT6)(nil), // 11: ligato.vpp.srv6.LocalSID.EndDT6 1316 (*LocalSID_EndAD)(nil), // 12: ligato.vpp.srv6.LocalSID.EndAD 1317 (*Policy_SegmentList)(nil), // 13: ligato.vpp.srv6.Policy.SegmentList 1318 (*Steering_L2Traffic)(nil), // 14: ligato.vpp.srv6.Steering.L2Traffic 1319 (*Steering_L3Traffic)(nil), // 15: ligato.vpp.srv6.Steering.L3Traffic 1320 } 1321 var file_ligato_vpp_srv6_srv6_proto_depIdxs = []int32{ 1322 4, // 0: ligato.vpp.srv6.LocalSID.base_end_function:type_name -> ligato.vpp.srv6.LocalSID.End 1323 5, // 1: ligato.vpp.srv6.LocalSID.end_function_x:type_name -> ligato.vpp.srv6.LocalSID.EndX 1324 6, // 2: ligato.vpp.srv6.LocalSID.end_function_t:type_name -> ligato.vpp.srv6.LocalSID.EndT 1325 7, // 3: ligato.vpp.srv6.LocalSID.end_function_dx2:type_name -> ligato.vpp.srv6.LocalSID.EndDX2 1326 8, // 4: ligato.vpp.srv6.LocalSID.end_function_dx4:type_name -> ligato.vpp.srv6.LocalSID.EndDX4 1327 9, // 5: ligato.vpp.srv6.LocalSID.end_function_dx6:type_name -> ligato.vpp.srv6.LocalSID.EndDX6 1328 10, // 6: ligato.vpp.srv6.LocalSID.end_function_dt4:type_name -> ligato.vpp.srv6.LocalSID.EndDT4 1329 11, // 7: ligato.vpp.srv6.LocalSID.end_function_dt6:type_name -> ligato.vpp.srv6.LocalSID.EndDT6 1330 12, // 8: ligato.vpp.srv6.LocalSID.end_function_ad:type_name -> ligato.vpp.srv6.LocalSID.EndAD 1331 13, // 9: ligato.vpp.srv6.Policy.segment_lists:type_name -> ligato.vpp.srv6.Policy.SegmentList 1332 14, // 10: ligato.vpp.srv6.Steering.l2_traffic:type_name -> ligato.vpp.srv6.Steering.L2Traffic 1333 15, // 11: ligato.vpp.srv6.Steering.l3_traffic:type_name -> ligato.vpp.srv6.Steering.L3Traffic 1334 12, // [12:12] is the sub-list for method output_type 1335 12, // [12:12] is the sub-list for method input_type 1336 12, // [12:12] is the sub-list for extension type_name 1337 12, // [12:12] is the sub-list for extension extendee 1338 0, // [0:12] is the sub-list for field type_name 1339 } 1340 1341 func init() { file_ligato_vpp_srv6_srv6_proto_init() } 1342 func file_ligato_vpp_srv6_srv6_proto_init() { 1343 if File_ligato_vpp_srv6_srv6_proto != nil { 1344 return 1345 } 1346 if !protoimpl.UnsafeEnabled { 1347 file_ligato_vpp_srv6_srv6_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1348 switch v := v.(*LocalSID); i { 1349 case 0: 1350 return &v.state 1351 case 1: 1352 return &v.sizeCache 1353 case 2: 1354 return &v.unknownFields 1355 default: 1356 return nil 1357 } 1358 } 1359 file_ligato_vpp_srv6_srv6_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1360 switch v := v.(*Policy); i { 1361 case 0: 1362 return &v.state 1363 case 1: 1364 return &v.sizeCache 1365 case 2: 1366 return &v.unknownFields 1367 default: 1368 return nil 1369 } 1370 } 1371 file_ligato_vpp_srv6_srv6_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1372 switch v := v.(*Steering); i { 1373 case 0: 1374 return &v.state 1375 case 1: 1376 return &v.sizeCache 1377 case 2: 1378 return &v.unknownFields 1379 default: 1380 return nil 1381 } 1382 } 1383 file_ligato_vpp_srv6_srv6_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1384 switch v := v.(*SRv6Global); i { 1385 case 0: 1386 return &v.state 1387 case 1: 1388 return &v.sizeCache 1389 case 2: 1390 return &v.unknownFields 1391 default: 1392 return nil 1393 } 1394 } 1395 file_ligato_vpp_srv6_srv6_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1396 switch v := v.(*LocalSID_End); i { 1397 case 0: 1398 return &v.state 1399 case 1: 1400 return &v.sizeCache 1401 case 2: 1402 return &v.unknownFields 1403 default: 1404 return nil 1405 } 1406 } 1407 file_ligato_vpp_srv6_srv6_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1408 switch v := v.(*LocalSID_EndX); i { 1409 case 0: 1410 return &v.state 1411 case 1: 1412 return &v.sizeCache 1413 case 2: 1414 return &v.unknownFields 1415 default: 1416 return nil 1417 } 1418 } 1419 file_ligato_vpp_srv6_srv6_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1420 switch v := v.(*LocalSID_EndT); i { 1421 case 0: 1422 return &v.state 1423 case 1: 1424 return &v.sizeCache 1425 case 2: 1426 return &v.unknownFields 1427 default: 1428 return nil 1429 } 1430 } 1431 file_ligato_vpp_srv6_srv6_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 1432 switch v := v.(*LocalSID_EndDX2); i { 1433 case 0: 1434 return &v.state 1435 case 1: 1436 return &v.sizeCache 1437 case 2: 1438 return &v.unknownFields 1439 default: 1440 return nil 1441 } 1442 } 1443 file_ligato_vpp_srv6_srv6_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 1444 switch v := v.(*LocalSID_EndDX4); i { 1445 case 0: 1446 return &v.state 1447 case 1: 1448 return &v.sizeCache 1449 case 2: 1450 return &v.unknownFields 1451 default: 1452 return nil 1453 } 1454 } 1455 file_ligato_vpp_srv6_srv6_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 1456 switch v := v.(*LocalSID_EndDX6); i { 1457 case 0: 1458 return &v.state 1459 case 1: 1460 return &v.sizeCache 1461 case 2: 1462 return &v.unknownFields 1463 default: 1464 return nil 1465 } 1466 } 1467 file_ligato_vpp_srv6_srv6_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 1468 switch v := v.(*LocalSID_EndDT4); i { 1469 case 0: 1470 return &v.state 1471 case 1: 1472 return &v.sizeCache 1473 case 2: 1474 return &v.unknownFields 1475 default: 1476 return nil 1477 } 1478 } 1479 file_ligato_vpp_srv6_srv6_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 1480 switch v := v.(*LocalSID_EndDT6); i { 1481 case 0: 1482 return &v.state 1483 case 1: 1484 return &v.sizeCache 1485 case 2: 1486 return &v.unknownFields 1487 default: 1488 return nil 1489 } 1490 } 1491 file_ligato_vpp_srv6_srv6_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 1492 switch v := v.(*LocalSID_EndAD); i { 1493 case 0: 1494 return &v.state 1495 case 1: 1496 return &v.sizeCache 1497 case 2: 1498 return &v.unknownFields 1499 default: 1500 return nil 1501 } 1502 } 1503 file_ligato_vpp_srv6_srv6_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 1504 switch v := v.(*Policy_SegmentList); i { 1505 case 0: 1506 return &v.state 1507 case 1: 1508 return &v.sizeCache 1509 case 2: 1510 return &v.unknownFields 1511 default: 1512 return nil 1513 } 1514 } 1515 file_ligato_vpp_srv6_srv6_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 1516 switch v := v.(*Steering_L2Traffic); i { 1517 case 0: 1518 return &v.state 1519 case 1: 1520 return &v.sizeCache 1521 case 2: 1522 return &v.unknownFields 1523 default: 1524 return nil 1525 } 1526 } 1527 file_ligato_vpp_srv6_srv6_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 1528 switch v := v.(*Steering_L3Traffic); i { 1529 case 0: 1530 return &v.state 1531 case 1: 1532 return &v.sizeCache 1533 case 2: 1534 return &v.unknownFields 1535 default: 1536 return nil 1537 } 1538 } 1539 } 1540 file_ligato_vpp_srv6_srv6_proto_msgTypes[0].OneofWrappers = []interface{}{ 1541 (*LocalSID_BaseEndFunction)(nil), 1542 (*LocalSID_EndFunctionX)(nil), 1543 (*LocalSID_EndFunctionT)(nil), 1544 (*LocalSID_EndFunctionDx2)(nil), 1545 (*LocalSID_EndFunctionDx4)(nil), 1546 (*LocalSID_EndFunctionDx6)(nil), 1547 (*LocalSID_EndFunctionDt4)(nil), 1548 (*LocalSID_EndFunctionDt6)(nil), 1549 (*LocalSID_EndFunctionAd)(nil), 1550 } 1551 file_ligato_vpp_srv6_srv6_proto_msgTypes[2].OneofWrappers = []interface{}{ 1552 (*Steering_PolicyBsid)(nil), 1553 (*Steering_PolicyIndex)(nil), 1554 (*Steering_L2Traffic_)(nil), 1555 (*Steering_L3Traffic_)(nil), 1556 } 1557 type x struct{} 1558 out := protoimpl.TypeBuilder{ 1559 File: protoimpl.DescBuilder{ 1560 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1561 RawDescriptor: file_ligato_vpp_srv6_srv6_proto_rawDesc, 1562 NumEnums: 0, 1563 NumMessages: 16, 1564 NumExtensions: 0, 1565 NumServices: 0, 1566 }, 1567 GoTypes: file_ligato_vpp_srv6_srv6_proto_goTypes, 1568 DependencyIndexes: file_ligato_vpp_srv6_srv6_proto_depIdxs, 1569 MessageInfos: file_ligato_vpp_srv6_srv6_proto_msgTypes, 1570 }.Build() 1571 File_ligato_vpp_srv6_srv6_proto = out.File 1572 file_ligato_vpp_srv6_srv6_proto_rawDesc = nil 1573 file_ligato_vpp_srv6_srv6_proto_goTypes = nil 1574 file_ligato_vpp_srv6_srv6_proto_depIdxs = nil 1575 }