go.ligato.io/vpp-agent/v3@v3.5.0/plugins/vpp/binapi/vpp2210/ip/ip_rpc.ba.go (about)

     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 "go.fd.io/govpp/api"
    11  	memclnt "go.ligato.io/vpp-agent/v3/plugins/vpp/binapi/vpp2210/memclnt"
    12  )
    13  
    14  // RPCService defines RPC service ip.
    15  type RPCService interface {
    16  	AddDelIPPuntRedirectV2(ctx context.Context, in *AddDelIPPuntRedirectV2) (*AddDelIPPuntRedirectV2Reply, error)
    17  	IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error)
    18  	IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error)
    19  	IPAddressDump(ctx context.Context, in *IPAddressDump) (RPCService_IPAddressDumpClient, error)
    20  	IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error)
    21  	IPContainerProxyDump(ctx context.Context, in *IPContainerProxyDump) (RPCService_IPContainerProxyDumpClient, error)
    22  	IPDump(ctx context.Context, in *IPDump) (RPCService_IPDumpClient, error)
    23  	IPLocalReassEnableDisable(ctx context.Context, in *IPLocalReassEnableDisable) (*IPLocalReassEnableDisableReply, error)
    24  	IPLocalReassGet(ctx context.Context, in *IPLocalReassGet) (*IPLocalReassGetReply, error)
    25  	IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error)
    26  	IPMrouteDump(ctx context.Context, in *IPMrouteDump) (RPCService_IPMrouteDumpClient, error)
    27  	IPMtableDump(ctx context.Context, in *IPMtableDump) (RPCService_IPMtableDumpClient, error)
    28  	IPPathMtuGet(ctx context.Context, in *IPPathMtuGet) (RPCService_IPPathMtuGetClient, error)
    29  	IPPathMtuReplaceBegin(ctx context.Context, in *IPPathMtuReplaceBegin) (*IPPathMtuReplaceBeginReply, error)
    30  	IPPathMtuReplaceEnd(ctx context.Context, in *IPPathMtuReplaceEnd) (*IPPathMtuReplaceEndReply, error)
    31  	IPPathMtuUpdate(ctx context.Context, in *IPPathMtuUpdate) (*IPPathMtuUpdateReply, error)
    32  	IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error)
    33  	IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error)
    34  	IPPuntRedirectDump(ctx context.Context, in *IPPuntRedirectDump) (RPCService_IPPuntRedirectDumpClient, error)
    35  	IPPuntRedirectV2Dump(ctx context.Context, in *IPPuntRedirectV2Dump) (RPCService_IPPuntRedirectV2DumpClient, error)
    36  	IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error)
    37  	IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error)
    38  	IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error)
    39  	IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error)
    40  	IPRouteAddDelV2(ctx context.Context, in *IPRouteAddDelV2) (*IPRouteAddDelV2Reply, error)
    41  	IPRouteDump(ctx context.Context, in *IPRouteDump) (RPCService_IPRouteDumpClient, error)
    42  	IPRouteLookup(ctx context.Context, in *IPRouteLookup) (*IPRouteLookupReply, error)
    43  	IPRouteLookupV2(ctx context.Context, in *IPRouteLookupV2) (*IPRouteLookupV2Reply, error)
    44  	IPRouteV2Dump(ctx context.Context, in *IPRouteV2Dump) (RPCService_IPRouteV2DumpClient, error)
    45  	IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error)
    46  	IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error)
    47  	IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error)
    48  	IPTableAllocate(ctx context.Context, in *IPTableAllocate) (*IPTableAllocateReply, error)
    49  	IPTableDump(ctx context.Context, in *IPTableDump) (RPCService_IPTableDumpClient, error)
    50  	IPTableFlush(ctx context.Context, in *IPTableFlush) (*IPTableFlushReply, error)
    51  	IPTableReplaceBegin(ctx context.Context, in *IPTableReplaceBegin) (*IPTableReplaceBeginReply, error)
    52  	IPTableReplaceEnd(ctx context.Context, in *IPTableReplaceEnd) (*IPTableReplaceEndReply, error)
    53  	IPUnnumberedDump(ctx context.Context, in *IPUnnumberedDump) (RPCService_IPUnnumberedDumpClient, error)
    54  	MfibSignalDump(ctx context.Context, in *MfibSignalDump) (RPCService_MfibSignalDumpClient, error)
    55  	SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error)
    56  	SetIPFlowHashRouterID(ctx context.Context, in *SetIPFlowHashRouterID) (*SetIPFlowHashRouterIDReply, error)
    57  	SetIPFlowHashV2(ctx context.Context, in *SetIPFlowHashV2) (*SetIPFlowHashV2Reply, error)
    58  	SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error)
    59  	SwInterfaceIP6GetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6GetLinkLocalAddress) (*SwInterfaceIP6GetLinkLocalAddressReply, error)
    60  	SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error)
    61  }
    62  
    63  type serviceClient struct {
    64  	conn api.Connection
    65  }
    66  
    67  func NewServiceClient(conn api.Connection) RPCService {
    68  	return &serviceClient{conn}
    69  }
    70  
    71  func (c *serviceClient) AddDelIPPuntRedirectV2(ctx context.Context, in *AddDelIPPuntRedirectV2) (*AddDelIPPuntRedirectV2Reply, error) {
    72  	out := new(AddDelIPPuntRedirectV2Reply)
    73  	err := c.conn.Invoke(ctx, in, out)
    74  	if err != nil {
    75  		return nil, err
    76  	}
    77  	return out, api.RetvalToVPPApiError(out.Retval)
    78  }
    79  
    80  func (c *serviceClient) IoamDisable(ctx context.Context, in *IoamDisable) (*IoamDisableReply, error) {
    81  	out := new(IoamDisableReply)
    82  	err := c.conn.Invoke(ctx, in, out)
    83  	if err != nil {
    84  		return nil, err
    85  	}
    86  	return out, api.RetvalToVPPApiError(out.Retval)
    87  }
    88  
    89  func (c *serviceClient) IoamEnable(ctx context.Context, in *IoamEnable) (*IoamEnableReply, error) {
    90  	out := new(IoamEnableReply)
    91  	err := c.conn.Invoke(ctx, in, out)
    92  	if err != nil {
    93  		return nil, err
    94  	}
    95  	return out, api.RetvalToVPPApiError(out.Retval)
    96  }
    97  
    98  func (c *serviceClient) IPAddressDump(ctx context.Context, in *IPAddressDump) (RPCService_IPAddressDumpClient, error) {
    99  	stream, err := c.conn.NewStream(ctx)
   100  	if err != nil {
   101  		return nil, err
   102  	}
   103  	x := &serviceClient_IPAddressDumpClient{stream}
   104  	if err := x.Stream.SendMsg(in); err != nil {
   105  		return nil, err
   106  	}
   107  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   108  		return nil, err
   109  	}
   110  	return x, nil
   111  }
   112  
   113  type RPCService_IPAddressDumpClient interface {
   114  	Recv() (*IPAddressDetails, error)
   115  	api.Stream
   116  }
   117  
   118  type serviceClient_IPAddressDumpClient struct {
   119  	api.Stream
   120  }
   121  
   122  func (c *serviceClient_IPAddressDumpClient) Recv() (*IPAddressDetails, error) {
   123  	msg, err := c.Stream.RecvMsg()
   124  	if err != nil {
   125  		return nil, err
   126  	}
   127  	switch m := msg.(type) {
   128  	case *IPAddressDetails:
   129  		return m, nil
   130  	case *memclnt.ControlPingReply:
   131  		err = c.Stream.Close()
   132  		if err != nil {
   133  			return nil, err
   134  		}
   135  		return nil, io.EOF
   136  	default:
   137  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   138  	}
   139  }
   140  
   141  func (c *serviceClient) IPContainerProxyAddDel(ctx context.Context, in *IPContainerProxyAddDel) (*IPContainerProxyAddDelReply, error) {
   142  	out := new(IPContainerProxyAddDelReply)
   143  	err := c.conn.Invoke(ctx, in, out)
   144  	if err != nil {
   145  		return nil, err
   146  	}
   147  	return out, api.RetvalToVPPApiError(out.Retval)
   148  }
   149  
   150  func (c *serviceClient) IPContainerProxyDump(ctx context.Context, in *IPContainerProxyDump) (RPCService_IPContainerProxyDumpClient, error) {
   151  	stream, err := c.conn.NewStream(ctx)
   152  	if err != nil {
   153  		return nil, err
   154  	}
   155  	x := &serviceClient_IPContainerProxyDumpClient{stream}
   156  	if err := x.Stream.SendMsg(in); err != nil {
   157  		return nil, err
   158  	}
   159  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   160  		return nil, err
   161  	}
   162  	return x, nil
   163  }
   164  
   165  type RPCService_IPContainerProxyDumpClient interface {
   166  	Recv() (*IPContainerProxyDetails, error)
   167  	api.Stream
   168  }
   169  
   170  type serviceClient_IPContainerProxyDumpClient struct {
   171  	api.Stream
   172  }
   173  
   174  func (c *serviceClient_IPContainerProxyDumpClient) Recv() (*IPContainerProxyDetails, error) {
   175  	msg, err := c.Stream.RecvMsg()
   176  	if err != nil {
   177  		return nil, err
   178  	}
   179  	switch m := msg.(type) {
   180  	case *IPContainerProxyDetails:
   181  		return m, nil
   182  	case *memclnt.ControlPingReply:
   183  		err = c.Stream.Close()
   184  		if err != nil {
   185  			return nil, err
   186  		}
   187  		return nil, io.EOF
   188  	default:
   189  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   190  	}
   191  }
   192  
   193  func (c *serviceClient) IPDump(ctx context.Context, in *IPDump) (RPCService_IPDumpClient, error) {
   194  	stream, err := c.conn.NewStream(ctx)
   195  	if err != nil {
   196  		return nil, err
   197  	}
   198  	x := &serviceClient_IPDumpClient{stream}
   199  	if err := x.Stream.SendMsg(in); err != nil {
   200  		return nil, err
   201  	}
   202  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   203  		return nil, err
   204  	}
   205  	return x, nil
   206  }
   207  
   208  type RPCService_IPDumpClient interface {
   209  	Recv() (*IPDetails, error)
   210  	api.Stream
   211  }
   212  
   213  type serviceClient_IPDumpClient struct {
   214  	api.Stream
   215  }
   216  
   217  func (c *serviceClient_IPDumpClient) Recv() (*IPDetails, error) {
   218  	msg, err := c.Stream.RecvMsg()
   219  	if err != nil {
   220  		return nil, err
   221  	}
   222  	switch m := msg.(type) {
   223  	case *IPDetails:
   224  		return m, nil
   225  	case *memclnt.ControlPingReply:
   226  		err = c.Stream.Close()
   227  		if err != nil {
   228  			return nil, err
   229  		}
   230  		return nil, io.EOF
   231  	default:
   232  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   233  	}
   234  }
   235  
   236  func (c *serviceClient) IPLocalReassEnableDisable(ctx context.Context, in *IPLocalReassEnableDisable) (*IPLocalReassEnableDisableReply, error) {
   237  	out := new(IPLocalReassEnableDisableReply)
   238  	err := c.conn.Invoke(ctx, in, out)
   239  	if err != nil {
   240  		return nil, err
   241  	}
   242  	return out, api.RetvalToVPPApiError(out.Retval)
   243  }
   244  
   245  func (c *serviceClient) IPLocalReassGet(ctx context.Context, in *IPLocalReassGet) (*IPLocalReassGetReply, error) {
   246  	out := new(IPLocalReassGetReply)
   247  	err := c.conn.Invoke(ctx, in, out)
   248  	if err != nil {
   249  		return nil, err
   250  	}
   251  	return out, api.RetvalToVPPApiError(out.Retval)
   252  }
   253  
   254  func (c *serviceClient) IPMrouteAddDel(ctx context.Context, in *IPMrouteAddDel) (*IPMrouteAddDelReply, error) {
   255  	out := new(IPMrouteAddDelReply)
   256  	err := c.conn.Invoke(ctx, in, out)
   257  	if err != nil {
   258  		return nil, err
   259  	}
   260  	return out, api.RetvalToVPPApiError(out.Retval)
   261  }
   262  
   263  func (c *serviceClient) IPMrouteDump(ctx context.Context, in *IPMrouteDump) (RPCService_IPMrouteDumpClient, error) {
   264  	stream, err := c.conn.NewStream(ctx)
   265  	if err != nil {
   266  		return nil, err
   267  	}
   268  	x := &serviceClient_IPMrouteDumpClient{stream}
   269  	if err := x.Stream.SendMsg(in); err != nil {
   270  		return nil, err
   271  	}
   272  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   273  		return nil, err
   274  	}
   275  	return x, nil
   276  }
   277  
   278  type RPCService_IPMrouteDumpClient interface {
   279  	Recv() (*IPMrouteDetails, error)
   280  	api.Stream
   281  }
   282  
   283  type serviceClient_IPMrouteDumpClient struct {
   284  	api.Stream
   285  }
   286  
   287  func (c *serviceClient_IPMrouteDumpClient) Recv() (*IPMrouteDetails, error) {
   288  	msg, err := c.Stream.RecvMsg()
   289  	if err != nil {
   290  		return nil, err
   291  	}
   292  	switch m := msg.(type) {
   293  	case *IPMrouteDetails:
   294  		return m, nil
   295  	case *memclnt.ControlPingReply:
   296  		err = c.Stream.Close()
   297  		if err != nil {
   298  			return nil, err
   299  		}
   300  		return nil, io.EOF
   301  	default:
   302  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   303  	}
   304  }
   305  
   306  func (c *serviceClient) IPMtableDump(ctx context.Context, in *IPMtableDump) (RPCService_IPMtableDumpClient, error) {
   307  	stream, err := c.conn.NewStream(ctx)
   308  	if err != nil {
   309  		return nil, err
   310  	}
   311  	x := &serviceClient_IPMtableDumpClient{stream}
   312  	if err := x.Stream.SendMsg(in); err != nil {
   313  		return nil, err
   314  	}
   315  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   316  		return nil, err
   317  	}
   318  	return x, nil
   319  }
   320  
   321  type RPCService_IPMtableDumpClient interface {
   322  	Recv() (*IPMtableDetails, error)
   323  	api.Stream
   324  }
   325  
   326  type serviceClient_IPMtableDumpClient struct {
   327  	api.Stream
   328  }
   329  
   330  func (c *serviceClient_IPMtableDumpClient) Recv() (*IPMtableDetails, error) {
   331  	msg, err := c.Stream.RecvMsg()
   332  	if err != nil {
   333  		return nil, err
   334  	}
   335  	switch m := msg.(type) {
   336  	case *IPMtableDetails:
   337  		return m, nil
   338  	case *memclnt.ControlPingReply:
   339  		err = c.Stream.Close()
   340  		if err != nil {
   341  			return nil, err
   342  		}
   343  		return nil, io.EOF
   344  	default:
   345  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   346  	}
   347  }
   348  
   349  func (c *serviceClient) IPPathMtuGet(ctx context.Context, in *IPPathMtuGet) (RPCService_IPPathMtuGetClient, error) {
   350  	stream, err := c.conn.NewStream(ctx)
   351  	if err != nil {
   352  		return nil, err
   353  	}
   354  	x := &serviceClient_IPPathMtuGetClient{stream}
   355  	if err := x.Stream.SendMsg(in); err != nil {
   356  		return nil, err
   357  	}
   358  	return x, nil
   359  }
   360  
   361  type RPCService_IPPathMtuGetClient interface {
   362  	Recv() (*IPPathMtuDetails, *IPPathMtuGetReply, error)
   363  	api.Stream
   364  }
   365  
   366  type serviceClient_IPPathMtuGetClient struct {
   367  	api.Stream
   368  }
   369  
   370  func (c *serviceClient_IPPathMtuGetClient) Recv() (*IPPathMtuDetails, *IPPathMtuGetReply, error) {
   371  	msg, err := c.Stream.RecvMsg()
   372  	if err != nil {
   373  		return nil, nil, err
   374  	}
   375  	switch m := msg.(type) {
   376  	case *IPPathMtuDetails:
   377  		return m, nil, nil
   378  	case *IPPathMtuGetReply:
   379  		if err := api.RetvalToVPPApiError(m.Retval); err != nil {
   380  			return nil, nil, err
   381  		}
   382  		err = c.Stream.Close()
   383  		if err != nil {
   384  			return nil, nil, err
   385  		}
   386  		return nil, m, io.EOF
   387  	default:
   388  		return nil, nil, fmt.Errorf("unexpected message: %T %v", m, m)
   389  	}
   390  }
   391  
   392  func (c *serviceClient) IPPathMtuReplaceBegin(ctx context.Context, in *IPPathMtuReplaceBegin) (*IPPathMtuReplaceBeginReply, error) {
   393  	out := new(IPPathMtuReplaceBeginReply)
   394  	err := c.conn.Invoke(ctx, in, out)
   395  	if err != nil {
   396  		return nil, err
   397  	}
   398  	return out, api.RetvalToVPPApiError(out.Retval)
   399  }
   400  
   401  func (c *serviceClient) IPPathMtuReplaceEnd(ctx context.Context, in *IPPathMtuReplaceEnd) (*IPPathMtuReplaceEndReply, error) {
   402  	out := new(IPPathMtuReplaceEndReply)
   403  	err := c.conn.Invoke(ctx, in, out)
   404  	if err != nil {
   405  		return nil, err
   406  	}
   407  	return out, api.RetvalToVPPApiError(out.Retval)
   408  }
   409  
   410  func (c *serviceClient) IPPathMtuUpdate(ctx context.Context, in *IPPathMtuUpdate) (*IPPathMtuUpdateReply, error) {
   411  	out := new(IPPathMtuUpdateReply)
   412  	err := c.conn.Invoke(ctx, in, out)
   413  	if err != nil {
   414  		return nil, err
   415  	}
   416  	return out, api.RetvalToVPPApiError(out.Retval)
   417  }
   418  
   419  func (c *serviceClient) IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error) {
   420  	out := new(IPPuntPoliceReply)
   421  	err := c.conn.Invoke(ctx, in, out)
   422  	if err != nil {
   423  		return nil, err
   424  	}
   425  	return out, api.RetvalToVPPApiError(out.Retval)
   426  }
   427  
   428  func (c *serviceClient) IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error) {
   429  	out := new(IPPuntRedirectReply)
   430  	err := c.conn.Invoke(ctx, in, out)
   431  	if err != nil {
   432  		return nil, err
   433  	}
   434  	return out, api.RetvalToVPPApiError(out.Retval)
   435  }
   436  
   437  func (c *serviceClient) IPPuntRedirectDump(ctx context.Context, in *IPPuntRedirectDump) (RPCService_IPPuntRedirectDumpClient, error) {
   438  	stream, err := c.conn.NewStream(ctx)
   439  	if err != nil {
   440  		return nil, err
   441  	}
   442  	x := &serviceClient_IPPuntRedirectDumpClient{stream}
   443  	if err := x.Stream.SendMsg(in); err != nil {
   444  		return nil, err
   445  	}
   446  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   447  		return nil, err
   448  	}
   449  	return x, nil
   450  }
   451  
   452  type RPCService_IPPuntRedirectDumpClient interface {
   453  	Recv() (*IPPuntRedirectDetails, error)
   454  	api.Stream
   455  }
   456  
   457  type serviceClient_IPPuntRedirectDumpClient struct {
   458  	api.Stream
   459  }
   460  
   461  func (c *serviceClient_IPPuntRedirectDumpClient) Recv() (*IPPuntRedirectDetails, error) {
   462  	msg, err := c.Stream.RecvMsg()
   463  	if err != nil {
   464  		return nil, err
   465  	}
   466  	switch m := msg.(type) {
   467  	case *IPPuntRedirectDetails:
   468  		return m, nil
   469  	case *memclnt.ControlPingReply:
   470  		err = c.Stream.Close()
   471  		if err != nil {
   472  			return nil, err
   473  		}
   474  		return nil, io.EOF
   475  	default:
   476  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   477  	}
   478  }
   479  
   480  func (c *serviceClient) IPPuntRedirectV2Dump(ctx context.Context, in *IPPuntRedirectV2Dump) (RPCService_IPPuntRedirectV2DumpClient, error) {
   481  	stream, err := c.conn.NewStream(ctx)
   482  	if err != nil {
   483  		return nil, err
   484  	}
   485  	x := &serviceClient_IPPuntRedirectV2DumpClient{stream}
   486  	if err := x.Stream.SendMsg(in); err != nil {
   487  		return nil, err
   488  	}
   489  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   490  		return nil, err
   491  	}
   492  	return x, nil
   493  }
   494  
   495  type RPCService_IPPuntRedirectV2DumpClient interface {
   496  	Recv() (*IPPuntRedirectV2Details, error)
   497  	api.Stream
   498  }
   499  
   500  type serviceClient_IPPuntRedirectV2DumpClient struct {
   501  	api.Stream
   502  }
   503  
   504  func (c *serviceClient_IPPuntRedirectV2DumpClient) Recv() (*IPPuntRedirectV2Details, error) {
   505  	msg, err := c.Stream.RecvMsg()
   506  	if err != nil {
   507  		return nil, err
   508  	}
   509  	switch m := msg.(type) {
   510  	case *IPPuntRedirectV2Details:
   511  		return m, nil
   512  	case *memclnt.ControlPingReply:
   513  		err = c.Stream.Close()
   514  		if err != nil {
   515  			return nil, err
   516  		}
   517  		return nil, io.EOF
   518  	default:
   519  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   520  	}
   521  }
   522  
   523  func (c *serviceClient) IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error) {
   524  	out := new(IPReassemblyEnableDisableReply)
   525  	err := c.conn.Invoke(ctx, in, out)
   526  	if err != nil {
   527  		return nil, err
   528  	}
   529  	return out, api.RetvalToVPPApiError(out.Retval)
   530  }
   531  
   532  func (c *serviceClient) IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error) {
   533  	out := new(IPReassemblyGetReply)
   534  	err := c.conn.Invoke(ctx, in, out)
   535  	if err != nil {
   536  		return nil, err
   537  	}
   538  	return out, api.RetvalToVPPApiError(out.Retval)
   539  }
   540  
   541  func (c *serviceClient) IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error) {
   542  	out := new(IPReassemblySetReply)
   543  	err := c.conn.Invoke(ctx, in, out)
   544  	if err != nil {
   545  		return nil, err
   546  	}
   547  	return out, api.RetvalToVPPApiError(out.Retval)
   548  }
   549  
   550  func (c *serviceClient) IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error) {
   551  	out := new(IPRouteAddDelReply)
   552  	err := c.conn.Invoke(ctx, in, out)
   553  	if err != nil {
   554  		return nil, err
   555  	}
   556  	return out, api.RetvalToVPPApiError(out.Retval)
   557  }
   558  
   559  func (c *serviceClient) IPRouteAddDelV2(ctx context.Context, in *IPRouteAddDelV2) (*IPRouteAddDelV2Reply, error) {
   560  	out := new(IPRouteAddDelV2Reply)
   561  	err := c.conn.Invoke(ctx, in, out)
   562  	if err != nil {
   563  		return nil, err
   564  	}
   565  	return out, api.RetvalToVPPApiError(out.Retval)
   566  }
   567  
   568  func (c *serviceClient) IPRouteDump(ctx context.Context, in *IPRouteDump) (RPCService_IPRouteDumpClient, error) {
   569  	stream, err := c.conn.NewStream(ctx)
   570  	if err != nil {
   571  		return nil, err
   572  	}
   573  	x := &serviceClient_IPRouteDumpClient{stream}
   574  	if err := x.Stream.SendMsg(in); err != nil {
   575  		return nil, err
   576  	}
   577  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   578  		return nil, err
   579  	}
   580  	return x, nil
   581  }
   582  
   583  type RPCService_IPRouteDumpClient interface {
   584  	Recv() (*IPRouteDetails, error)
   585  	api.Stream
   586  }
   587  
   588  type serviceClient_IPRouteDumpClient struct {
   589  	api.Stream
   590  }
   591  
   592  func (c *serviceClient_IPRouteDumpClient) Recv() (*IPRouteDetails, error) {
   593  	msg, err := c.Stream.RecvMsg()
   594  	if err != nil {
   595  		return nil, err
   596  	}
   597  	switch m := msg.(type) {
   598  	case *IPRouteDetails:
   599  		return m, nil
   600  	case *memclnt.ControlPingReply:
   601  		err = c.Stream.Close()
   602  		if err != nil {
   603  			return nil, err
   604  		}
   605  		return nil, io.EOF
   606  	default:
   607  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   608  	}
   609  }
   610  
   611  func (c *serviceClient) IPRouteLookup(ctx context.Context, in *IPRouteLookup) (*IPRouteLookupReply, error) {
   612  	out := new(IPRouteLookupReply)
   613  	err := c.conn.Invoke(ctx, in, out)
   614  	if err != nil {
   615  		return nil, err
   616  	}
   617  	return out, api.RetvalToVPPApiError(out.Retval)
   618  }
   619  
   620  func (c *serviceClient) IPRouteLookupV2(ctx context.Context, in *IPRouteLookupV2) (*IPRouteLookupV2Reply, error) {
   621  	out := new(IPRouteLookupV2Reply)
   622  	err := c.conn.Invoke(ctx, in, out)
   623  	if err != nil {
   624  		return nil, err
   625  	}
   626  	return out, api.RetvalToVPPApiError(out.Retval)
   627  }
   628  
   629  func (c *serviceClient) IPRouteV2Dump(ctx context.Context, in *IPRouteV2Dump) (RPCService_IPRouteV2DumpClient, error) {
   630  	stream, err := c.conn.NewStream(ctx)
   631  	if err != nil {
   632  		return nil, err
   633  	}
   634  	x := &serviceClient_IPRouteV2DumpClient{stream}
   635  	if err := x.Stream.SendMsg(in); err != nil {
   636  		return nil, err
   637  	}
   638  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   639  		return nil, err
   640  	}
   641  	return x, nil
   642  }
   643  
   644  type RPCService_IPRouteV2DumpClient interface {
   645  	Recv() (*IPRouteV2Details, error)
   646  	api.Stream
   647  }
   648  
   649  type serviceClient_IPRouteV2DumpClient struct {
   650  	api.Stream
   651  }
   652  
   653  func (c *serviceClient_IPRouteV2DumpClient) Recv() (*IPRouteV2Details, error) {
   654  	msg, err := c.Stream.RecvMsg()
   655  	if err != nil {
   656  		return nil, err
   657  	}
   658  	switch m := msg.(type) {
   659  	case *IPRouteV2Details:
   660  		return m, nil
   661  	case *memclnt.ControlPingReply:
   662  		err = c.Stream.Close()
   663  		if err != nil {
   664  			return nil, err
   665  		}
   666  		return nil, io.EOF
   667  	default:
   668  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   669  	}
   670  }
   671  
   672  func (c *serviceClient) IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error) {
   673  	out := new(IPSourceAndPortRangeCheckAddDelReply)
   674  	err := c.conn.Invoke(ctx, in, out)
   675  	if err != nil {
   676  		return nil, err
   677  	}
   678  	return out, api.RetvalToVPPApiError(out.Retval)
   679  }
   680  
   681  func (c *serviceClient) IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error) {
   682  	out := new(IPSourceAndPortRangeCheckInterfaceAddDelReply)
   683  	err := c.conn.Invoke(ctx, in, out)
   684  	if err != nil {
   685  		return nil, err
   686  	}
   687  	return out, api.RetvalToVPPApiError(out.Retval)
   688  }
   689  
   690  func (c *serviceClient) IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error) {
   691  	out := new(IPTableAddDelReply)
   692  	err := c.conn.Invoke(ctx, in, out)
   693  	if err != nil {
   694  		return nil, err
   695  	}
   696  	return out, api.RetvalToVPPApiError(out.Retval)
   697  }
   698  
   699  func (c *serviceClient) IPTableAllocate(ctx context.Context, in *IPTableAllocate) (*IPTableAllocateReply, error) {
   700  	out := new(IPTableAllocateReply)
   701  	err := c.conn.Invoke(ctx, in, out)
   702  	if err != nil {
   703  		return nil, err
   704  	}
   705  	return out, api.RetvalToVPPApiError(out.Retval)
   706  }
   707  
   708  func (c *serviceClient) IPTableDump(ctx context.Context, in *IPTableDump) (RPCService_IPTableDumpClient, error) {
   709  	stream, err := c.conn.NewStream(ctx)
   710  	if err != nil {
   711  		return nil, err
   712  	}
   713  	x := &serviceClient_IPTableDumpClient{stream}
   714  	if err := x.Stream.SendMsg(in); err != nil {
   715  		return nil, err
   716  	}
   717  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   718  		return nil, err
   719  	}
   720  	return x, nil
   721  }
   722  
   723  type RPCService_IPTableDumpClient interface {
   724  	Recv() (*IPTableDetails, error)
   725  	api.Stream
   726  }
   727  
   728  type serviceClient_IPTableDumpClient struct {
   729  	api.Stream
   730  }
   731  
   732  func (c *serviceClient_IPTableDumpClient) Recv() (*IPTableDetails, error) {
   733  	msg, err := c.Stream.RecvMsg()
   734  	if err != nil {
   735  		return nil, err
   736  	}
   737  	switch m := msg.(type) {
   738  	case *IPTableDetails:
   739  		return m, nil
   740  	case *memclnt.ControlPingReply:
   741  		err = c.Stream.Close()
   742  		if err != nil {
   743  			return nil, err
   744  		}
   745  		return nil, io.EOF
   746  	default:
   747  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   748  	}
   749  }
   750  
   751  func (c *serviceClient) IPTableFlush(ctx context.Context, in *IPTableFlush) (*IPTableFlushReply, error) {
   752  	out := new(IPTableFlushReply)
   753  	err := c.conn.Invoke(ctx, in, out)
   754  	if err != nil {
   755  		return nil, err
   756  	}
   757  	return out, api.RetvalToVPPApiError(out.Retval)
   758  }
   759  
   760  func (c *serviceClient) IPTableReplaceBegin(ctx context.Context, in *IPTableReplaceBegin) (*IPTableReplaceBeginReply, error) {
   761  	out := new(IPTableReplaceBeginReply)
   762  	err := c.conn.Invoke(ctx, in, out)
   763  	if err != nil {
   764  		return nil, err
   765  	}
   766  	return out, api.RetvalToVPPApiError(out.Retval)
   767  }
   768  
   769  func (c *serviceClient) IPTableReplaceEnd(ctx context.Context, in *IPTableReplaceEnd) (*IPTableReplaceEndReply, error) {
   770  	out := new(IPTableReplaceEndReply)
   771  	err := c.conn.Invoke(ctx, in, out)
   772  	if err != nil {
   773  		return nil, err
   774  	}
   775  	return out, api.RetvalToVPPApiError(out.Retval)
   776  }
   777  
   778  func (c *serviceClient) IPUnnumberedDump(ctx context.Context, in *IPUnnumberedDump) (RPCService_IPUnnumberedDumpClient, error) {
   779  	stream, err := c.conn.NewStream(ctx)
   780  	if err != nil {
   781  		return nil, err
   782  	}
   783  	x := &serviceClient_IPUnnumberedDumpClient{stream}
   784  	if err := x.Stream.SendMsg(in); err != nil {
   785  		return nil, err
   786  	}
   787  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   788  		return nil, err
   789  	}
   790  	return x, nil
   791  }
   792  
   793  type RPCService_IPUnnumberedDumpClient interface {
   794  	Recv() (*IPUnnumberedDetails, error)
   795  	api.Stream
   796  }
   797  
   798  type serviceClient_IPUnnumberedDumpClient struct {
   799  	api.Stream
   800  }
   801  
   802  func (c *serviceClient_IPUnnumberedDumpClient) Recv() (*IPUnnumberedDetails, error) {
   803  	msg, err := c.Stream.RecvMsg()
   804  	if err != nil {
   805  		return nil, err
   806  	}
   807  	switch m := msg.(type) {
   808  	case *IPUnnumberedDetails:
   809  		return m, nil
   810  	case *memclnt.ControlPingReply:
   811  		err = c.Stream.Close()
   812  		if err != nil {
   813  			return nil, err
   814  		}
   815  		return nil, io.EOF
   816  	default:
   817  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   818  	}
   819  }
   820  
   821  func (c *serviceClient) MfibSignalDump(ctx context.Context, in *MfibSignalDump) (RPCService_MfibSignalDumpClient, error) {
   822  	stream, err := c.conn.NewStream(ctx)
   823  	if err != nil {
   824  		return nil, err
   825  	}
   826  	x := &serviceClient_MfibSignalDumpClient{stream}
   827  	if err := x.Stream.SendMsg(in); err != nil {
   828  		return nil, err
   829  	}
   830  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   831  		return nil, err
   832  	}
   833  	return x, nil
   834  }
   835  
   836  type RPCService_MfibSignalDumpClient interface {
   837  	Recv() (*MfibSignalDetails, error)
   838  	api.Stream
   839  }
   840  
   841  type serviceClient_MfibSignalDumpClient struct {
   842  	api.Stream
   843  }
   844  
   845  func (c *serviceClient_MfibSignalDumpClient) Recv() (*MfibSignalDetails, error) {
   846  	msg, err := c.Stream.RecvMsg()
   847  	if err != nil {
   848  		return nil, err
   849  	}
   850  	switch m := msg.(type) {
   851  	case *MfibSignalDetails:
   852  		return m, nil
   853  	case *memclnt.ControlPingReply:
   854  		err = c.Stream.Close()
   855  		if err != nil {
   856  			return nil, err
   857  		}
   858  		return nil, io.EOF
   859  	default:
   860  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   861  	}
   862  }
   863  
   864  func (c *serviceClient) SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error) {
   865  	out := new(SetIPFlowHashReply)
   866  	err := c.conn.Invoke(ctx, in, out)
   867  	if err != nil {
   868  		return nil, err
   869  	}
   870  	return out, api.RetvalToVPPApiError(out.Retval)
   871  }
   872  
   873  func (c *serviceClient) SetIPFlowHashRouterID(ctx context.Context, in *SetIPFlowHashRouterID) (*SetIPFlowHashRouterIDReply, error) {
   874  	out := new(SetIPFlowHashRouterIDReply)
   875  	err := c.conn.Invoke(ctx, in, out)
   876  	if err != nil {
   877  		return nil, err
   878  	}
   879  	return out, api.RetvalToVPPApiError(out.Retval)
   880  }
   881  
   882  func (c *serviceClient) SetIPFlowHashV2(ctx context.Context, in *SetIPFlowHashV2) (*SetIPFlowHashV2Reply, error) {
   883  	out := new(SetIPFlowHashV2Reply)
   884  	err := c.conn.Invoke(ctx, in, out)
   885  	if err != nil {
   886  		return nil, err
   887  	}
   888  	return out, api.RetvalToVPPApiError(out.Retval)
   889  }
   890  
   891  func (c *serviceClient) SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error) {
   892  	out := new(SwInterfaceIP6EnableDisableReply)
   893  	err := c.conn.Invoke(ctx, in, out)
   894  	if err != nil {
   895  		return nil, err
   896  	}
   897  	return out, api.RetvalToVPPApiError(out.Retval)
   898  }
   899  
   900  func (c *serviceClient) SwInterfaceIP6GetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6GetLinkLocalAddress) (*SwInterfaceIP6GetLinkLocalAddressReply, error) {
   901  	out := new(SwInterfaceIP6GetLinkLocalAddressReply)
   902  	err := c.conn.Invoke(ctx, in, out)
   903  	if err != nil {
   904  		return nil, err
   905  	}
   906  	return out, api.RetvalToVPPApiError(out.Retval)
   907  }
   908  
   909  func (c *serviceClient) SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error) {
   910  	out := new(SwInterfaceIP6SetLinkLocalAddressReply)
   911  	err := c.conn.Invoke(ctx, in, out)
   912  	if err != nil {
   913  		return nil, err
   914  	}
   915  	return out, api.RetvalToVPPApiError(out.Retval)
   916  }