github.com/edwarnicke/govpp@v0.0.0-20230130211138-14ef5d20b1d0/binapi/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 "git.fd.io/govpp.git/api"
    11  	memclnt "github.com/edwarnicke/govpp/binapi/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, error)
   363  	api.Stream
   364  }
   365  
   366  type serviceClient_IPPathMtuGetClient struct {
   367  	api.Stream
   368  }
   369  
   370  func (c *serviceClient_IPPathMtuGetClient) Recv() (*IPPathMtuDetails, error) {
   371  	msg, err := c.Stream.RecvMsg()
   372  	if err != nil {
   373  		return nil, err
   374  	}
   375  	switch m := msg.(type) {
   376  	case *IPPathMtuDetails:
   377  		return m, nil
   378  	case *IPPathMtuGetReply:
   379  		err = c.Stream.Close()
   380  		if err != nil {
   381  			return nil, err
   382  		}
   383  		return nil, io.EOF
   384  	default:
   385  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   386  	}
   387  }
   388  
   389  func (c *serviceClient) IPPathMtuReplaceBegin(ctx context.Context, in *IPPathMtuReplaceBegin) (*IPPathMtuReplaceBeginReply, error) {
   390  	out := new(IPPathMtuReplaceBeginReply)
   391  	err := c.conn.Invoke(ctx, in, out)
   392  	if err != nil {
   393  		return nil, err
   394  	}
   395  	return out, api.RetvalToVPPApiError(out.Retval)
   396  }
   397  
   398  func (c *serviceClient) IPPathMtuReplaceEnd(ctx context.Context, in *IPPathMtuReplaceEnd) (*IPPathMtuReplaceEndReply, error) {
   399  	out := new(IPPathMtuReplaceEndReply)
   400  	err := c.conn.Invoke(ctx, in, out)
   401  	if err != nil {
   402  		return nil, err
   403  	}
   404  	return out, api.RetvalToVPPApiError(out.Retval)
   405  }
   406  
   407  func (c *serviceClient) IPPathMtuUpdate(ctx context.Context, in *IPPathMtuUpdate) (*IPPathMtuUpdateReply, error) {
   408  	out := new(IPPathMtuUpdateReply)
   409  	err := c.conn.Invoke(ctx, in, out)
   410  	if err != nil {
   411  		return nil, err
   412  	}
   413  	return out, api.RetvalToVPPApiError(out.Retval)
   414  }
   415  
   416  func (c *serviceClient) IPPuntPolice(ctx context.Context, in *IPPuntPolice) (*IPPuntPoliceReply, error) {
   417  	out := new(IPPuntPoliceReply)
   418  	err := c.conn.Invoke(ctx, in, out)
   419  	if err != nil {
   420  		return nil, err
   421  	}
   422  	return out, api.RetvalToVPPApiError(out.Retval)
   423  }
   424  
   425  func (c *serviceClient) IPPuntRedirect(ctx context.Context, in *IPPuntRedirect) (*IPPuntRedirectReply, error) {
   426  	out := new(IPPuntRedirectReply)
   427  	err := c.conn.Invoke(ctx, in, out)
   428  	if err != nil {
   429  		return nil, err
   430  	}
   431  	return out, api.RetvalToVPPApiError(out.Retval)
   432  }
   433  
   434  func (c *serviceClient) IPPuntRedirectDump(ctx context.Context, in *IPPuntRedirectDump) (RPCService_IPPuntRedirectDumpClient, error) {
   435  	stream, err := c.conn.NewStream(ctx)
   436  	if err != nil {
   437  		return nil, err
   438  	}
   439  	x := &serviceClient_IPPuntRedirectDumpClient{stream}
   440  	if err := x.Stream.SendMsg(in); err != nil {
   441  		return nil, err
   442  	}
   443  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   444  		return nil, err
   445  	}
   446  	return x, nil
   447  }
   448  
   449  type RPCService_IPPuntRedirectDumpClient interface {
   450  	Recv() (*IPPuntRedirectDetails, error)
   451  	api.Stream
   452  }
   453  
   454  type serviceClient_IPPuntRedirectDumpClient struct {
   455  	api.Stream
   456  }
   457  
   458  func (c *serviceClient_IPPuntRedirectDumpClient) Recv() (*IPPuntRedirectDetails, error) {
   459  	msg, err := c.Stream.RecvMsg()
   460  	if err != nil {
   461  		return nil, err
   462  	}
   463  	switch m := msg.(type) {
   464  	case *IPPuntRedirectDetails:
   465  		return m, nil
   466  	case *memclnt.ControlPingReply:
   467  		err = c.Stream.Close()
   468  		if err != nil {
   469  			return nil, err
   470  		}
   471  		return nil, io.EOF
   472  	default:
   473  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   474  	}
   475  }
   476  
   477  func (c *serviceClient) IPPuntRedirectV2Dump(ctx context.Context, in *IPPuntRedirectV2Dump) (RPCService_IPPuntRedirectV2DumpClient, error) {
   478  	stream, err := c.conn.NewStream(ctx)
   479  	if err != nil {
   480  		return nil, err
   481  	}
   482  	x := &serviceClient_IPPuntRedirectV2DumpClient{stream}
   483  	if err := x.Stream.SendMsg(in); err != nil {
   484  		return nil, err
   485  	}
   486  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   487  		return nil, err
   488  	}
   489  	return x, nil
   490  }
   491  
   492  type RPCService_IPPuntRedirectV2DumpClient interface {
   493  	Recv() (*IPPuntRedirectV2Details, error)
   494  	api.Stream
   495  }
   496  
   497  type serviceClient_IPPuntRedirectV2DumpClient struct {
   498  	api.Stream
   499  }
   500  
   501  func (c *serviceClient_IPPuntRedirectV2DumpClient) Recv() (*IPPuntRedirectV2Details, error) {
   502  	msg, err := c.Stream.RecvMsg()
   503  	if err != nil {
   504  		return nil, err
   505  	}
   506  	switch m := msg.(type) {
   507  	case *IPPuntRedirectV2Details:
   508  		return m, nil
   509  	case *memclnt.ControlPingReply:
   510  		err = c.Stream.Close()
   511  		if err != nil {
   512  			return nil, err
   513  		}
   514  		return nil, io.EOF
   515  	default:
   516  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   517  	}
   518  }
   519  
   520  func (c *serviceClient) IPReassemblyEnableDisable(ctx context.Context, in *IPReassemblyEnableDisable) (*IPReassemblyEnableDisableReply, error) {
   521  	out := new(IPReassemblyEnableDisableReply)
   522  	err := c.conn.Invoke(ctx, in, out)
   523  	if err != nil {
   524  		return nil, err
   525  	}
   526  	return out, api.RetvalToVPPApiError(out.Retval)
   527  }
   528  
   529  func (c *serviceClient) IPReassemblyGet(ctx context.Context, in *IPReassemblyGet) (*IPReassemblyGetReply, error) {
   530  	out := new(IPReassemblyGetReply)
   531  	err := c.conn.Invoke(ctx, in, out)
   532  	if err != nil {
   533  		return nil, err
   534  	}
   535  	return out, api.RetvalToVPPApiError(out.Retval)
   536  }
   537  
   538  func (c *serviceClient) IPReassemblySet(ctx context.Context, in *IPReassemblySet) (*IPReassemblySetReply, error) {
   539  	out := new(IPReassemblySetReply)
   540  	err := c.conn.Invoke(ctx, in, out)
   541  	if err != nil {
   542  		return nil, err
   543  	}
   544  	return out, api.RetvalToVPPApiError(out.Retval)
   545  }
   546  
   547  func (c *serviceClient) IPRouteAddDel(ctx context.Context, in *IPRouteAddDel) (*IPRouteAddDelReply, error) {
   548  	out := new(IPRouteAddDelReply)
   549  	err := c.conn.Invoke(ctx, in, out)
   550  	if err != nil {
   551  		return nil, err
   552  	}
   553  	return out, api.RetvalToVPPApiError(out.Retval)
   554  }
   555  
   556  func (c *serviceClient) IPRouteAddDelV2(ctx context.Context, in *IPRouteAddDelV2) (*IPRouteAddDelV2Reply, error) {
   557  	out := new(IPRouteAddDelV2Reply)
   558  	err := c.conn.Invoke(ctx, in, out)
   559  	if err != nil {
   560  		return nil, err
   561  	}
   562  	return out, api.RetvalToVPPApiError(out.Retval)
   563  }
   564  
   565  func (c *serviceClient) IPRouteDump(ctx context.Context, in *IPRouteDump) (RPCService_IPRouteDumpClient, error) {
   566  	stream, err := c.conn.NewStream(ctx)
   567  	if err != nil {
   568  		return nil, err
   569  	}
   570  	x := &serviceClient_IPRouteDumpClient{stream}
   571  	if err := x.Stream.SendMsg(in); err != nil {
   572  		return nil, err
   573  	}
   574  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   575  		return nil, err
   576  	}
   577  	return x, nil
   578  }
   579  
   580  type RPCService_IPRouteDumpClient interface {
   581  	Recv() (*IPRouteDetails, error)
   582  	api.Stream
   583  }
   584  
   585  type serviceClient_IPRouteDumpClient struct {
   586  	api.Stream
   587  }
   588  
   589  func (c *serviceClient_IPRouteDumpClient) Recv() (*IPRouteDetails, error) {
   590  	msg, err := c.Stream.RecvMsg()
   591  	if err != nil {
   592  		return nil, err
   593  	}
   594  	switch m := msg.(type) {
   595  	case *IPRouteDetails:
   596  		return m, nil
   597  	case *memclnt.ControlPingReply:
   598  		err = c.Stream.Close()
   599  		if err != nil {
   600  			return nil, err
   601  		}
   602  		return nil, io.EOF
   603  	default:
   604  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   605  	}
   606  }
   607  
   608  func (c *serviceClient) IPRouteLookup(ctx context.Context, in *IPRouteLookup) (*IPRouteLookupReply, error) {
   609  	out := new(IPRouteLookupReply)
   610  	err := c.conn.Invoke(ctx, in, out)
   611  	if err != nil {
   612  		return nil, err
   613  	}
   614  	return out, api.RetvalToVPPApiError(out.Retval)
   615  }
   616  
   617  func (c *serviceClient) IPRouteLookupV2(ctx context.Context, in *IPRouteLookupV2) (*IPRouteLookupV2Reply, error) {
   618  	out := new(IPRouteLookupV2Reply)
   619  	err := c.conn.Invoke(ctx, in, out)
   620  	if err != nil {
   621  		return nil, err
   622  	}
   623  	return out, api.RetvalToVPPApiError(out.Retval)
   624  }
   625  
   626  func (c *serviceClient) IPRouteV2Dump(ctx context.Context, in *IPRouteV2Dump) (RPCService_IPRouteV2DumpClient, error) {
   627  	stream, err := c.conn.NewStream(ctx)
   628  	if err != nil {
   629  		return nil, err
   630  	}
   631  	x := &serviceClient_IPRouteV2DumpClient{stream}
   632  	if err := x.Stream.SendMsg(in); err != nil {
   633  		return nil, err
   634  	}
   635  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   636  		return nil, err
   637  	}
   638  	return x, nil
   639  }
   640  
   641  type RPCService_IPRouteV2DumpClient interface {
   642  	Recv() (*IPRouteV2Details, error)
   643  	api.Stream
   644  }
   645  
   646  type serviceClient_IPRouteV2DumpClient struct {
   647  	api.Stream
   648  }
   649  
   650  func (c *serviceClient_IPRouteV2DumpClient) Recv() (*IPRouteV2Details, error) {
   651  	msg, err := c.Stream.RecvMsg()
   652  	if err != nil {
   653  		return nil, err
   654  	}
   655  	switch m := msg.(type) {
   656  	case *IPRouteV2Details:
   657  		return m, nil
   658  	case *memclnt.ControlPingReply:
   659  		err = c.Stream.Close()
   660  		if err != nil {
   661  			return nil, err
   662  		}
   663  		return nil, io.EOF
   664  	default:
   665  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   666  	}
   667  }
   668  
   669  func (c *serviceClient) IPSourceAndPortRangeCheckAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckAddDel) (*IPSourceAndPortRangeCheckAddDelReply, error) {
   670  	out := new(IPSourceAndPortRangeCheckAddDelReply)
   671  	err := c.conn.Invoke(ctx, in, out)
   672  	if err != nil {
   673  		return nil, err
   674  	}
   675  	return out, api.RetvalToVPPApiError(out.Retval)
   676  }
   677  
   678  func (c *serviceClient) IPSourceAndPortRangeCheckInterfaceAddDel(ctx context.Context, in *IPSourceAndPortRangeCheckInterfaceAddDel) (*IPSourceAndPortRangeCheckInterfaceAddDelReply, error) {
   679  	out := new(IPSourceAndPortRangeCheckInterfaceAddDelReply)
   680  	err := c.conn.Invoke(ctx, in, out)
   681  	if err != nil {
   682  		return nil, err
   683  	}
   684  	return out, api.RetvalToVPPApiError(out.Retval)
   685  }
   686  
   687  func (c *serviceClient) IPTableAddDel(ctx context.Context, in *IPTableAddDel) (*IPTableAddDelReply, error) {
   688  	out := new(IPTableAddDelReply)
   689  	err := c.conn.Invoke(ctx, in, out)
   690  	if err != nil {
   691  		return nil, err
   692  	}
   693  	return out, api.RetvalToVPPApiError(out.Retval)
   694  }
   695  
   696  func (c *serviceClient) IPTableAllocate(ctx context.Context, in *IPTableAllocate) (*IPTableAllocateReply, error) {
   697  	out := new(IPTableAllocateReply)
   698  	err := c.conn.Invoke(ctx, in, out)
   699  	if err != nil {
   700  		return nil, err
   701  	}
   702  	return out, api.RetvalToVPPApiError(out.Retval)
   703  }
   704  
   705  func (c *serviceClient) IPTableDump(ctx context.Context, in *IPTableDump) (RPCService_IPTableDumpClient, error) {
   706  	stream, err := c.conn.NewStream(ctx)
   707  	if err != nil {
   708  		return nil, err
   709  	}
   710  	x := &serviceClient_IPTableDumpClient{stream}
   711  	if err := x.Stream.SendMsg(in); err != nil {
   712  		return nil, err
   713  	}
   714  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   715  		return nil, err
   716  	}
   717  	return x, nil
   718  }
   719  
   720  type RPCService_IPTableDumpClient interface {
   721  	Recv() (*IPTableDetails, error)
   722  	api.Stream
   723  }
   724  
   725  type serviceClient_IPTableDumpClient struct {
   726  	api.Stream
   727  }
   728  
   729  func (c *serviceClient_IPTableDumpClient) Recv() (*IPTableDetails, error) {
   730  	msg, err := c.Stream.RecvMsg()
   731  	if err != nil {
   732  		return nil, err
   733  	}
   734  	switch m := msg.(type) {
   735  	case *IPTableDetails:
   736  		return m, nil
   737  	case *memclnt.ControlPingReply:
   738  		err = c.Stream.Close()
   739  		if err != nil {
   740  			return nil, err
   741  		}
   742  		return nil, io.EOF
   743  	default:
   744  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   745  	}
   746  }
   747  
   748  func (c *serviceClient) IPTableFlush(ctx context.Context, in *IPTableFlush) (*IPTableFlushReply, error) {
   749  	out := new(IPTableFlushReply)
   750  	err := c.conn.Invoke(ctx, in, out)
   751  	if err != nil {
   752  		return nil, err
   753  	}
   754  	return out, api.RetvalToVPPApiError(out.Retval)
   755  }
   756  
   757  func (c *serviceClient) IPTableReplaceBegin(ctx context.Context, in *IPTableReplaceBegin) (*IPTableReplaceBeginReply, error) {
   758  	out := new(IPTableReplaceBeginReply)
   759  	err := c.conn.Invoke(ctx, in, out)
   760  	if err != nil {
   761  		return nil, err
   762  	}
   763  	return out, api.RetvalToVPPApiError(out.Retval)
   764  }
   765  
   766  func (c *serviceClient) IPTableReplaceEnd(ctx context.Context, in *IPTableReplaceEnd) (*IPTableReplaceEndReply, error) {
   767  	out := new(IPTableReplaceEndReply)
   768  	err := c.conn.Invoke(ctx, in, out)
   769  	if err != nil {
   770  		return nil, err
   771  	}
   772  	return out, api.RetvalToVPPApiError(out.Retval)
   773  }
   774  
   775  func (c *serviceClient) IPUnnumberedDump(ctx context.Context, in *IPUnnumberedDump) (RPCService_IPUnnumberedDumpClient, error) {
   776  	stream, err := c.conn.NewStream(ctx)
   777  	if err != nil {
   778  		return nil, err
   779  	}
   780  	x := &serviceClient_IPUnnumberedDumpClient{stream}
   781  	if err := x.Stream.SendMsg(in); err != nil {
   782  		return nil, err
   783  	}
   784  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   785  		return nil, err
   786  	}
   787  	return x, nil
   788  }
   789  
   790  type RPCService_IPUnnumberedDumpClient interface {
   791  	Recv() (*IPUnnumberedDetails, error)
   792  	api.Stream
   793  }
   794  
   795  type serviceClient_IPUnnumberedDumpClient struct {
   796  	api.Stream
   797  }
   798  
   799  func (c *serviceClient_IPUnnumberedDumpClient) Recv() (*IPUnnumberedDetails, error) {
   800  	msg, err := c.Stream.RecvMsg()
   801  	if err != nil {
   802  		return nil, err
   803  	}
   804  	switch m := msg.(type) {
   805  	case *IPUnnumberedDetails:
   806  		return m, nil
   807  	case *memclnt.ControlPingReply:
   808  		err = c.Stream.Close()
   809  		if err != nil {
   810  			return nil, err
   811  		}
   812  		return nil, io.EOF
   813  	default:
   814  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   815  	}
   816  }
   817  
   818  func (c *serviceClient) MfibSignalDump(ctx context.Context, in *MfibSignalDump) (RPCService_MfibSignalDumpClient, error) {
   819  	stream, err := c.conn.NewStream(ctx)
   820  	if err != nil {
   821  		return nil, err
   822  	}
   823  	x := &serviceClient_MfibSignalDumpClient{stream}
   824  	if err := x.Stream.SendMsg(in); err != nil {
   825  		return nil, err
   826  	}
   827  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   828  		return nil, err
   829  	}
   830  	return x, nil
   831  }
   832  
   833  type RPCService_MfibSignalDumpClient interface {
   834  	Recv() (*MfibSignalDetails, error)
   835  	api.Stream
   836  }
   837  
   838  type serviceClient_MfibSignalDumpClient struct {
   839  	api.Stream
   840  }
   841  
   842  func (c *serviceClient_MfibSignalDumpClient) Recv() (*MfibSignalDetails, error) {
   843  	msg, err := c.Stream.RecvMsg()
   844  	if err != nil {
   845  		return nil, err
   846  	}
   847  	switch m := msg.(type) {
   848  	case *MfibSignalDetails:
   849  		return m, nil
   850  	case *memclnt.ControlPingReply:
   851  		err = c.Stream.Close()
   852  		if err != nil {
   853  			return nil, err
   854  		}
   855  		return nil, io.EOF
   856  	default:
   857  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   858  	}
   859  }
   860  
   861  func (c *serviceClient) SetIPFlowHash(ctx context.Context, in *SetIPFlowHash) (*SetIPFlowHashReply, error) {
   862  	out := new(SetIPFlowHashReply)
   863  	err := c.conn.Invoke(ctx, in, out)
   864  	if err != nil {
   865  		return nil, err
   866  	}
   867  	return out, api.RetvalToVPPApiError(out.Retval)
   868  }
   869  
   870  func (c *serviceClient) SetIPFlowHashRouterID(ctx context.Context, in *SetIPFlowHashRouterID) (*SetIPFlowHashRouterIDReply, error) {
   871  	out := new(SetIPFlowHashRouterIDReply)
   872  	err := c.conn.Invoke(ctx, in, out)
   873  	if err != nil {
   874  		return nil, err
   875  	}
   876  	return out, api.RetvalToVPPApiError(out.Retval)
   877  }
   878  
   879  func (c *serviceClient) SetIPFlowHashV2(ctx context.Context, in *SetIPFlowHashV2) (*SetIPFlowHashV2Reply, error) {
   880  	out := new(SetIPFlowHashV2Reply)
   881  	err := c.conn.Invoke(ctx, in, out)
   882  	if err != nil {
   883  		return nil, err
   884  	}
   885  	return out, api.RetvalToVPPApiError(out.Retval)
   886  }
   887  
   888  func (c *serviceClient) SwInterfaceIP6EnableDisable(ctx context.Context, in *SwInterfaceIP6EnableDisable) (*SwInterfaceIP6EnableDisableReply, error) {
   889  	out := new(SwInterfaceIP6EnableDisableReply)
   890  	err := c.conn.Invoke(ctx, in, out)
   891  	if err != nil {
   892  		return nil, err
   893  	}
   894  	return out, api.RetvalToVPPApiError(out.Retval)
   895  }
   896  
   897  func (c *serviceClient) SwInterfaceIP6GetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6GetLinkLocalAddress) (*SwInterfaceIP6GetLinkLocalAddressReply, error) {
   898  	out := new(SwInterfaceIP6GetLinkLocalAddressReply)
   899  	err := c.conn.Invoke(ctx, in, out)
   900  	if err != nil {
   901  		return nil, err
   902  	}
   903  	return out, api.RetvalToVPPApiError(out.Retval)
   904  }
   905  
   906  func (c *serviceClient) SwInterfaceIP6SetLinkLocalAddress(ctx context.Context, in *SwInterfaceIP6SetLinkLocalAddress) (*SwInterfaceIP6SetLinkLocalAddressReply, error) {
   907  	out := new(SwInterfaceIP6SetLinkLocalAddressReply)
   908  	err := c.conn.Invoke(ctx, in, out)
   909  	if err != nil {
   910  		return nil, err
   911  	}
   912  	return out, api.RetvalToVPPApiError(out.Retval)
   913  }