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