go.ligato.io/vpp-agent/v3@v3.5.0/plugins/vpp/binapi/vpp2202/nat44_ed/nat44_ed_rpc.ba.go (about)

     1  // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
     2  
     3  package nat44_ed
     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/vpp2202/memclnt"
    12  )
    13  
    14  // RPCService defines RPC service nat44_ed.
    15  type RPCService interface {
    16  	Nat44AddDelAddressRange(ctx context.Context, in *Nat44AddDelAddressRange) (*Nat44AddDelAddressRangeReply, error)
    17  	Nat44AddDelIdentityMapping(ctx context.Context, in *Nat44AddDelIdentityMapping) (*Nat44AddDelIdentityMappingReply, error)
    18  	Nat44AddDelInterfaceAddr(ctx context.Context, in *Nat44AddDelInterfaceAddr) (*Nat44AddDelInterfaceAddrReply, error)
    19  	Nat44AddDelLbStaticMapping(ctx context.Context, in *Nat44AddDelLbStaticMapping) (*Nat44AddDelLbStaticMappingReply, error)
    20  	Nat44AddDelStaticMapping(ctx context.Context, in *Nat44AddDelStaticMapping) (*Nat44AddDelStaticMappingReply, error)
    21  	Nat44AddDelStaticMappingV2(ctx context.Context, in *Nat44AddDelStaticMappingV2) (*Nat44AddDelStaticMappingV2Reply, error)
    22  	Nat44AddressDump(ctx context.Context, in *Nat44AddressDump) (RPCService_Nat44AddressDumpClient, error)
    23  	Nat44DelSession(ctx context.Context, in *Nat44DelSession) (*Nat44DelSessionReply, error)
    24  	Nat44DelUser(ctx context.Context, in *Nat44DelUser) (*Nat44DelUserReply, error)
    25  	Nat44EdAddDelOutputInterface(ctx context.Context, in *Nat44EdAddDelOutputInterface) (*Nat44EdAddDelOutputInterfaceReply, error)
    26  	Nat44EdOutputInterfaceGet(ctx context.Context, in *Nat44EdOutputInterfaceGet) (RPCService_Nat44EdOutputInterfaceGetClient, error)
    27  	Nat44EdPluginEnableDisable(ctx context.Context, in *Nat44EdPluginEnableDisable) (*Nat44EdPluginEnableDisableReply, error)
    28  	Nat44EdSetFqOptions(ctx context.Context, in *Nat44EdSetFqOptions) (*Nat44EdSetFqOptionsReply, error)
    29  	Nat44EdShowFqOptions(ctx context.Context, in *Nat44EdShowFqOptions) (*Nat44EdShowFqOptionsReply, error)
    30  	Nat44ForwardingEnableDisable(ctx context.Context, in *Nat44ForwardingEnableDisable) (*Nat44ForwardingEnableDisableReply, error)
    31  	Nat44ForwardingIsEnabled(ctx context.Context, in *Nat44ForwardingIsEnabled) (*Nat44ForwardingIsEnabledReply, error)
    32  	Nat44IdentityMappingDump(ctx context.Context, in *Nat44IdentityMappingDump) (RPCService_Nat44IdentityMappingDumpClient, error)
    33  	Nat44InterfaceAddDelFeature(ctx context.Context, in *Nat44InterfaceAddDelFeature) (*Nat44InterfaceAddDelFeatureReply, error)
    34  	Nat44InterfaceAddDelOutputFeature(ctx context.Context, in *Nat44InterfaceAddDelOutputFeature) (*Nat44InterfaceAddDelOutputFeatureReply, error)
    35  	Nat44InterfaceAddrDump(ctx context.Context, in *Nat44InterfaceAddrDump) (RPCService_Nat44InterfaceAddrDumpClient, error)
    36  	Nat44InterfaceDump(ctx context.Context, in *Nat44InterfaceDump) (RPCService_Nat44InterfaceDumpClient, error)
    37  	Nat44InterfaceOutputFeatureDump(ctx context.Context, in *Nat44InterfaceOutputFeatureDump) (RPCService_Nat44InterfaceOutputFeatureDumpClient, error)
    38  	Nat44LbStaticMappingAddDelLocal(ctx context.Context, in *Nat44LbStaticMappingAddDelLocal) (*Nat44LbStaticMappingAddDelLocalReply, error)
    39  	Nat44LbStaticMappingDump(ctx context.Context, in *Nat44LbStaticMappingDump) (RPCService_Nat44LbStaticMappingDumpClient, error)
    40  	Nat44PluginEnableDisable(ctx context.Context, in *Nat44PluginEnableDisable) (*Nat44PluginEnableDisableReply, error)
    41  	Nat44SessionCleanup(ctx context.Context, in *Nat44SessionCleanup) (*Nat44SessionCleanupReply, error)
    42  	Nat44SetSessionLimit(ctx context.Context, in *Nat44SetSessionLimit) (*Nat44SetSessionLimitReply, error)
    43  	Nat44ShowRunningConfig(ctx context.Context, in *Nat44ShowRunningConfig) (*Nat44ShowRunningConfigReply, error)
    44  	Nat44StaticMappingDump(ctx context.Context, in *Nat44StaticMappingDump) (RPCService_Nat44StaticMappingDumpClient, error)
    45  	Nat44UserDump(ctx context.Context, in *Nat44UserDump) (RPCService_Nat44UserDumpClient, error)
    46  	Nat44UserSessionDump(ctx context.Context, in *Nat44UserSessionDump) (RPCService_Nat44UserSessionDumpClient, error)
    47  	Nat44UserSessionV2Dump(ctx context.Context, in *Nat44UserSessionV2Dump) (RPCService_Nat44UserSessionV2DumpClient, error)
    48  	NatControlPing(ctx context.Context, in *NatControlPing) (*NatControlPingReply, error)
    49  	NatGetAddrAndPortAllocAlg(ctx context.Context, in *NatGetAddrAndPortAllocAlg) (*NatGetAddrAndPortAllocAlgReply, error)
    50  	NatGetMssClamping(ctx context.Context, in *NatGetMssClamping) (*NatGetMssClampingReply, error)
    51  	NatGetTimeouts(ctx context.Context, in *NatGetTimeouts) (*NatGetTimeoutsReply, error)
    52  	NatHaFlush(ctx context.Context, in *NatHaFlush) (*NatHaFlushReply, error)
    53  	NatHaGetFailover(ctx context.Context, in *NatHaGetFailover) (*NatHaGetFailoverReply, error)
    54  	NatHaGetListener(ctx context.Context, in *NatHaGetListener) (*NatHaGetListenerReply, error)
    55  	NatHaResync(ctx context.Context, in *NatHaResync) (*NatHaResyncReply, error)
    56  	NatHaSetFailover(ctx context.Context, in *NatHaSetFailover) (*NatHaSetFailoverReply, error)
    57  	NatHaSetListener(ctx context.Context, in *NatHaSetListener) (*NatHaSetListenerReply, error)
    58  	NatIpfixEnableDisable(ctx context.Context, in *NatIpfixEnableDisable) (*NatIpfixEnableDisableReply, error)
    59  	NatSetAddrAndPortAllocAlg(ctx context.Context, in *NatSetAddrAndPortAllocAlg) (*NatSetAddrAndPortAllocAlgReply, error)
    60  	NatSetLogLevel(ctx context.Context, in *NatSetLogLevel) (*NatSetLogLevelReply, error)
    61  	NatSetMssClamping(ctx context.Context, in *NatSetMssClamping) (*NatSetMssClampingReply, error)
    62  	NatSetTimeouts(ctx context.Context, in *NatSetTimeouts) (*NatSetTimeoutsReply, error)
    63  	NatSetWorkers(ctx context.Context, in *NatSetWorkers) (*NatSetWorkersReply, error)
    64  	NatShowConfig(ctx context.Context, in *NatShowConfig) (*NatShowConfigReply, error)
    65  	NatShowConfig2(ctx context.Context, in *NatShowConfig2) (*NatShowConfig2Reply, error)
    66  	NatWorkerDump(ctx context.Context, in *NatWorkerDump) (RPCService_NatWorkerDumpClient, error)
    67  }
    68  
    69  type serviceClient struct {
    70  	conn api.Connection
    71  }
    72  
    73  func NewServiceClient(conn api.Connection) RPCService {
    74  	return &serviceClient{conn}
    75  }
    76  
    77  func (c *serviceClient) Nat44AddDelAddressRange(ctx context.Context, in *Nat44AddDelAddressRange) (*Nat44AddDelAddressRangeReply, error) {
    78  	out := new(Nat44AddDelAddressRangeReply)
    79  	err := c.conn.Invoke(ctx, in, out)
    80  	if err != nil {
    81  		return nil, err
    82  	}
    83  	return out, api.RetvalToVPPApiError(out.Retval)
    84  }
    85  
    86  func (c *serviceClient) Nat44AddDelIdentityMapping(ctx context.Context, in *Nat44AddDelIdentityMapping) (*Nat44AddDelIdentityMappingReply, error) {
    87  	out := new(Nat44AddDelIdentityMappingReply)
    88  	err := c.conn.Invoke(ctx, in, out)
    89  	if err != nil {
    90  		return nil, err
    91  	}
    92  	return out, api.RetvalToVPPApiError(out.Retval)
    93  }
    94  
    95  func (c *serviceClient) Nat44AddDelInterfaceAddr(ctx context.Context, in *Nat44AddDelInterfaceAddr) (*Nat44AddDelInterfaceAddrReply, error) {
    96  	out := new(Nat44AddDelInterfaceAddrReply)
    97  	err := c.conn.Invoke(ctx, in, out)
    98  	if err != nil {
    99  		return nil, err
   100  	}
   101  	return out, api.RetvalToVPPApiError(out.Retval)
   102  }
   103  
   104  func (c *serviceClient) Nat44AddDelLbStaticMapping(ctx context.Context, in *Nat44AddDelLbStaticMapping) (*Nat44AddDelLbStaticMappingReply, error) {
   105  	out := new(Nat44AddDelLbStaticMappingReply)
   106  	err := c.conn.Invoke(ctx, in, out)
   107  	if err != nil {
   108  		return nil, err
   109  	}
   110  	return out, api.RetvalToVPPApiError(out.Retval)
   111  }
   112  
   113  func (c *serviceClient) Nat44AddDelStaticMapping(ctx context.Context, in *Nat44AddDelStaticMapping) (*Nat44AddDelStaticMappingReply, error) {
   114  	out := new(Nat44AddDelStaticMappingReply)
   115  	err := c.conn.Invoke(ctx, in, out)
   116  	if err != nil {
   117  		return nil, err
   118  	}
   119  	return out, api.RetvalToVPPApiError(out.Retval)
   120  }
   121  
   122  func (c *serviceClient) Nat44AddDelStaticMappingV2(ctx context.Context, in *Nat44AddDelStaticMappingV2) (*Nat44AddDelStaticMappingV2Reply, error) {
   123  	out := new(Nat44AddDelStaticMappingV2Reply)
   124  	err := c.conn.Invoke(ctx, in, out)
   125  	if err != nil {
   126  		return nil, err
   127  	}
   128  	return out, api.RetvalToVPPApiError(out.Retval)
   129  }
   130  
   131  func (c *serviceClient) Nat44AddressDump(ctx context.Context, in *Nat44AddressDump) (RPCService_Nat44AddressDumpClient, error) {
   132  	stream, err := c.conn.NewStream(ctx)
   133  	if err != nil {
   134  		return nil, err
   135  	}
   136  	x := &serviceClient_Nat44AddressDumpClient{stream}
   137  	if err := x.Stream.SendMsg(in); err != nil {
   138  		return nil, err
   139  	}
   140  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   141  		return nil, err
   142  	}
   143  	return x, nil
   144  }
   145  
   146  type RPCService_Nat44AddressDumpClient interface {
   147  	Recv() (*Nat44AddressDetails, error)
   148  	api.Stream
   149  }
   150  
   151  type serviceClient_Nat44AddressDumpClient struct {
   152  	api.Stream
   153  }
   154  
   155  func (c *serviceClient_Nat44AddressDumpClient) Recv() (*Nat44AddressDetails, error) {
   156  	msg, err := c.Stream.RecvMsg()
   157  	if err != nil {
   158  		return nil, err
   159  	}
   160  	switch m := msg.(type) {
   161  	case *Nat44AddressDetails:
   162  		return m, nil
   163  	case *memclnt.ControlPingReply:
   164  		err = c.Stream.Close()
   165  		if err != nil {
   166  			return nil, err
   167  		}
   168  		return nil, io.EOF
   169  	default:
   170  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   171  	}
   172  }
   173  
   174  func (c *serviceClient) Nat44DelSession(ctx context.Context, in *Nat44DelSession) (*Nat44DelSessionReply, error) {
   175  	out := new(Nat44DelSessionReply)
   176  	err := c.conn.Invoke(ctx, in, out)
   177  	if err != nil {
   178  		return nil, err
   179  	}
   180  	return out, api.RetvalToVPPApiError(out.Retval)
   181  }
   182  
   183  func (c *serviceClient) Nat44DelUser(ctx context.Context, in *Nat44DelUser) (*Nat44DelUserReply, error) {
   184  	out := new(Nat44DelUserReply)
   185  	err := c.conn.Invoke(ctx, in, out)
   186  	if err != nil {
   187  		return nil, err
   188  	}
   189  	return out, api.RetvalToVPPApiError(out.Retval)
   190  }
   191  
   192  func (c *serviceClient) Nat44EdAddDelOutputInterface(ctx context.Context, in *Nat44EdAddDelOutputInterface) (*Nat44EdAddDelOutputInterfaceReply, error) {
   193  	out := new(Nat44EdAddDelOutputInterfaceReply)
   194  	err := c.conn.Invoke(ctx, in, out)
   195  	if err != nil {
   196  		return nil, err
   197  	}
   198  	return out, api.RetvalToVPPApiError(out.Retval)
   199  }
   200  
   201  func (c *serviceClient) Nat44EdOutputInterfaceGet(ctx context.Context, in *Nat44EdOutputInterfaceGet) (RPCService_Nat44EdOutputInterfaceGetClient, error) {
   202  	stream, err := c.conn.NewStream(ctx)
   203  	if err != nil {
   204  		return nil, err
   205  	}
   206  	x := &serviceClient_Nat44EdOutputInterfaceGetClient{stream}
   207  	if err := x.Stream.SendMsg(in); err != nil {
   208  		return nil, err
   209  	}
   210  	return x, nil
   211  }
   212  
   213  type RPCService_Nat44EdOutputInterfaceGetClient interface {
   214  	Recv() (*Nat44EdOutputInterfaceDetails, *Nat44EdOutputInterfaceGetReply, error)
   215  	api.Stream
   216  }
   217  
   218  type serviceClient_Nat44EdOutputInterfaceGetClient struct {
   219  	api.Stream
   220  }
   221  
   222  func (c *serviceClient_Nat44EdOutputInterfaceGetClient) Recv() (*Nat44EdOutputInterfaceDetails, *Nat44EdOutputInterfaceGetReply, error) {
   223  	msg, err := c.Stream.RecvMsg()
   224  	if err != nil {
   225  		return nil, nil, err
   226  	}
   227  	switch m := msg.(type) {
   228  	case *Nat44EdOutputInterfaceDetails:
   229  		return m, nil, nil
   230  	case *Nat44EdOutputInterfaceGetReply:
   231  		if err := api.RetvalToVPPApiError(m.Retval); err != nil {
   232  			return nil, nil, err
   233  		}
   234  		err = c.Stream.Close()
   235  		if err != nil {
   236  			return nil, nil, err
   237  		}
   238  		return nil, m, io.EOF
   239  	default:
   240  		return nil, nil, fmt.Errorf("unexpected message: %T %v", m, m)
   241  	}
   242  }
   243  
   244  func (c *serviceClient) Nat44EdPluginEnableDisable(ctx context.Context, in *Nat44EdPluginEnableDisable) (*Nat44EdPluginEnableDisableReply, error) {
   245  	out := new(Nat44EdPluginEnableDisableReply)
   246  	err := c.conn.Invoke(ctx, in, out)
   247  	if err != nil {
   248  		return nil, err
   249  	}
   250  	return out, api.RetvalToVPPApiError(out.Retval)
   251  }
   252  
   253  func (c *serviceClient) Nat44EdSetFqOptions(ctx context.Context, in *Nat44EdSetFqOptions) (*Nat44EdSetFqOptionsReply, error) {
   254  	out := new(Nat44EdSetFqOptionsReply)
   255  	err := c.conn.Invoke(ctx, in, out)
   256  	if err != nil {
   257  		return nil, err
   258  	}
   259  	return out, api.RetvalToVPPApiError(out.Retval)
   260  }
   261  
   262  func (c *serviceClient) Nat44EdShowFqOptions(ctx context.Context, in *Nat44EdShowFqOptions) (*Nat44EdShowFqOptionsReply, error) {
   263  	out := new(Nat44EdShowFqOptionsReply)
   264  	err := c.conn.Invoke(ctx, in, out)
   265  	if err != nil {
   266  		return nil, err
   267  	}
   268  	return out, api.RetvalToVPPApiError(out.Retval)
   269  }
   270  
   271  func (c *serviceClient) Nat44ForwardingEnableDisable(ctx context.Context, in *Nat44ForwardingEnableDisable) (*Nat44ForwardingEnableDisableReply, error) {
   272  	out := new(Nat44ForwardingEnableDisableReply)
   273  	err := c.conn.Invoke(ctx, in, out)
   274  	if err != nil {
   275  		return nil, err
   276  	}
   277  	return out, api.RetvalToVPPApiError(out.Retval)
   278  }
   279  
   280  func (c *serviceClient) Nat44ForwardingIsEnabled(ctx context.Context, in *Nat44ForwardingIsEnabled) (*Nat44ForwardingIsEnabledReply, error) {
   281  	out := new(Nat44ForwardingIsEnabledReply)
   282  	err := c.conn.Invoke(ctx, in, out)
   283  	if err != nil {
   284  		return nil, err
   285  	}
   286  	return out, nil
   287  }
   288  
   289  func (c *serviceClient) Nat44IdentityMappingDump(ctx context.Context, in *Nat44IdentityMappingDump) (RPCService_Nat44IdentityMappingDumpClient, error) {
   290  	stream, err := c.conn.NewStream(ctx)
   291  	if err != nil {
   292  		return nil, err
   293  	}
   294  	x := &serviceClient_Nat44IdentityMappingDumpClient{stream}
   295  	if err := x.Stream.SendMsg(in); err != nil {
   296  		return nil, err
   297  	}
   298  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   299  		return nil, err
   300  	}
   301  	return x, nil
   302  }
   303  
   304  type RPCService_Nat44IdentityMappingDumpClient interface {
   305  	Recv() (*Nat44IdentityMappingDetails, error)
   306  	api.Stream
   307  }
   308  
   309  type serviceClient_Nat44IdentityMappingDumpClient struct {
   310  	api.Stream
   311  }
   312  
   313  func (c *serviceClient_Nat44IdentityMappingDumpClient) Recv() (*Nat44IdentityMappingDetails, error) {
   314  	msg, err := c.Stream.RecvMsg()
   315  	if err != nil {
   316  		return nil, err
   317  	}
   318  	switch m := msg.(type) {
   319  	case *Nat44IdentityMappingDetails:
   320  		return m, nil
   321  	case *memclnt.ControlPingReply:
   322  		err = c.Stream.Close()
   323  		if err != nil {
   324  			return nil, err
   325  		}
   326  		return nil, io.EOF
   327  	default:
   328  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   329  	}
   330  }
   331  
   332  func (c *serviceClient) Nat44InterfaceAddDelFeature(ctx context.Context, in *Nat44InterfaceAddDelFeature) (*Nat44InterfaceAddDelFeatureReply, error) {
   333  	out := new(Nat44InterfaceAddDelFeatureReply)
   334  	err := c.conn.Invoke(ctx, in, out)
   335  	if err != nil {
   336  		return nil, err
   337  	}
   338  	return out, api.RetvalToVPPApiError(out.Retval)
   339  }
   340  
   341  func (c *serviceClient) Nat44InterfaceAddDelOutputFeature(ctx context.Context, in *Nat44InterfaceAddDelOutputFeature) (*Nat44InterfaceAddDelOutputFeatureReply, error) {
   342  	out := new(Nat44InterfaceAddDelOutputFeatureReply)
   343  	err := c.conn.Invoke(ctx, in, out)
   344  	if err != nil {
   345  		return nil, err
   346  	}
   347  	return out, api.RetvalToVPPApiError(out.Retval)
   348  }
   349  
   350  func (c *serviceClient) Nat44InterfaceAddrDump(ctx context.Context, in *Nat44InterfaceAddrDump) (RPCService_Nat44InterfaceAddrDumpClient, error) {
   351  	stream, err := c.conn.NewStream(ctx)
   352  	if err != nil {
   353  		return nil, err
   354  	}
   355  	x := &serviceClient_Nat44InterfaceAddrDumpClient{stream}
   356  	if err := x.Stream.SendMsg(in); err != nil {
   357  		return nil, err
   358  	}
   359  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   360  		return nil, err
   361  	}
   362  	return x, nil
   363  }
   364  
   365  type RPCService_Nat44InterfaceAddrDumpClient interface {
   366  	Recv() (*Nat44InterfaceAddrDetails, error)
   367  	api.Stream
   368  }
   369  
   370  type serviceClient_Nat44InterfaceAddrDumpClient struct {
   371  	api.Stream
   372  }
   373  
   374  func (c *serviceClient_Nat44InterfaceAddrDumpClient) Recv() (*Nat44InterfaceAddrDetails, error) {
   375  	msg, err := c.Stream.RecvMsg()
   376  	if err != nil {
   377  		return nil, err
   378  	}
   379  	switch m := msg.(type) {
   380  	case *Nat44InterfaceAddrDetails:
   381  		return m, nil
   382  	case *memclnt.ControlPingReply:
   383  		err = c.Stream.Close()
   384  		if err != nil {
   385  			return nil, err
   386  		}
   387  		return nil, io.EOF
   388  	default:
   389  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   390  	}
   391  }
   392  
   393  func (c *serviceClient) Nat44InterfaceDump(ctx context.Context, in *Nat44InterfaceDump) (RPCService_Nat44InterfaceDumpClient, error) {
   394  	stream, err := c.conn.NewStream(ctx)
   395  	if err != nil {
   396  		return nil, err
   397  	}
   398  	x := &serviceClient_Nat44InterfaceDumpClient{stream}
   399  	if err := x.Stream.SendMsg(in); err != nil {
   400  		return nil, err
   401  	}
   402  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   403  		return nil, err
   404  	}
   405  	return x, nil
   406  }
   407  
   408  type RPCService_Nat44InterfaceDumpClient interface {
   409  	Recv() (*Nat44InterfaceDetails, error)
   410  	api.Stream
   411  }
   412  
   413  type serviceClient_Nat44InterfaceDumpClient struct {
   414  	api.Stream
   415  }
   416  
   417  func (c *serviceClient_Nat44InterfaceDumpClient) Recv() (*Nat44InterfaceDetails, error) {
   418  	msg, err := c.Stream.RecvMsg()
   419  	if err != nil {
   420  		return nil, err
   421  	}
   422  	switch m := msg.(type) {
   423  	case *Nat44InterfaceDetails:
   424  		return m, nil
   425  	case *memclnt.ControlPingReply:
   426  		err = c.Stream.Close()
   427  		if err != nil {
   428  			return nil, err
   429  		}
   430  		return nil, io.EOF
   431  	default:
   432  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   433  	}
   434  }
   435  
   436  func (c *serviceClient) Nat44InterfaceOutputFeatureDump(ctx context.Context, in *Nat44InterfaceOutputFeatureDump) (RPCService_Nat44InterfaceOutputFeatureDumpClient, error) {
   437  	stream, err := c.conn.NewStream(ctx)
   438  	if err != nil {
   439  		return nil, err
   440  	}
   441  	x := &serviceClient_Nat44InterfaceOutputFeatureDumpClient{stream}
   442  	if err := x.Stream.SendMsg(in); err != nil {
   443  		return nil, err
   444  	}
   445  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   446  		return nil, err
   447  	}
   448  	return x, nil
   449  }
   450  
   451  type RPCService_Nat44InterfaceOutputFeatureDumpClient interface {
   452  	Recv() (*Nat44InterfaceOutputFeatureDetails, error)
   453  	api.Stream
   454  }
   455  
   456  type serviceClient_Nat44InterfaceOutputFeatureDumpClient struct {
   457  	api.Stream
   458  }
   459  
   460  func (c *serviceClient_Nat44InterfaceOutputFeatureDumpClient) Recv() (*Nat44InterfaceOutputFeatureDetails, error) {
   461  	msg, err := c.Stream.RecvMsg()
   462  	if err != nil {
   463  		return nil, err
   464  	}
   465  	switch m := msg.(type) {
   466  	case *Nat44InterfaceOutputFeatureDetails:
   467  		return m, nil
   468  	case *memclnt.ControlPingReply:
   469  		err = c.Stream.Close()
   470  		if err != nil {
   471  			return nil, err
   472  		}
   473  		return nil, io.EOF
   474  	default:
   475  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   476  	}
   477  }
   478  
   479  func (c *serviceClient) Nat44LbStaticMappingAddDelLocal(ctx context.Context, in *Nat44LbStaticMappingAddDelLocal) (*Nat44LbStaticMappingAddDelLocalReply, error) {
   480  	out := new(Nat44LbStaticMappingAddDelLocalReply)
   481  	err := c.conn.Invoke(ctx, in, out)
   482  	if err != nil {
   483  		return nil, err
   484  	}
   485  	return out, api.RetvalToVPPApiError(out.Retval)
   486  }
   487  
   488  func (c *serviceClient) Nat44LbStaticMappingDump(ctx context.Context, in *Nat44LbStaticMappingDump) (RPCService_Nat44LbStaticMappingDumpClient, error) {
   489  	stream, err := c.conn.NewStream(ctx)
   490  	if err != nil {
   491  		return nil, err
   492  	}
   493  	x := &serviceClient_Nat44LbStaticMappingDumpClient{stream}
   494  	if err := x.Stream.SendMsg(in); err != nil {
   495  		return nil, err
   496  	}
   497  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   498  		return nil, err
   499  	}
   500  	return x, nil
   501  }
   502  
   503  type RPCService_Nat44LbStaticMappingDumpClient interface {
   504  	Recv() (*Nat44LbStaticMappingDetails, error)
   505  	api.Stream
   506  }
   507  
   508  type serviceClient_Nat44LbStaticMappingDumpClient struct {
   509  	api.Stream
   510  }
   511  
   512  func (c *serviceClient_Nat44LbStaticMappingDumpClient) Recv() (*Nat44LbStaticMappingDetails, error) {
   513  	msg, err := c.Stream.RecvMsg()
   514  	if err != nil {
   515  		return nil, err
   516  	}
   517  	switch m := msg.(type) {
   518  	case *Nat44LbStaticMappingDetails:
   519  		return m, nil
   520  	case *memclnt.ControlPingReply:
   521  		err = c.Stream.Close()
   522  		if err != nil {
   523  			return nil, err
   524  		}
   525  		return nil, io.EOF
   526  	default:
   527  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   528  	}
   529  }
   530  
   531  func (c *serviceClient) Nat44PluginEnableDisable(ctx context.Context, in *Nat44PluginEnableDisable) (*Nat44PluginEnableDisableReply, error) {
   532  	out := new(Nat44PluginEnableDisableReply)
   533  	err := c.conn.Invoke(ctx, in, out)
   534  	if err != nil {
   535  		return nil, err
   536  	}
   537  	return out, api.RetvalToVPPApiError(out.Retval)
   538  }
   539  
   540  func (c *serviceClient) Nat44SessionCleanup(ctx context.Context, in *Nat44SessionCleanup) (*Nat44SessionCleanupReply, error) {
   541  	out := new(Nat44SessionCleanupReply)
   542  	err := c.conn.Invoke(ctx, in, out)
   543  	if err != nil {
   544  		return nil, err
   545  	}
   546  	return out, api.RetvalToVPPApiError(out.Retval)
   547  }
   548  
   549  func (c *serviceClient) Nat44SetSessionLimit(ctx context.Context, in *Nat44SetSessionLimit) (*Nat44SetSessionLimitReply, error) {
   550  	out := new(Nat44SetSessionLimitReply)
   551  	err := c.conn.Invoke(ctx, in, out)
   552  	if err != nil {
   553  		return nil, err
   554  	}
   555  	return out, api.RetvalToVPPApiError(out.Retval)
   556  }
   557  
   558  func (c *serviceClient) Nat44ShowRunningConfig(ctx context.Context, in *Nat44ShowRunningConfig) (*Nat44ShowRunningConfigReply, error) {
   559  	out := new(Nat44ShowRunningConfigReply)
   560  	err := c.conn.Invoke(ctx, in, out)
   561  	if err != nil {
   562  		return nil, err
   563  	}
   564  	return out, api.RetvalToVPPApiError(out.Retval)
   565  }
   566  
   567  func (c *serviceClient) Nat44StaticMappingDump(ctx context.Context, in *Nat44StaticMappingDump) (RPCService_Nat44StaticMappingDumpClient, error) {
   568  	stream, err := c.conn.NewStream(ctx)
   569  	if err != nil {
   570  		return nil, err
   571  	}
   572  	x := &serviceClient_Nat44StaticMappingDumpClient{stream}
   573  	if err := x.Stream.SendMsg(in); err != nil {
   574  		return nil, err
   575  	}
   576  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   577  		return nil, err
   578  	}
   579  	return x, nil
   580  }
   581  
   582  type RPCService_Nat44StaticMappingDumpClient interface {
   583  	Recv() (*Nat44StaticMappingDetails, error)
   584  	api.Stream
   585  }
   586  
   587  type serviceClient_Nat44StaticMappingDumpClient struct {
   588  	api.Stream
   589  }
   590  
   591  func (c *serviceClient_Nat44StaticMappingDumpClient) Recv() (*Nat44StaticMappingDetails, error) {
   592  	msg, err := c.Stream.RecvMsg()
   593  	if err != nil {
   594  		return nil, err
   595  	}
   596  	switch m := msg.(type) {
   597  	case *Nat44StaticMappingDetails:
   598  		return m, nil
   599  	case *memclnt.ControlPingReply:
   600  		err = c.Stream.Close()
   601  		if err != nil {
   602  			return nil, err
   603  		}
   604  		return nil, io.EOF
   605  	default:
   606  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   607  	}
   608  }
   609  
   610  func (c *serviceClient) Nat44UserDump(ctx context.Context, in *Nat44UserDump) (RPCService_Nat44UserDumpClient, error) {
   611  	stream, err := c.conn.NewStream(ctx)
   612  	if err != nil {
   613  		return nil, err
   614  	}
   615  	x := &serviceClient_Nat44UserDumpClient{stream}
   616  	if err := x.Stream.SendMsg(in); err != nil {
   617  		return nil, err
   618  	}
   619  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   620  		return nil, err
   621  	}
   622  	return x, nil
   623  }
   624  
   625  type RPCService_Nat44UserDumpClient interface {
   626  	Recv() (*Nat44UserDetails, error)
   627  	api.Stream
   628  }
   629  
   630  type serviceClient_Nat44UserDumpClient struct {
   631  	api.Stream
   632  }
   633  
   634  func (c *serviceClient_Nat44UserDumpClient) Recv() (*Nat44UserDetails, error) {
   635  	msg, err := c.Stream.RecvMsg()
   636  	if err != nil {
   637  		return nil, err
   638  	}
   639  	switch m := msg.(type) {
   640  	case *Nat44UserDetails:
   641  		return m, nil
   642  	case *memclnt.ControlPingReply:
   643  		err = c.Stream.Close()
   644  		if err != nil {
   645  			return nil, err
   646  		}
   647  		return nil, io.EOF
   648  	default:
   649  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   650  	}
   651  }
   652  
   653  func (c *serviceClient) Nat44UserSessionDump(ctx context.Context, in *Nat44UserSessionDump) (RPCService_Nat44UserSessionDumpClient, error) {
   654  	stream, err := c.conn.NewStream(ctx)
   655  	if err != nil {
   656  		return nil, err
   657  	}
   658  	x := &serviceClient_Nat44UserSessionDumpClient{stream}
   659  	if err := x.Stream.SendMsg(in); err != nil {
   660  		return nil, err
   661  	}
   662  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   663  		return nil, err
   664  	}
   665  	return x, nil
   666  }
   667  
   668  type RPCService_Nat44UserSessionDumpClient interface {
   669  	Recv() (*Nat44UserSessionDetails, error)
   670  	api.Stream
   671  }
   672  
   673  type serviceClient_Nat44UserSessionDumpClient struct {
   674  	api.Stream
   675  }
   676  
   677  func (c *serviceClient_Nat44UserSessionDumpClient) Recv() (*Nat44UserSessionDetails, error) {
   678  	msg, err := c.Stream.RecvMsg()
   679  	if err != nil {
   680  		return nil, err
   681  	}
   682  	switch m := msg.(type) {
   683  	case *Nat44UserSessionDetails:
   684  		return m, nil
   685  	case *memclnt.ControlPingReply:
   686  		err = c.Stream.Close()
   687  		if err != nil {
   688  			return nil, err
   689  		}
   690  		return nil, io.EOF
   691  	default:
   692  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   693  	}
   694  }
   695  
   696  func (c *serviceClient) Nat44UserSessionV2Dump(ctx context.Context, in *Nat44UserSessionV2Dump) (RPCService_Nat44UserSessionV2DumpClient, error) {
   697  	stream, err := c.conn.NewStream(ctx)
   698  	if err != nil {
   699  		return nil, err
   700  	}
   701  	x := &serviceClient_Nat44UserSessionV2DumpClient{stream}
   702  	if err := x.Stream.SendMsg(in); err != nil {
   703  		return nil, err
   704  	}
   705  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   706  		return nil, err
   707  	}
   708  	return x, nil
   709  }
   710  
   711  type RPCService_Nat44UserSessionV2DumpClient interface {
   712  	Recv() (*Nat44UserSessionV2Details, error)
   713  	api.Stream
   714  }
   715  
   716  type serviceClient_Nat44UserSessionV2DumpClient struct {
   717  	api.Stream
   718  }
   719  
   720  func (c *serviceClient_Nat44UserSessionV2DumpClient) Recv() (*Nat44UserSessionV2Details, error) {
   721  	msg, err := c.Stream.RecvMsg()
   722  	if err != nil {
   723  		return nil, err
   724  	}
   725  	switch m := msg.(type) {
   726  	case *Nat44UserSessionV2Details:
   727  		return m, nil
   728  	case *memclnt.ControlPingReply:
   729  		err = c.Stream.Close()
   730  		if err != nil {
   731  			return nil, err
   732  		}
   733  		return nil, io.EOF
   734  	default:
   735  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   736  	}
   737  }
   738  
   739  func (c *serviceClient) NatControlPing(ctx context.Context, in *NatControlPing) (*NatControlPingReply, error) {
   740  	out := new(NatControlPingReply)
   741  	err := c.conn.Invoke(ctx, in, out)
   742  	if err != nil {
   743  		return nil, err
   744  	}
   745  	return out, api.RetvalToVPPApiError(out.Retval)
   746  }
   747  
   748  func (c *serviceClient) NatGetAddrAndPortAllocAlg(ctx context.Context, in *NatGetAddrAndPortAllocAlg) (*NatGetAddrAndPortAllocAlgReply, error) {
   749  	out := new(NatGetAddrAndPortAllocAlgReply)
   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) NatGetMssClamping(ctx context.Context, in *NatGetMssClamping) (*NatGetMssClampingReply, error) {
   758  	out := new(NatGetMssClampingReply)
   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) NatGetTimeouts(ctx context.Context, in *NatGetTimeouts) (*NatGetTimeoutsReply, error) {
   767  	out := new(NatGetTimeoutsReply)
   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) NatHaFlush(ctx context.Context, in *NatHaFlush) (*NatHaFlushReply, error) {
   776  	out := new(NatHaFlushReply)
   777  	err := c.conn.Invoke(ctx, in, out)
   778  	if err != nil {
   779  		return nil, err
   780  	}
   781  	return out, api.RetvalToVPPApiError(out.Retval)
   782  }
   783  
   784  func (c *serviceClient) NatHaGetFailover(ctx context.Context, in *NatHaGetFailover) (*NatHaGetFailoverReply, error) {
   785  	out := new(NatHaGetFailoverReply)
   786  	err := c.conn.Invoke(ctx, in, out)
   787  	if err != nil {
   788  		return nil, err
   789  	}
   790  	return out, api.RetvalToVPPApiError(out.Retval)
   791  }
   792  
   793  func (c *serviceClient) NatHaGetListener(ctx context.Context, in *NatHaGetListener) (*NatHaGetListenerReply, error) {
   794  	out := new(NatHaGetListenerReply)
   795  	err := c.conn.Invoke(ctx, in, out)
   796  	if err != nil {
   797  		return nil, err
   798  	}
   799  	return out, api.RetvalToVPPApiError(out.Retval)
   800  }
   801  
   802  func (c *serviceClient) NatHaResync(ctx context.Context, in *NatHaResync) (*NatHaResyncReply, error) {
   803  	out := new(NatHaResyncReply)
   804  	err := c.conn.Invoke(ctx, in, out)
   805  	if err != nil {
   806  		return nil, err
   807  	}
   808  	return out, api.RetvalToVPPApiError(out.Retval)
   809  }
   810  
   811  func (c *serviceClient) NatHaSetFailover(ctx context.Context, in *NatHaSetFailover) (*NatHaSetFailoverReply, error) {
   812  	out := new(NatHaSetFailoverReply)
   813  	err := c.conn.Invoke(ctx, in, out)
   814  	if err != nil {
   815  		return nil, err
   816  	}
   817  	return out, api.RetvalToVPPApiError(out.Retval)
   818  }
   819  
   820  func (c *serviceClient) NatHaSetListener(ctx context.Context, in *NatHaSetListener) (*NatHaSetListenerReply, error) {
   821  	out := new(NatHaSetListenerReply)
   822  	err := c.conn.Invoke(ctx, in, out)
   823  	if err != nil {
   824  		return nil, err
   825  	}
   826  	return out, api.RetvalToVPPApiError(out.Retval)
   827  }
   828  
   829  func (c *serviceClient) NatIpfixEnableDisable(ctx context.Context, in *NatIpfixEnableDisable) (*NatIpfixEnableDisableReply, error) {
   830  	out := new(NatIpfixEnableDisableReply)
   831  	err := c.conn.Invoke(ctx, in, out)
   832  	if err != nil {
   833  		return nil, err
   834  	}
   835  	return out, api.RetvalToVPPApiError(out.Retval)
   836  }
   837  
   838  func (c *serviceClient) NatSetAddrAndPortAllocAlg(ctx context.Context, in *NatSetAddrAndPortAllocAlg) (*NatSetAddrAndPortAllocAlgReply, error) {
   839  	out := new(NatSetAddrAndPortAllocAlgReply)
   840  	err := c.conn.Invoke(ctx, in, out)
   841  	if err != nil {
   842  		return nil, err
   843  	}
   844  	return out, api.RetvalToVPPApiError(out.Retval)
   845  }
   846  
   847  func (c *serviceClient) NatSetLogLevel(ctx context.Context, in *NatSetLogLevel) (*NatSetLogLevelReply, error) {
   848  	out := new(NatSetLogLevelReply)
   849  	err := c.conn.Invoke(ctx, in, out)
   850  	if err != nil {
   851  		return nil, err
   852  	}
   853  	return out, api.RetvalToVPPApiError(out.Retval)
   854  }
   855  
   856  func (c *serviceClient) NatSetMssClamping(ctx context.Context, in *NatSetMssClamping) (*NatSetMssClampingReply, error) {
   857  	out := new(NatSetMssClampingReply)
   858  	err := c.conn.Invoke(ctx, in, out)
   859  	if err != nil {
   860  		return nil, err
   861  	}
   862  	return out, api.RetvalToVPPApiError(out.Retval)
   863  }
   864  
   865  func (c *serviceClient) NatSetTimeouts(ctx context.Context, in *NatSetTimeouts) (*NatSetTimeoutsReply, error) {
   866  	out := new(NatSetTimeoutsReply)
   867  	err := c.conn.Invoke(ctx, in, out)
   868  	if err != nil {
   869  		return nil, err
   870  	}
   871  	return out, api.RetvalToVPPApiError(out.Retval)
   872  }
   873  
   874  func (c *serviceClient) NatSetWorkers(ctx context.Context, in *NatSetWorkers) (*NatSetWorkersReply, error) {
   875  	out := new(NatSetWorkersReply)
   876  	err := c.conn.Invoke(ctx, in, out)
   877  	if err != nil {
   878  		return nil, err
   879  	}
   880  	return out, api.RetvalToVPPApiError(out.Retval)
   881  }
   882  
   883  func (c *serviceClient) NatShowConfig(ctx context.Context, in *NatShowConfig) (*NatShowConfigReply, error) {
   884  	out := new(NatShowConfigReply)
   885  	err := c.conn.Invoke(ctx, in, out)
   886  	if err != nil {
   887  		return nil, err
   888  	}
   889  	return out, api.RetvalToVPPApiError(out.Retval)
   890  }
   891  
   892  func (c *serviceClient) NatShowConfig2(ctx context.Context, in *NatShowConfig2) (*NatShowConfig2Reply, error) {
   893  	out := new(NatShowConfig2Reply)
   894  	err := c.conn.Invoke(ctx, in, out)
   895  	if err != nil {
   896  		return nil, err
   897  	}
   898  	return out, api.RetvalToVPPApiError(out.Retval)
   899  }
   900  
   901  func (c *serviceClient) NatWorkerDump(ctx context.Context, in *NatWorkerDump) (RPCService_NatWorkerDumpClient, error) {
   902  	stream, err := c.conn.NewStream(ctx)
   903  	if err != nil {
   904  		return nil, err
   905  	}
   906  	x := &serviceClient_NatWorkerDumpClient{stream}
   907  	if err := x.Stream.SendMsg(in); err != nil {
   908  		return nil, err
   909  	}
   910  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   911  		return nil, err
   912  	}
   913  	return x, nil
   914  }
   915  
   916  type RPCService_NatWorkerDumpClient interface {
   917  	Recv() (*NatWorkerDetails, error)
   918  	api.Stream
   919  }
   920  
   921  type serviceClient_NatWorkerDumpClient struct {
   922  	api.Stream
   923  }
   924  
   925  func (c *serviceClient_NatWorkerDumpClient) Recv() (*NatWorkerDetails, error) {
   926  	msg, err := c.Stream.RecvMsg()
   927  	if err != nil {
   928  		return nil, err
   929  	}
   930  	switch m := msg.(type) {
   931  	case *NatWorkerDetails:
   932  		return m, nil
   933  	case *memclnt.ControlPingReply:
   934  		err = c.Stream.Close()
   935  		if err != nil {
   936  			return nil, err
   937  		}
   938  		return nil, io.EOF
   939  	default:
   940  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   941  	}
   942  }