github.com/edwarnicke/govpp@v0.0.0-20230130211138-14ef5d20b1d0/binapi/af_packet/af_packet_rpc.ba.go (about) 1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT. 2 3 package af_packet 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 af_packet. 15 type RPCService interface { 16 AfPacketCreate(ctx context.Context, in *AfPacketCreate) (*AfPacketCreateReply, error) 17 AfPacketCreateV2(ctx context.Context, in *AfPacketCreateV2) (*AfPacketCreateV2Reply, error) 18 AfPacketCreateV3(ctx context.Context, in *AfPacketCreateV3) (*AfPacketCreateV3Reply, error) 19 AfPacketDelete(ctx context.Context, in *AfPacketDelete) (*AfPacketDeleteReply, error) 20 AfPacketDump(ctx context.Context, in *AfPacketDump) (RPCService_AfPacketDumpClient, error) 21 AfPacketSetL4CksumOffload(ctx context.Context, in *AfPacketSetL4CksumOffload) (*AfPacketSetL4CksumOffloadReply, error) 22 } 23 24 type serviceClient struct { 25 conn api.Connection 26 } 27 28 func NewServiceClient(conn api.Connection) RPCService { 29 return &serviceClient{conn} 30 } 31 32 func (c *serviceClient) AfPacketCreate(ctx context.Context, in *AfPacketCreate) (*AfPacketCreateReply, error) { 33 out := new(AfPacketCreateReply) 34 err := c.conn.Invoke(ctx, in, out) 35 if err != nil { 36 return nil, err 37 } 38 return out, api.RetvalToVPPApiError(out.Retval) 39 } 40 41 func (c *serviceClient) AfPacketCreateV2(ctx context.Context, in *AfPacketCreateV2) (*AfPacketCreateV2Reply, error) { 42 out := new(AfPacketCreateV2Reply) 43 err := c.conn.Invoke(ctx, in, out) 44 if err != nil { 45 return nil, err 46 } 47 return out, api.RetvalToVPPApiError(out.Retval) 48 } 49 50 func (c *serviceClient) AfPacketCreateV3(ctx context.Context, in *AfPacketCreateV3) (*AfPacketCreateV3Reply, error) { 51 out := new(AfPacketCreateV3Reply) 52 err := c.conn.Invoke(ctx, in, out) 53 if err != nil { 54 return nil, err 55 } 56 return out, api.RetvalToVPPApiError(out.Retval) 57 } 58 59 func (c *serviceClient) AfPacketDelete(ctx context.Context, in *AfPacketDelete) (*AfPacketDeleteReply, error) { 60 out := new(AfPacketDeleteReply) 61 err := c.conn.Invoke(ctx, in, out) 62 if err != nil { 63 return nil, err 64 } 65 return out, api.RetvalToVPPApiError(out.Retval) 66 } 67 68 func (c *serviceClient) AfPacketDump(ctx context.Context, in *AfPacketDump) (RPCService_AfPacketDumpClient, error) { 69 stream, err := c.conn.NewStream(ctx) 70 if err != nil { 71 return nil, err 72 } 73 x := &serviceClient_AfPacketDumpClient{stream} 74 if err := x.Stream.SendMsg(in); err != nil { 75 return nil, err 76 } 77 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 78 return nil, err 79 } 80 return x, nil 81 } 82 83 type RPCService_AfPacketDumpClient interface { 84 Recv() (*AfPacketDetails, error) 85 api.Stream 86 } 87 88 type serviceClient_AfPacketDumpClient struct { 89 api.Stream 90 } 91 92 func (c *serviceClient_AfPacketDumpClient) Recv() (*AfPacketDetails, error) { 93 msg, err := c.Stream.RecvMsg() 94 if err != nil { 95 return nil, err 96 } 97 switch m := msg.(type) { 98 case *AfPacketDetails: 99 return m, nil 100 case *memclnt.ControlPingReply: 101 err = c.Stream.Close() 102 if err != nil { 103 return nil, err 104 } 105 return nil, io.EOF 106 default: 107 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 108 } 109 } 110 111 func (c *serviceClient) AfPacketSetL4CksumOffload(ctx context.Context, in *AfPacketSetL4CksumOffload) (*AfPacketSetL4CksumOffloadReply, error) { 112 out := new(AfPacketSetL4CksumOffloadReply) 113 err := c.conn.Invoke(ctx, in, out) 114 if err != nil { 115 return nil, err 116 } 117 return out, api.RetvalToVPPApiError(out.Retval) 118 }