go.ligato.io/vpp-agent/v3@v3.5.0/proto/ligato/vpp/interfaces/interface.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/interfaces/interface.proto 6 7 package vpp_interfaces 8 9 import ( 10 _ "go.ligato.io/vpp-agent/v3/proto/ligato" 11 ipsec "go.ligato.io/vpp-agent/v3/proto/ligato/vpp/ipsec" 12 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 13 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 14 reflect "reflect" 15 sync "sync" 16 ) 17 18 const ( 19 // Verify that this generated code is sufficiently up-to-date. 20 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 21 // Verify that runtime/protoimpl is sufficiently up-to-date. 22 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 23 ) 24 25 // Type defines VPP interface types. 26 type Interface_Type int32 27 28 const ( 29 Interface_UNDEFINED_TYPE Interface_Type = 0 30 Interface_SUB_INTERFACE Interface_Type = 1 31 Interface_SOFTWARE_LOOPBACK Interface_Type = 2 32 Interface_DPDK Interface_Type = 3 33 Interface_MEMIF Interface_Type = 4 34 Interface_TAP Interface_Type = 5 35 Interface_AF_PACKET Interface_Type = 6 36 Interface_VXLAN_TUNNEL Interface_Type = 7 37 // Deprecated: Do not use. 38 Interface_IPSEC_TUNNEL Interface_Type = 8 // Deprecated in VPP 20.01+. Use IPIP_TUNNEL + ipsec.TunnelProtection instead. 39 Interface_VMXNET3_INTERFACE Interface_Type = 9 40 Interface_BOND_INTERFACE Interface_Type = 10 41 Interface_GRE_TUNNEL Interface_Type = 11 42 Interface_GTPU_TUNNEL Interface_Type = 12 43 Interface_IPIP_TUNNEL Interface_Type = 13 44 Interface_WIREGUARD_TUNNEL Interface_Type = 14 45 Interface_RDMA Interface_Type = 15 46 ) 47 48 // Enum value maps for Interface_Type. 49 var ( 50 Interface_Type_name = map[int32]string{ 51 0: "UNDEFINED_TYPE", 52 1: "SUB_INTERFACE", 53 2: "SOFTWARE_LOOPBACK", 54 3: "DPDK", 55 4: "MEMIF", 56 5: "TAP", 57 6: "AF_PACKET", 58 7: "VXLAN_TUNNEL", 59 8: "IPSEC_TUNNEL", 60 9: "VMXNET3_INTERFACE", 61 10: "BOND_INTERFACE", 62 11: "GRE_TUNNEL", 63 12: "GTPU_TUNNEL", 64 13: "IPIP_TUNNEL", 65 14: "WIREGUARD_TUNNEL", 66 15: "RDMA", 67 } 68 Interface_Type_value = map[string]int32{ 69 "UNDEFINED_TYPE": 0, 70 "SUB_INTERFACE": 1, 71 "SOFTWARE_LOOPBACK": 2, 72 "DPDK": 3, 73 "MEMIF": 4, 74 "TAP": 5, 75 "AF_PACKET": 6, 76 "VXLAN_TUNNEL": 7, 77 "IPSEC_TUNNEL": 8, 78 "VMXNET3_INTERFACE": 9, 79 "BOND_INTERFACE": 10, 80 "GRE_TUNNEL": 11, 81 "GTPU_TUNNEL": 12, 82 "IPIP_TUNNEL": 13, 83 "WIREGUARD_TUNNEL": 14, 84 "RDMA": 15, 85 } 86 ) 87 88 func (x Interface_Type) Enum() *Interface_Type { 89 p := new(Interface_Type) 90 *p = x 91 return p 92 } 93 94 func (x Interface_Type) String() string { 95 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 96 } 97 98 func (Interface_Type) Descriptor() protoreflect.EnumDescriptor { 99 return file_ligato_vpp_interfaces_interface_proto_enumTypes[0].Descriptor() 100 } 101 102 func (Interface_Type) Type() protoreflect.EnumType { 103 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[0] 104 } 105 106 func (x Interface_Type) Number() protoreflect.EnumNumber { 107 return protoreflect.EnumNumber(x) 108 } 109 110 // Deprecated: Use Interface_Type.Descriptor instead. 111 func (Interface_Type) EnumDescriptor() ([]byte, []int) { 112 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{0, 0} 113 } 114 115 // Type definition is from: vpp/include/vnet/interface.h 116 type Interface_RxMode_Type int32 117 118 const ( 119 Interface_RxMode_UNKNOWN Interface_RxMode_Type = 0 120 Interface_RxMode_POLLING Interface_RxMode_Type = 1 121 Interface_RxMode_INTERRUPT Interface_RxMode_Type = 2 122 Interface_RxMode_ADAPTIVE Interface_RxMode_Type = 3 123 Interface_RxMode_DEFAULT Interface_RxMode_Type = 4 124 ) 125 126 // Enum value maps for Interface_RxMode_Type. 127 var ( 128 Interface_RxMode_Type_name = map[int32]string{ 129 0: "UNKNOWN", 130 1: "POLLING", 131 2: "INTERRUPT", 132 3: "ADAPTIVE", 133 4: "DEFAULT", 134 } 135 Interface_RxMode_Type_value = map[string]int32{ 136 "UNKNOWN": 0, 137 "POLLING": 1, 138 "INTERRUPT": 2, 139 "ADAPTIVE": 3, 140 "DEFAULT": 4, 141 } 142 ) 143 144 func (x Interface_RxMode_Type) Enum() *Interface_RxMode_Type { 145 p := new(Interface_RxMode_Type) 146 *p = x 147 return p 148 } 149 150 func (x Interface_RxMode_Type) String() string { 151 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 152 } 153 154 func (Interface_RxMode_Type) Descriptor() protoreflect.EnumDescriptor { 155 return file_ligato_vpp_interfaces_interface_proto_enumTypes[1].Descriptor() 156 } 157 158 func (Interface_RxMode_Type) Type() protoreflect.EnumType { 159 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[1] 160 } 161 162 func (x Interface_RxMode_Type) Number() protoreflect.EnumNumber { 163 return protoreflect.EnumNumber(x) 164 } 165 166 // Deprecated: Use Interface_RxMode_Type.Descriptor instead. 167 func (Interface_RxMode_Type) EnumDescriptor() ([]byte, []int) { 168 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{0, 2, 0} 169 } 170 171 type SubInterface_TagRewriteOptions int32 172 173 const ( 174 SubInterface_DISABLED SubInterface_TagRewriteOptions = 0 175 SubInterface_PUSH1 SubInterface_TagRewriteOptions = 1 176 SubInterface_PUSH2 SubInterface_TagRewriteOptions = 2 177 SubInterface_POP1 SubInterface_TagRewriteOptions = 3 178 SubInterface_POP2 SubInterface_TagRewriteOptions = 4 179 SubInterface_TRANSLATE11 SubInterface_TagRewriteOptions = 5 180 SubInterface_TRANSLATE12 SubInterface_TagRewriteOptions = 6 181 SubInterface_TRANSLATE21 SubInterface_TagRewriteOptions = 7 182 SubInterface_TRANSLATE22 SubInterface_TagRewriteOptions = 8 183 ) 184 185 // Enum value maps for SubInterface_TagRewriteOptions. 186 var ( 187 SubInterface_TagRewriteOptions_name = map[int32]string{ 188 0: "DISABLED", 189 1: "PUSH1", 190 2: "PUSH2", 191 3: "POP1", 192 4: "POP2", 193 5: "TRANSLATE11", 194 6: "TRANSLATE12", 195 7: "TRANSLATE21", 196 8: "TRANSLATE22", 197 } 198 SubInterface_TagRewriteOptions_value = map[string]int32{ 199 "DISABLED": 0, 200 "PUSH1": 1, 201 "PUSH2": 2, 202 "POP1": 3, 203 "POP2": 4, 204 "TRANSLATE11": 5, 205 "TRANSLATE12": 6, 206 "TRANSLATE21": 7, 207 "TRANSLATE22": 8, 208 } 209 ) 210 211 func (x SubInterface_TagRewriteOptions) Enum() *SubInterface_TagRewriteOptions { 212 p := new(SubInterface_TagRewriteOptions) 213 *p = x 214 return p 215 } 216 217 func (x SubInterface_TagRewriteOptions) String() string { 218 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 219 } 220 221 func (SubInterface_TagRewriteOptions) Descriptor() protoreflect.EnumDescriptor { 222 return file_ligato_vpp_interfaces_interface_proto_enumTypes[2].Descriptor() 223 } 224 225 func (SubInterface_TagRewriteOptions) Type() protoreflect.EnumType { 226 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[2] 227 } 228 229 func (x SubInterface_TagRewriteOptions) Number() protoreflect.EnumNumber { 230 return protoreflect.EnumNumber(x) 231 } 232 233 // Deprecated: Use SubInterface_TagRewriteOptions.Descriptor instead. 234 func (SubInterface_TagRewriteOptions) EnumDescriptor() ([]byte, []int) { 235 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{1, 0} 236 } 237 238 type MemifLink_MemifMode int32 239 240 const ( 241 MemifLink_ETHERNET MemifLink_MemifMode = 0 242 MemifLink_IP MemifLink_MemifMode = 1 243 MemifLink_PUNT_INJECT MemifLink_MemifMode = 2 244 ) 245 246 // Enum value maps for MemifLink_MemifMode. 247 var ( 248 MemifLink_MemifMode_name = map[int32]string{ 249 0: "ETHERNET", 250 1: "IP", 251 2: "PUNT_INJECT", 252 } 253 MemifLink_MemifMode_value = map[string]int32{ 254 "ETHERNET": 0, 255 "IP": 1, 256 "PUNT_INJECT": 2, 257 } 258 ) 259 260 func (x MemifLink_MemifMode) Enum() *MemifLink_MemifMode { 261 p := new(MemifLink_MemifMode) 262 *p = x 263 return p 264 } 265 266 func (x MemifLink_MemifMode) String() string { 267 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 268 } 269 270 func (MemifLink_MemifMode) Descriptor() protoreflect.EnumDescriptor { 271 return file_ligato_vpp_interfaces_interface_proto_enumTypes[3].Descriptor() 272 } 273 274 func (MemifLink_MemifMode) Type() protoreflect.EnumType { 275 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[3] 276 } 277 278 func (x MemifLink_MemifMode) Number() protoreflect.EnumNumber { 279 return protoreflect.EnumNumber(x) 280 } 281 282 // Deprecated: Use MemifLink_MemifMode.Descriptor instead. 283 func (MemifLink_MemifMode) EnumDescriptor() ([]byte, []int) { 284 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{2, 0} 285 } 286 287 type VxlanLink_Gpe_Protocol int32 288 289 const ( 290 VxlanLink_Gpe_UNKNOWN VxlanLink_Gpe_Protocol = 0 291 VxlanLink_Gpe_IP4 VxlanLink_Gpe_Protocol = 1 292 VxlanLink_Gpe_IP6 VxlanLink_Gpe_Protocol = 2 293 VxlanLink_Gpe_ETHERNET VxlanLink_Gpe_Protocol = 3 294 VxlanLink_Gpe_NSH VxlanLink_Gpe_Protocol = 4 295 ) 296 297 // Enum value maps for VxlanLink_Gpe_Protocol. 298 var ( 299 VxlanLink_Gpe_Protocol_name = map[int32]string{ 300 0: "UNKNOWN", 301 1: "IP4", 302 2: "IP6", 303 3: "ETHERNET", 304 4: "NSH", 305 } 306 VxlanLink_Gpe_Protocol_value = map[string]int32{ 307 "UNKNOWN": 0, 308 "IP4": 1, 309 "IP6": 2, 310 "ETHERNET": 3, 311 "NSH": 4, 312 } 313 ) 314 315 func (x VxlanLink_Gpe_Protocol) Enum() *VxlanLink_Gpe_Protocol { 316 p := new(VxlanLink_Gpe_Protocol) 317 *p = x 318 return p 319 } 320 321 func (x VxlanLink_Gpe_Protocol) String() string { 322 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 323 } 324 325 func (VxlanLink_Gpe_Protocol) Descriptor() protoreflect.EnumDescriptor { 326 return file_ligato_vpp_interfaces_interface_proto_enumTypes[4].Descriptor() 327 } 328 329 func (VxlanLink_Gpe_Protocol) Type() protoreflect.EnumType { 330 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[4] 331 } 332 333 func (x VxlanLink_Gpe_Protocol) Number() protoreflect.EnumNumber { 334 return protoreflect.EnumNumber(x) 335 } 336 337 // Deprecated: Use VxlanLink_Gpe_Protocol.Descriptor instead. 338 func (VxlanLink_Gpe_Protocol) EnumDescriptor() ([]byte, []int) { 339 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{3, 0, 0} 340 } 341 342 type IPSecLink_Mode int32 343 344 const ( 345 // point-to-point tunnel 346 IPSecLink_POINT_TO_POINT IPSecLink_Mode = 0 347 // point-to multipoint tunnel (supported starting from VPP 20.05) 348 IPSecLink_POINT_TO_MULTIPOINT IPSecLink_Mode = 1 349 ) 350 351 // Enum value maps for IPSecLink_Mode. 352 var ( 353 IPSecLink_Mode_name = map[int32]string{ 354 0: "POINT_TO_POINT", 355 1: "POINT_TO_MULTIPOINT", 356 } 357 IPSecLink_Mode_value = map[string]int32{ 358 "POINT_TO_POINT": 0, 359 "POINT_TO_MULTIPOINT": 1, 360 } 361 ) 362 363 func (x IPSecLink_Mode) Enum() *IPSecLink_Mode { 364 p := new(IPSecLink_Mode) 365 *p = x 366 return p 367 } 368 369 func (x IPSecLink_Mode) String() string { 370 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 371 } 372 373 func (IPSecLink_Mode) Descriptor() protoreflect.EnumDescriptor { 374 return file_ligato_vpp_interfaces_interface_proto_enumTypes[5].Descriptor() 375 } 376 377 func (IPSecLink_Mode) Type() protoreflect.EnumType { 378 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[5] 379 } 380 381 func (x IPSecLink_Mode) Number() protoreflect.EnumNumber { 382 return protoreflect.EnumNumber(x) 383 } 384 385 // Deprecated: Use IPSecLink_Mode.Descriptor instead. 386 func (IPSecLink_Mode) EnumDescriptor() ([]byte, []int) { 387 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{6, 0} 388 } 389 390 type BondLink_Mode int32 391 392 const ( 393 BondLink_UNKNOWN BondLink_Mode = 0 394 BondLink_ROUND_ROBIN BondLink_Mode = 1 395 BondLink_ACTIVE_BACKUP BondLink_Mode = 2 396 BondLink_XOR BondLink_Mode = 3 397 BondLink_BROADCAST BondLink_Mode = 4 398 BondLink_LACP BondLink_Mode = 5 399 ) 400 401 // Enum value maps for BondLink_Mode. 402 var ( 403 BondLink_Mode_name = map[int32]string{ 404 0: "UNKNOWN", 405 1: "ROUND_ROBIN", 406 2: "ACTIVE_BACKUP", 407 3: "XOR", 408 4: "BROADCAST", 409 5: "LACP", 410 } 411 BondLink_Mode_value = map[string]int32{ 412 "UNKNOWN": 0, 413 "ROUND_ROBIN": 1, 414 "ACTIVE_BACKUP": 2, 415 "XOR": 3, 416 "BROADCAST": 4, 417 "LACP": 5, 418 } 419 ) 420 421 func (x BondLink_Mode) Enum() *BondLink_Mode { 422 p := new(BondLink_Mode) 423 *p = x 424 return p 425 } 426 427 func (x BondLink_Mode) String() string { 428 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 429 } 430 431 func (BondLink_Mode) Descriptor() protoreflect.EnumDescriptor { 432 return file_ligato_vpp_interfaces_interface_proto_enumTypes[6].Descriptor() 433 } 434 435 func (BondLink_Mode) Type() protoreflect.EnumType { 436 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[6] 437 } 438 439 func (x BondLink_Mode) Number() protoreflect.EnumNumber { 440 return protoreflect.EnumNumber(x) 441 } 442 443 // Deprecated: Use BondLink_Mode.Descriptor instead. 444 func (BondLink_Mode) EnumDescriptor() ([]byte, []int) { 445 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{8, 0} 446 } 447 448 type BondLink_LoadBalance int32 449 450 const ( 451 BondLink_L2 BondLink_LoadBalance = 0 452 BondLink_L34 BondLink_LoadBalance = 1 453 BondLink_L23 BondLink_LoadBalance = 2 454 // Round robin 455 BondLink_RR BondLink_LoadBalance = 3 456 // Broadcast 457 BondLink_BC BondLink_LoadBalance = 4 458 // Active backup 459 BondLink_AB BondLink_LoadBalance = 5 460 ) 461 462 // Enum value maps for BondLink_LoadBalance. 463 var ( 464 BondLink_LoadBalance_name = map[int32]string{ 465 0: "L2", 466 1: "L34", 467 2: "L23", 468 3: "RR", 469 4: "BC", 470 5: "AB", 471 } 472 BondLink_LoadBalance_value = map[string]int32{ 473 "L2": 0, 474 "L34": 1, 475 "L23": 2, 476 "RR": 3, 477 "BC": 4, 478 "AB": 5, 479 } 480 ) 481 482 func (x BondLink_LoadBalance) Enum() *BondLink_LoadBalance { 483 p := new(BondLink_LoadBalance) 484 *p = x 485 return p 486 } 487 488 func (x BondLink_LoadBalance) String() string { 489 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 490 } 491 492 func (BondLink_LoadBalance) Descriptor() protoreflect.EnumDescriptor { 493 return file_ligato_vpp_interfaces_interface_proto_enumTypes[7].Descriptor() 494 } 495 496 func (BondLink_LoadBalance) Type() protoreflect.EnumType { 497 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[7] 498 } 499 500 func (x BondLink_LoadBalance) Number() protoreflect.EnumNumber { 501 return protoreflect.EnumNumber(x) 502 } 503 504 // Deprecated: Use BondLink_LoadBalance.Descriptor instead. 505 func (BondLink_LoadBalance) EnumDescriptor() ([]byte, []int) { 506 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{8, 1} 507 } 508 509 type GreLink_Type int32 510 511 const ( 512 GreLink_UNKNOWN GreLink_Type = 0 513 // L3 GRE (i.e. this tunnel is in L3 mode) 514 GreLink_L3 GreLink_Type = 1 515 // TEB - Transparent Ethernet Bridging - the tunnel is in L2 mode 516 GreLink_TEB GreLink_Type = 2 517 // ERSPAN - the tunnel is for port mirror SPAN output 518 GreLink_ERSPAN GreLink_Type = 3 519 ) 520 521 // Enum value maps for GreLink_Type. 522 var ( 523 GreLink_Type_name = map[int32]string{ 524 0: "UNKNOWN", 525 1: "L3", 526 2: "TEB", 527 3: "ERSPAN", 528 } 529 GreLink_Type_value = map[string]int32{ 530 "UNKNOWN": 0, 531 "L3": 1, 532 "TEB": 2, 533 "ERSPAN": 3, 534 } 535 ) 536 537 func (x GreLink_Type) Enum() *GreLink_Type { 538 p := new(GreLink_Type) 539 *p = x 540 return p 541 } 542 543 func (x GreLink_Type) String() string { 544 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 545 } 546 547 func (GreLink_Type) Descriptor() protoreflect.EnumDescriptor { 548 return file_ligato_vpp_interfaces_interface_proto_enumTypes[8].Descriptor() 549 } 550 551 func (GreLink_Type) Type() protoreflect.EnumType { 552 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[8] 553 } 554 555 func (x GreLink_Type) Number() protoreflect.EnumNumber { 556 return protoreflect.EnumNumber(x) 557 } 558 559 // Deprecated: Use GreLink_Type.Descriptor instead. 560 func (GreLink_Type) EnumDescriptor() ([]byte, []int) { 561 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{9, 0} 562 } 563 564 type GtpuLink_NextNode int32 565 566 const ( 567 // The default next node is l2-input 568 GtpuLink_DEFAULT GtpuLink_NextNode = 0 569 // l2-input 570 GtpuLink_L2 GtpuLink_NextNode = 1 571 // ip4-input 572 GtpuLink_IP4 GtpuLink_NextNode = 2 573 // ip6-input 574 GtpuLink_IP6 GtpuLink_NextNode = 3 575 ) 576 577 // Enum value maps for GtpuLink_NextNode. 578 var ( 579 GtpuLink_NextNode_name = map[int32]string{ 580 0: "DEFAULT", 581 1: "L2", 582 2: "IP4", 583 3: "IP6", 584 } 585 GtpuLink_NextNode_value = map[string]int32{ 586 "DEFAULT": 0, 587 "L2": 1, 588 "IP4": 2, 589 "IP6": 3, 590 } 591 ) 592 593 func (x GtpuLink_NextNode) Enum() *GtpuLink_NextNode { 594 p := new(GtpuLink_NextNode) 595 *p = x 596 return p 597 } 598 599 func (x GtpuLink_NextNode) String() string { 600 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 601 } 602 603 func (GtpuLink_NextNode) Descriptor() protoreflect.EnumDescriptor { 604 return file_ligato_vpp_interfaces_interface_proto_enumTypes[9].Descriptor() 605 } 606 607 func (GtpuLink_NextNode) Type() protoreflect.EnumType { 608 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[9] 609 } 610 611 func (x GtpuLink_NextNode) Number() protoreflect.EnumNumber { 612 return protoreflect.EnumNumber(x) 613 } 614 615 // Deprecated: Use GtpuLink_NextNode.Descriptor instead. 616 func (GtpuLink_NextNode) EnumDescriptor() ([]byte, []int) { 617 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{10, 0} 618 } 619 620 type IPIPLink_Mode int32 621 622 const ( 623 // point-to-point tunnel 624 IPIPLink_POINT_TO_POINT IPIPLink_Mode = 0 625 // point-to multipoint tunnel (supported starting from VPP 20.05) 626 IPIPLink_POINT_TO_MULTIPOINT IPIPLink_Mode = 1 627 ) 628 629 // Enum value maps for IPIPLink_Mode. 630 var ( 631 IPIPLink_Mode_name = map[int32]string{ 632 0: "POINT_TO_POINT", 633 1: "POINT_TO_MULTIPOINT", 634 } 635 IPIPLink_Mode_value = map[string]int32{ 636 "POINT_TO_POINT": 0, 637 "POINT_TO_MULTIPOINT": 1, 638 } 639 ) 640 641 func (x IPIPLink_Mode) Enum() *IPIPLink_Mode { 642 p := new(IPIPLink_Mode) 643 *p = x 644 return p 645 } 646 647 func (x IPIPLink_Mode) String() string { 648 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 649 } 650 651 func (IPIPLink_Mode) Descriptor() protoreflect.EnumDescriptor { 652 return file_ligato_vpp_interfaces_interface_proto_enumTypes[10].Descriptor() 653 } 654 655 func (IPIPLink_Mode) Type() protoreflect.EnumType { 656 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[10] 657 } 658 659 func (x IPIPLink_Mode) Number() protoreflect.EnumNumber { 660 return protoreflect.EnumNumber(x) 661 } 662 663 // Deprecated: Use IPIPLink_Mode.Descriptor instead. 664 func (IPIPLink_Mode) EnumDescriptor() ([]byte, []int) { 665 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{11, 0} 666 } 667 668 type RDMALink_Mode int32 669 670 const ( 671 RDMALink_AUTO RDMALink_Mode = 0 672 // InfiniBand Verb (using libibverb). 673 RDMALink_IBV RDMALink_Mode = 1 674 // Direct Verb allows the driver to access the NIC HW RX/TX rings directly 675 // instead of having to go through libibverb and suffering associated overhead. 676 // It will be automatically selected if the adapter supports it. 677 RDMALink_DV RDMALink_Mode = 2 678 ) 679 680 // Enum value maps for RDMALink_Mode. 681 var ( 682 RDMALink_Mode_name = map[int32]string{ 683 0: "AUTO", 684 1: "IBV", 685 2: "DV", 686 } 687 RDMALink_Mode_value = map[string]int32{ 688 "AUTO": 0, 689 "IBV": 1, 690 "DV": 2, 691 } 692 ) 693 694 func (x RDMALink_Mode) Enum() *RDMALink_Mode { 695 p := new(RDMALink_Mode) 696 *p = x 697 return p 698 } 699 700 func (x RDMALink_Mode) String() string { 701 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 702 } 703 704 func (RDMALink_Mode) Descriptor() protoreflect.EnumDescriptor { 705 return file_ligato_vpp_interfaces_interface_proto_enumTypes[11].Descriptor() 706 } 707 708 func (RDMALink_Mode) Type() protoreflect.EnumType { 709 return &file_ligato_vpp_interfaces_interface_proto_enumTypes[11] 710 } 711 712 func (x RDMALink_Mode) Number() protoreflect.EnumNumber { 713 return protoreflect.EnumNumber(x) 714 } 715 716 // Deprecated: Use RDMALink_Mode.Descriptor instead. 717 func (RDMALink_Mode) EnumDescriptor() ([]byte, []int) { 718 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{13, 0} 719 } 720 721 // Interface defines a VPP interface. 722 type Interface struct { 723 state protoimpl.MessageState 724 sizeCache protoimpl.SizeCache 725 unknownFields protoimpl.UnknownFields 726 727 // Name is mandatory field representing logical name for the interface. 728 // It must be unique across all configured VPP interfaces. 729 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 730 // Type represents the type of VPP interface and it must match the actual Link. 731 Type Interface_Type `protobuf:"varint,2,opt,name=type,proto3,enum=ligato.vpp.interfaces.Interface_Type" json:"type,omitempty"` 732 // Enabled controls if the interface should be UP. 733 Enabled bool `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"` 734 // PhysAddress represents physical address (MAC) of the interface. 735 // Random address will be assigned if left empty. 736 PhysAddress string `protobuf:"bytes,4,opt,name=phys_address,json=physAddress,proto3" json:"phys_address,omitempty"` 737 // IPAddresses define list of IP addresses for the interface and must be 738 // defined in the following format: <ipAddress>/<ipPrefix>. 739 // Interface IP address can be also allocated via netalloc plugin and 740 // referenced here, see: api/models/netalloc/netalloc.proto 741 IpAddresses []string `protobuf:"bytes,5,rep,name=ip_addresses,json=ipAddresses,proto3" json:"ip_addresses,omitempty"` 742 // Vrf defines the ID of VRF table that the interface is assigned to. 743 // The VRF table must be explicitely configured (see api/models/vpp/l3/vrf.proto). 744 // When using unnumbered interface the actual vrf is inherited from 745 // the interface referenced by the numbered interface and this field is ignored. 746 Vrf uint32 `protobuf:"varint,6,opt,name=vrf,proto3" json:"vrf,omitempty"` 747 // SetDhcpClient enables DHCP client on interface. 748 SetDhcpClient bool `protobuf:"varint,7,opt,name=set_dhcp_client,json=setDhcpClient,proto3" json:"set_dhcp_client,omitempty"` 749 Ip6Nd *Interface_IP6ND `protobuf:"bytes,14,opt,name=ip6_nd,json=ip6Nd,proto3" json:"ip6_nd,omitempty"` 750 // Mtu sets MTU (Maximum Transmission Unit) for this interface. 751 // If set to zero, default MTU (usually 9216) will be used. 752 Mtu uint32 `protobuf:"varint,8,opt,name=mtu,proto3" json:"mtu,omitempty"` 753 Unnumbered *Interface_Unnumbered `protobuf:"bytes,9,opt,name=unnumbered,proto3" json:"unnumbered,omitempty"` 754 RxModes []*Interface_RxMode `protobuf:"bytes,12,rep,name=rx_modes,json=rxModes,proto3" json:"rx_modes,omitempty"` 755 RxPlacements []*Interface_RxPlacement `protobuf:"bytes,13,rep,name=rx_placements,json=rxPlacements,proto3" json:"rx_placements,omitempty"` 756 // Link defines configuration for specific interface types. 757 // It can be nil for some interfaces types like: loopback and DPDK. 758 // 759 // Types that are assignable to Link: 760 // *Interface_Sub 761 // *Interface_Memif 762 // *Interface_Afpacket 763 // *Interface_Tap 764 // *Interface_Vxlan 765 // *Interface_Ipsec 766 // *Interface_VmxNet3 767 // *Interface_Bond 768 // *Interface_Gre 769 // *Interface_Gtpu 770 // *Interface_Ipip 771 // *Interface_Wireguard 772 // *Interface_Rdma 773 Link isInterface_Link `protobuf_oneof:"link"` 774 } 775 776 func (x *Interface) Reset() { 777 *x = Interface{} 778 if protoimpl.UnsafeEnabled { 779 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[0] 780 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 781 ms.StoreMessageInfo(mi) 782 } 783 } 784 785 func (x *Interface) String() string { 786 return protoimpl.X.MessageStringOf(x) 787 } 788 789 func (*Interface) ProtoMessage() {} 790 791 func (x *Interface) ProtoReflect() protoreflect.Message { 792 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[0] 793 if protoimpl.UnsafeEnabled && x != nil { 794 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 795 if ms.LoadMessageInfo() == nil { 796 ms.StoreMessageInfo(mi) 797 } 798 return ms 799 } 800 return mi.MessageOf(x) 801 } 802 803 // Deprecated: Use Interface.ProtoReflect.Descriptor instead. 804 func (*Interface) Descriptor() ([]byte, []int) { 805 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{0} 806 } 807 808 func (x *Interface) GetName() string { 809 if x != nil { 810 return x.Name 811 } 812 return "" 813 } 814 815 func (x *Interface) GetType() Interface_Type { 816 if x != nil { 817 return x.Type 818 } 819 return Interface_UNDEFINED_TYPE 820 } 821 822 func (x *Interface) GetEnabled() bool { 823 if x != nil { 824 return x.Enabled 825 } 826 return false 827 } 828 829 func (x *Interface) GetPhysAddress() string { 830 if x != nil { 831 return x.PhysAddress 832 } 833 return "" 834 } 835 836 func (x *Interface) GetIpAddresses() []string { 837 if x != nil { 838 return x.IpAddresses 839 } 840 return nil 841 } 842 843 func (x *Interface) GetVrf() uint32 { 844 if x != nil { 845 return x.Vrf 846 } 847 return 0 848 } 849 850 func (x *Interface) GetSetDhcpClient() bool { 851 if x != nil { 852 return x.SetDhcpClient 853 } 854 return false 855 } 856 857 func (x *Interface) GetIp6Nd() *Interface_IP6ND { 858 if x != nil { 859 return x.Ip6Nd 860 } 861 return nil 862 } 863 864 func (x *Interface) GetMtu() uint32 { 865 if x != nil { 866 return x.Mtu 867 } 868 return 0 869 } 870 871 func (x *Interface) GetUnnumbered() *Interface_Unnumbered { 872 if x != nil { 873 return x.Unnumbered 874 } 875 return nil 876 } 877 878 func (x *Interface) GetRxModes() []*Interface_RxMode { 879 if x != nil { 880 return x.RxModes 881 } 882 return nil 883 } 884 885 func (x *Interface) GetRxPlacements() []*Interface_RxPlacement { 886 if x != nil { 887 return x.RxPlacements 888 } 889 return nil 890 } 891 892 func (m *Interface) GetLink() isInterface_Link { 893 if m != nil { 894 return m.Link 895 } 896 return nil 897 } 898 899 func (x *Interface) GetSub() *SubInterface { 900 if x, ok := x.GetLink().(*Interface_Sub); ok { 901 return x.Sub 902 } 903 return nil 904 } 905 906 func (x *Interface) GetMemif() *MemifLink { 907 if x, ok := x.GetLink().(*Interface_Memif); ok { 908 return x.Memif 909 } 910 return nil 911 } 912 913 func (x *Interface) GetAfpacket() *AfpacketLink { 914 if x, ok := x.GetLink().(*Interface_Afpacket); ok { 915 return x.Afpacket 916 } 917 return nil 918 } 919 920 func (x *Interface) GetTap() *TapLink { 921 if x, ok := x.GetLink().(*Interface_Tap); ok { 922 return x.Tap 923 } 924 return nil 925 } 926 927 func (x *Interface) GetVxlan() *VxlanLink { 928 if x, ok := x.GetLink().(*Interface_Vxlan); ok { 929 return x.Vxlan 930 } 931 return nil 932 } 933 934 // Deprecated: Do not use. 935 func (x *Interface) GetIpsec() *IPSecLink { 936 if x, ok := x.GetLink().(*Interface_Ipsec); ok { 937 return x.Ipsec 938 } 939 return nil 940 } 941 942 func (x *Interface) GetVmxNet3() *VmxNet3Link { 943 if x, ok := x.GetLink().(*Interface_VmxNet3); ok { 944 return x.VmxNet3 945 } 946 return nil 947 } 948 949 func (x *Interface) GetBond() *BondLink { 950 if x, ok := x.GetLink().(*Interface_Bond); ok { 951 return x.Bond 952 } 953 return nil 954 } 955 956 func (x *Interface) GetGre() *GreLink { 957 if x, ok := x.GetLink().(*Interface_Gre); ok { 958 return x.Gre 959 } 960 return nil 961 } 962 963 func (x *Interface) GetGtpu() *GtpuLink { 964 if x, ok := x.GetLink().(*Interface_Gtpu); ok { 965 return x.Gtpu 966 } 967 return nil 968 } 969 970 func (x *Interface) GetIpip() *IPIPLink { 971 if x, ok := x.GetLink().(*Interface_Ipip); ok { 972 return x.Ipip 973 } 974 return nil 975 } 976 977 func (x *Interface) GetWireguard() *WireguardLink { 978 if x, ok := x.GetLink().(*Interface_Wireguard); ok { 979 return x.Wireguard 980 } 981 return nil 982 } 983 984 func (x *Interface) GetRdma() *RDMALink { 985 if x, ok := x.GetLink().(*Interface_Rdma); ok { 986 return x.Rdma 987 } 988 return nil 989 } 990 991 type isInterface_Link interface { 992 isInterface_Link() 993 } 994 995 type Interface_Sub struct { 996 Sub *SubInterface `protobuf:"bytes,100,opt,name=sub,proto3,oneof"` 997 } 998 999 type Interface_Memif struct { 1000 Memif *MemifLink `protobuf:"bytes,101,opt,name=memif,proto3,oneof"` 1001 } 1002 1003 type Interface_Afpacket struct { 1004 Afpacket *AfpacketLink `protobuf:"bytes,102,opt,name=afpacket,proto3,oneof"` 1005 } 1006 1007 type Interface_Tap struct { 1008 Tap *TapLink `protobuf:"bytes,103,opt,name=tap,proto3,oneof"` 1009 } 1010 1011 type Interface_Vxlan struct { 1012 Vxlan *VxlanLink `protobuf:"bytes,104,opt,name=vxlan,proto3,oneof"` 1013 } 1014 1015 type Interface_Ipsec struct { 1016 // Deprecated: Do not use. 1017 Ipsec *IPSecLink `protobuf:"bytes,105,opt,name=ipsec,proto3,oneof"` // Deprecated in VPP 20.01+. Use IPIP_TUNNEL + ipsec.TunnelProtection instead. 1018 } 1019 1020 type Interface_VmxNet3 struct { 1021 VmxNet3 *VmxNet3Link `protobuf:"bytes,106,opt,name=vmx_net3,json=vmxNet3,proto3,oneof"` 1022 } 1023 1024 type Interface_Bond struct { 1025 Bond *BondLink `protobuf:"bytes,107,opt,name=bond,proto3,oneof"` 1026 } 1027 1028 type Interface_Gre struct { 1029 Gre *GreLink `protobuf:"bytes,108,opt,name=gre,proto3,oneof"` 1030 } 1031 1032 type Interface_Gtpu struct { 1033 Gtpu *GtpuLink `protobuf:"bytes,109,opt,name=gtpu,proto3,oneof"` 1034 } 1035 1036 type Interface_Ipip struct { 1037 Ipip *IPIPLink `protobuf:"bytes,110,opt,name=ipip,proto3,oneof"` 1038 } 1039 1040 type Interface_Wireguard struct { 1041 Wireguard *WireguardLink `protobuf:"bytes,111,opt,name=wireguard,proto3,oneof"` 1042 } 1043 1044 type Interface_Rdma struct { 1045 Rdma *RDMALink `protobuf:"bytes,112,opt,name=rdma,proto3,oneof"` 1046 } 1047 1048 func (*Interface_Sub) isInterface_Link() {} 1049 1050 func (*Interface_Memif) isInterface_Link() {} 1051 1052 func (*Interface_Afpacket) isInterface_Link() {} 1053 1054 func (*Interface_Tap) isInterface_Link() {} 1055 1056 func (*Interface_Vxlan) isInterface_Link() {} 1057 1058 func (*Interface_Ipsec) isInterface_Link() {} 1059 1060 func (*Interface_VmxNet3) isInterface_Link() {} 1061 1062 func (*Interface_Bond) isInterface_Link() {} 1063 1064 func (*Interface_Gre) isInterface_Link() {} 1065 1066 func (*Interface_Gtpu) isInterface_Link() {} 1067 1068 func (*Interface_Ipip) isInterface_Link() {} 1069 1070 func (*Interface_Wireguard) isInterface_Link() {} 1071 1072 func (*Interface_Rdma) isInterface_Link() {} 1073 1074 // SubInterface defines configuration for interface type: SUB_INTERFACE 1075 type SubInterface struct { 1076 state protoimpl.MessageState 1077 sizeCache protoimpl.SizeCache 1078 unknownFields protoimpl.UnknownFields 1079 1080 // Name of the parent (super) interface 1081 ParentName string `protobuf:"bytes,1,opt,name=parent_name,json=parentName,proto3" json:"parent_name,omitempty"` 1082 // SubInterface ID, used as VLAN 1083 SubId uint32 `protobuf:"varint,2,opt,name=sub_id,json=subId,proto3" json:"sub_id,omitempty"` 1084 // VLAN tag rewrite rule applied for given tag for sub-interface 1085 TagRwOption SubInterface_TagRewriteOptions `protobuf:"varint,3,opt,name=tag_rw_option,json=tagRwOption,proto3,enum=ligato.vpp.interfaces.SubInterface_TagRewriteOptions" json:"tag_rw_option,omitempty"` 1086 // Set ether-type of the first tag to dot1q if true, dot1ad otherwise 1087 PushDot1Q bool `protobuf:"varint,4,opt,name=push_dot1q,json=pushDot1q,proto3" json:"push_dot1q,omitempty"` 1088 // First tag (required for PUSH1 and any TRANSLATE) 1089 Tag1 uint32 `protobuf:"varint,5,opt,name=tag1,proto3" json:"tag1,omitempty"` 1090 // Second tag (required for PUSH2 and any TRANSLATE) 1091 Tag2 uint32 `protobuf:"varint,6,opt,name=tag2,proto3" json:"tag2,omitempty"` 1092 } 1093 1094 func (x *SubInterface) Reset() { 1095 *x = SubInterface{} 1096 if protoimpl.UnsafeEnabled { 1097 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[1] 1098 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1099 ms.StoreMessageInfo(mi) 1100 } 1101 } 1102 1103 func (x *SubInterface) String() string { 1104 return protoimpl.X.MessageStringOf(x) 1105 } 1106 1107 func (*SubInterface) ProtoMessage() {} 1108 1109 func (x *SubInterface) ProtoReflect() protoreflect.Message { 1110 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[1] 1111 if protoimpl.UnsafeEnabled && x != nil { 1112 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1113 if ms.LoadMessageInfo() == nil { 1114 ms.StoreMessageInfo(mi) 1115 } 1116 return ms 1117 } 1118 return mi.MessageOf(x) 1119 } 1120 1121 // Deprecated: Use SubInterface.ProtoReflect.Descriptor instead. 1122 func (*SubInterface) Descriptor() ([]byte, []int) { 1123 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{1} 1124 } 1125 1126 func (x *SubInterface) GetParentName() string { 1127 if x != nil { 1128 return x.ParentName 1129 } 1130 return "" 1131 } 1132 1133 func (x *SubInterface) GetSubId() uint32 { 1134 if x != nil { 1135 return x.SubId 1136 } 1137 return 0 1138 } 1139 1140 func (x *SubInterface) GetTagRwOption() SubInterface_TagRewriteOptions { 1141 if x != nil { 1142 return x.TagRwOption 1143 } 1144 return SubInterface_DISABLED 1145 } 1146 1147 func (x *SubInterface) GetPushDot1Q() bool { 1148 if x != nil { 1149 return x.PushDot1Q 1150 } 1151 return false 1152 } 1153 1154 func (x *SubInterface) GetTag1() uint32 { 1155 if x != nil { 1156 return x.Tag1 1157 } 1158 return 0 1159 } 1160 1161 func (x *SubInterface) GetTag2() uint32 { 1162 if x != nil { 1163 return x.Tag2 1164 } 1165 return 0 1166 } 1167 1168 // MemifLink defines configuration for interface type: MEMIF 1169 type MemifLink struct { 1170 state protoimpl.MessageState 1171 sizeCache protoimpl.SizeCache 1172 unknownFields protoimpl.UnknownFields 1173 1174 Mode MemifLink_MemifMode `protobuf:"varint,1,opt,name=mode,proto3,enum=ligato.vpp.interfaces.MemifLink_MemifMode" json:"mode,omitempty"` 1175 Master bool `protobuf:"varint,2,opt,name=master,proto3" json:"master,omitempty"` 1176 // Id is a 32bit integer used to authenticate and match opposite sides of the connection 1177 Id uint32 `protobuf:"varint,3,opt,name=id,proto3" json:"id,omitempty"` 1178 // Filename of the socket used for connection establishment 1179 SocketFilename string `protobuf:"bytes,4,opt,name=socket_filename,json=socketFilename,proto3" json:"socket_filename,omitempty"` 1180 Secret string `protobuf:"bytes,5,opt,name=secret,proto3" json:"secret,omitempty"` 1181 // The number of entries of RX/TX rings 1182 RingSize uint32 `protobuf:"varint,6,opt,name=ring_size,json=ringSize,proto3" json:"ring_size,omitempty"` 1183 // Size of the buffer allocated for each ring entry 1184 BufferSize uint32 `protobuf:"varint,7,opt,name=buffer_size,json=bufferSize,proto3" json:"buffer_size,omitempty"` 1185 // Number of rx queues (only valid for slave) 1186 RxQueues uint32 `protobuf:"varint,8,opt,name=rx_queues,json=rxQueues,proto3" json:"rx_queues,omitempty"` 1187 // Number of tx queues (only valid for slave) 1188 TxQueues uint32 `protobuf:"varint,9,opt,name=tx_queues,json=txQueues,proto3" json:"tx_queues,omitempty"` 1189 } 1190 1191 func (x *MemifLink) Reset() { 1192 *x = MemifLink{} 1193 if protoimpl.UnsafeEnabled { 1194 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[2] 1195 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1196 ms.StoreMessageInfo(mi) 1197 } 1198 } 1199 1200 func (x *MemifLink) String() string { 1201 return protoimpl.X.MessageStringOf(x) 1202 } 1203 1204 func (*MemifLink) ProtoMessage() {} 1205 1206 func (x *MemifLink) ProtoReflect() protoreflect.Message { 1207 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[2] 1208 if protoimpl.UnsafeEnabled && x != nil { 1209 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1210 if ms.LoadMessageInfo() == nil { 1211 ms.StoreMessageInfo(mi) 1212 } 1213 return ms 1214 } 1215 return mi.MessageOf(x) 1216 } 1217 1218 // Deprecated: Use MemifLink.ProtoReflect.Descriptor instead. 1219 func (*MemifLink) Descriptor() ([]byte, []int) { 1220 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{2} 1221 } 1222 1223 func (x *MemifLink) GetMode() MemifLink_MemifMode { 1224 if x != nil { 1225 return x.Mode 1226 } 1227 return MemifLink_ETHERNET 1228 } 1229 1230 func (x *MemifLink) GetMaster() bool { 1231 if x != nil { 1232 return x.Master 1233 } 1234 return false 1235 } 1236 1237 func (x *MemifLink) GetId() uint32 { 1238 if x != nil { 1239 return x.Id 1240 } 1241 return 0 1242 } 1243 1244 func (x *MemifLink) GetSocketFilename() string { 1245 if x != nil { 1246 return x.SocketFilename 1247 } 1248 return "" 1249 } 1250 1251 func (x *MemifLink) GetSecret() string { 1252 if x != nil { 1253 return x.Secret 1254 } 1255 return "" 1256 } 1257 1258 func (x *MemifLink) GetRingSize() uint32 { 1259 if x != nil { 1260 return x.RingSize 1261 } 1262 return 0 1263 } 1264 1265 func (x *MemifLink) GetBufferSize() uint32 { 1266 if x != nil { 1267 return x.BufferSize 1268 } 1269 return 0 1270 } 1271 1272 func (x *MemifLink) GetRxQueues() uint32 { 1273 if x != nil { 1274 return x.RxQueues 1275 } 1276 return 0 1277 } 1278 1279 func (x *MemifLink) GetTxQueues() uint32 { 1280 if x != nil { 1281 return x.TxQueues 1282 } 1283 return 0 1284 } 1285 1286 // VxlanLink defines configuration for interface type: VXLAN_TUNNEL 1287 type VxlanLink struct { 1288 state protoimpl.MessageState 1289 sizeCache protoimpl.SizeCache 1290 unknownFields protoimpl.UnknownFields 1291 1292 // SrcAddress is source VTEP address 1293 SrcAddress string `protobuf:"bytes,1,opt,name=src_address,json=srcAddress,proto3" json:"src_address,omitempty"` 1294 // DstAddress is destination VTEP address 1295 DstAddress string `protobuf:"bytes,2,opt,name=dst_address,json=dstAddress,proto3" json:"dst_address,omitempty"` 1296 // Vni stands for VXLAN Network Identifier 1297 Vni uint32 `protobuf:"varint,3,opt,name=vni,proto3" json:"vni,omitempty"` 1298 // Multicast defines name of multicast interface 1299 Multicast string `protobuf:"bytes,4,opt,name=multicast,proto3" json:"multicast,omitempty"` 1300 Gpe *VxlanLink_Gpe `protobuf:"bytes,5,opt,name=gpe,proto3" json:"gpe,omitempty"` 1301 } 1302 1303 func (x *VxlanLink) Reset() { 1304 *x = VxlanLink{} 1305 if protoimpl.UnsafeEnabled { 1306 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[3] 1307 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1308 ms.StoreMessageInfo(mi) 1309 } 1310 } 1311 1312 func (x *VxlanLink) String() string { 1313 return protoimpl.X.MessageStringOf(x) 1314 } 1315 1316 func (*VxlanLink) ProtoMessage() {} 1317 1318 func (x *VxlanLink) ProtoReflect() protoreflect.Message { 1319 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[3] 1320 if protoimpl.UnsafeEnabled && x != nil { 1321 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1322 if ms.LoadMessageInfo() == nil { 1323 ms.StoreMessageInfo(mi) 1324 } 1325 return ms 1326 } 1327 return mi.MessageOf(x) 1328 } 1329 1330 // Deprecated: Use VxlanLink.ProtoReflect.Descriptor instead. 1331 func (*VxlanLink) Descriptor() ([]byte, []int) { 1332 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{3} 1333 } 1334 1335 func (x *VxlanLink) GetSrcAddress() string { 1336 if x != nil { 1337 return x.SrcAddress 1338 } 1339 return "" 1340 } 1341 1342 func (x *VxlanLink) GetDstAddress() string { 1343 if x != nil { 1344 return x.DstAddress 1345 } 1346 return "" 1347 } 1348 1349 func (x *VxlanLink) GetVni() uint32 { 1350 if x != nil { 1351 return x.Vni 1352 } 1353 return 0 1354 } 1355 1356 func (x *VxlanLink) GetMulticast() string { 1357 if x != nil { 1358 return x.Multicast 1359 } 1360 return "" 1361 } 1362 1363 func (x *VxlanLink) GetGpe() *VxlanLink_Gpe { 1364 if x != nil { 1365 return x.Gpe 1366 } 1367 return nil 1368 } 1369 1370 // AfpacketLink defines configuration for interface type: AF_PACKET 1371 type AfpacketLink struct { 1372 state protoimpl.MessageState 1373 sizeCache protoimpl.SizeCache 1374 unknownFields protoimpl.UnknownFields 1375 1376 // Name of the host (Linux) interface to bind to. 1377 // This type of reference is suitable for scenarios when the target interface 1378 // is not managed (and should not be touched) by the agent. In such cases the interface 1379 // does not have logical name in the agent's namespace and can only be referenced 1380 // by the host interface name (i.e. the name used in the Linux network stack). 1381 // Please note that agent learns about externally created interfaces through netlink 1382 // notifications. 1383 // If, however, the target interface is managed by the agent, then it is recommended 1384 // to use the alternative reference <linux_interface> (see below), pointing to the interface 1385 // by its logical name. One advantage of such approach is, that if AF-PACKET and the target 1386 // Linux interface are requested to be created at the same time, then it can be done inside 1387 // the same transaction because the agent does not rely on any notification from the Linux. 1388 // It is mandatory to define either <host_if_name> or <linux_interface>. 1389 HostIfName string `protobuf:"bytes,1,opt,name=host_if_name,json=hostIfName,proto3" json:"host_if_name,omitempty"` 1390 // Logical name of the Linux interface to bind to. 1391 // This is an alternative interface reference to <host_if_name> and preferred 1392 // if the target interface is managed by the agent and not created externally 1393 // (see comments for <host_if_name> for explanation). 1394 // It is mandatory to define either <host_if_name> or <linux_interface>. 1395 LinuxInterface string `protobuf:"bytes,2,opt,name=linux_interface,json=linuxInterface,proto3" json:"linux_interface,omitempty"` 1396 } 1397 1398 func (x *AfpacketLink) Reset() { 1399 *x = AfpacketLink{} 1400 if protoimpl.UnsafeEnabled { 1401 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[4] 1402 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1403 ms.StoreMessageInfo(mi) 1404 } 1405 } 1406 1407 func (x *AfpacketLink) String() string { 1408 return protoimpl.X.MessageStringOf(x) 1409 } 1410 1411 func (*AfpacketLink) ProtoMessage() {} 1412 1413 func (x *AfpacketLink) ProtoReflect() protoreflect.Message { 1414 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[4] 1415 if protoimpl.UnsafeEnabled && x != nil { 1416 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1417 if ms.LoadMessageInfo() == nil { 1418 ms.StoreMessageInfo(mi) 1419 } 1420 return ms 1421 } 1422 return mi.MessageOf(x) 1423 } 1424 1425 // Deprecated: Use AfpacketLink.ProtoReflect.Descriptor instead. 1426 func (*AfpacketLink) Descriptor() ([]byte, []int) { 1427 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{4} 1428 } 1429 1430 func (x *AfpacketLink) GetHostIfName() string { 1431 if x != nil { 1432 return x.HostIfName 1433 } 1434 return "" 1435 } 1436 1437 func (x *AfpacketLink) GetLinuxInterface() string { 1438 if x != nil { 1439 return x.LinuxInterface 1440 } 1441 return "" 1442 } 1443 1444 // TapLink defines configuration for interface type: TAP 1445 type TapLink struct { 1446 state protoimpl.MessageState 1447 sizeCache protoimpl.SizeCache 1448 unknownFields protoimpl.UnknownFields 1449 1450 // 1 / unset = use the original TAP interface; 2 = use a fast virtio-based TAP 1451 Version uint32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"` 1452 // Name of the TAP interface in the host OS; 1453 // if empty, it will be auto-generated (suitable for combination with TAP_TO_VPP 1454 // interface from Linux ifplugin, because then this name is only temporary anyway) 1455 HostIfName string `protobuf:"bytes,2,opt,name=host_if_name,json=hostIfName,proto3" json:"host_if_name,omitempty"` 1456 // If TAP connects VPP with microservice, fill this parameter with the target 1457 // microservice name - should match with the namespace reference of the associated 1458 // TAP_TO_VPP interface (it is still moved to the namespace by Linux-ifplugin but 1459 // VPP-ifplugin needs to be aware of this dependency) 1460 ToMicroservice string `protobuf:"bytes,3,opt,name=to_microservice,json=toMicroservice,proto3" json:"to_microservice,omitempty"` 1461 // Rx ring buffer size; must be power of 2; default is 256; only for TAP v.2 1462 RxRingSize uint32 `protobuf:"varint,4,opt,name=rx_ring_size,json=rxRingSize,proto3" json:"rx_ring_size,omitempty"` 1463 // Tx ring buffer size; must be power of 2; default is 256; only for TAP v.2 1464 TxRingSize uint32 `protobuf:"varint,5,opt,name=tx_ring_size,json=txRingSize,proto3" json:"tx_ring_size,omitempty"` 1465 // EnableGso enables GSO mode for TAP interface. 1466 EnableGso bool `protobuf:"varint,6,opt,name=enable_gso,json=enableGso,proto3" json:"enable_gso,omitempty"` 1467 // EnableTunnel enables tunnel mode for TAP interface. 1468 EnableTunnel bool `protobuf:"varint,7,opt,name=enable_tunnel,json=enableTunnel,proto3" json:"enable_tunnel,omitempty"` 1469 } 1470 1471 func (x *TapLink) Reset() { 1472 *x = TapLink{} 1473 if protoimpl.UnsafeEnabled { 1474 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[5] 1475 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1476 ms.StoreMessageInfo(mi) 1477 } 1478 } 1479 1480 func (x *TapLink) String() string { 1481 return protoimpl.X.MessageStringOf(x) 1482 } 1483 1484 func (*TapLink) ProtoMessage() {} 1485 1486 func (x *TapLink) ProtoReflect() protoreflect.Message { 1487 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[5] 1488 if protoimpl.UnsafeEnabled && x != nil { 1489 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1490 if ms.LoadMessageInfo() == nil { 1491 ms.StoreMessageInfo(mi) 1492 } 1493 return ms 1494 } 1495 return mi.MessageOf(x) 1496 } 1497 1498 // Deprecated: Use TapLink.ProtoReflect.Descriptor instead. 1499 func (*TapLink) Descriptor() ([]byte, []int) { 1500 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{5} 1501 } 1502 1503 func (x *TapLink) GetVersion() uint32 { 1504 if x != nil { 1505 return x.Version 1506 } 1507 return 0 1508 } 1509 1510 func (x *TapLink) GetHostIfName() string { 1511 if x != nil { 1512 return x.HostIfName 1513 } 1514 return "" 1515 } 1516 1517 func (x *TapLink) GetToMicroservice() string { 1518 if x != nil { 1519 return x.ToMicroservice 1520 } 1521 return "" 1522 } 1523 1524 func (x *TapLink) GetRxRingSize() uint32 { 1525 if x != nil { 1526 return x.RxRingSize 1527 } 1528 return 0 1529 } 1530 1531 func (x *TapLink) GetTxRingSize() uint32 { 1532 if x != nil { 1533 return x.TxRingSize 1534 } 1535 return 0 1536 } 1537 1538 func (x *TapLink) GetEnableGso() bool { 1539 if x != nil { 1540 return x.EnableGso 1541 } 1542 return false 1543 } 1544 1545 func (x *TapLink) GetEnableTunnel() bool { 1546 if x != nil { 1547 return x.EnableTunnel 1548 } 1549 return false 1550 } 1551 1552 // IPSecLink defines configuration for interface type: IPSEC_TUNNEL 1553 // In VPP 21.06 and newer, IPSecLink serves just for creation of the link and thus only tunnel_mode is taken into 1554 // account and all of the remaining (deprecated) fields are ignored. 1555 // Please use separate SecurityPolicy, SecurityAssociation and TunnelProtection messages from ligato.vpp.ipsec 1556 // package to associate SA, SP and tunnel protection with the link. 1557 type IPSecLink struct { 1558 state protoimpl.MessageState 1559 sizeCache protoimpl.SizeCache 1560 unknownFields protoimpl.UnknownFields 1561 1562 // Mode of the IPIP tunnel 1563 TunnelMode IPSecLink_Mode `protobuf:"varint,1,opt,name=tunnel_mode,json=tunnelMode,proto3,enum=ligato.vpp.interfaces.IPSecLink_Mode" json:"tunnel_mode,omitempty"` 1564 // Extended sequence number 1565 // 1566 // Deprecated: Do not use. 1567 Esn bool `protobuf:"varint,2,opt,name=esn,proto3" json:"esn,omitempty"` 1568 // Anti replay option 1569 // 1570 // Deprecated: Do not use. 1571 AntiReplay bool `protobuf:"varint,3,opt,name=anti_replay,json=antiReplay,proto3" json:"anti_replay,omitempty"` 1572 // Local IP address 1573 // 1574 // Deprecated: Do not use. 1575 LocalIp string `protobuf:"bytes,4,opt,name=local_ip,json=localIp,proto3" json:"local_ip,omitempty"` 1576 // Remote IP address 1577 // 1578 // Deprecated: Do not use. 1579 RemoteIp string `protobuf:"bytes,5,opt,name=remote_ip,json=remoteIp,proto3" json:"remote_ip,omitempty"` 1580 // Local security parameter index 1581 // 1582 // Deprecated: Do not use. 1583 LocalSpi uint32 `protobuf:"varint,6,opt,name=local_spi,json=localSpi,proto3" json:"local_spi,omitempty"` 1584 // Remote security parameter index 1585 // 1586 // Deprecated: Do not use. 1587 RemoteSpi uint32 `protobuf:"varint,7,opt,name=remote_spi,json=remoteSpi,proto3" json:"remote_spi,omitempty"` 1588 // Cryptographic algorithm for encryption 1589 // 1590 // Deprecated: Do not use. 1591 CryptoAlg ipsec.CryptoAlg `protobuf:"varint,8,opt,name=crypto_alg,json=cryptoAlg,proto3,enum=ligato.vpp.ipsec.CryptoAlg" json:"crypto_alg,omitempty"` 1592 // Deprecated: Do not use. 1593 LocalCryptoKey string `protobuf:"bytes,9,opt,name=local_crypto_key,json=localCryptoKey,proto3" json:"local_crypto_key,omitempty"` 1594 // Deprecated: Do not use. 1595 RemoteCryptoKey string `protobuf:"bytes,10,opt,name=remote_crypto_key,json=remoteCryptoKey,proto3" json:"remote_crypto_key,omitempty"` 1596 // Cryptographic algorithm for authentication 1597 // 1598 // Deprecated: Do not use. 1599 IntegAlg ipsec.IntegAlg `protobuf:"varint,11,opt,name=integ_alg,json=integAlg,proto3,enum=ligato.vpp.ipsec.IntegAlg" json:"integ_alg,omitempty"` 1600 // Deprecated: Do not use. 1601 LocalIntegKey string `protobuf:"bytes,12,opt,name=local_integ_key,json=localIntegKey,proto3" json:"local_integ_key,omitempty"` 1602 // Deprecated: Do not use. 1603 RemoteIntegKey string `protobuf:"bytes,13,opt,name=remote_integ_key,json=remoteIntegKey,proto3" json:"remote_integ_key,omitempty"` 1604 // Deprecated: Do not use. 1605 EnableUdpEncap bool `protobuf:"varint,14,opt,name=enable_udp_encap,json=enableUdpEncap,proto3" json:"enable_udp_encap,omitempty"` 1606 } 1607 1608 func (x *IPSecLink) Reset() { 1609 *x = IPSecLink{} 1610 if protoimpl.UnsafeEnabled { 1611 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[6] 1612 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1613 ms.StoreMessageInfo(mi) 1614 } 1615 } 1616 1617 func (x *IPSecLink) String() string { 1618 return protoimpl.X.MessageStringOf(x) 1619 } 1620 1621 func (*IPSecLink) ProtoMessage() {} 1622 1623 func (x *IPSecLink) ProtoReflect() protoreflect.Message { 1624 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[6] 1625 if protoimpl.UnsafeEnabled && x != nil { 1626 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1627 if ms.LoadMessageInfo() == nil { 1628 ms.StoreMessageInfo(mi) 1629 } 1630 return ms 1631 } 1632 return mi.MessageOf(x) 1633 } 1634 1635 // Deprecated: Use IPSecLink.ProtoReflect.Descriptor instead. 1636 func (*IPSecLink) Descriptor() ([]byte, []int) { 1637 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{6} 1638 } 1639 1640 func (x *IPSecLink) GetTunnelMode() IPSecLink_Mode { 1641 if x != nil { 1642 return x.TunnelMode 1643 } 1644 return IPSecLink_POINT_TO_POINT 1645 } 1646 1647 // Deprecated: Do not use. 1648 func (x *IPSecLink) GetEsn() bool { 1649 if x != nil { 1650 return x.Esn 1651 } 1652 return false 1653 } 1654 1655 // Deprecated: Do not use. 1656 func (x *IPSecLink) GetAntiReplay() bool { 1657 if x != nil { 1658 return x.AntiReplay 1659 } 1660 return false 1661 } 1662 1663 // Deprecated: Do not use. 1664 func (x *IPSecLink) GetLocalIp() string { 1665 if x != nil { 1666 return x.LocalIp 1667 } 1668 return "" 1669 } 1670 1671 // Deprecated: Do not use. 1672 func (x *IPSecLink) GetRemoteIp() string { 1673 if x != nil { 1674 return x.RemoteIp 1675 } 1676 return "" 1677 } 1678 1679 // Deprecated: Do not use. 1680 func (x *IPSecLink) GetLocalSpi() uint32 { 1681 if x != nil { 1682 return x.LocalSpi 1683 } 1684 return 0 1685 } 1686 1687 // Deprecated: Do not use. 1688 func (x *IPSecLink) GetRemoteSpi() uint32 { 1689 if x != nil { 1690 return x.RemoteSpi 1691 } 1692 return 0 1693 } 1694 1695 // Deprecated: Do not use. 1696 func (x *IPSecLink) GetCryptoAlg() ipsec.CryptoAlg { 1697 if x != nil { 1698 return x.CryptoAlg 1699 } 1700 return ipsec.CryptoAlg(0) 1701 } 1702 1703 // Deprecated: Do not use. 1704 func (x *IPSecLink) GetLocalCryptoKey() string { 1705 if x != nil { 1706 return x.LocalCryptoKey 1707 } 1708 return "" 1709 } 1710 1711 // Deprecated: Do not use. 1712 func (x *IPSecLink) GetRemoteCryptoKey() string { 1713 if x != nil { 1714 return x.RemoteCryptoKey 1715 } 1716 return "" 1717 } 1718 1719 // Deprecated: Do not use. 1720 func (x *IPSecLink) GetIntegAlg() ipsec.IntegAlg { 1721 if x != nil { 1722 return x.IntegAlg 1723 } 1724 return ipsec.IntegAlg(0) 1725 } 1726 1727 // Deprecated: Do not use. 1728 func (x *IPSecLink) GetLocalIntegKey() string { 1729 if x != nil { 1730 return x.LocalIntegKey 1731 } 1732 return "" 1733 } 1734 1735 // Deprecated: Do not use. 1736 func (x *IPSecLink) GetRemoteIntegKey() string { 1737 if x != nil { 1738 return x.RemoteIntegKey 1739 } 1740 return "" 1741 } 1742 1743 // Deprecated: Do not use. 1744 func (x *IPSecLink) GetEnableUdpEncap() bool { 1745 if x != nil { 1746 return x.EnableUdpEncap 1747 } 1748 return false 1749 } 1750 1751 // VmxNet3Link defines configuration for interface type: VMXNET3_INTERFACE 1752 // PCI address (unsigned 32bit int) is derived from vmxnet3 interface name. It is expected that the interface 1753 // name is in format `vmxnet3-<d>/<b>/<s>/<f>`, where `d` stands for domain (max ffff), `b` is bus (max ff), 1754 // `s` is slot (max 1f) and `f` is function (max 7). All values are base 16 1755 type VmxNet3Link struct { 1756 state protoimpl.MessageState 1757 sizeCache protoimpl.SizeCache 1758 unknownFields protoimpl.UnknownFields 1759 1760 // Turn on elog 1761 EnableElog bool `protobuf:"varint,2,opt,name=enable_elog,json=enableElog,proto3" json:"enable_elog,omitempty"` 1762 // Receive queue size (default is 1024) 1763 RxqSize uint32 `protobuf:"varint,3,opt,name=rxq_size,json=rxqSize,proto3" json:"rxq_size,omitempty"` 1764 // Transmit queue size (default is 1024) 1765 TxqSize uint32 `protobuf:"varint,4,opt,name=txq_size,json=txqSize,proto3" json:"txq_size,omitempty"` 1766 } 1767 1768 func (x *VmxNet3Link) Reset() { 1769 *x = VmxNet3Link{} 1770 if protoimpl.UnsafeEnabled { 1771 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[7] 1772 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1773 ms.StoreMessageInfo(mi) 1774 } 1775 } 1776 1777 func (x *VmxNet3Link) String() string { 1778 return protoimpl.X.MessageStringOf(x) 1779 } 1780 1781 func (*VmxNet3Link) ProtoMessage() {} 1782 1783 func (x *VmxNet3Link) ProtoReflect() protoreflect.Message { 1784 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[7] 1785 if protoimpl.UnsafeEnabled && x != nil { 1786 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1787 if ms.LoadMessageInfo() == nil { 1788 ms.StoreMessageInfo(mi) 1789 } 1790 return ms 1791 } 1792 return mi.MessageOf(x) 1793 } 1794 1795 // Deprecated: Use VmxNet3Link.ProtoReflect.Descriptor instead. 1796 func (*VmxNet3Link) Descriptor() ([]byte, []int) { 1797 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{7} 1798 } 1799 1800 func (x *VmxNet3Link) GetEnableElog() bool { 1801 if x != nil { 1802 return x.EnableElog 1803 } 1804 return false 1805 } 1806 1807 func (x *VmxNet3Link) GetRxqSize() uint32 { 1808 if x != nil { 1809 return x.RxqSize 1810 } 1811 return 0 1812 } 1813 1814 func (x *VmxNet3Link) GetTxqSize() uint32 { 1815 if x != nil { 1816 return x.TxqSize 1817 } 1818 return 0 1819 } 1820 1821 // BondLink defines configuration for interface type: BOND_INTERFACE 1822 type BondLink struct { 1823 state protoimpl.MessageState 1824 sizeCache protoimpl.SizeCache 1825 unknownFields protoimpl.UnknownFields 1826 1827 Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` 1828 Mode BondLink_Mode `protobuf:"varint,3,opt,name=mode,proto3,enum=ligato.vpp.interfaces.BondLink_Mode" json:"mode,omitempty"` 1829 // Load balance is optional and valid only for XOR and LACP modes 1830 Lb BondLink_LoadBalance `protobuf:"varint,4,opt,name=lb,proto3,enum=ligato.vpp.interfaces.BondLink_LoadBalance" json:"lb,omitempty"` 1831 BondedInterfaces []*BondLink_BondedInterface `protobuf:"bytes,12,rep,name=bonded_interfaces,json=bondedInterfaces,proto3" json:"bonded_interfaces,omitempty"` 1832 } 1833 1834 func (x *BondLink) Reset() { 1835 *x = BondLink{} 1836 if protoimpl.UnsafeEnabled { 1837 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[8] 1838 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1839 ms.StoreMessageInfo(mi) 1840 } 1841 } 1842 1843 func (x *BondLink) String() string { 1844 return protoimpl.X.MessageStringOf(x) 1845 } 1846 1847 func (*BondLink) ProtoMessage() {} 1848 1849 func (x *BondLink) ProtoReflect() protoreflect.Message { 1850 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[8] 1851 if protoimpl.UnsafeEnabled && x != nil { 1852 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1853 if ms.LoadMessageInfo() == nil { 1854 ms.StoreMessageInfo(mi) 1855 } 1856 return ms 1857 } 1858 return mi.MessageOf(x) 1859 } 1860 1861 // Deprecated: Use BondLink.ProtoReflect.Descriptor instead. 1862 func (*BondLink) Descriptor() ([]byte, []int) { 1863 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{8} 1864 } 1865 1866 func (x *BondLink) GetId() uint32 { 1867 if x != nil { 1868 return x.Id 1869 } 1870 return 0 1871 } 1872 1873 func (x *BondLink) GetMode() BondLink_Mode { 1874 if x != nil { 1875 return x.Mode 1876 } 1877 return BondLink_UNKNOWN 1878 } 1879 1880 func (x *BondLink) GetLb() BondLink_LoadBalance { 1881 if x != nil { 1882 return x.Lb 1883 } 1884 return BondLink_L2 1885 } 1886 1887 func (x *BondLink) GetBondedInterfaces() []*BondLink_BondedInterface { 1888 if x != nil { 1889 return x.BondedInterfaces 1890 } 1891 return nil 1892 } 1893 1894 type GreLink struct { 1895 state protoimpl.MessageState 1896 sizeCache protoimpl.SizeCache 1897 unknownFields protoimpl.UnknownFields 1898 1899 TunnelType GreLink_Type `protobuf:"varint,1,opt,name=tunnel_type,json=tunnelType,proto3,enum=ligato.vpp.interfaces.GreLink_Type" json:"tunnel_type,omitempty"` 1900 SrcAddr string `protobuf:"bytes,2,opt,name=src_addr,json=srcAddr,proto3" json:"src_addr,omitempty"` 1901 DstAddr string `protobuf:"bytes,3,opt,name=dst_addr,json=dstAddr,proto3" json:"dst_addr,omitempty"` 1902 OuterFibId uint32 `protobuf:"varint,4,opt,name=outer_fib_id,json=outerFibId,proto3" json:"outer_fib_id,omitempty"` 1903 SessionId uint32 `protobuf:"varint,5,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` 1904 } 1905 1906 func (x *GreLink) Reset() { 1907 *x = GreLink{} 1908 if protoimpl.UnsafeEnabled { 1909 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[9] 1910 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1911 ms.StoreMessageInfo(mi) 1912 } 1913 } 1914 1915 func (x *GreLink) String() string { 1916 return protoimpl.X.MessageStringOf(x) 1917 } 1918 1919 func (*GreLink) ProtoMessage() {} 1920 1921 func (x *GreLink) ProtoReflect() protoreflect.Message { 1922 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[9] 1923 if protoimpl.UnsafeEnabled && x != nil { 1924 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1925 if ms.LoadMessageInfo() == nil { 1926 ms.StoreMessageInfo(mi) 1927 } 1928 return ms 1929 } 1930 return mi.MessageOf(x) 1931 } 1932 1933 // Deprecated: Use GreLink.ProtoReflect.Descriptor instead. 1934 func (*GreLink) Descriptor() ([]byte, []int) { 1935 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{9} 1936 } 1937 1938 func (x *GreLink) GetTunnelType() GreLink_Type { 1939 if x != nil { 1940 return x.TunnelType 1941 } 1942 return GreLink_UNKNOWN 1943 } 1944 1945 func (x *GreLink) GetSrcAddr() string { 1946 if x != nil { 1947 return x.SrcAddr 1948 } 1949 return "" 1950 } 1951 1952 func (x *GreLink) GetDstAddr() string { 1953 if x != nil { 1954 return x.DstAddr 1955 } 1956 return "" 1957 } 1958 1959 func (x *GreLink) GetOuterFibId() uint32 { 1960 if x != nil { 1961 return x.OuterFibId 1962 } 1963 return 0 1964 } 1965 1966 func (x *GreLink) GetSessionId() uint32 { 1967 if x != nil { 1968 return x.SessionId 1969 } 1970 return 0 1971 } 1972 1973 type GtpuLink struct { 1974 state protoimpl.MessageState 1975 sizeCache protoimpl.SizeCache 1976 unknownFields protoimpl.UnknownFields 1977 1978 // Source VTEP address 1979 SrcAddr string `protobuf:"bytes,1,opt,name=src_addr,json=srcAddr,proto3" json:"src_addr,omitempty"` 1980 // Destination VTEP address 1981 DstAddr string `protobuf:"bytes,2,opt,name=dst_addr,json=dstAddr,proto3" json:"dst_addr,omitempty"` 1982 // Name of multicast interface 1983 Multicast string `protobuf:"bytes,3,opt,name=multicast,proto3" json:"multicast,omitempty"` 1984 // Tunnel endpoint identifier - local 1985 Teid uint32 `protobuf:"varint,4,opt,name=teid,proto3" json:"teid,omitempty"` 1986 // Tunnel endpoint identifier - remote 1987 RemoteTeid uint32 `protobuf:"varint,7,opt,name=remote_teid,json=remoteTeid,proto3" json:"remote_teid,omitempty"` 1988 // VRF id for the encapsulated packets 1989 EncapVrfId uint32 `protobuf:"varint,5,opt,name=encap_vrf_id,json=encapVrfId,proto3" json:"encap_vrf_id,omitempty"` 1990 // DEPRECATED - use decap_next_node 1991 // 1992 // Deprecated: Do not use. 1993 DecapNext GtpuLink_NextNode `protobuf:"varint,6,opt,name=decap_next,json=decapNext,proto3,enum=ligato.vpp.interfaces.GtpuLink_NextNode" json:"decap_next,omitempty"` 1994 // Next VPP node after decapsulation 1995 DecapNextNode uint32 `protobuf:"varint,8,opt,name=decap_next_node,json=decapNextNode,proto3" json:"decap_next_node,omitempty"` 1996 } 1997 1998 func (x *GtpuLink) Reset() { 1999 *x = GtpuLink{} 2000 if protoimpl.UnsafeEnabled { 2001 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[10] 2002 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2003 ms.StoreMessageInfo(mi) 2004 } 2005 } 2006 2007 func (x *GtpuLink) String() string { 2008 return protoimpl.X.MessageStringOf(x) 2009 } 2010 2011 func (*GtpuLink) ProtoMessage() {} 2012 2013 func (x *GtpuLink) ProtoReflect() protoreflect.Message { 2014 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[10] 2015 if protoimpl.UnsafeEnabled && x != nil { 2016 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2017 if ms.LoadMessageInfo() == nil { 2018 ms.StoreMessageInfo(mi) 2019 } 2020 return ms 2021 } 2022 return mi.MessageOf(x) 2023 } 2024 2025 // Deprecated: Use GtpuLink.ProtoReflect.Descriptor instead. 2026 func (*GtpuLink) Descriptor() ([]byte, []int) { 2027 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{10} 2028 } 2029 2030 func (x *GtpuLink) GetSrcAddr() string { 2031 if x != nil { 2032 return x.SrcAddr 2033 } 2034 return "" 2035 } 2036 2037 func (x *GtpuLink) GetDstAddr() string { 2038 if x != nil { 2039 return x.DstAddr 2040 } 2041 return "" 2042 } 2043 2044 func (x *GtpuLink) GetMulticast() string { 2045 if x != nil { 2046 return x.Multicast 2047 } 2048 return "" 2049 } 2050 2051 func (x *GtpuLink) GetTeid() uint32 { 2052 if x != nil { 2053 return x.Teid 2054 } 2055 return 0 2056 } 2057 2058 func (x *GtpuLink) GetRemoteTeid() uint32 { 2059 if x != nil { 2060 return x.RemoteTeid 2061 } 2062 return 0 2063 } 2064 2065 func (x *GtpuLink) GetEncapVrfId() uint32 { 2066 if x != nil { 2067 return x.EncapVrfId 2068 } 2069 return 0 2070 } 2071 2072 // Deprecated: Do not use. 2073 func (x *GtpuLink) GetDecapNext() GtpuLink_NextNode { 2074 if x != nil { 2075 return x.DecapNext 2076 } 2077 return GtpuLink_DEFAULT 2078 } 2079 2080 func (x *GtpuLink) GetDecapNextNode() uint32 { 2081 if x != nil { 2082 return x.DecapNextNode 2083 } 2084 return 0 2085 } 2086 2087 type IPIPLink struct { 2088 state protoimpl.MessageState 2089 sizeCache protoimpl.SizeCache 2090 unknownFields protoimpl.UnknownFields 2091 2092 // Mode of the IPIP tunnel 2093 TunnelMode IPIPLink_Mode `protobuf:"varint,1,opt,name=tunnel_mode,json=tunnelMode,proto3,enum=ligato.vpp.interfaces.IPIPLink_Mode" json:"tunnel_mode,omitempty"` 2094 // Source VTEP IP address 2095 SrcAddr string `protobuf:"bytes,2,opt,name=src_addr,json=srcAddr,proto3" json:"src_addr,omitempty"` 2096 // Destination VTEP IP address 2097 DstAddr string `protobuf:"bytes,3,opt,name=dst_addr,json=dstAddr,proto3" json:"dst_addr,omitempty"` 2098 } 2099 2100 func (x *IPIPLink) Reset() { 2101 *x = IPIPLink{} 2102 if protoimpl.UnsafeEnabled { 2103 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[11] 2104 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2105 ms.StoreMessageInfo(mi) 2106 } 2107 } 2108 2109 func (x *IPIPLink) String() string { 2110 return protoimpl.X.MessageStringOf(x) 2111 } 2112 2113 func (*IPIPLink) ProtoMessage() {} 2114 2115 func (x *IPIPLink) ProtoReflect() protoreflect.Message { 2116 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[11] 2117 if protoimpl.UnsafeEnabled && x != nil { 2118 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2119 if ms.LoadMessageInfo() == nil { 2120 ms.StoreMessageInfo(mi) 2121 } 2122 return ms 2123 } 2124 return mi.MessageOf(x) 2125 } 2126 2127 // Deprecated: Use IPIPLink.ProtoReflect.Descriptor instead. 2128 func (*IPIPLink) Descriptor() ([]byte, []int) { 2129 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{11} 2130 } 2131 2132 func (x *IPIPLink) GetTunnelMode() IPIPLink_Mode { 2133 if x != nil { 2134 return x.TunnelMode 2135 } 2136 return IPIPLink_POINT_TO_POINT 2137 } 2138 2139 func (x *IPIPLink) GetSrcAddr() string { 2140 if x != nil { 2141 return x.SrcAddr 2142 } 2143 return "" 2144 } 2145 2146 func (x *IPIPLink) GetDstAddr() string { 2147 if x != nil { 2148 return x.DstAddr 2149 } 2150 return "" 2151 } 2152 2153 type WireguardLink struct { 2154 state protoimpl.MessageState 2155 sizeCache protoimpl.SizeCache 2156 unknownFields protoimpl.UnknownFields 2157 2158 // Private-key base64 2159 PrivateKey string `protobuf:"bytes,2,opt,name=private_key,json=privateKey,proto3" json:"private_key,omitempty"` 2160 // Listen UDP port 2161 Port uint32 `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"` 2162 // Source IP address 2163 SrcAddr string `protobuf:"bytes,4,opt,name=src_addr,json=srcAddr,proto3" json:"src_addr,omitempty"` 2164 } 2165 2166 func (x *WireguardLink) Reset() { 2167 *x = WireguardLink{} 2168 if protoimpl.UnsafeEnabled { 2169 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[12] 2170 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2171 ms.StoreMessageInfo(mi) 2172 } 2173 } 2174 2175 func (x *WireguardLink) String() string { 2176 return protoimpl.X.MessageStringOf(x) 2177 } 2178 2179 func (*WireguardLink) ProtoMessage() {} 2180 2181 func (x *WireguardLink) ProtoReflect() protoreflect.Message { 2182 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[12] 2183 if protoimpl.UnsafeEnabled && x != nil { 2184 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2185 if ms.LoadMessageInfo() == nil { 2186 ms.StoreMessageInfo(mi) 2187 } 2188 return ms 2189 } 2190 return mi.MessageOf(x) 2191 } 2192 2193 // Deprecated: Use WireguardLink.ProtoReflect.Descriptor instead. 2194 func (*WireguardLink) Descriptor() ([]byte, []int) { 2195 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{12} 2196 } 2197 2198 func (x *WireguardLink) GetPrivateKey() string { 2199 if x != nil { 2200 return x.PrivateKey 2201 } 2202 return "" 2203 } 2204 2205 func (x *WireguardLink) GetPort() uint32 { 2206 if x != nil { 2207 return x.Port 2208 } 2209 return 0 2210 } 2211 2212 func (x *WireguardLink) GetSrcAddr() string { 2213 if x != nil { 2214 return x.SrcAddr 2215 } 2216 return "" 2217 } 2218 2219 // https://github.com/FDio/vpp/blob/master/src/plugins/rdma/rdma_doc.rst 2220 type RDMALink struct { 2221 state protoimpl.MessageState 2222 sizeCache protoimpl.SizeCache 2223 unknownFields protoimpl.UnknownFields 2224 2225 // Linux interface name representing the RDMA-enabled network device to attach into. 2226 HostIfName string `protobuf:"bytes,1,opt,name=host_if_name,json=hostIfName,proto3" json:"host_if_name,omitempty"` 2227 // Mode at which the RDMA driver operates. 2228 Mode RDMALink_Mode `protobuf:"varint,2,opt,name=mode,proto3,enum=ligato.vpp.interfaces.RDMALink_Mode" json:"mode,omitempty"` 2229 // Number of receive queues. 2230 // By default only one RX queue is used. 2231 RxqNum uint32 `protobuf:"varint,3,opt,name=rxq_num,json=rxqNum,proto3" json:"rxq_num,omitempty"` 2232 // The size of each RX queue. 2233 // Default is 1024 bytes. 2234 RxqSize uint32 `protobuf:"varint,4,opt,name=rxq_size,json=rxqSize,proto3" json:"rxq_size,omitempty"` 2235 // The size of each TX queue. 2236 // Default is 1024 bytes. 2237 TxqSize uint32 `protobuf:"varint,5,opt,name=txq_size,json=txqSize,proto3" json:"txq_size,omitempty"` 2238 } 2239 2240 func (x *RDMALink) Reset() { 2241 *x = RDMALink{} 2242 if protoimpl.UnsafeEnabled { 2243 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[13] 2244 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2245 ms.StoreMessageInfo(mi) 2246 } 2247 } 2248 2249 func (x *RDMALink) String() string { 2250 return protoimpl.X.MessageStringOf(x) 2251 } 2252 2253 func (*RDMALink) ProtoMessage() {} 2254 2255 func (x *RDMALink) ProtoReflect() protoreflect.Message { 2256 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[13] 2257 if protoimpl.UnsafeEnabled && x != nil { 2258 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2259 if ms.LoadMessageInfo() == nil { 2260 ms.StoreMessageInfo(mi) 2261 } 2262 return ms 2263 } 2264 return mi.MessageOf(x) 2265 } 2266 2267 // Deprecated: Use RDMALink.ProtoReflect.Descriptor instead. 2268 func (*RDMALink) Descriptor() ([]byte, []int) { 2269 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{13} 2270 } 2271 2272 func (x *RDMALink) GetHostIfName() string { 2273 if x != nil { 2274 return x.HostIfName 2275 } 2276 return "" 2277 } 2278 2279 func (x *RDMALink) GetMode() RDMALink_Mode { 2280 if x != nil { 2281 return x.Mode 2282 } 2283 return RDMALink_AUTO 2284 } 2285 2286 func (x *RDMALink) GetRxqNum() uint32 { 2287 if x != nil { 2288 return x.RxqNum 2289 } 2290 return 0 2291 } 2292 2293 func (x *RDMALink) GetRxqSize() uint32 { 2294 if x != nil { 2295 return x.RxqSize 2296 } 2297 return 0 2298 } 2299 2300 func (x *RDMALink) GetTxqSize() uint32 { 2301 if x != nil { 2302 return x.TxqSize 2303 } 2304 return 0 2305 } 2306 2307 // Ip6Nd is used to enable/disable IPv6 ND address autoconfiguration 2308 // and setting up default routes 2309 type Interface_IP6ND struct { 2310 state protoimpl.MessageState 2311 sizeCache protoimpl.SizeCache 2312 unknownFields protoimpl.UnknownFields 2313 2314 // Enable IPv6 ND address autoconfiguration. 2315 AddressAutoconfig bool `protobuf:"varint,1,opt,name=address_autoconfig,json=addressAutoconfig,proto3" json:"address_autoconfig,omitempty"` 2316 // Enable installing default routes. 2317 InstallDefaultRoutes bool `protobuf:"varint,2,opt,name=install_default_routes,json=installDefaultRoutes,proto3" json:"install_default_routes,omitempty"` 2318 } 2319 2320 func (x *Interface_IP6ND) Reset() { 2321 *x = Interface_IP6ND{} 2322 if protoimpl.UnsafeEnabled { 2323 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[14] 2324 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2325 ms.StoreMessageInfo(mi) 2326 } 2327 } 2328 2329 func (x *Interface_IP6ND) String() string { 2330 return protoimpl.X.MessageStringOf(x) 2331 } 2332 2333 func (*Interface_IP6ND) ProtoMessage() {} 2334 2335 func (x *Interface_IP6ND) ProtoReflect() protoreflect.Message { 2336 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[14] 2337 if protoimpl.UnsafeEnabled && x != nil { 2338 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2339 if ms.LoadMessageInfo() == nil { 2340 ms.StoreMessageInfo(mi) 2341 } 2342 return ms 2343 } 2344 return mi.MessageOf(x) 2345 } 2346 2347 // Deprecated: Use Interface_IP6ND.ProtoReflect.Descriptor instead. 2348 func (*Interface_IP6ND) Descriptor() ([]byte, []int) { 2349 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{0, 0} 2350 } 2351 2352 func (x *Interface_IP6ND) GetAddressAutoconfig() bool { 2353 if x != nil { 2354 return x.AddressAutoconfig 2355 } 2356 return false 2357 } 2358 2359 func (x *Interface_IP6ND) GetInstallDefaultRoutes() bool { 2360 if x != nil { 2361 return x.InstallDefaultRoutes 2362 } 2363 return false 2364 } 2365 2366 // Unnumbered is used for inheriting IP address from another interface. 2367 type Interface_Unnumbered struct { 2368 state protoimpl.MessageState 2369 sizeCache protoimpl.SizeCache 2370 unknownFields protoimpl.UnknownFields 2371 2372 // InterfaceWithIp is the name of interface to inherit IP address from. 2373 InterfaceWithIp string `protobuf:"bytes,1,opt,name=interface_with_ip,json=interfaceWithIp,proto3" json:"interface_with_ip,omitempty"` 2374 } 2375 2376 func (x *Interface_Unnumbered) Reset() { 2377 *x = Interface_Unnumbered{} 2378 if protoimpl.UnsafeEnabled { 2379 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[15] 2380 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2381 ms.StoreMessageInfo(mi) 2382 } 2383 } 2384 2385 func (x *Interface_Unnumbered) String() string { 2386 return protoimpl.X.MessageStringOf(x) 2387 } 2388 2389 func (*Interface_Unnumbered) ProtoMessage() {} 2390 2391 func (x *Interface_Unnumbered) ProtoReflect() protoreflect.Message { 2392 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[15] 2393 if protoimpl.UnsafeEnabled && x != nil { 2394 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2395 if ms.LoadMessageInfo() == nil { 2396 ms.StoreMessageInfo(mi) 2397 } 2398 return ms 2399 } 2400 return mi.MessageOf(x) 2401 } 2402 2403 // Deprecated: Use Interface_Unnumbered.ProtoReflect.Descriptor instead. 2404 func (*Interface_Unnumbered) Descriptor() ([]byte, []int) { 2405 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{0, 1} 2406 } 2407 2408 func (x *Interface_Unnumbered) GetInterfaceWithIp() string { 2409 if x != nil { 2410 return x.InterfaceWithIp 2411 } 2412 return "" 2413 } 2414 2415 type Interface_RxMode struct { 2416 state protoimpl.MessageState 2417 sizeCache protoimpl.SizeCache 2418 unknownFields protoimpl.UnknownFields 2419 2420 Queue uint32 `protobuf:"varint,1,opt,name=queue,proto3" json:"queue,omitempty"` 2421 Mode Interface_RxMode_Type `protobuf:"varint,2,opt,name=mode,proto3,enum=ligato.vpp.interfaces.Interface_RxMode_Type" json:"mode,omitempty"` 2422 // DefaultMode, if set to true, the <queue> field will be ignored 2423 // and the <mode> will be used as a default for all the queues. 2424 DefaultMode bool `protobuf:"varint,3,opt,name=default_mode,json=defaultMode,proto3" json:"default_mode,omitempty"` 2425 } 2426 2427 func (x *Interface_RxMode) Reset() { 2428 *x = Interface_RxMode{} 2429 if protoimpl.UnsafeEnabled { 2430 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[16] 2431 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2432 ms.StoreMessageInfo(mi) 2433 } 2434 } 2435 2436 func (x *Interface_RxMode) String() string { 2437 return protoimpl.X.MessageStringOf(x) 2438 } 2439 2440 func (*Interface_RxMode) ProtoMessage() {} 2441 2442 func (x *Interface_RxMode) ProtoReflect() protoreflect.Message { 2443 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[16] 2444 if protoimpl.UnsafeEnabled && x != nil { 2445 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2446 if ms.LoadMessageInfo() == nil { 2447 ms.StoreMessageInfo(mi) 2448 } 2449 return ms 2450 } 2451 return mi.MessageOf(x) 2452 } 2453 2454 // Deprecated: Use Interface_RxMode.ProtoReflect.Descriptor instead. 2455 func (*Interface_RxMode) Descriptor() ([]byte, []int) { 2456 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{0, 2} 2457 } 2458 2459 func (x *Interface_RxMode) GetQueue() uint32 { 2460 if x != nil { 2461 return x.Queue 2462 } 2463 return 0 2464 } 2465 2466 func (x *Interface_RxMode) GetMode() Interface_RxMode_Type { 2467 if x != nil { 2468 return x.Mode 2469 } 2470 return Interface_RxMode_UNKNOWN 2471 } 2472 2473 func (x *Interface_RxMode) GetDefaultMode() bool { 2474 if x != nil { 2475 return x.DefaultMode 2476 } 2477 return false 2478 } 2479 2480 type Interface_RxPlacement struct { 2481 state protoimpl.MessageState 2482 sizeCache protoimpl.SizeCache 2483 unknownFields protoimpl.UnknownFields 2484 2485 // Select from interval <0, number-of-queues) 2486 Queue uint32 `protobuf:"varint,1,opt,name=queue,proto3" json:"queue,omitempty"` 2487 // Select from interval <0, number-of-workers) 2488 Worker uint32 `protobuf:"varint,2,opt,name=worker,proto3" json:"worker,omitempty"` 2489 // Let the main thread to process the given queue 2490 // - if enabled, value of <worker> is ignored 2491 MainThread bool `protobuf:"varint,3,opt,name=main_thread,json=mainThread,proto3" json:"main_thread,omitempty"` 2492 } 2493 2494 func (x *Interface_RxPlacement) Reset() { 2495 *x = Interface_RxPlacement{} 2496 if protoimpl.UnsafeEnabled { 2497 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[17] 2498 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2499 ms.StoreMessageInfo(mi) 2500 } 2501 } 2502 2503 func (x *Interface_RxPlacement) String() string { 2504 return protoimpl.X.MessageStringOf(x) 2505 } 2506 2507 func (*Interface_RxPlacement) ProtoMessage() {} 2508 2509 func (x *Interface_RxPlacement) ProtoReflect() protoreflect.Message { 2510 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[17] 2511 if protoimpl.UnsafeEnabled && x != nil { 2512 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2513 if ms.LoadMessageInfo() == nil { 2514 ms.StoreMessageInfo(mi) 2515 } 2516 return ms 2517 } 2518 return mi.MessageOf(x) 2519 } 2520 2521 // Deprecated: Use Interface_RxPlacement.ProtoReflect.Descriptor instead. 2522 func (*Interface_RxPlacement) Descriptor() ([]byte, []int) { 2523 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{0, 3} 2524 } 2525 2526 func (x *Interface_RxPlacement) GetQueue() uint32 { 2527 if x != nil { 2528 return x.Queue 2529 } 2530 return 0 2531 } 2532 2533 func (x *Interface_RxPlacement) GetWorker() uint32 { 2534 if x != nil { 2535 return x.Worker 2536 } 2537 return 0 2538 } 2539 2540 func (x *Interface_RxPlacement) GetMainThread() bool { 2541 if x != nil { 2542 return x.MainThread 2543 } 2544 return false 2545 } 2546 2547 // Gpe (Generic Protocol Extension) allows encapsulating not only Ethernet frame payload. 2548 type VxlanLink_Gpe struct { 2549 state protoimpl.MessageState 2550 sizeCache protoimpl.SizeCache 2551 unknownFields protoimpl.UnknownFields 2552 2553 DecapVrfId uint32 `protobuf:"varint,1,opt,name=decap_vrf_id,json=decapVrfId,proto3" json:"decap_vrf_id,omitempty"` 2554 // Protocol defines encapsulated protocol 2555 Protocol VxlanLink_Gpe_Protocol `protobuf:"varint,2,opt,name=protocol,proto3,enum=ligato.vpp.interfaces.VxlanLink_Gpe_Protocol" json:"protocol,omitempty"` 2556 } 2557 2558 func (x *VxlanLink_Gpe) Reset() { 2559 *x = VxlanLink_Gpe{} 2560 if protoimpl.UnsafeEnabled { 2561 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[18] 2562 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2563 ms.StoreMessageInfo(mi) 2564 } 2565 } 2566 2567 func (x *VxlanLink_Gpe) String() string { 2568 return protoimpl.X.MessageStringOf(x) 2569 } 2570 2571 func (*VxlanLink_Gpe) ProtoMessage() {} 2572 2573 func (x *VxlanLink_Gpe) ProtoReflect() protoreflect.Message { 2574 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[18] 2575 if protoimpl.UnsafeEnabled && x != nil { 2576 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2577 if ms.LoadMessageInfo() == nil { 2578 ms.StoreMessageInfo(mi) 2579 } 2580 return ms 2581 } 2582 return mi.MessageOf(x) 2583 } 2584 2585 // Deprecated: Use VxlanLink_Gpe.ProtoReflect.Descriptor instead. 2586 func (*VxlanLink_Gpe) Descriptor() ([]byte, []int) { 2587 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{3, 0} 2588 } 2589 2590 func (x *VxlanLink_Gpe) GetDecapVrfId() uint32 { 2591 if x != nil { 2592 return x.DecapVrfId 2593 } 2594 return 0 2595 } 2596 2597 func (x *VxlanLink_Gpe) GetProtocol() VxlanLink_Gpe_Protocol { 2598 if x != nil { 2599 return x.Protocol 2600 } 2601 return VxlanLink_Gpe_UNKNOWN 2602 } 2603 2604 type BondLink_BondedInterface struct { 2605 state protoimpl.MessageState 2606 sizeCache protoimpl.SizeCache 2607 unknownFields protoimpl.UnknownFields 2608 2609 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 2610 IsPassive bool `protobuf:"varint,2,opt,name=is_passive,json=isPassive,proto3" json:"is_passive,omitempty"` 2611 IsLongTimeout bool `protobuf:"varint,3,opt,name=is_long_timeout,json=isLongTimeout,proto3" json:"is_long_timeout,omitempty"` 2612 } 2613 2614 func (x *BondLink_BondedInterface) Reset() { 2615 *x = BondLink_BondedInterface{} 2616 if protoimpl.UnsafeEnabled { 2617 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[19] 2618 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2619 ms.StoreMessageInfo(mi) 2620 } 2621 } 2622 2623 func (x *BondLink_BondedInterface) String() string { 2624 return protoimpl.X.MessageStringOf(x) 2625 } 2626 2627 func (*BondLink_BondedInterface) ProtoMessage() {} 2628 2629 func (x *BondLink_BondedInterface) ProtoReflect() protoreflect.Message { 2630 mi := &file_ligato_vpp_interfaces_interface_proto_msgTypes[19] 2631 if protoimpl.UnsafeEnabled && x != nil { 2632 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2633 if ms.LoadMessageInfo() == nil { 2634 ms.StoreMessageInfo(mi) 2635 } 2636 return ms 2637 } 2638 return mi.MessageOf(x) 2639 } 2640 2641 // Deprecated: Use BondLink_BondedInterface.ProtoReflect.Descriptor instead. 2642 func (*BondLink_BondedInterface) Descriptor() ([]byte, []int) { 2643 return file_ligato_vpp_interfaces_interface_proto_rawDescGZIP(), []int{8, 0} 2644 } 2645 2646 func (x *BondLink_BondedInterface) GetName() string { 2647 if x != nil { 2648 return x.Name 2649 } 2650 return "" 2651 } 2652 2653 func (x *BondLink_BondedInterface) GetIsPassive() bool { 2654 if x != nil { 2655 return x.IsPassive 2656 } 2657 return false 2658 } 2659 2660 func (x *BondLink_BondedInterface) GetIsLongTimeout() bool { 2661 if x != nil { 2662 return x.IsLongTimeout 2663 } 2664 return false 2665 } 2666 2667 var File_ligato_vpp_interfaces_interface_proto protoreflect.FileDescriptor 2668 2669 var file_ligato_vpp_interfaces_interface_proto_rawDesc = []byte{ 2670 0x0a, 0x25, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2f, 0x69, 0x6e, 0x74, 2671 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 2672 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 2673 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x1a, 0x1c, 2674 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2f, 0x69, 0x70, 0x73, 0x65, 0x63, 2675 0x2f, 0x69, 0x70, 0x73, 0x65, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x6c, 0x69, 2676 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 2677 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xac, 0x10, 0x0a, 0x09, 0x49, 0x6e, 0x74, 0x65, 0x72, 2678 0x66, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 2679 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 2680 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 2681 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x49, 2682 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 2683 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 2684 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x21, 0x0a, 2685 0x0c, 0x70, 0x68, 0x79, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 2686 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x79, 0x73, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 2687 0x12, 0x28, 0x0a, 0x0c, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 2688 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x04, 0x52, 0x0b, 0x69, 2689 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x72, 2690 0x66, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x76, 0x72, 0x66, 0x12, 0x26, 0x0a, 0x0f, 2691 0x73, 0x65, 0x74, 0x5f, 0x64, 0x68, 0x63, 0x70, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18, 2692 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x65, 0x74, 0x44, 0x68, 0x63, 0x70, 0x43, 0x6c, 2693 0x69, 0x65, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x69, 0x70, 0x36, 0x5f, 0x6e, 0x64, 0x18, 0x0e, 2694 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 2695 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 2696 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x49, 0x50, 0x36, 0x4e, 0x44, 0x52, 0x05, 0x69, 0x70, 2697 0x36, 0x4e, 0x64, 0x12, 0x1a, 0x0a, 0x03, 0x6d, 0x74, 0x75, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 2698 0x42, 0x08, 0x82, 0x7d, 0x05, 0x12, 0x03, 0x10, 0x80, 0x48, 0x52, 0x03, 0x6d, 0x74, 0x75, 0x12, 2699 0x4b, 0x0a, 0x0a, 0x75, 0x6e, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 0x18, 0x09, 0x20, 2700 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 2701 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 2702 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x55, 0x6e, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 2703 0x52, 0x0a, 0x75, 0x6e, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 0x12, 0x42, 0x0a, 0x08, 2704 0x72, 0x78, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 2705 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 2706 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 2707 0x2e, 0x52, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x72, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x73, 2708 0x12, 0x51, 0x0a, 0x0d, 0x72, 0x78, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 2709 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 2710 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 2711 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x52, 0x78, 0x50, 0x6c, 0x61, 0x63, 2712 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0c, 0x72, 0x78, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 2713 0x6e, 0x74, 0x73, 0x12, 0x37, 0x0a, 0x03, 0x73, 0x75, 0x62, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 2714 0x32, 0x23, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 2715 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x53, 0x75, 0x62, 0x49, 0x6e, 0x74, 0x65, 2716 0x72, 0x66, 0x61, 0x63, 0x65, 0x48, 0x00, 0x52, 0x03, 0x73, 0x75, 0x62, 0x12, 0x38, 0x0a, 0x05, 2717 0x6d, 0x65, 0x6d, 0x69, 0x66, 0x18, 0x65, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 0x69, 2718 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 2719 0x63, 0x65, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x69, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 2720 0x05, 0x6d, 0x65, 0x6d, 0x69, 0x66, 0x12, 0x41, 0x0a, 0x08, 0x61, 0x66, 0x70, 0x61, 0x63, 0x6b, 2721 0x65, 0x74, 0x18, 0x66, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 2722 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 2723 0x2e, 0x41, 0x66, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 2724 0x08, 0x61, 0x66, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x32, 0x0a, 0x03, 0x74, 0x61, 0x70, 2725 0x18, 0x67, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 2726 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x54, 2727 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 0x03, 0x74, 0x61, 0x70, 0x12, 0x38, 0x0a, 2728 0x05, 0x76, 0x78, 0x6c, 0x61, 0x6e, 0x18, 0x68, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 2729 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 2730 0x61, 0x63, 0x65, 0x73, 0x2e, 0x56, 0x78, 0x6c, 0x61, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 2731 0x52, 0x05, 0x76, 0x78, 0x6c, 0x61, 0x6e, 0x12, 0x3c, 0x0a, 0x05, 0x69, 0x70, 0x73, 0x65, 0x63, 2732 0x18, 0x69, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 2733 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x49, 2734 0x50, 0x53, 0x65, 0x63, 0x4c, 0x69, 0x6e, 0x6b, 0x42, 0x02, 0x18, 0x01, 0x48, 0x00, 0x52, 0x05, 2735 0x69, 0x70, 0x73, 0x65, 0x63, 0x12, 0x3f, 0x0a, 0x08, 0x76, 0x6d, 0x78, 0x5f, 0x6e, 0x65, 0x74, 2736 0x33, 0x18, 0x6a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 2737 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 2738 0x56, 0x6d, 0x78, 0x4e, 0x65, 0x74, 0x33, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 0x07, 0x76, 2739 0x6d, 0x78, 0x4e, 0x65, 0x74, 0x33, 0x12, 0x35, 0x0a, 0x04, 0x62, 0x6f, 0x6e, 0x64, 0x18, 0x6b, 2740 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 2741 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x42, 0x6f, 0x6e, 2742 0x64, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 0x04, 0x62, 0x6f, 0x6e, 0x64, 0x12, 0x32, 0x0a, 2743 0x03, 0x67, 0x72, 0x65, 0x18, 0x6c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x67, 2744 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 2745 0x65, 0x73, 0x2e, 0x47, 0x72, 0x65, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 0x03, 0x67, 0x72, 2746 0x65, 0x12, 0x35, 0x0a, 0x04, 0x67, 0x74, 0x70, 0x75, 0x18, 0x6d, 0x20, 0x01, 0x28, 0x0b, 0x32, 2747 0x1f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 2748 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x47, 0x74, 0x70, 0x75, 0x4c, 0x69, 0x6e, 0x6b, 2749 0x48, 0x00, 0x52, 0x04, 0x67, 0x74, 0x70, 0x75, 0x12, 0x35, 0x0a, 0x04, 0x69, 0x70, 0x69, 0x70, 2750 0x18, 0x6e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 2751 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x49, 2752 0x50, 0x49, 0x50, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 0x04, 0x69, 0x70, 0x69, 0x70, 0x12, 2753 0x44, 0x0a, 0x09, 0x77, 0x69, 0x72, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x18, 0x6f, 0x20, 0x01, 2754 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 2755 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x57, 0x69, 0x72, 0x65, 0x67, 2756 0x75, 0x61, 0x72, 0x64, 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 0x09, 0x77, 0x69, 0x72, 0x65, 2757 0x67, 0x75, 0x61, 0x72, 0x64, 0x12, 0x35, 0x0a, 0x04, 0x72, 0x64, 0x6d, 0x61, 0x18, 0x70, 0x20, 2758 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 2759 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x52, 0x44, 0x4d, 0x41, 2760 0x4c, 0x69, 0x6e, 0x6b, 0x48, 0x00, 0x52, 0x04, 0x72, 0x64, 0x6d, 0x61, 0x1a, 0x6c, 0x0a, 0x05, 2761 0x49, 0x50, 0x36, 0x4e, 0x44, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 2762 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 2763 0x08, 0x52, 0x11, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6f, 2764 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x0a, 0x16, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 2765 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x02, 2766 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x65, 0x66, 2767 0x61, 0x75, 0x6c, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x38, 0x0a, 0x0a, 0x55, 0x6e, 2768 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x6e, 0x74, 0x65, 2769 0x72, 0x66, 0x61, 0x63, 0x65, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x69, 0x70, 0x18, 0x01, 0x20, 2770 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x57, 0x69, 2771 0x74, 0x68, 0x49, 0x70, 0x1a, 0xcf, 0x01, 0x0a, 0x06, 0x52, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x12, 2772 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 2773 0x71, 0x75, 0x65, 0x75, 0x65, 0x12, 0x40, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 2774 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 2775 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 2776 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x52, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x54, 0x79, 0x70, 2777 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x66, 0x61, 0x75, 2778 0x6c, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 2779 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x4a, 0x0a, 0x04, 0x54, 0x79, 2780 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 2781 0x0b, 0x0a, 0x07, 0x50, 0x4f, 0x4c, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 2782 0x49, 0x4e, 0x54, 0x45, 0x52, 0x52, 0x55, 0x50, 0x54, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x41, 2783 0x44, 0x41, 0x50, 0x54, 0x49, 0x56, 0x45, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 2784 0x41, 0x55, 0x4c, 0x54, 0x10, 0x04, 0x1a, 0x5c, 0x0a, 0x0b, 0x52, 0x78, 0x50, 0x6c, 0x61, 0x63, 2785 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x75, 0x65, 0x18, 0x01, 2786 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x71, 0x75, 0x65, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x77, 2787 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x77, 0x6f, 0x72, 2788 0x6b, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x74, 0x68, 0x72, 0x65, 2789 0x61, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6d, 0x61, 0x69, 0x6e, 0x54, 0x68, 2790 0x72, 0x65, 0x61, 0x64, 0x22, 0x96, 0x02, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 2791 0x0e, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 2792 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x55, 0x42, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, 2793 0x43, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x4f, 0x46, 0x54, 0x57, 0x41, 0x52, 0x45, 2794 0x5f, 0x4c, 0x4f, 0x4f, 0x50, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x44, 2795 0x50, 0x44, 0x4b, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x4d, 0x45, 0x4d, 0x49, 0x46, 0x10, 0x04, 2796 0x12, 0x07, 0x0a, 0x03, 0x54, 0x41, 0x50, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x46, 0x5f, 2797 0x50, 0x41, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x56, 0x58, 0x4c, 0x41, 2798 0x4e, 0x5f, 0x54, 0x55, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x07, 0x12, 0x14, 0x0a, 0x0c, 0x49, 0x50, 2799 0x53, 0x45, 0x43, 0x5f, 0x54, 0x55, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x08, 0x1a, 0x02, 0x08, 0x01, 2800 0x12, 0x15, 0x0a, 0x11, 0x56, 0x4d, 0x58, 0x4e, 0x45, 0x54, 0x33, 0x5f, 0x49, 0x4e, 0x54, 0x45, 2801 0x52, 0x46, 0x41, 0x43, 0x45, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x42, 0x4f, 0x4e, 0x44, 0x5f, 2802 0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, 0x43, 0x45, 0x10, 0x0a, 0x12, 0x0e, 0x0a, 0x0a, 0x47, 2803 0x52, 0x45, 0x5f, 0x54, 0x55, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x0b, 0x12, 0x0f, 0x0a, 0x0b, 0x47, 2804 0x54, 0x50, 0x55, 0x5f, 0x54, 0x55, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x0c, 0x12, 0x0f, 0x0a, 0x0b, 2805 0x49, 0x50, 0x49, 0x50, 0x5f, 0x54, 0x55, 0x4e, 0x4e, 0x45, 0x4c, 0x10, 0x0d, 0x12, 0x14, 0x0a, 2806 0x10, 0x57, 0x49, 0x52, 0x45, 0x47, 0x55, 0x41, 0x52, 0x44, 0x5f, 0x54, 0x55, 0x4e, 0x4e, 0x45, 2807 0x4c, 0x10, 0x0e, 0x12, 0x08, 0x0a, 0x04, 0x52, 0x44, 0x4d, 0x41, 0x10, 0x0f, 0x42, 0x06, 0x0a, 2808 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0xfa, 0x02, 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x49, 0x6e, 0x74, 2809 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 2810 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 2811 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x5f, 0x69, 2812 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x75, 0x62, 0x49, 0x64, 0x12, 0x59, 2813 0x0a, 0x0d, 0x74, 0x61, 0x67, 0x5f, 0x72, 0x77, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 2814 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 2815 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x53, 0x75, 2816 0x62, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x54, 0x61, 0x67, 0x52, 0x65, 2817 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x74, 0x61, 2818 0x67, 0x52, 0x77, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x73, 2819 0x68, 0x5f, 0x64, 0x6f, 0x74, 0x31, 0x71, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x70, 2820 0x75, 0x73, 0x68, 0x44, 0x6f, 0x74, 0x31, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x31, 2821 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x61, 0x67, 0x31, 0x12, 0x12, 0x0a, 0x04, 2822 0x74, 0x61, 0x67, 0x32, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x61, 0x67, 0x32, 2823 0x22, 0x8f, 0x01, 0x0a, 0x11, 0x54, 0x61, 0x67, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 2824 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 2825 0x45, 0x44, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x55, 0x53, 0x48, 0x31, 0x10, 0x01, 0x12, 2826 0x09, 0x0a, 0x05, 0x50, 0x55, 0x53, 0x48, 0x32, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x4f, 2827 0x50, 0x31, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x50, 0x4f, 0x50, 0x32, 0x10, 0x04, 0x12, 0x0f, 2828 0x0a, 0x0b, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4c, 0x41, 0x54, 0x45, 0x31, 0x31, 0x10, 0x05, 0x12, 2829 0x0f, 0x0a, 0x0b, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4c, 0x41, 0x54, 0x45, 0x31, 0x32, 0x10, 0x06, 2830 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4c, 0x41, 0x54, 0x45, 0x32, 0x31, 0x10, 2831 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4c, 0x41, 0x54, 0x45, 0x32, 0x32, 2832 0x10, 0x08, 0x22, 0xe0, 0x02, 0x0a, 0x09, 0x4d, 0x65, 0x6d, 0x69, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 2833 0x12, 0x3e, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 2834 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 2835 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x69, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 2836 0x2e, 0x4d, 0x65, 0x6d, 0x69, 0x66, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 2837 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 2838 0x52, 0x06, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 2839 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x6f, 0x63, 0x6b, 2840 0x65, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 2841 0x09, 0x52, 0x0e, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 2842 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 2843 0x09, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x69, 0x6e, 2844 0x67, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x69, 2845 0x6e, 0x67, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 2846 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x75, 0x66, 2847 0x66, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x78, 0x5f, 0x71, 0x75, 2848 0x65, 0x75, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x78, 0x51, 0x75, 2849 0x65, 0x75, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 2850 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x78, 0x51, 0x75, 0x65, 0x75, 0x65, 2851 0x73, 0x22, 0x32, 0x0a, 0x09, 0x4d, 0x65, 0x6d, 0x69, 0x66, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0c, 2852 0x0a, 0x08, 0x45, 0x54, 0x48, 0x45, 0x52, 0x4e, 0x45, 0x54, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 2853 0x49, 0x50, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x55, 0x4e, 0x54, 0x5f, 0x49, 0x4e, 0x4a, 2854 0x45, 0x43, 0x54, 0x10, 0x02, 0x22, 0xfa, 0x02, 0x0a, 0x09, 0x56, 0x78, 0x6c, 0x61, 0x6e, 0x4c, 2855 0x69, 0x6e, 0x6b, 0x12, 0x26, 0x0a, 0x0b, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 2856 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 2857 0x0a, 0x73, 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x26, 0x0a, 0x0b, 0x64, 2858 0x73, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 2859 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0a, 0x64, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 2860 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x6e, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 2861 0x52, 0x03, 0x76, 0x6e, 0x69, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 2862 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 2863 0x61, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x03, 0x67, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 2864 0x32, 0x24, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 2865 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x56, 0x78, 0x6c, 0x61, 0x6e, 0x4c, 0x69, 2866 0x6e, 0x6b, 0x2e, 0x47, 0x70, 0x65, 0x52, 0x03, 0x67, 0x70, 0x65, 0x1a, 0xb4, 0x01, 0x0a, 0x03, 2867 0x47, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x64, 0x65, 0x63, 0x61, 0x70, 0x5f, 0x76, 0x72, 0x66, 2868 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x64, 0x65, 0x63, 0x61, 0x70, 2869 0x56, 0x72, 0x66, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 2870 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 2871 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 2872 0x56, 0x78, 0x6c, 0x61, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x47, 0x70, 0x65, 0x2e, 0x50, 0x72, 2873 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 2874 0x22, 0x40, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x0b, 0x0a, 0x07, 2875 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x50, 0x34, 2876 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x50, 0x36, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x45, 2877 0x54, 0x48, 0x45, 0x52, 0x4e, 0x45, 0x54, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x53, 0x48, 2878 0x10, 0x04, 0x22, 0x59, 0x0a, 0x0c, 0x41, 0x66, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4c, 0x69, 2879 0x6e, 0x6b, 0x12, 0x20, 0x0a, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x66, 0x5f, 0x6e, 0x61, 2880 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x49, 0x66, 2881 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6c, 0x69, 0x6e, 0x75, 0x78, 0x5f, 0x69, 0x6e, 2882 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6c, 2883 0x69, 0x6e, 0x75, 0x78, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0xf6, 0x01, 2884 0x0a, 0x07, 0x54, 0x61, 0x70, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 2885 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 2886 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x66, 0x5f, 0x6e, 2887 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x49, 2888 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x6f, 0x5f, 0x6d, 0x69, 0x63, 0x72, 2889 0x6f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 2890 0x74, 0x6f, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x20, 2891 0x0a, 0x0c, 0x72, 0x78, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 2892 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x78, 0x52, 0x69, 0x6e, 0x67, 0x53, 0x69, 0x7a, 0x65, 2893 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x78, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x69, 0x7a, 0x65, 2894 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x78, 0x52, 0x69, 0x6e, 0x67, 0x53, 0x69, 2895 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x67, 0x73, 0x6f, 2896 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x73, 2897 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x75, 0x6e, 0x6e, 2898 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 2899 0x54, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xb4, 0x05, 0x0a, 0x09, 0x49, 0x50, 0x53, 0x65, 0x63, 2900 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x46, 0x0a, 0x0b, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 2901 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6c, 0x69, 0x67, 0x61, 2902 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 2903 0x73, 0x2e, 0x49, 0x50, 0x53, 0x65, 0x63, 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 2904 0x52, 0x0a, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x03, 2905 0x65, 0x73, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x03, 0x65, 2906 0x73, 0x6e, 0x12, 0x23, 0x0a, 0x0b, 0x61, 0x6e, 0x74, 0x69, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 2907 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x61, 0x6e, 0x74, 2908 0x69, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x22, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 2909 0x5f, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0x18, 0x01, 0x82, 0x7d, 0x02, 2910 0x08, 0x01, 0x52, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x70, 0x12, 0x24, 0x0a, 0x09, 0x72, 2911 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 2912 0x18, 0x01, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x08, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x49, 2913 0x70, 0x12, 0x1f, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x69, 0x18, 0x06, 2914 0x20, 0x01, 0x28, 0x0d, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 2915 0x70, 0x69, 0x12, 0x21, 0x0a, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x73, 0x70, 0x69, 2916 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x72, 0x65, 0x6d, 0x6f, 2917 0x74, 0x65, 0x53, 0x70, 0x69, 0x12, 0x3e, 0x0a, 0x0a, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 2918 0x61, 0x6c, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6c, 0x69, 0x67, 0x61, 2919 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65, 0x63, 0x2e, 0x43, 0x72, 0x79, 2920 0x70, 0x74, 0x6f, 0x41, 0x6c, 0x67, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x63, 0x72, 0x79, 0x70, 2921 0x74, 0x6f, 0x41, 0x6c, 0x67, 0x12, 0x2c, 0x0a, 0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x63, 2922 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 2923 0x02, 0x18, 0x01, 0x52, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 2924 0x4b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x72, 2925 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 2926 0x18, 0x01, 0x52, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 2927 0x4b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x5f, 0x61, 0x6c, 0x67, 2928 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 2929 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65, 0x63, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x41, 2930 0x6c, 0x67, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x41, 0x6c, 0x67, 2931 0x12, 0x2a, 0x0a, 0x0f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x5f, 2932 0x6b, 0x65, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0d, 0x6c, 2933 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x10, 2934 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x5f, 0x6b, 0x65, 0x79, 2935 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 2936 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x10, 0x65, 0x6e, 2937 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x75, 0x64, 0x70, 0x5f, 0x65, 0x6e, 0x63, 0x61, 0x70, 0x18, 0x0e, 2938 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 2939 0x55, 0x64, 0x70, 0x45, 0x6e, 0x63, 0x61, 0x70, 0x22, 0x33, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 2940 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x54, 0x4f, 0x5f, 0x50, 0x4f, 0x49, 2941 0x4e, 0x54, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x54, 0x4f, 2942 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0x01, 0x22, 0x64, 0x0a, 2943 0x0b, 0x56, 0x6d, 0x78, 0x4e, 0x65, 0x74, 0x33, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 2944 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x6c, 0x6f, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 2945 0x08, 0x52, 0x0a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6c, 0x6f, 0x67, 0x12, 0x19, 0x0a, 2946 0x08, 0x72, 0x78, 0x71, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 2947 0x07, 0x72, 0x78, 0x71, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x78, 0x71, 0x5f, 2948 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x78, 0x71, 0x53, 2949 0x69, 0x7a, 0x65, 0x22, 0xf9, 0x03, 0x0a, 0x08, 0x42, 0x6f, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x6b, 2950 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 2951 0x12, 0x38, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 2952 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 2953 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x42, 0x6f, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 2954 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x3b, 0x0a, 0x02, 0x6c, 0x62, 2955 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 2956 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x42, 2957 0x6f, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x4c, 0x6f, 0x61, 0x64, 0x42, 0x61, 0x6c, 0x61, 2958 0x6e, 0x63, 0x65, 0x52, 0x02, 0x6c, 0x62, 0x12, 0x5c, 0x0a, 0x11, 0x62, 0x6f, 0x6e, 0x64, 0x65, 2959 0x64, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 2960 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 2961 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x42, 0x6f, 0x6e, 0x64, 0x4c, 2962 0x69, 0x6e, 0x6b, 0x2e, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 2963 0x61, 0x63, 0x65, 0x52, 0x10, 0x62, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 2964 0x66, 0x61, 0x63, 0x65, 0x73, 0x1a, 0x6c, 0x0a, 0x0f, 0x42, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x49, 2965 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 2966 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 2967 0x69, 0x73, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 2968 0x52, 0x09, 0x69, 0x73, 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 2969 0x73, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x03, 2970 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x4c, 0x6f, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 2971 0x6f, 0x75, 0x74, 0x22, 0x59, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 2972 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x4f, 0x55, 0x4e, 2973 0x44, 0x5f, 0x52, 0x4f, 0x42, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x43, 0x54, 2974 0x49, 0x56, 0x45, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 2975 0x58, 0x4f, 0x52, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 2976 0x53, 0x54, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x41, 0x43, 0x50, 0x10, 0x05, 0x22, 0x3f, 2977 0x0a, 0x0b, 0x4c, 0x6f, 0x61, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x06, 0x0a, 2978 0x02, 0x4c, 0x32, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4c, 0x33, 0x34, 0x10, 0x01, 0x12, 0x07, 2979 0x0a, 0x03, 0x4c, 0x32, 0x33, 0x10, 0x02, 0x12, 0x06, 0x0a, 0x02, 0x52, 0x52, 0x10, 0x03, 0x12, 2980 0x06, 0x0a, 0x02, 0x42, 0x43, 0x10, 0x04, 0x12, 0x06, 0x0a, 0x02, 0x41, 0x42, 0x10, 0x05, 0x22, 2981 0x86, 0x02, 0x0a, 0x07, 0x47, 0x72, 0x65, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x44, 0x0a, 0x0b, 0x74, 2982 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 2983 0x32, 0x23, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 2984 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x47, 0x72, 0x65, 0x4c, 0x69, 0x6e, 0x6b, 2985 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 2986 0x65, 0x12, 0x20, 0x0a, 0x08, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 2987 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x07, 0x73, 0x72, 0x63, 0x41, 2988 0x64, 0x64, 0x72, 0x12, 0x20, 0x0a, 0x08, 0x64, 0x73, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 2989 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x07, 0x64, 0x73, 2990 0x74, 0x41, 0x64, 0x64, 0x72, 0x12, 0x20, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x66, 2991 0x69, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6f, 0x75, 0x74, 2992 0x65, 0x72, 0x46, 0x69, 0x62, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x73, 0x73, 0x69, 2993 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x73, 2994 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x30, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 2995 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4c, 2996 0x33, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x45, 0x42, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 2997 0x45, 0x52, 0x53, 0x50, 0x41, 0x4e, 0x10, 0x03, 0x22, 0xeb, 0x02, 0x0a, 0x08, 0x47, 0x74, 0x70, 2998 0x75, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x20, 0x0a, 0x08, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 2999 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x07, 3000 0x73, 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x12, 0x20, 0x0a, 0x08, 0x64, 0x73, 0x74, 0x5f, 0x61, 3001 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 3002 0x52, 0x07, 0x64, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x75, 0x6c, 3003 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x75, 3004 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x69, 0x64, 0x18, 3005 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x74, 0x65, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 3006 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x74, 0x65, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 3007 0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x65, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0c, 3008 0x65, 0x6e, 0x63, 0x61, 0x70, 0x5f, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 3009 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x6e, 0x63, 0x61, 0x70, 0x56, 0x72, 0x66, 0x49, 0x64, 0x12, 0x4b, 3010 0x0a, 0x0a, 0x64, 0x65, 0x63, 0x61, 0x70, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x18, 0x06, 0x20, 0x01, 3011 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 3012 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x47, 0x74, 0x70, 0x75, 0x4c, 3013 0x69, 0x6e, 0x6b, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x42, 0x02, 0x18, 0x01, 3014 0x52, 0x09, 0x64, 0x65, 0x63, 0x61, 0x70, 0x4e, 0x65, 0x78, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x64, 3015 0x65, 0x63, 0x61, 0x70, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x08, 3016 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x64, 0x65, 0x63, 0x61, 0x70, 0x4e, 0x65, 0x78, 0x74, 0x4e, 3017 0x6f, 0x64, 0x65, 0x22, 0x31, 0x0a, 0x08, 0x4e, 0x65, 0x78, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x12, 3018 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 3019 0x4c, 0x32, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x50, 0x34, 0x10, 0x02, 0x12, 0x07, 0x0a, 3020 0x03, 0x49, 0x50, 0x36, 0x10, 0x03, 0x22, 0xca, 0x01, 0x0a, 0x08, 0x49, 0x50, 0x49, 0x50, 0x4c, 3021 0x69, 0x6e, 0x6b, 0x12, 0x45, 0x0a, 0x0b, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x6f, 3022 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 3023 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 3024 0x2e, 0x49, 0x50, 0x49, 0x50, 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0a, 3025 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x08, 0x73, 0x72, 3026 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 3027 0x02, 0x08, 0x01, 0x52, 0x07, 0x73, 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x12, 0x20, 0x0a, 0x08, 3028 0x64, 0x73, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 3029 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x07, 0x64, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x22, 0x33, 3030 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 3031 0x54, 0x4f, 0x5f, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x4f, 3032 0x49, 0x4e, 0x54, 0x5f, 0x54, 0x4f, 0x5f, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x50, 0x4f, 0x49, 0x4e, 3033 0x54, 0x10, 0x01, 0x22, 0x71, 0x0a, 0x0d, 0x57, 0x69, 0x72, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 3034 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 3035 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 3036 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 3037 0x01, 0x28, 0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x04, 3038 0x70, 0x6f, 0x72, 0x74, 0x12, 0x20, 0x0a, 0x08, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 3039 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x07, 0x73, 3040 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x22, 0xd8, 0x01, 0x0a, 0x08, 0x52, 0x44, 0x4d, 0x41, 0x4c, 3041 0x69, 0x6e, 0x6b, 0x12, 0x20, 0x0a, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x66, 0x5f, 0x6e, 3042 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x49, 3043 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 3044 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 3045 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x52, 0x44, 0x4d, 0x41, 3046 0x4c, 0x69, 0x6e, 0x6b, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 3047 0x17, 0x0a, 0x07, 0x72, 0x78, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 3048 0x52, 0x06, 0x72, 0x78, 0x71, 0x4e, 0x75, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x78, 0x71, 0x5f, 3049 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x78, 0x71, 0x53, 3050 0x69, 0x7a, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x78, 0x71, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 3051 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x78, 0x71, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x21, 3052 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x00, 3053 0x12, 0x07, 0x0a, 0x03, 0x49, 0x42, 0x56, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x44, 0x56, 0x10, 3054 0x02, 0x42, 0x46, 0x5a, 0x44, 0x67, 0x6f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x69, 3055 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x33, 0x2f, 0x70, 3056 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2f, 3057 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x3b, 0x76, 0x70, 0x70, 0x5f, 0x69, 3058 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 3059 0x33, 3060 } 3061 3062 var ( 3063 file_ligato_vpp_interfaces_interface_proto_rawDescOnce sync.Once 3064 file_ligato_vpp_interfaces_interface_proto_rawDescData = file_ligato_vpp_interfaces_interface_proto_rawDesc 3065 ) 3066 3067 func file_ligato_vpp_interfaces_interface_proto_rawDescGZIP() []byte { 3068 file_ligato_vpp_interfaces_interface_proto_rawDescOnce.Do(func() { 3069 file_ligato_vpp_interfaces_interface_proto_rawDescData = protoimpl.X.CompressGZIP(file_ligato_vpp_interfaces_interface_proto_rawDescData) 3070 }) 3071 return file_ligato_vpp_interfaces_interface_proto_rawDescData 3072 } 3073 3074 var file_ligato_vpp_interfaces_interface_proto_enumTypes = make([]protoimpl.EnumInfo, 12) 3075 var file_ligato_vpp_interfaces_interface_proto_msgTypes = make([]protoimpl.MessageInfo, 20) 3076 var file_ligato_vpp_interfaces_interface_proto_goTypes = []interface{}{ 3077 (Interface_Type)(0), // 0: ligato.vpp.interfaces.Interface.Type 3078 (Interface_RxMode_Type)(0), // 1: ligato.vpp.interfaces.Interface.RxMode.Type 3079 (SubInterface_TagRewriteOptions)(0), // 2: ligato.vpp.interfaces.SubInterface.TagRewriteOptions 3080 (MemifLink_MemifMode)(0), // 3: ligato.vpp.interfaces.MemifLink.MemifMode 3081 (VxlanLink_Gpe_Protocol)(0), // 4: ligato.vpp.interfaces.VxlanLink.Gpe.Protocol 3082 (IPSecLink_Mode)(0), // 5: ligato.vpp.interfaces.IPSecLink.Mode 3083 (BondLink_Mode)(0), // 6: ligato.vpp.interfaces.BondLink.Mode 3084 (BondLink_LoadBalance)(0), // 7: ligato.vpp.interfaces.BondLink.LoadBalance 3085 (GreLink_Type)(0), // 8: ligato.vpp.interfaces.GreLink.Type 3086 (GtpuLink_NextNode)(0), // 9: ligato.vpp.interfaces.GtpuLink.NextNode 3087 (IPIPLink_Mode)(0), // 10: ligato.vpp.interfaces.IPIPLink.Mode 3088 (RDMALink_Mode)(0), // 11: ligato.vpp.interfaces.RDMALink.Mode 3089 (*Interface)(nil), // 12: ligato.vpp.interfaces.Interface 3090 (*SubInterface)(nil), // 13: ligato.vpp.interfaces.SubInterface 3091 (*MemifLink)(nil), // 14: ligato.vpp.interfaces.MemifLink 3092 (*VxlanLink)(nil), // 15: ligato.vpp.interfaces.VxlanLink 3093 (*AfpacketLink)(nil), // 16: ligato.vpp.interfaces.AfpacketLink 3094 (*TapLink)(nil), // 17: ligato.vpp.interfaces.TapLink 3095 (*IPSecLink)(nil), // 18: ligato.vpp.interfaces.IPSecLink 3096 (*VmxNet3Link)(nil), // 19: ligato.vpp.interfaces.VmxNet3Link 3097 (*BondLink)(nil), // 20: ligato.vpp.interfaces.BondLink 3098 (*GreLink)(nil), // 21: ligato.vpp.interfaces.GreLink 3099 (*GtpuLink)(nil), // 22: ligato.vpp.interfaces.GtpuLink 3100 (*IPIPLink)(nil), // 23: ligato.vpp.interfaces.IPIPLink 3101 (*WireguardLink)(nil), // 24: ligato.vpp.interfaces.WireguardLink 3102 (*RDMALink)(nil), // 25: ligato.vpp.interfaces.RDMALink 3103 (*Interface_IP6ND)(nil), // 26: ligato.vpp.interfaces.Interface.IP6ND 3104 (*Interface_Unnumbered)(nil), // 27: ligato.vpp.interfaces.Interface.Unnumbered 3105 (*Interface_RxMode)(nil), // 28: ligato.vpp.interfaces.Interface.RxMode 3106 (*Interface_RxPlacement)(nil), // 29: ligato.vpp.interfaces.Interface.RxPlacement 3107 (*VxlanLink_Gpe)(nil), // 30: ligato.vpp.interfaces.VxlanLink.Gpe 3108 (*BondLink_BondedInterface)(nil), // 31: ligato.vpp.interfaces.BondLink.BondedInterface 3109 (ipsec.CryptoAlg)(0), // 32: ligato.vpp.ipsec.CryptoAlg 3110 (ipsec.IntegAlg)(0), // 33: ligato.vpp.ipsec.IntegAlg 3111 } 3112 var file_ligato_vpp_interfaces_interface_proto_depIdxs = []int32{ 3113 0, // 0: ligato.vpp.interfaces.Interface.type:type_name -> ligato.vpp.interfaces.Interface.Type 3114 26, // 1: ligato.vpp.interfaces.Interface.ip6_nd:type_name -> ligato.vpp.interfaces.Interface.IP6ND 3115 27, // 2: ligato.vpp.interfaces.Interface.unnumbered:type_name -> ligato.vpp.interfaces.Interface.Unnumbered 3116 28, // 3: ligato.vpp.interfaces.Interface.rx_modes:type_name -> ligato.vpp.interfaces.Interface.RxMode 3117 29, // 4: ligato.vpp.interfaces.Interface.rx_placements:type_name -> ligato.vpp.interfaces.Interface.RxPlacement 3118 13, // 5: ligato.vpp.interfaces.Interface.sub:type_name -> ligato.vpp.interfaces.SubInterface 3119 14, // 6: ligato.vpp.interfaces.Interface.memif:type_name -> ligato.vpp.interfaces.MemifLink 3120 16, // 7: ligato.vpp.interfaces.Interface.afpacket:type_name -> ligato.vpp.interfaces.AfpacketLink 3121 17, // 8: ligato.vpp.interfaces.Interface.tap:type_name -> ligato.vpp.interfaces.TapLink 3122 15, // 9: ligato.vpp.interfaces.Interface.vxlan:type_name -> ligato.vpp.interfaces.VxlanLink 3123 18, // 10: ligato.vpp.interfaces.Interface.ipsec:type_name -> ligato.vpp.interfaces.IPSecLink 3124 19, // 11: ligato.vpp.interfaces.Interface.vmx_net3:type_name -> ligato.vpp.interfaces.VmxNet3Link 3125 20, // 12: ligato.vpp.interfaces.Interface.bond:type_name -> ligato.vpp.interfaces.BondLink 3126 21, // 13: ligato.vpp.interfaces.Interface.gre:type_name -> ligato.vpp.interfaces.GreLink 3127 22, // 14: ligato.vpp.interfaces.Interface.gtpu:type_name -> ligato.vpp.interfaces.GtpuLink 3128 23, // 15: ligato.vpp.interfaces.Interface.ipip:type_name -> ligato.vpp.interfaces.IPIPLink 3129 24, // 16: ligato.vpp.interfaces.Interface.wireguard:type_name -> ligato.vpp.interfaces.WireguardLink 3130 25, // 17: ligato.vpp.interfaces.Interface.rdma:type_name -> ligato.vpp.interfaces.RDMALink 3131 2, // 18: ligato.vpp.interfaces.SubInterface.tag_rw_option:type_name -> ligato.vpp.interfaces.SubInterface.TagRewriteOptions 3132 3, // 19: ligato.vpp.interfaces.MemifLink.mode:type_name -> ligato.vpp.interfaces.MemifLink.MemifMode 3133 30, // 20: ligato.vpp.interfaces.VxlanLink.gpe:type_name -> ligato.vpp.interfaces.VxlanLink.Gpe 3134 5, // 21: ligato.vpp.interfaces.IPSecLink.tunnel_mode:type_name -> ligato.vpp.interfaces.IPSecLink.Mode 3135 32, // 22: ligato.vpp.interfaces.IPSecLink.crypto_alg:type_name -> ligato.vpp.ipsec.CryptoAlg 3136 33, // 23: ligato.vpp.interfaces.IPSecLink.integ_alg:type_name -> ligato.vpp.ipsec.IntegAlg 3137 6, // 24: ligato.vpp.interfaces.BondLink.mode:type_name -> ligato.vpp.interfaces.BondLink.Mode 3138 7, // 25: ligato.vpp.interfaces.BondLink.lb:type_name -> ligato.vpp.interfaces.BondLink.LoadBalance 3139 31, // 26: ligato.vpp.interfaces.BondLink.bonded_interfaces:type_name -> ligato.vpp.interfaces.BondLink.BondedInterface 3140 8, // 27: ligato.vpp.interfaces.GreLink.tunnel_type:type_name -> ligato.vpp.interfaces.GreLink.Type 3141 9, // 28: ligato.vpp.interfaces.GtpuLink.decap_next:type_name -> ligato.vpp.interfaces.GtpuLink.NextNode 3142 10, // 29: ligato.vpp.interfaces.IPIPLink.tunnel_mode:type_name -> ligato.vpp.interfaces.IPIPLink.Mode 3143 11, // 30: ligato.vpp.interfaces.RDMALink.mode:type_name -> ligato.vpp.interfaces.RDMALink.Mode 3144 1, // 31: ligato.vpp.interfaces.Interface.RxMode.mode:type_name -> ligato.vpp.interfaces.Interface.RxMode.Type 3145 4, // 32: ligato.vpp.interfaces.VxlanLink.Gpe.protocol:type_name -> ligato.vpp.interfaces.VxlanLink.Gpe.Protocol 3146 33, // [33:33] is the sub-list for method output_type 3147 33, // [33:33] is the sub-list for method input_type 3148 33, // [33:33] is the sub-list for extension type_name 3149 33, // [33:33] is the sub-list for extension extendee 3150 0, // [0:33] is the sub-list for field type_name 3151 } 3152 3153 func init() { file_ligato_vpp_interfaces_interface_proto_init() } 3154 func file_ligato_vpp_interfaces_interface_proto_init() { 3155 if File_ligato_vpp_interfaces_interface_proto != nil { 3156 return 3157 } 3158 if !protoimpl.UnsafeEnabled { 3159 file_ligato_vpp_interfaces_interface_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 3160 switch v := v.(*Interface); i { 3161 case 0: 3162 return &v.state 3163 case 1: 3164 return &v.sizeCache 3165 case 2: 3166 return &v.unknownFields 3167 default: 3168 return nil 3169 } 3170 } 3171 file_ligato_vpp_interfaces_interface_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 3172 switch v := v.(*SubInterface); i { 3173 case 0: 3174 return &v.state 3175 case 1: 3176 return &v.sizeCache 3177 case 2: 3178 return &v.unknownFields 3179 default: 3180 return nil 3181 } 3182 } 3183 file_ligato_vpp_interfaces_interface_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 3184 switch v := v.(*MemifLink); i { 3185 case 0: 3186 return &v.state 3187 case 1: 3188 return &v.sizeCache 3189 case 2: 3190 return &v.unknownFields 3191 default: 3192 return nil 3193 } 3194 } 3195 file_ligato_vpp_interfaces_interface_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 3196 switch v := v.(*VxlanLink); i { 3197 case 0: 3198 return &v.state 3199 case 1: 3200 return &v.sizeCache 3201 case 2: 3202 return &v.unknownFields 3203 default: 3204 return nil 3205 } 3206 } 3207 file_ligato_vpp_interfaces_interface_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 3208 switch v := v.(*AfpacketLink); i { 3209 case 0: 3210 return &v.state 3211 case 1: 3212 return &v.sizeCache 3213 case 2: 3214 return &v.unknownFields 3215 default: 3216 return nil 3217 } 3218 } 3219 file_ligato_vpp_interfaces_interface_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 3220 switch v := v.(*TapLink); i { 3221 case 0: 3222 return &v.state 3223 case 1: 3224 return &v.sizeCache 3225 case 2: 3226 return &v.unknownFields 3227 default: 3228 return nil 3229 } 3230 } 3231 file_ligato_vpp_interfaces_interface_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 3232 switch v := v.(*IPSecLink); i { 3233 case 0: 3234 return &v.state 3235 case 1: 3236 return &v.sizeCache 3237 case 2: 3238 return &v.unknownFields 3239 default: 3240 return nil 3241 } 3242 } 3243 file_ligato_vpp_interfaces_interface_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 3244 switch v := v.(*VmxNet3Link); i { 3245 case 0: 3246 return &v.state 3247 case 1: 3248 return &v.sizeCache 3249 case 2: 3250 return &v.unknownFields 3251 default: 3252 return nil 3253 } 3254 } 3255 file_ligato_vpp_interfaces_interface_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 3256 switch v := v.(*BondLink); i { 3257 case 0: 3258 return &v.state 3259 case 1: 3260 return &v.sizeCache 3261 case 2: 3262 return &v.unknownFields 3263 default: 3264 return nil 3265 } 3266 } 3267 file_ligato_vpp_interfaces_interface_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 3268 switch v := v.(*GreLink); i { 3269 case 0: 3270 return &v.state 3271 case 1: 3272 return &v.sizeCache 3273 case 2: 3274 return &v.unknownFields 3275 default: 3276 return nil 3277 } 3278 } 3279 file_ligato_vpp_interfaces_interface_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 3280 switch v := v.(*GtpuLink); i { 3281 case 0: 3282 return &v.state 3283 case 1: 3284 return &v.sizeCache 3285 case 2: 3286 return &v.unknownFields 3287 default: 3288 return nil 3289 } 3290 } 3291 file_ligato_vpp_interfaces_interface_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 3292 switch v := v.(*IPIPLink); i { 3293 case 0: 3294 return &v.state 3295 case 1: 3296 return &v.sizeCache 3297 case 2: 3298 return &v.unknownFields 3299 default: 3300 return nil 3301 } 3302 } 3303 file_ligato_vpp_interfaces_interface_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 3304 switch v := v.(*WireguardLink); i { 3305 case 0: 3306 return &v.state 3307 case 1: 3308 return &v.sizeCache 3309 case 2: 3310 return &v.unknownFields 3311 default: 3312 return nil 3313 } 3314 } 3315 file_ligato_vpp_interfaces_interface_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 3316 switch v := v.(*RDMALink); i { 3317 case 0: 3318 return &v.state 3319 case 1: 3320 return &v.sizeCache 3321 case 2: 3322 return &v.unknownFields 3323 default: 3324 return nil 3325 } 3326 } 3327 file_ligato_vpp_interfaces_interface_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 3328 switch v := v.(*Interface_IP6ND); i { 3329 case 0: 3330 return &v.state 3331 case 1: 3332 return &v.sizeCache 3333 case 2: 3334 return &v.unknownFields 3335 default: 3336 return nil 3337 } 3338 } 3339 file_ligato_vpp_interfaces_interface_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 3340 switch v := v.(*Interface_Unnumbered); i { 3341 case 0: 3342 return &v.state 3343 case 1: 3344 return &v.sizeCache 3345 case 2: 3346 return &v.unknownFields 3347 default: 3348 return nil 3349 } 3350 } 3351 file_ligato_vpp_interfaces_interface_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 3352 switch v := v.(*Interface_RxMode); i { 3353 case 0: 3354 return &v.state 3355 case 1: 3356 return &v.sizeCache 3357 case 2: 3358 return &v.unknownFields 3359 default: 3360 return nil 3361 } 3362 } 3363 file_ligato_vpp_interfaces_interface_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 3364 switch v := v.(*Interface_RxPlacement); i { 3365 case 0: 3366 return &v.state 3367 case 1: 3368 return &v.sizeCache 3369 case 2: 3370 return &v.unknownFields 3371 default: 3372 return nil 3373 } 3374 } 3375 file_ligato_vpp_interfaces_interface_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 3376 switch v := v.(*VxlanLink_Gpe); i { 3377 case 0: 3378 return &v.state 3379 case 1: 3380 return &v.sizeCache 3381 case 2: 3382 return &v.unknownFields 3383 default: 3384 return nil 3385 } 3386 } 3387 file_ligato_vpp_interfaces_interface_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 3388 switch v := v.(*BondLink_BondedInterface); i { 3389 case 0: 3390 return &v.state 3391 case 1: 3392 return &v.sizeCache 3393 case 2: 3394 return &v.unknownFields 3395 default: 3396 return nil 3397 } 3398 } 3399 } 3400 file_ligato_vpp_interfaces_interface_proto_msgTypes[0].OneofWrappers = []interface{}{ 3401 (*Interface_Sub)(nil), 3402 (*Interface_Memif)(nil), 3403 (*Interface_Afpacket)(nil), 3404 (*Interface_Tap)(nil), 3405 (*Interface_Vxlan)(nil), 3406 (*Interface_Ipsec)(nil), 3407 (*Interface_VmxNet3)(nil), 3408 (*Interface_Bond)(nil), 3409 (*Interface_Gre)(nil), 3410 (*Interface_Gtpu)(nil), 3411 (*Interface_Ipip)(nil), 3412 (*Interface_Wireguard)(nil), 3413 (*Interface_Rdma)(nil), 3414 } 3415 type x struct{} 3416 out := protoimpl.TypeBuilder{ 3417 File: protoimpl.DescBuilder{ 3418 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 3419 RawDescriptor: file_ligato_vpp_interfaces_interface_proto_rawDesc, 3420 NumEnums: 12, 3421 NumMessages: 20, 3422 NumExtensions: 0, 3423 NumServices: 0, 3424 }, 3425 GoTypes: file_ligato_vpp_interfaces_interface_proto_goTypes, 3426 DependencyIndexes: file_ligato_vpp_interfaces_interface_proto_depIdxs, 3427 EnumInfos: file_ligato_vpp_interfaces_interface_proto_enumTypes, 3428 MessageInfos: file_ligato_vpp_interfaces_interface_proto_msgTypes, 3429 }.Build() 3430 File_ligato_vpp_interfaces_interface_proto = out.File 3431 file_ligato_vpp_interfaces_interface_proto_rawDesc = nil 3432 file_ligato_vpp_interfaces_interface_proto_goTypes = nil 3433 file_ligato_vpp_interfaces_interface_proto_depIdxs = nil 3434 }