github.com/networkservicemesh/govpp@v0.0.0-20240328101142-8a444680fbba/binapi/pbl/pbl.ba.go (about) 1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT. 2 // versions: 3 // binapi-generator: v0.10.0-dev 4 // VPP: 23.10-rc0~170-g6f1548434 5 // source: plugins/pbl.api.json 6 7 // Package pbl contains generated bindings for API file pbl.api. 8 // 9 // Contents: 10 // - 1 enum 11 // - 2 structs 12 // - 6 messages 13 package pbl 14 15 import ( 16 "strconv" 17 18 fib_types "github.com/networkservicemesh/govpp/binapi/fib_types" 19 _ "github.com/networkservicemesh/govpp/binapi/interface_types" 20 ip_types "github.com/networkservicemesh/govpp/binapi/ip_types" 21 api "go.fd.io/govpp/api" 22 codec "go.fd.io/govpp/codec" 23 ) 24 25 // This is a compile-time assertion to ensure that this generated file 26 // is compatible with the GoVPP api package it is being compiled against. 27 // A compilation error at this line likely means your copy of the 28 // GoVPP api package needs to be updated. 29 const _ = api.GoVppAPIPackageIsVersion2 30 31 const ( 32 APIFile = "pbl" 33 APIVersion = "0.1.0" 34 VersionCrc = 0x87fa66f8 35 ) 36 37 // PblClientFlags defines enum 'pbl_client_flags'. 38 type PblClientFlags uint32 39 40 const ( 41 PBL_API_FLAG_EXCLUSIVE PblClientFlags = 1 42 ) 43 44 var ( 45 PblClientFlags_name = map[uint32]string{ 46 1: "PBL_API_FLAG_EXCLUSIVE", 47 } 48 PblClientFlags_value = map[string]uint32{ 49 "PBL_API_FLAG_EXCLUSIVE": 1, 50 } 51 ) 52 53 func (x PblClientFlags) String() string { 54 s, ok := PblClientFlags_name[uint32(x)] 55 if ok { 56 return s 57 } 58 str := func(n uint32) string { 59 s, ok := PblClientFlags_name[uint32(n)] 60 if ok { 61 return s 62 } 63 return "PblClientFlags(" + strconv.Itoa(int(n)) + ")" 64 } 65 for i := uint32(0); i <= 32; i++ { 66 val := uint32(x) 67 if val&(1<<i) != 0 { 68 if s != "" { 69 s += "|" 70 } 71 s += str(1 << i) 72 } 73 } 74 if s == "" { 75 return str(uint32(x)) 76 } 77 return s 78 } 79 80 // PblClient defines type 'pbl_client'. 81 type PblClient struct { 82 ID uint32 `binapi:"u32,name=id,default=4294967295" json:"id,omitempty"` 83 Addr ip_types.Address `binapi:"address,name=addr" json:"addr,omitempty"` 84 Paths fib_types.FibPath `binapi:"fib_path,name=paths" json:"paths,omitempty"` 85 Flags uint8 `binapi:"u8,name=flags" json:"flags,omitempty"` 86 TableID uint32 `binapi:"u32,name=table_id" json:"table_id,omitempty"` 87 NPorts uint32 `binapi:"u32,name=n_ports" json:"-"` 88 PortRanges []PblPortRange `binapi:"pbl_port_range[n_ports],name=port_ranges" json:"port_ranges,omitempty"` 89 } 90 91 // PblPortRange defines type 'pbl_port_range'. 92 type PblPortRange struct { 93 Start uint16 `binapi:"u16,name=start" json:"start,omitempty"` 94 End uint16 `binapi:"u16,name=end" json:"end,omitempty"` 95 Iproto ip_types.IPProto `binapi:"ip_proto,name=iproto" json:"iproto,omitempty"` 96 } 97 98 // PblClientDel defines message 'pbl_client_del'. 99 type PblClientDel struct { 100 ID uint32 `binapi:"u32,name=id" json:"id,omitempty"` 101 } 102 103 func (m *PblClientDel) Reset() { *m = PblClientDel{} } 104 func (*PblClientDel) GetMessageName() string { return "pbl_client_del" } 105 func (*PblClientDel) GetCrcString() string { return "3a91bde5" } 106 func (*PblClientDel) GetMessageType() api.MessageType { 107 return api.RequestMessage 108 } 109 110 func (m *PblClientDel) Size() (size int) { 111 if m == nil { 112 return 0 113 } 114 size += 4 // m.ID 115 return size 116 } 117 func (m *PblClientDel) Marshal(b []byte) ([]byte, error) { 118 if b == nil { 119 b = make([]byte, m.Size()) 120 } 121 buf := codec.NewBuffer(b) 122 buf.EncodeUint32(m.ID) 123 return buf.Bytes(), nil 124 } 125 func (m *PblClientDel) Unmarshal(b []byte) error { 126 buf := codec.NewBuffer(b) 127 m.ID = buf.DecodeUint32() 128 return nil 129 } 130 131 // PblClientDelReply defines message 'pbl_client_del_reply'. 132 type PblClientDelReply struct { 133 Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` 134 } 135 136 func (m *PblClientDelReply) Reset() { *m = PblClientDelReply{} } 137 func (*PblClientDelReply) GetMessageName() string { return "pbl_client_del_reply" } 138 func (*PblClientDelReply) GetCrcString() string { return "e8d4e804" } 139 func (*PblClientDelReply) GetMessageType() api.MessageType { 140 return api.ReplyMessage 141 } 142 143 func (m *PblClientDelReply) Size() (size int) { 144 if m == nil { 145 return 0 146 } 147 size += 4 // m.Retval 148 return size 149 } 150 func (m *PblClientDelReply) Marshal(b []byte) ([]byte, error) { 151 if b == nil { 152 b = make([]byte, m.Size()) 153 } 154 buf := codec.NewBuffer(b) 155 buf.EncodeInt32(m.Retval) 156 return buf.Bytes(), nil 157 } 158 func (m *PblClientDelReply) Unmarshal(b []byte) error { 159 buf := codec.NewBuffer(b) 160 m.Retval = buf.DecodeInt32() 161 return nil 162 } 163 164 // PblClientDetails defines message 'pbl_client_details'. 165 type PblClientDetails struct { 166 Client PblClient `binapi:"pbl_client,name=client" json:"client,omitempty"` 167 } 168 169 func (m *PblClientDetails) Reset() { *m = PblClientDetails{} } 170 func (*PblClientDetails) GetMessageName() string { return "pbl_client_details" } 171 func (*PblClientDetails) GetCrcString() string { return "14278144" } 172 func (*PblClientDetails) GetMessageType() api.MessageType { 173 return api.ReplyMessage 174 } 175 176 func (m *PblClientDetails) Size() (size int) { 177 if m == nil { 178 return 0 179 } 180 size += 4 // m.Client.ID 181 size += 1 // m.Client.Addr.Af 182 size += 1 * 16 // m.Client.Addr.Un 183 size += 4 // m.Client.Paths.SwIfIndex 184 size += 4 // m.Client.Paths.TableID 185 size += 4 // m.Client.Paths.RpfID 186 size += 1 // m.Client.Paths.Weight 187 size += 1 // m.Client.Paths.Preference 188 size += 4 // m.Client.Paths.Type 189 size += 4 // m.Client.Paths.Flags 190 size += 4 // m.Client.Paths.Proto 191 size += 1 * 16 // m.Client.Paths.Nh.Address 192 size += 4 // m.Client.Paths.Nh.ViaLabel 193 size += 4 // m.Client.Paths.Nh.ObjID 194 size += 4 // m.Client.Paths.Nh.ClassifyTableIndex 195 size += 1 // m.Client.Paths.NLabels 196 for j3 := 0; j3 < 16; j3++ { 197 size += 1 // m.Client.Paths.LabelStack[j3].IsUniform 198 size += 4 // m.Client.Paths.LabelStack[j3].Label 199 size += 1 // m.Client.Paths.LabelStack[j3].TTL 200 size += 1 // m.Client.Paths.LabelStack[j3].Exp 201 } 202 size += 1 // m.Client.Flags 203 size += 4 // m.Client.TableID 204 size += 4 // m.Client.NPorts 205 for j2 := 0; j2 < len(m.Client.PortRanges); j2++ { 206 var s2 PblPortRange 207 _ = s2 208 if j2 < len(m.Client.PortRanges) { 209 s2 = m.Client.PortRanges[j2] 210 } 211 size += 2 // s2.Start 212 size += 2 // s2.End 213 size += 1 // s2.Iproto 214 } 215 return size 216 } 217 func (m *PblClientDetails) Marshal(b []byte) ([]byte, error) { 218 if b == nil { 219 b = make([]byte, m.Size()) 220 } 221 buf := codec.NewBuffer(b) 222 buf.EncodeUint32(m.Client.ID) 223 buf.EncodeUint8(uint8(m.Client.Addr.Af)) 224 buf.EncodeBytes(m.Client.Addr.Un.XXX_UnionData[:], 16) 225 buf.EncodeUint32(m.Client.Paths.SwIfIndex) 226 buf.EncodeUint32(m.Client.Paths.TableID) 227 buf.EncodeUint32(m.Client.Paths.RpfID) 228 buf.EncodeUint8(m.Client.Paths.Weight) 229 buf.EncodeUint8(m.Client.Paths.Preference) 230 buf.EncodeUint32(uint32(m.Client.Paths.Type)) 231 buf.EncodeUint32(uint32(m.Client.Paths.Flags)) 232 buf.EncodeUint32(uint32(m.Client.Paths.Proto)) 233 buf.EncodeBytes(m.Client.Paths.Nh.Address.XXX_UnionData[:], 16) 234 buf.EncodeUint32(m.Client.Paths.Nh.ViaLabel) 235 buf.EncodeUint32(m.Client.Paths.Nh.ObjID) 236 buf.EncodeUint32(m.Client.Paths.Nh.ClassifyTableIndex) 237 buf.EncodeUint8(m.Client.Paths.NLabels) 238 for j2 := 0; j2 < 16; j2++ { 239 buf.EncodeUint8(m.Client.Paths.LabelStack[j2].IsUniform) 240 buf.EncodeUint32(m.Client.Paths.LabelStack[j2].Label) 241 buf.EncodeUint8(m.Client.Paths.LabelStack[j2].TTL) 242 buf.EncodeUint8(m.Client.Paths.LabelStack[j2].Exp) 243 } 244 buf.EncodeUint8(m.Client.Flags) 245 buf.EncodeUint32(m.Client.TableID) 246 buf.EncodeUint32(uint32(len(m.Client.PortRanges))) 247 for j1 := 0; j1 < len(m.Client.PortRanges); j1++ { 248 var v1 PblPortRange // PortRanges 249 if j1 < len(m.Client.PortRanges) { 250 v1 = m.Client.PortRanges[j1] 251 } 252 buf.EncodeUint16(v1.Start) 253 buf.EncodeUint16(v1.End) 254 buf.EncodeUint8(uint8(v1.Iproto)) 255 } 256 return buf.Bytes(), nil 257 } 258 func (m *PblClientDetails) Unmarshal(b []byte) error { 259 buf := codec.NewBuffer(b) 260 m.Client.ID = buf.DecodeUint32() 261 m.Client.Addr.Af = ip_types.AddressFamily(buf.DecodeUint8()) 262 copy(m.Client.Addr.Un.XXX_UnionData[:], buf.DecodeBytes(16)) 263 m.Client.Paths.SwIfIndex = buf.DecodeUint32() 264 m.Client.Paths.TableID = buf.DecodeUint32() 265 m.Client.Paths.RpfID = buf.DecodeUint32() 266 m.Client.Paths.Weight = buf.DecodeUint8() 267 m.Client.Paths.Preference = buf.DecodeUint8() 268 m.Client.Paths.Type = fib_types.FibPathType(buf.DecodeUint32()) 269 m.Client.Paths.Flags = fib_types.FibPathFlags(buf.DecodeUint32()) 270 m.Client.Paths.Proto = fib_types.FibPathNhProto(buf.DecodeUint32()) 271 copy(m.Client.Paths.Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16)) 272 m.Client.Paths.Nh.ViaLabel = buf.DecodeUint32() 273 m.Client.Paths.Nh.ObjID = buf.DecodeUint32() 274 m.Client.Paths.Nh.ClassifyTableIndex = buf.DecodeUint32() 275 m.Client.Paths.NLabels = buf.DecodeUint8() 276 for j2 := 0; j2 < 16; j2++ { 277 m.Client.Paths.LabelStack[j2].IsUniform = buf.DecodeUint8() 278 m.Client.Paths.LabelStack[j2].Label = buf.DecodeUint32() 279 m.Client.Paths.LabelStack[j2].TTL = buf.DecodeUint8() 280 m.Client.Paths.LabelStack[j2].Exp = buf.DecodeUint8() 281 } 282 m.Client.Flags = buf.DecodeUint8() 283 m.Client.TableID = buf.DecodeUint32() 284 m.Client.NPorts = buf.DecodeUint32() 285 m.Client.PortRanges = make([]PblPortRange, m.Client.NPorts) 286 for j1 := 0; j1 < len(m.Client.PortRanges); j1++ { 287 m.Client.PortRanges[j1].Start = buf.DecodeUint16() 288 m.Client.PortRanges[j1].End = buf.DecodeUint16() 289 m.Client.PortRanges[j1].Iproto = ip_types.IPProto(buf.DecodeUint8()) 290 } 291 return nil 292 } 293 294 // PblClientDump defines message 'pbl_client_dump'. 295 type PblClientDump struct{} 296 297 func (m *PblClientDump) Reset() { *m = PblClientDump{} } 298 func (*PblClientDump) GetMessageName() string { return "pbl_client_dump" } 299 func (*PblClientDump) GetCrcString() string { return "51077d14" } 300 func (*PblClientDump) GetMessageType() api.MessageType { 301 return api.RequestMessage 302 } 303 304 func (m *PblClientDump) Size() (size int) { 305 if m == nil { 306 return 0 307 } 308 return size 309 } 310 func (m *PblClientDump) Marshal(b []byte) ([]byte, error) { 311 if b == nil { 312 b = make([]byte, m.Size()) 313 } 314 buf := codec.NewBuffer(b) 315 return buf.Bytes(), nil 316 } 317 func (m *PblClientDump) Unmarshal(b []byte) error { 318 return nil 319 } 320 321 // \file 322 // 323 // This file defines the vpp control-plane API messages 324 // used to control the PBL plugin 325 // 326 // PblClientUpdate defines message 'pbl_client_update'. 327 type PblClientUpdate struct { 328 Client PblClient `binapi:"pbl_client,name=client" json:"client,omitempty"` 329 } 330 331 func (m *PblClientUpdate) Reset() { *m = PblClientUpdate{} } 332 func (*PblClientUpdate) GetMessageName() string { return "pbl_client_update" } 333 func (*PblClientUpdate) GetCrcString() string { return "d83d6e65" } 334 func (*PblClientUpdate) GetMessageType() api.MessageType { 335 return api.RequestMessage 336 } 337 338 func (m *PblClientUpdate) Size() (size int) { 339 if m == nil { 340 return 0 341 } 342 size += 4 // m.Client.ID 343 size += 1 // m.Client.Addr.Af 344 size += 1 * 16 // m.Client.Addr.Un 345 size += 4 // m.Client.Paths.SwIfIndex 346 size += 4 // m.Client.Paths.TableID 347 size += 4 // m.Client.Paths.RpfID 348 size += 1 // m.Client.Paths.Weight 349 size += 1 // m.Client.Paths.Preference 350 size += 4 // m.Client.Paths.Type 351 size += 4 // m.Client.Paths.Flags 352 size += 4 // m.Client.Paths.Proto 353 size += 1 * 16 // m.Client.Paths.Nh.Address 354 size += 4 // m.Client.Paths.Nh.ViaLabel 355 size += 4 // m.Client.Paths.Nh.ObjID 356 size += 4 // m.Client.Paths.Nh.ClassifyTableIndex 357 size += 1 // m.Client.Paths.NLabels 358 for j3 := 0; j3 < 16; j3++ { 359 size += 1 // m.Client.Paths.LabelStack[j3].IsUniform 360 size += 4 // m.Client.Paths.LabelStack[j3].Label 361 size += 1 // m.Client.Paths.LabelStack[j3].TTL 362 size += 1 // m.Client.Paths.LabelStack[j3].Exp 363 } 364 size += 1 // m.Client.Flags 365 size += 4 // m.Client.TableID 366 size += 4 // m.Client.NPorts 367 for j2 := 0; j2 < len(m.Client.PortRanges); j2++ { 368 var s2 PblPortRange 369 _ = s2 370 if j2 < len(m.Client.PortRanges) { 371 s2 = m.Client.PortRanges[j2] 372 } 373 size += 2 // s2.Start 374 size += 2 // s2.End 375 size += 1 // s2.Iproto 376 } 377 return size 378 } 379 func (m *PblClientUpdate) Marshal(b []byte) ([]byte, error) { 380 if b == nil { 381 b = make([]byte, m.Size()) 382 } 383 buf := codec.NewBuffer(b) 384 buf.EncodeUint32(m.Client.ID) 385 buf.EncodeUint8(uint8(m.Client.Addr.Af)) 386 buf.EncodeBytes(m.Client.Addr.Un.XXX_UnionData[:], 16) 387 buf.EncodeUint32(m.Client.Paths.SwIfIndex) 388 buf.EncodeUint32(m.Client.Paths.TableID) 389 buf.EncodeUint32(m.Client.Paths.RpfID) 390 buf.EncodeUint8(m.Client.Paths.Weight) 391 buf.EncodeUint8(m.Client.Paths.Preference) 392 buf.EncodeUint32(uint32(m.Client.Paths.Type)) 393 buf.EncodeUint32(uint32(m.Client.Paths.Flags)) 394 buf.EncodeUint32(uint32(m.Client.Paths.Proto)) 395 buf.EncodeBytes(m.Client.Paths.Nh.Address.XXX_UnionData[:], 16) 396 buf.EncodeUint32(m.Client.Paths.Nh.ViaLabel) 397 buf.EncodeUint32(m.Client.Paths.Nh.ObjID) 398 buf.EncodeUint32(m.Client.Paths.Nh.ClassifyTableIndex) 399 buf.EncodeUint8(m.Client.Paths.NLabels) 400 for j2 := 0; j2 < 16; j2++ { 401 buf.EncodeUint8(m.Client.Paths.LabelStack[j2].IsUniform) 402 buf.EncodeUint32(m.Client.Paths.LabelStack[j2].Label) 403 buf.EncodeUint8(m.Client.Paths.LabelStack[j2].TTL) 404 buf.EncodeUint8(m.Client.Paths.LabelStack[j2].Exp) 405 } 406 buf.EncodeUint8(m.Client.Flags) 407 buf.EncodeUint32(m.Client.TableID) 408 buf.EncodeUint32(uint32(len(m.Client.PortRanges))) 409 for j1 := 0; j1 < len(m.Client.PortRanges); j1++ { 410 var v1 PblPortRange // PortRanges 411 if j1 < len(m.Client.PortRanges) { 412 v1 = m.Client.PortRanges[j1] 413 } 414 buf.EncodeUint16(v1.Start) 415 buf.EncodeUint16(v1.End) 416 buf.EncodeUint8(uint8(v1.Iproto)) 417 } 418 return buf.Bytes(), nil 419 } 420 func (m *PblClientUpdate) Unmarshal(b []byte) error { 421 buf := codec.NewBuffer(b) 422 m.Client.ID = buf.DecodeUint32() 423 m.Client.Addr.Af = ip_types.AddressFamily(buf.DecodeUint8()) 424 copy(m.Client.Addr.Un.XXX_UnionData[:], buf.DecodeBytes(16)) 425 m.Client.Paths.SwIfIndex = buf.DecodeUint32() 426 m.Client.Paths.TableID = buf.DecodeUint32() 427 m.Client.Paths.RpfID = buf.DecodeUint32() 428 m.Client.Paths.Weight = buf.DecodeUint8() 429 m.Client.Paths.Preference = buf.DecodeUint8() 430 m.Client.Paths.Type = fib_types.FibPathType(buf.DecodeUint32()) 431 m.Client.Paths.Flags = fib_types.FibPathFlags(buf.DecodeUint32()) 432 m.Client.Paths.Proto = fib_types.FibPathNhProto(buf.DecodeUint32()) 433 copy(m.Client.Paths.Nh.Address.XXX_UnionData[:], buf.DecodeBytes(16)) 434 m.Client.Paths.Nh.ViaLabel = buf.DecodeUint32() 435 m.Client.Paths.Nh.ObjID = buf.DecodeUint32() 436 m.Client.Paths.Nh.ClassifyTableIndex = buf.DecodeUint32() 437 m.Client.Paths.NLabels = buf.DecodeUint8() 438 for j2 := 0; j2 < 16; j2++ { 439 m.Client.Paths.LabelStack[j2].IsUniform = buf.DecodeUint8() 440 m.Client.Paths.LabelStack[j2].Label = buf.DecodeUint32() 441 m.Client.Paths.LabelStack[j2].TTL = buf.DecodeUint8() 442 m.Client.Paths.LabelStack[j2].Exp = buf.DecodeUint8() 443 } 444 m.Client.Flags = buf.DecodeUint8() 445 m.Client.TableID = buf.DecodeUint32() 446 m.Client.NPorts = buf.DecodeUint32() 447 m.Client.PortRanges = make([]PblPortRange, m.Client.NPorts) 448 for j1 := 0; j1 < len(m.Client.PortRanges); j1++ { 449 m.Client.PortRanges[j1].Start = buf.DecodeUint16() 450 m.Client.PortRanges[j1].End = buf.DecodeUint16() 451 m.Client.PortRanges[j1].Iproto = ip_types.IPProto(buf.DecodeUint8()) 452 } 453 return nil 454 } 455 456 // PblClientUpdateReply defines message 'pbl_client_update_reply'. 457 type PblClientUpdateReply struct { 458 Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` 459 ID uint32 `binapi:"u32,name=id" json:"id,omitempty"` 460 } 461 462 func (m *PblClientUpdateReply) Reset() { *m = PblClientUpdateReply{} } 463 func (*PblClientUpdateReply) GetMessageName() string { return "pbl_client_update_reply" } 464 func (*PblClientUpdateReply) GetCrcString() string { return "e2fc8294" } 465 func (*PblClientUpdateReply) GetMessageType() api.MessageType { 466 return api.ReplyMessage 467 } 468 469 func (m *PblClientUpdateReply) Size() (size int) { 470 if m == nil { 471 return 0 472 } 473 size += 4 // m.Retval 474 size += 4 // m.ID 475 return size 476 } 477 func (m *PblClientUpdateReply) Marshal(b []byte) ([]byte, error) { 478 if b == nil { 479 b = make([]byte, m.Size()) 480 } 481 buf := codec.NewBuffer(b) 482 buf.EncodeInt32(m.Retval) 483 buf.EncodeUint32(m.ID) 484 return buf.Bytes(), nil 485 } 486 func (m *PblClientUpdateReply) Unmarshal(b []byte) error { 487 buf := codec.NewBuffer(b) 488 m.Retval = buf.DecodeInt32() 489 m.ID = buf.DecodeUint32() 490 return nil 491 } 492 493 func init() { file_pbl_binapi_init() } 494 func file_pbl_binapi_init() { 495 api.RegisterMessage((*PblClientDel)(nil), "pbl_client_del_3a91bde5") 496 api.RegisterMessage((*PblClientDelReply)(nil), "pbl_client_del_reply_e8d4e804") 497 api.RegisterMessage((*PblClientDetails)(nil), "pbl_client_details_14278144") 498 api.RegisterMessage((*PblClientDump)(nil), "pbl_client_dump_51077d14") 499 api.RegisterMessage((*PblClientUpdate)(nil), "pbl_client_update_d83d6e65") 500 api.RegisterMessage((*PblClientUpdateReply)(nil), "pbl_client_update_reply_e2fc8294") 501 } 502 503 // Messages returns list of all messages in this module. 504 func AllMessages() []api.Message { 505 return []api.Message{ 506 (*PblClientDel)(nil), 507 (*PblClientDelReply)(nil), 508 (*PblClientDetails)(nil), 509 (*PblClientDump)(nil), 510 (*PblClientUpdate)(nil), 511 (*PblClientUpdateReply)(nil), 512 } 513 }