github.com/networkservicemesh/govpp@v0.0.0-20240328101142-8a444680fbba/binapi/ipsec/ipsec_rpc.ba.go (about) 1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT. 2 3 package ipsec 4 5 import ( 6 "context" 7 "fmt" 8 "io" 9 10 memclnt "github.com/networkservicemesh/govpp/binapi/memclnt" 11 api "go.fd.io/govpp/api" 12 ) 13 14 // RPCService defines RPC service ipsec. 15 type RPCService interface { 16 IpsecBackendDump(ctx context.Context, in *IpsecBackendDump) (RPCService_IpsecBackendDumpClient, error) 17 IpsecInterfaceAddDelSpd(ctx context.Context, in *IpsecInterfaceAddDelSpd) (*IpsecInterfaceAddDelSpdReply, error) 18 IpsecItfCreate(ctx context.Context, in *IpsecItfCreate) (*IpsecItfCreateReply, error) 19 IpsecItfDelete(ctx context.Context, in *IpsecItfDelete) (*IpsecItfDeleteReply, error) 20 IpsecItfDump(ctx context.Context, in *IpsecItfDump) (RPCService_IpsecItfDumpClient, error) 21 IpsecSaDump(ctx context.Context, in *IpsecSaDump) (RPCService_IpsecSaDumpClient, error) 22 IpsecSaV2Dump(ctx context.Context, in *IpsecSaV2Dump) (RPCService_IpsecSaV2DumpClient, error) 23 IpsecSaV3Dump(ctx context.Context, in *IpsecSaV3Dump) (RPCService_IpsecSaV3DumpClient, error) 24 IpsecSaV4Dump(ctx context.Context, in *IpsecSaV4Dump) (RPCService_IpsecSaV4DumpClient, error) 25 IpsecSadBind(ctx context.Context, in *IpsecSadBind) (*IpsecSadBindReply, error) 26 IpsecSadEntryAdd(ctx context.Context, in *IpsecSadEntryAdd) (*IpsecSadEntryAddReply, error) 27 IpsecSadEntryAddDel(ctx context.Context, in *IpsecSadEntryAddDel) (*IpsecSadEntryAddDelReply, error) 28 IpsecSadEntryAddDelV2(ctx context.Context, in *IpsecSadEntryAddDelV2) (*IpsecSadEntryAddDelV2Reply, error) 29 IpsecSadEntryAddDelV3(ctx context.Context, in *IpsecSadEntryAddDelV3) (*IpsecSadEntryAddDelV3Reply, error) 30 IpsecSadEntryDel(ctx context.Context, in *IpsecSadEntryDel) (*IpsecSadEntryDelReply, error) 31 IpsecSadEntryUpdate(ctx context.Context, in *IpsecSadEntryUpdate) (*IpsecSadEntryUpdateReply, error) 32 IpsecSadUnbind(ctx context.Context, in *IpsecSadUnbind) (*IpsecSadUnbindReply, error) 33 IpsecSelectBackend(ctx context.Context, in *IpsecSelectBackend) (*IpsecSelectBackendReply, error) 34 IpsecSetAsyncMode(ctx context.Context, in *IpsecSetAsyncMode) (*IpsecSetAsyncModeReply, error) 35 IpsecSpdAddDel(ctx context.Context, in *IpsecSpdAddDel) (*IpsecSpdAddDelReply, error) 36 IpsecSpdDump(ctx context.Context, in *IpsecSpdDump) (RPCService_IpsecSpdDumpClient, error) 37 IpsecSpdEntryAddDel(ctx context.Context, in *IpsecSpdEntryAddDel) (*IpsecSpdEntryAddDelReply, error) 38 IpsecSpdEntryAddDelV2(ctx context.Context, in *IpsecSpdEntryAddDelV2) (*IpsecSpdEntryAddDelV2Reply, error) 39 IpsecSpdInterfaceDump(ctx context.Context, in *IpsecSpdInterfaceDump) (RPCService_IpsecSpdInterfaceDumpClient, error) 40 IpsecSpdsDump(ctx context.Context, in *IpsecSpdsDump) (RPCService_IpsecSpdsDumpClient, error) 41 IpsecTunnelProtectDel(ctx context.Context, in *IpsecTunnelProtectDel) (*IpsecTunnelProtectDelReply, error) 42 IpsecTunnelProtectDump(ctx context.Context, in *IpsecTunnelProtectDump) (RPCService_IpsecTunnelProtectDumpClient, error) 43 IpsecTunnelProtectUpdate(ctx context.Context, in *IpsecTunnelProtectUpdate) (*IpsecTunnelProtectUpdateReply, error) 44 } 45 46 type serviceClient struct { 47 conn api.Connection 48 } 49 50 func NewServiceClient(conn api.Connection) RPCService { 51 return &serviceClient{conn} 52 } 53 54 func (c *serviceClient) IpsecBackendDump(ctx context.Context, in *IpsecBackendDump) (RPCService_IpsecBackendDumpClient, error) { 55 stream, err := c.conn.NewStream(ctx) 56 if err != nil { 57 return nil, err 58 } 59 x := &serviceClient_IpsecBackendDumpClient{stream} 60 if err := x.Stream.SendMsg(in); err != nil { 61 return nil, err 62 } 63 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 64 return nil, err 65 } 66 return x, nil 67 } 68 69 type RPCService_IpsecBackendDumpClient interface { 70 Recv() (*IpsecBackendDetails, error) 71 api.Stream 72 } 73 74 type serviceClient_IpsecBackendDumpClient struct { 75 api.Stream 76 } 77 78 func (c *serviceClient_IpsecBackendDumpClient) Recv() (*IpsecBackendDetails, error) { 79 msg, err := c.Stream.RecvMsg() 80 if err != nil { 81 return nil, err 82 } 83 switch m := msg.(type) { 84 case *IpsecBackendDetails: 85 return m, nil 86 case *memclnt.ControlPingReply: 87 err = c.Stream.Close() 88 if err != nil { 89 return nil, err 90 } 91 return nil, io.EOF 92 default: 93 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 94 } 95 } 96 97 func (c *serviceClient) IpsecInterfaceAddDelSpd(ctx context.Context, in *IpsecInterfaceAddDelSpd) (*IpsecInterfaceAddDelSpdReply, error) { 98 out := new(IpsecInterfaceAddDelSpdReply) 99 err := c.conn.Invoke(ctx, in, out) 100 if err != nil { 101 return nil, err 102 } 103 return out, api.RetvalToVPPApiError(out.Retval) 104 } 105 106 func (c *serviceClient) IpsecItfCreate(ctx context.Context, in *IpsecItfCreate) (*IpsecItfCreateReply, error) { 107 out := new(IpsecItfCreateReply) 108 err := c.conn.Invoke(ctx, in, out) 109 if err != nil { 110 return nil, err 111 } 112 return out, api.RetvalToVPPApiError(out.Retval) 113 } 114 115 func (c *serviceClient) IpsecItfDelete(ctx context.Context, in *IpsecItfDelete) (*IpsecItfDeleteReply, error) { 116 out := new(IpsecItfDeleteReply) 117 err := c.conn.Invoke(ctx, in, out) 118 if err != nil { 119 return nil, err 120 } 121 return out, api.RetvalToVPPApiError(out.Retval) 122 } 123 124 func (c *serviceClient) IpsecItfDump(ctx context.Context, in *IpsecItfDump) (RPCService_IpsecItfDumpClient, error) { 125 stream, err := c.conn.NewStream(ctx) 126 if err != nil { 127 return nil, err 128 } 129 x := &serviceClient_IpsecItfDumpClient{stream} 130 if err := x.Stream.SendMsg(in); err != nil { 131 return nil, err 132 } 133 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 134 return nil, err 135 } 136 return x, nil 137 } 138 139 type RPCService_IpsecItfDumpClient interface { 140 Recv() (*IpsecItfDetails, error) 141 api.Stream 142 } 143 144 type serviceClient_IpsecItfDumpClient struct { 145 api.Stream 146 } 147 148 func (c *serviceClient_IpsecItfDumpClient) Recv() (*IpsecItfDetails, error) { 149 msg, err := c.Stream.RecvMsg() 150 if err != nil { 151 return nil, err 152 } 153 switch m := msg.(type) { 154 case *IpsecItfDetails: 155 return m, nil 156 case *memclnt.ControlPingReply: 157 err = c.Stream.Close() 158 if err != nil { 159 return nil, err 160 } 161 return nil, io.EOF 162 default: 163 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 164 } 165 } 166 167 func (c *serviceClient) IpsecSaDump(ctx context.Context, in *IpsecSaDump) (RPCService_IpsecSaDumpClient, error) { 168 stream, err := c.conn.NewStream(ctx) 169 if err != nil { 170 return nil, err 171 } 172 x := &serviceClient_IpsecSaDumpClient{stream} 173 if err := x.Stream.SendMsg(in); err != nil { 174 return nil, err 175 } 176 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 177 return nil, err 178 } 179 return x, nil 180 } 181 182 type RPCService_IpsecSaDumpClient interface { 183 Recv() (*IpsecSaDetails, error) 184 api.Stream 185 } 186 187 type serviceClient_IpsecSaDumpClient struct { 188 api.Stream 189 } 190 191 func (c *serviceClient_IpsecSaDumpClient) Recv() (*IpsecSaDetails, error) { 192 msg, err := c.Stream.RecvMsg() 193 if err != nil { 194 return nil, err 195 } 196 switch m := msg.(type) { 197 case *IpsecSaDetails: 198 return m, nil 199 case *memclnt.ControlPingReply: 200 err = c.Stream.Close() 201 if err != nil { 202 return nil, err 203 } 204 return nil, io.EOF 205 default: 206 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 207 } 208 } 209 210 func (c *serviceClient) IpsecSaV2Dump(ctx context.Context, in *IpsecSaV2Dump) (RPCService_IpsecSaV2DumpClient, error) { 211 stream, err := c.conn.NewStream(ctx) 212 if err != nil { 213 return nil, err 214 } 215 x := &serviceClient_IpsecSaV2DumpClient{stream} 216 if err := x.Stream.SendMsg(in); err != nil { 217 return nil, err 218 } 219 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 220 return nil, err 221 } 222 return x, nil 223 } 224 225 type RPCService_IpsecSaV2DumpClient interface { 226 Recv() (*IpsecSaV2Details, error) 227 api.Stream 228 } 229 230 type serviceClient_IpsecSaV2DumpClient struct { 231 api.Stream 232 } 233 234 func (c *serviceClient_IpsecSaV2DumpClient) Recv() (*IpsecSaV2Details, error) { 235 msg, err := c.Stream.RecvMsg() 236 if err != nil { 237 return nil, err 238 } 239 switch m := msg.(type) { 240 case *IpsecSaV2Details: 241 return m, nil 242 case *memclnt.ControlPingReply: 243 err = c.Stream.Close() 244 if err != nil { 245 return nil, err 246 } 247 return nil, io.EOF 248 default: 249 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 250 } 251 } 252 253 func (c *serviceClient) IpsecSaV3Dump(ctx context.Context, in *IpsecSaV3Dump) (RPCService_IpsecSaV3DumpClient, error) { 254 stream, err := c.conn.NewStream(ctx) 255 if err != nil { 256 return nil, err 257 } 258 x := &serviceClient_IpsecSaV3DumpClient{stream} 259 if err := x.Stream.SendMsg(in); err != nil { 260 return nil, err 261 } 262 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 263 return nil, err 264 } 265 return x, nil 266 } 267 268 type RPCService_IpsecSaV3DumpClient interface { 269 Recv() (*IpsecSaV3Details, error) 270 api.Stream 271 } 272 273 type serviceClient_IpsecSaV3DumpClient struct { 274 api.Stream 275 } 276 277 func (c *serviceClient_IpsecSaV3DumpClient) Recv() (*IpsecSaV3Details, error) { 278 msg, err := c.Stream.RecvMsg() 279 if err != nil { 280 return nil, err 281 } 282 switch m := msg.(type) { 283 case *IpsecSaV3Details: 284 return m, nil 285 case *memclnt.ControlPingReply: 286 err = c.Stream.Close() 287 if err != nil { 288 return nil, err 289 } 290 return nil, io.EOF 291 default: 292 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 293 } 294 } 295 296 func (c *serviceClient) IpsecSaV4Dump(ctx context.Context, in *IpsecSaV4Dump) (RPCService_IpsecSaV4DumpClient, error) { 297 stream, err := c.conn.NewStream(ctx) 298 if err != nil { 299 return nil, err 300 } 301 x := &serviceClient_IpsecSaV4DumpClient{stream} 302 if err := x.Stream.SendMsg(in); err != nil { 303 return nil, err 304 } 305 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 306 return nil, err 307 } 308 return x, nil 309 } 310 311 type RPCService_IpsecSaV4DumpClient interface { 312 Recv() (*IpsecSaV4Details, error) 313 api.Stream 314 } 315 316 type serviceClient_IpsecSaV4DumpClient struct { 317 api.Stream 318 } 319 320 func (c *serviceClient_IpsecSaV4DumpClient) Recv() (*IpsecSaV4Details, error) { 321 msg, err := c.Stream.RecvMsg() 322 if err != nil { 323 return nil, err 324 } 325 switch m := msg.(type) { 326 case *IpsecSaV4Details: 327 return m, nil 328 case *memclnt.ControlPingReply: 329 err = c.Stream.Close() 330 if err != nil { 331 return nil, err 332 } 333 return nil, io.EOF 334 default: 335 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 336 } 337 } 338 339 func (c *serviceClient) IpsecSadBind(ctx context.Context, in *IpsecSadBind) (*IpsecSadBindReply, error) { 340 out := new(IpsecSadBindReply) 341 err := c.conn.Invoke(ctx, in, out) 342 if err != nil { 343 return nil, err 344 } 345 return out, api.RetvalToVPPApiError(out.Retval) 346 } 347 348 func (c *serviceClient) IpsecSadEntryAdd(ctx context.Context, in *IpsecSadEntryAdd) (*IpsecSadEntryAddReply, error) { 349 out := new(IpsecSadEntryAddReply) 350 err := c.conn.Invoke(ctx, in, out) 351 if err != nil { 352 return nil, err 353 } 354 return out, api.RetvalToVPPApiError(out.Retval) 355 } 356 357 func (c *serviceClient) IpsecSadEntryAddDel(ctx context.Context, in *IpsecSadEntryAddDel) (*IpsecSadEntryAddDelReply, error) { 358 out := new(IpsecSadEntryAddDelReply) 359 err := c.conn.Invoke(ctx, in, out) 360 if err != nil { 361 return nil, err 362 } 363 return out, api.RetvalToVPPApiError(out.Retval) 364 } 365 366 func (c *serviceClient) IpsecSadEntryAddDelV2(ctx context.Context, in *IpsecSadEntryAddDelV2) (*IpsecSadEntryAddDelV2Reply, error) { 367 out := new(IpsecSadEntryAddDelV2Reply) 368 err := c.conn.Invoke(ctx, in, out) 369 if err != nil { 370 return nil, err 371 } 372 return out, api.RetvalToVPPApiError(out.Retval) 373 } 374 375 func (c *serviceClient) IpsecSadEntryAddDelV3(ctx context.Context, in *IpsecSadEntryAddDelV3) (*IpsecSadEntryAddDelV3Reply, error) { 376 out := new(IpsecSadEntryAddDelV3Reply) 377 err := c.conn.Invoke(ctx, in, out) 378 if err != nil { 379 return nil, err 380 } 381 return out, api.RetvalToVPPApiError(out.Retval) 382 } 383 384 func (c *serviceClient) IpsecSadEntryDel(ctx context.Context, in *IpsecSadEntryDel) (*IpsecSadEntryDelReply, error) { 385 out := new(IpsecSadEntryDelReply) 386 err := c.conn.Invoke(ctx, in, out) 387 if err != nil { 388 return nil, err 389 } 390 return out, api.RetvalToVPPApiError(out.Retval) 391 } 392 393 func (c *serviceClient) IpsecSadEntryUpdate(ctx context.Context, in *IpsecSadEntryUpdate) (*IpsecSadEntryUpdateReply, error) { 394 out := new(IpsecSadEntryUpdateReply) 395 err := c.conn.Invoke(ctx, in, out) 396 if err != nil { 397 return nil, err 398 } 399 return out, api.RetvalToVPPApiError(out.Retval) 400 } 401 402 func (c *serviceClient) IpsecSadUnbind(ctx context.Context, in *IpsecSadUnbind) (*IpsecSadUnbindReply, error) { 403 out := new(IpsecSadUnbindReply) 404 err := c.conn.Invoke(ctx, in, out) 405 if err != nil { 406 return nil, err 407 } 408 return out, api.RetvalToVPPApiError(out.Retval) 409 } 410 411 func (c *serviceClient) IpsecSelectBackend(ctx context.Context, in *IpsecSelectBackend) (*IpsecSelectBackendReply, error) { 412 out := new(IpsecSelectBackendReply) 413 err := c.conn.Invoke(ctx, in, out) 414 if err != nil { 415 return nil, err 416 } 417 return out, api.RetvalToVPPApiError(out.Retval) 418 } 419 420 func (c *serviceClient) IpsecSetAsyncMode(ctx context.Context, in *IpsecSetAsyncMode) (*IpsecSetAsyncModeReply, error) { 421 out := new(IpsecSetAsyncModeReply) 422 err := c.conn.Invoke(ctx, in, out) 423 if err != nil { 424 return nil, err 425 } 426 return out, api.RetvalToVPPApiError(out.Retval) 427 } 428 429 func (c *serviceClient) IpsecSpdAddDel(ctx context.Context, in *IpsecSpdAddDel) (*IpsecSpdAddDelReply, error) { 430 out := new(IpsecSpdAddDelReply) 431 err := c.conn.Invoke(ctx, in, out) 432 if err != nil { 433 return nil, err 434 } 435 return out, api.RetvalToVPPApiError(out.Retval) 436 } 437 438 func (c *serviceClient) IpsecSpdDump(ctx context.Context, in *IpsecSpdDump) (RPCService_IpsecSpdDumpClient, error) { 439 stream, err := c.conn.NewStream(ctx) 440 if err != nil { 441 return nil, err 442 } 443 x := &serviceClient_IpsecSpdDumpClient{stream} 444 if err := x.Stream.SendMsg(in); err != nil { 445 return nil, err 446 } 447 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 448 return nil, err 449 } 450 return x, nil 451 } 452 453 type RPCService_IpsecSpdDumpClient interface { 454 Recv() (*IpsecSpdDetails, error) 455 api.Stream 456 } 457 458 type serviceClient_IpsecSpdDumpClient struct { 459 api.Stream 460 } 461 462 func (c *serviceClient_IpsecSpdDumpClient) Recv() (*IpsecSpdDetails, error) { 463 msg, err := c.Stream.RecvMsg() 464 if err != nil { 465 return nil, err 466 } 467 switch m := msg.(type) { 468 case *IpsecSpdDetails: 469 return m, nil 470 case *memclnt.ControlPingReply: 471 err = c.Stream.Close() 472 if err != nil { 473 return nil, err 474 } 475 return nil, io.EOF 476 default: 477 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 478 } 479 } 480 481 func (c *serviceClient) IpsecSpdEntryAddDel(ctx context.Context, in *IpsecSpdEntryAddDel) (*IpsecSpdEntryAddDelReply, error) { 482 out := new(IpsecSpdEntryAddDelReply) 483 err := c.conn.Invoke(ctx, in, out) 484 if err != nil { 485 return nil, err 486 } 487 return out, api.RetvalToVPPApiError(out.Retval) 488 } 489 490 func (c *serviceClient) IpsecSpdEntryAddDelV2(ctx context.Context, in *IpsecSpdEntryAddDelV2) (*IpsecSpdEntryAddDelV2Reply, error) { 491 out := new(IpsecSpdEntryAddDelV2Reply) 492 err := c.conn.Invoke(ctx, in, out) 493 if err != nil { 494 return nil, err 495 } 496 return out, api.RetvalToVPPApiError(out.Retval) 497 } 498 499 func (c *serviceClient) IpsecSpdInterfaceDump(ctx context.Context, in *IpsecSpdInterfaceDump) (RPCService_IpsecSpdInterfaceDumpClient, error) { 500 stream, err := c.conn.NewStream(ctx) 501 if err != nil { 502 return nil, err 503 } 504 x := &serviceClient_IpsecSpdInterfaceDumpClient{stream} 505 if err := x.Stream.SendMsg(in); err != nil { 506 return nil, err 507 } 508 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 509 return nil, err 510 } 511 return x, nil 512 } 513 514 type RPCService_IpsecSpdInterfaceDumpClient interface { 515 Recv() (*IpsecSpdInterfaceDetails, error) 516 api.Stream 517 } 518 519 type serviceClient_IpsecSpdInterfaceDumpClient struct { 520 api.Stream 521 } 522 523 func (c *serviceClient_IpsecSpdInterfaceDumpClient) Recv() (*IpsecSpdInterfaceDetails, error) { 524 msg, err := c.Stream.RecvMsg() 525 if err != nil { 526 return nil, err 527 } 528 switch m := msg.(type) { 529 case *IpsecSpdInterfaceDetails: 530 return m, nil 531 case *memclnt.ControlPingReply: 532 err = c.Stream.Close() 533 if err != nil { 534 return nil, err 535 } 536 return nil, io.EOF 537 default: 538 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 539 } 540 } 541 542 func (c *serviceClient) IpsecSpdsDump(ctx context.Context, in *IpsecSpdsDump) (RPCService_IpsecSpdsDumpClient, error) { 543 stream, err := c.conn.NewStream(ctx) 544 if err != nil { 545 return nil, err 546 } 547 x := &serviceClient_IpsecSpdsDumpClient{stream} 548 if err := x.Stream.SendMsg(in); err != nil { 549 return nil, err 550 } 551 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 552 return nil, err 553 } 554 return x, nil 555 } 556 557 type RPCService_IpsecSpdsDumpClient interface { 558 Recv() (*IpsecSpdsDetails, error) 559 api.Stream 560 } 561 562 type serviceClient_IpsecSpdsDumpClient struct { 563 api.Stream 564 } 565 566 func (c *serviceClient_IpsecSpdsDumpClient) Recv() (*IpsecSpdsDetails, error) { 567 msg, err := c.Stream.RecvMsg() 568 if err != nil { 569 return nil, err 570 } 571 switch m := msg.(type) { 572 case *IpsecSpdsDetails: 573 return m, nil 574 case *memclnt.ControlPingReply: 575 err = c.Stream.Close() 576 if err != nil { 577 return nil, err 578 } 579 return nil, io.EOF 580 default: 581 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 582 } 583 } 584 585 func (c *serviceClient) IpsecTunnelProtectDel(ctx context.Context, in *IpsecTunnelProtectDel) (*IpsecTunnelProtectDelReply, error) { 586 out := new(IpsecTunnelProtectDelReply) 587 err := c.conn.Invoke(ctx, in, out) 588 if err != nil { 589 return nil, err 590 } 591 return out, api.RetvalToVPPApiError(out.Retval) 592 } 593 594 func (c *serviceClient) IpsecTunnelProtectDump(ctx context.Context, in *IpsecTunnelProtectDump) (RPCService_IpsecTunnelProtectDumpClient, error) { 595 stream, err := c.conn.NewStream(ctx) 596 if err != nil { 597 return nil, err 598 } 599 x := &serviceClient_IpsecTunnelProtectDumpClient{stream} 600 if err := x.Stream.SendMsg(in); err != nil { 601 return nil, err 602 } 603 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 604 return nil, err 605 } 606 return x, nil 607 } 608 609 type RPCService_IpsecTunnelProtectDumpClient interface { 610 Recv() (*IpsecTunnelProtectDetails, error) 611 api.Stream 612 } 613 614 type serviceClient_IpsecTunnelProtectDumpClient struct { 615 api.Stream 616 } 617 618 func (c *serviceClient_IpsecTunnelProtectDumpClient) Recv() (*IpsecTunnelProtectDetails, error) { 619 msg, err := c.Stream.RecvMsg() 620 if err != nil { 621 return nil, err 622 } 623 switch m := msg.(type) { 624 case *IpsecTunnelProtectDetails: 625 return m, nil 626 case *memclnt.ControlPingReply: 627 err = c.Stream.Close() 628 if err != nil { 629 return nil, err 630 } 631 return nil, io.EOF 632 default: 633 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 634 } 635 } 636 637 func (c *serviceClient) IpsecTunnelProtectUpdate(ctx context.Context, in *IpsecTunnelProtectUpdate) (*IpsecTunnelProtectUpdateReply, error) { 638 out := new(IpsecTunnelProtectUpdateReply) 639 err := c.conn.Invoke(ctx, in, out) 640 if err != nil { 641 return nil, err 642 } 643 return out, api.RetvalToVPPApiError(out.Retval) 644 }