Update generated binapi to v22.02 & makefile changes
[govpp.git] / internal / testbinapi / binapi2001 / ip / ip_rpc.ba.go
1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
2
3 package ip
4
5 import (
6         "context"
7         "fmt"
8         "io"
9
10         api "git.fd.io/govpp.git/api"
11         vpe "git.fd.io/govpp.git/internal/testbinapi/binapi2001/vpe"
12 )
13
14 // RPCService defines RPC service ip.
15 type RPCService interface {
16         IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error)
17         IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error)
18         IPAddressDump(ctx context.Context, in *IPAddressDump) (RPCService_IPAddressDumpClient, error)
19         IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error)
20         IPContainerProxyDump(ctx context.Context, in *IPContainerProxyDump) (RPCService_IPContainerProxyDumpClient, error)
21         IPDump(ctx context.Context, in *IPDump) (RPCService_IPDumpClient, error)
22         IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error)
23         IPMrouteDump(ctx context.Context, in *IPMrouteDump) (RPCService_IPMrouteDumpClient, error)
24         IPMtableDump(ctx context.Context, in *IPMtableDump) (RPCService_IPMtableDumpClient, error)
25         IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error)
26         IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error)
27         IPPuntRedirectDump(ctx context.Context, in *IPPuntRedirectDump) (RPCService_IPPuntRedirectDumpClient, error)
28         IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error)
29         IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error)
30         IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error)
31         IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error)
32         IPRouteDump(ctx context.Context, in *IPRouteDump) (RPCService_IPRouteDumpClient, error)
33         IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error)
34         IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error)
35         IPSourceCheckInterfaceAddDel(ctx context.Context, in *IPSourceCheckInterfaceAddDel) (*IPSourceCheckInterfaceAddDelReply, error)
36         IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error)
37         IPTableDump(ctx context.Context, in *IPTableDump) (RPCService_IPTableDumpClient, error)
38         IPTableFlush(ctx context.Context, in *IPTableFlush) (*IPTableFlushReply, error)
39         IPTableReplaceBegin(ctx context.Context, in *IPTableReplaceBegin) (*IPTableReplaceBeginReply, error)
40         IPTableReplaceEnd(ctx context.Context, in *IPTableReplaceEnd) (*IPTableReplaceEndReply, error)
41         IPUnnumberedDump(ctx context.Context, in *IPUnnumberedDump) (RPCService_IPUnnumberedDumpClient, error)
42         MfibSignalDump(ctx context.Context, in *MfibSignalDump) (RPCService_MfibSignalDumpClient, error)
43         SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error)
44         SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error)
45         SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error)
46 }
47
48 type serviceClient struct {
49         conn api.Connection
50 }
51
52 func NewServiceClient(conn api.Connection) RPCService {
53         return &serviceClient{conn}
54 }
55
56 func (c *serviceClient) IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error) {
57         out := new(IoamDisableReply)
58         err := c.conn.Invoke(ctx, in, out)
59         if err != nil {
60                 return nil, err
61         }
62         return out, api.RetvalToVPPApiError(out.Retval)
63 }
64
65 func (c *serviceClient) IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error) {
66         out := new(IoamEnableReply)
67         err := c.conn.Invoke(ctx, in, out)
68         if err != nil {
69                 return nil, err
70         }
71         return out, api.RetvalToVPPApiError(out.Retval)
72 }
73
74 func (c *serviceClient) IPAddressDump(ctx context.Context, in *IPAddressDump) (RPCService_IPAddressDumpClient, error) {
75         stream, err := c.conn.NewStream(ctx)
76         if err != nil {
77                 return nil, err
78         }
79         x := &serviceClient_IPAddressDumpClient{stream}
80         if err := x.Stream.SendMsg(in); err != nil {
81                 return nil, err
82         }
83         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
84                 return nil, err
85         }
86         return x, nil
87 }
88
89 type RPCService_IPAddressDumpClient interface {
90         Recv() (*IPAddressDetails, error)
91         api.Stream
92 }
93
94 type serviceClient_IPAddressDumpClient struct {
95         api.Stream
96 }
97
98 func (c *serviceClient_IPAddressDumpClient) Recv() (*IPAddressDetails, error) {
99         msg, err := c.Stream.RecvMsg()
100         if err != nil {
101                 return nil, err
102         }
103         switch m := msg.(type) {
104         case *IPAddressDetails:
105                 return m, nil
106         case *vpe.ControlPingReply:
107                 err = c.Stream.Close()
108                 if err != nil {
109                         return nil, err
110                 }
111                 return nil, io.EOF
112         default:
113                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
114         }
115 }
116
117 func (c *serviceClient) IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error) {
118         out := new(IPContainerProxyAddDelReply)
119         err := c.conn.Invoke(ctx, in, out)
120         if err != nil {
121                 return nil, err
122         }
123         return out, api.RetvalToVPPApiError(out.Retval)
124 }
125
126 func (c *serviceClient) IPContainerProxyDump(ctx context.Context, in *IPContainerProxyDump) (RPCService_IPContainerProxyDumpClient, error) {
127         stream, err := c.conn.NewStream(ctx)
128         if err != nil {
129                 return nil, err
130         }
131         x := &serviceClient_IPContainerProxyDumpClient{stream}
132         if err := x.Stream.SendMsg(in); err != nil {
133                 return nil, err
134         }
135         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
136                 return nil, err
137         }
138         return x, nil
139 }
140
141 type RPCService_IPContainerProxyDumpClient interface {
142         Recv() (*IPContainerProxyDetails, error)
143         api.Stream
144 }
145
146 type serviceClient_IPContainerProxyDumpClient struct {
147         api.Stream
148 }
149
150 func (c *serviceClient_IPContainerProxyDumpClient) Recv() (*IPContainerProxyDetails, error) {
151         msg, err := c.Stream.RecvMsg()
152         if err != nil {
153                 return nil, err
154         }
155         switch m := msg.(type) {
156         case *IPContainerProxyDetails:
157                 return m, nil
158         case *vpe.ControlPingReply:
159                 err = c.Stream.Close()
160                 if err != nil {
161                         return nil, err
162                 }
163                 return nil, io.EOF
164         default:
165                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
166         }
167 }
168
169 func (c *serviceClient) IPDump(ctx context.Context, in *IPDump) (RPCService_IPDumpClient, error) {
170         stream, err := c.conn.NewStream(ctx)
171         if err != nil {
172                 return nil, err
173         }
174         x := &serviceClient_IPDumpClient{stream}
175         if err := x.Stream.SendMsg(in); err != nil {
176                 return nil, err
177         }
178         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
179                 return nil, err
180         }
181         return x, nil
182 }
183
184 type RPCService_IPDumpClient interface {
185         Recv() (*IPDetails, error)
186         api.Stream
187 }
188
189 type serviceClient_IPDumpClient struct {
190         api.Stream
191 }
192
193 func (c *serviceClient_IPDumpClient) Recv() (*IPDetails, error) {
194         msg, err := c.Stream.RecvMsg()
195         if err != nil {
196                 return nil, err
197         }
198         switch m := msg.(type) {
199         case *IPDetails:
200                 return m, nil
201         case *vpe.ControlPingReply:
202                 err = c.Stream.Close()
203                 if err != nil {
204                         return nil, err
205                 }
206                 return nil, io.EOF
207         default:
208                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
209         }
210 }
211
212 func (c *serviceClient) IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error) {
213         out := new(IPMrouteAddDelReply)
214         err := c.conn.Invoke(ctx, in, out)
215         if err != nil {
216                 return nil, err
217         }
218         return out, api.RetvalToVPPApiError(out.Retval)
219 }
220
221 func (c *serviceClient) IPMrouteDump(ctx context.Context, in *IPMrouteDump) (RPCService_IPMrouteDumpClient, error) {
222         stream, err := c.conn.NewStream(ctx)
223         if err != nil {
224                 return nil, err
225         }
226         x := &serviceClient_IPMrouteDumpClient{stream}
227         if err := x.Stream.SendMsg(in); err != nil {
228                 return nil, err
229         }
230         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
231                 return nil, err
232         }
233         return x, nil
234 }
235
236 type RPCService_IPMrouteDumpClient interface {
237         Recv() (*IPMrouteDetails, error)
238         api.Stream
239 }
240
241 type serviceClient_IPMrouteDumpClient struct {
242         api.Stream
243 }
244
245 func (c *serviceClient_IPMrouteDumpClient) Recv() (*IPMrouteDetails, error) {
246         msg, err := c.Stream.RecvMsg()
247         if err != nil {
248                 return nil, err
249         }
250         switch m := msg.(type) {
251         case *IPMrouteDetails:
252                 return m, nil
253         case *vpe.ControlPingReply:
254                 err = c.Stream.Close()
255                 if err != nil {
256                         return nil, err
257                 }
258                 return nil, io.EOF
259         default:
260                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
261         }
262 }
263
264 func (c *serviceClient) IPMtableDump(ctx context.Context, in *IPMtableDump) (RPCService_IPMtableDumpClient, error) {
265         stream, err := c.conn.NewStream(ctx)
266         if err != nil {
267                 return nil, err
268         }
269         x := &serviceClient_IPMtableDumpClient{stream}
270         if err := x.Stream.SendMsg(in); err != nil {
271                 return nil, err
272         }
273         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
274                 return nil, err
275         }
276         return x, nil
277 }
278
279 type RPCService_IPMtableDumpClient interface {
280         Recv() (*IPMtableDetails, error)
281         api.Stream
282 }
283
284 type serviceClient_IPMtableDumpClient struct {
285         api.Stream
286 }
287
288 func (c *serviceClient_IPMtableDumpClient) Recv() (*IPMtableDetails, error) {
289         msg, err := c.Stream.RecvMsg()
290         if err != nil {
291                 return nil, err
292         }
293         switch m := msg.(type) {
294         case *IPMtableDetails:
295                 return m, nil
296         case *vpe.ControlPingReply:
297                 err = c.Stream.Close()
298                 if err != nil {
299                         return nil, err
300                 }
301                 return nil, io.EOF
302         default:
303                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
304         }
305 }
306
307 func (c *serviceClient) IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error) {
308         out := new(IPPuntPoliceReply)
309         err := c.conn.Invoke(ctx, in, out)
310         if err != nil {
311                 return nil, err
312         }
313         return out, api.RetvalToVPPApiError(out.Retval)
314 }
315
316 func (c *serviceClient) IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error) {
317         out := new(IPPuntRedirectReply)
318         err := c.conn.Invoke(ctx, in, out)
319         if err != nil {
320                 return nil, err
321         }
322         return out, api.RetvalToVPPApiError(out.Retval)
323 }
324
325 func (c *serviceClient) IPPuntRedirectDump(ctx context.Context, in *IPPuntRedirectDump) (RPCService_IPPuntRedirectDumpClient, error) {
326         stream, err := c.conn.NewStream(ctx)
327         if err != nil {
328                 return nil, err
329         }
330         x := &serviceClient_IPPuntRedirectDumpClient{stream}
331         if err := x.Stream.SendMsg(in); err != nil {
332                 return nil, err
333         }
334         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
335                 return nil, err
336         }
337         return x, nil
338 }
339
340 type RPCService_IPPuntRedirectDumpClient interface {
341         Recv() (*IPPuntRedirectDetails, error)
342         api.Stream
343 }
344
345 type serviceClient_IPPuntRedirectDumpClient struct {
346         api.Stream
347 }
348
349 func (c *serviceClient_IPPuntRedirectDumpClient) Recv() (*IPPuntRedirectDetails, error) {
350         msg, err := c.Stream.RecvMsg()
351         if err != nil {
352                 return nil, err
353         }
354         switch m := msg.(type) {
355         case *IPPuntRedirectDetails:
356                 return m, nil
357         case *vpe.ControlPingReply:
358                 err = c.Stream.Close()
359                 if err != nil {
360                         return nil, err
361                 }
362                 return nil, io.EOF
363         default:
364                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
365         }
366 }
367
368 func (c *serviceClient) IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error) {
369         out := new(IPReassemblyEnableDisableReply)
370         err := c.conn.Invoke(ctx, in, out)
371         if err != nil {
372                 return nil, err
373         }
374         return out, api.RetvalToVPPApiError(out.Retval)
375 }
376
377 func (c *serviceClient) IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error) {
378         out := new(IPReassemblyGetReply)
379         err := c.conn.Invoke(ctx, in, out)
380         if err != nil {
381                 return nil, err
382         }
383         return out, api.RetvalToVPPApiError(out.Retval)
384 }
385
386 func (c *serviceClient) IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error) {
387         out := new(IPReassemblySetReply)
388         err := c.conn.Invoke(ctx, in, out)
389         if err != nil {
390                 return nil, err
391         }
392         return out, api.RetvalToVPPApiError(out.Retval)
393 }
394
395 func (c *serviceClient) IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error) {
396         out := new(IPRouteAddDelReply)
397         err := c.conn.Invoke(ctx, in, out)
398         if err != nil {
399                 return nil, err
400         }
401         return out, api.RetvalToVPPApiError(out.Retval)
402 }
403
404 func (c *serviceClient) IPRouteDump(ctx context.Context, in *IPRouteDump) (RPCService_IPRouteDumpClient, error) {
405         stream, err := c.conn.NewStream(ctx)
406         if err != nil {
407                 return nil, err
408         }
409         x := &serviceClient_IPRouteDumpClient{stream}
410         if err := x.Stream.SendMsg(in); err != nil {
411                 return nil, err
412         }
413         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
414                 return nil, err
415         }
416         return x, nil
417 }
418
419 type RPCService_IPRouteDumpClient interface {
420         Recv() (*IPRouteDetails, error)
421         api.Stream
422 }
423
424 type serviceClient_IPRouteDumpClient struct {
425         api.Stream
426 }
427
428 func (c *serviceClient_IPRouteDumpClient) Recv() (*IPRouteDetails, error) {
429         msg, err := c.Stream.RecvMsg()
430         if err != nil {
431                 return nil, err
432         }
433         switch m := msg.(type) {
434         case *IPRouteDetails:
435                 return m, nil
436         case *vpe.ControlPingReply:
437                 err = c.Stream.Close()
438                 if err != nil {
439                         return nil, err
440                 }
441                 return nil, io.EOF
442         default:
443                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
444         }
445 }
446
447 func (c *serviceClient) IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error) {
448         out := new(IPSourceAndPortRangeCheckAddDelReply)
449         err := c.conn.Invoke(ctx, in, out)
450         if err != nil {
451                 return nil, err
452         }
453         return out, api.RetvalToVPPApiError(out.Retval)
454 }
455
456 func (c *serviceClient) IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error) {
457         out := new(IPSourceAndPortRangeCheckInterfaceAddDelReply)
458         err := c.conn.Invoke(ctx, in, out)
459         if err != nil {
460                 return nil, err
461         }
462         return out, api.RetvalToVPPApiError(out.Retval)
463 }
464
465 func (c *serviceClient) IPSourceCheckInterfaceAddDel(ctx context.Context, in *IPSourceCheckInterfaceAddDel) (*IPSourceCheckInterfaceAddDelReply, error) {
466         out := new(IPSourceCheckInterfaceAddDelReply)
467         err := c.conn.Invoke(ctx, in, out)
468         if err != nil {
469                 return nil, err
470         }
471         return out, api.RetvalToVPPApiError(out.Retval)
472 }
473
474 func (c *serviceClient) IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error) {
475         out := new(IPTableAddDelReply)
476         err := c.conn.Invoke(ctx, in, out)
477         if err != nil {
478                 return nil, err
479         }
480         return out, api.RetvalToVPPApiError(out.Retval)
481 }
482
483 func (c *serviceClient) IPTableDump(ctx context.Context, in *IPTableDump) (RPCService_IPTableDumpClient, error) {
484         stream, err := c.conn.NewStream(ctx)
485         if err != nil {
486                 return nil, err
487         }
488         x := &serviceClient_IPTableDumpClient{stream}
489         if err := x.Stream.SendMsg(in); err != nil {
490                 return nil, err
491         }
492         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
493                 return nil, err
494         }
495         return x, nil
496 }
497
498 type RPCService_IPTableDumpClient interface {
499         Recv() (*IPTableDetails, error)
500         api.Stream
501 }
502
503 type serviceClient_IPTableDumpClient struct {
504         api.Stream
505 }
506
507 func (c *serviceClient_IPTableDumpClient) Recv() (*IPTableDetails, error) {
508         msg, err := c.Stream.RecvMsg()
509         if err != nil {
510                 return nil, err
511         }
512         switch m := msg.(type) {
513         case *IPTableDetails:
514                 return m, nil
515         case *vpe.ControlPingReply:
516                 err = c.Stream.Close()
517                 if err != nil {
518                         return nil, err
519                 }
520                 return nil, io.EOF
521         default:
522                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
523         }
524 }
525
526 func (c *serviceClient) IPTableFlush(ctx context.Context, in *IPTableFlush) (*IPTableFlushReply, error) {
527         out := new(IPTableFlushReply)
528         err := c.conn.Invoke(ctx, in, out)
529         if err != nil {
530                 return nil, err
531         }
532         return out, api.RetvalToVPPApiError(out.Retval)
533 }
534
535 func (c *serviceClient) IPTableReplaceBegin(ctx context.Context, in *IPTableReplaceBegin) (*IPTableReplaceBeginReply, error) {
536         out := new(IPTableReplaceBeginReply)
537         err := c.conn.Invoke(ctx, in, out)
538         if err != nil {
539                 return nil, err
540         }
541         return out, api.RetvalToVPPApiError(out.Retval)
542 }
543
544 func (c *serviceClient) IPTableReplaceEnd(ctx context.Context, in *IPTableReplaceEnd) (*IPTableReplaceEndReply, error) {
545         out := new(IPTableReplaceEndReply)
546         err := c.conn.Invoke(ctx, in, out)
547         if err != nil {
548                 return nil, err
549         }
550         return out, api.RetvalToVPPApiError(out.Retval)
551 }
552
553 func (c *serviceClient) IPUnnumberedDump(ctx context.Context, in *IPUnnumberedDump) (RPCService_IPUnnumberedDumpClient, error) {
554         stream, err := c.conn.NewStream(ctx)
555         if err != nil {
556                 return nil, err
557         }
558         x := &serviceClient_IPUnnumberedDumpClient{stream}
559         if err := x.Stream.SendMsg(in); err != nil {
560                 return nil, err
561         }
562         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
563                 return nil, err
564         }
565         return x, nil
566 }
567
568 type RPCService_IPUnnumberedDumpClient interface {
569         Recv() (*IPUnnumberedDetails, error)
570         api.Stream
571 }
572
573 type serviceClient_IPUnnumberedDumpClient struct {
574         api.Stream
575 }
576
577 func (c *serviceClient_IPUnnumberedDumpClient) Recv() (*IPUnnumberedDetails, error) {
578         msg, err := c.Stream.RecvMsg()
579         if err != nil {
580                 return nil, err
581         }
582         switch m := msg.(type) {
583         case *IPUnnumberedDetails:
584                 return m, nil
585         case *vpe.ControlPingReply:
586                 err = c.Stream.Close()
587                 if err != nil {
588                         return nil, err
589                 }
590                 return nil, io.EOF
591         default:
592                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
593         }
594 }
595
596 func (c *serviceClient) MfibSignalDump(ctx context.Context, in *MfibSignalDump) (RPCService_MfibSignalDumpClient, error) {
597         stream, err := c.conn.NewStream(ctx)
598         if err != nil {
599                 return nil, err
600         }
601         x := &serviceClient_MfibSignalDumpClient{stream}
602         if err := x.Stream.SendMsg(in); err != nil {
603                 return nil, err
604         }
605         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
606                 return nil, err
607         }
608         return x, nil
609 }
610
611 type RPCService_MfibSignalDumpClient interface {
612         Recv() (*MfibSignalDetails, error)
613         api.Stream
614 }
615
616 type serviceClient_MfibSignalDumpClient struct {
617         api.Stream
618 }
619
620 func (c *serviceClient_MfibSignalDumpClient) Recv() (*MfibSignalDetails, error) {
621         msg, err := c.Stream.RecvMsg()
622         if err != nil {
623                 return nil, err
624         }
625         switch m := msg.(type) {
626         case *MfibSignalDetails:
627                 return m, nil
628         case *vpe.ControlPingReply:
629                 err = c.Stream.Close()
630                 if err != nil {
631                         return nil, err
632                 }
633                 return nil, io.EOF
634         default:
635                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
636         }
637 }
638
639 func (c *serviceClient) SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error) {
640         out := new(SetIPFlowHashReply)
641         err := c.conn.Invoke(ctx, in, out)
642         if err != nil {
643                 return nil, err
644         }
645         return out, api.RetvalToVPPApiError(out.Retval)
646 }
647
648 func (c *serviceClient) SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error) {
649         out := new(SwInterfaceIP6EnableDisableReply)
650         err := c.conn.Invoke(ctx, in, out)
651         if err != nil {
652                 return nil, err
653         }
654         return out, api.RetvalToVPPApiError(out.Retval)
655 }
656
657 func (c *serviceClient) SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error) {
658         out := new(SwInterfaceIP6SetLinkLocalAddressReply)
659         err := c.conn.Invoke(ctx, in, out)
660         if err != nil {
661                 return nil, err
662         }
663         return out, api.RetvalToVPPApiError(out.Retval)
664 }