diff options
author | Ondrej Fabry <ofabry@cisco.com> | 2020-07-22 04:40:55 +0200 |
---|---|---|
committer | Ondrej Fabry <ofabry@cisco.com> | 2020-07-22 04:40:55 +0200 |
commit | 58da9ac6e691a8c660eb8ca838a154e11da0db68 (patch) | |
tree | a1bbda04c6d0621ce0fc20779276620f1820190b /internal/testbinapi/binapi2001/tls_openssl | |
parent | a155cd438c6558da266c1c5931361ea088b35653 (diff) |
Fix binapigen decoding and minor improvements
- fixed allocating byte slices before copying decoded data
- simplified encoding functions
- several minor improvements
Change-Id: I6669424b89eb86333805cb1b57e4551169980cc2
Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
Diffstat (limited to 'internal/testbinapi/binapi2001/tls_openssl')
-rw-r--r-- | internal/testbinapi/binapi2001/tls_openssl/tls_openssl.ba.go | 124 | ||||
-rw-r--r-- | internal/testbinapi/binapi2001/tls_openssl/tls_openssl_rpc.ba.go | 30 |
2 files changed, 154 insertions, 0 deletions
diff --git a/internal/testbinapi/binapi2001/tls_openssl/tls_openssl.ba.go b/internal/testbinapi/binapi2001/tls_openssl/tls_openssl.ba.go new file mode 100644 index 0000000..96a66c0 --- /dev/null +++ b/internal/testbinapi/binapi2001/tls_openssl/tls_openssl.ba.go @@ -0,0 +1,124 @@ +// Code generated by GoVPP's binapi-generator. DO NOT EDIT. +// versions: +// binapi-generator: v0.4.0-dev +// VPP: 20.01 +// source: .vppapi/plugins/tls_openssl.api.json + +// Package tls_openssl contains generated bindings for API file tls_openssl.api. +// +// Contents: +// 2 messages +// +package tls_openssl + +import ( + api "git.fd.io/govpp.git/api" + codec "git.fd.io/govpp.git/codec" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the GoVPP api package it is being compiled against. +// A compilation error at this line likely means your copy of the +// GoVPP api package needs to be updated. +const _ = api.GoVppAPIPackageIsVersion2 + +const ( + APIFile = "tls_openssl" + APIVersion = "2.0.0" + VersionCrc = 0x7386fbcd +) + +// TLSOpensslSetEngine defines message 'tls_openssl_set_engine'. +type TLSOpensslSetEngine struct { + AsyncEnable uint32 `binapi:"u32,name=async_enable" json:"async_enable,omitempty"` + Engine []byte `binapi:"u8[64],name=engine" json:"engine,omitempty"` + Algorithm []byte `binapi:"u8[64],name=algorithm" json:"algorithm,omitempty"` + Ciphers []byte `binapi:"u8[64],name=ciphers" json:"ciphers,omitempty"` +} + +func (m *TLSOpensslSetEngine) Reset() { *m = TLSOpensslSetEngine{} } +func (*TLSOpensslSetEngine) GetMessageName() string { return "tls_openssl_set_engine" } +func (*TLSOpensslSetEngine) GetCrcString() string { return "e34d95c1" } +func (*TLSOpensslSetEngine) GetMessageType() api.MessageType { + return api.RequestMessage +} + +func (m *TLSOpensslSetEngine) Size() (size int) { + if m == nil { + return 0 + } + size += 4 // m.AsyncEnable + size += 1 * 64 // m.Engine + size += 1 * 64 // m.Algorithm + size += 1 * 64 // m.Ciphers + return size +} +func (m *TLSOpensslSetEngine) Marshal(b []byte) ([]byte, error) { + if b == nil { + b = make([]byte, m.Size()) + } + buf := codec.NewBuffer(b) + buf.EncodeUint32(m.AsyncEnable) + buf.EncodeBytes(m.Engine, 64) + buf.EncodeBytes(m.Algorithm, 64) + buf.EncodeBytes(m.Ciphers, 64) + return buf.Bytes(), nil +} +func (m *TLSOpensslSetEngine) Unmarshal(b []byte) error { + buf := codec.NewBuffer(b) + m.AsyncEnable = buf.DecodeUint32() + m.Engine = make([]byte, 64) + copy(m.Engine, buf.DecodeBytes(len(m.Engine))) + m.Algorithm = make([]byte, 64) + copy(m.Algorithm, buf.DecodeBytes(len(m.Algorithm))) + m.Ciphers = make([]byte, 64) + copy(m.Ciphers, buf.DecodeBytes(len(m.Ciphers))) + return nil +} + +// TLSOpensslSetEngineReply defines message 'tls_openssl_set_engine_reply'. +type TLSOpensslSetEngineReply struct { + Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"` +} + +func (m *TLSOpensslSetEngineReply) Reset() { *m = TLSOpensslSetEngineReply{} } +func (*TLSOpensslSetEngineReply) GetMessageName() string { return "tls_openssl_set_engine_reply" } +func (*TLSOpensslSetEngineReply) GetCrcString() string { return "e8d4e804" } +func (*TLSOpensslSetEngineReply) GetMessageType() api.MessageType { + return api.ReplyMessage +} + +func (m *TLSOpensslSetEngineReply) Size() (size int) { + if m == nil { + return 0 + } + size += 4 // m.Retval + return size +} +func (m *TLSOpensslSetEngineReply) Marshal(b []byte) ([]byte, error) { + if b == nil { + b = make([]byte, m.Size()) + } + buf := codec.NewBuffer(b) + buf.EncodeInt32(m.Retval) + return buf.Bytes(), nil +} +func (m *TLSOpensslSetEngineReply) Unmarshal(b []byte) error { + buf := codec.NewBuffer(b) + m.Retval = buf.DecodeInt32() + return nil +} + +func init() { file_tls_openssl_binapi_init() } +func file_tls_openssl_binapi_init() { + api.RegisterMessage((*TLSOpensslSetEngine)(nil), "tls_openssl_set_engine_e34d95c1") + api.RegisterMessage((*TLSOpensslSetEngineReply)(nil), "tls_openssl_set_engine_reply_e8d4e804") +} + +// Messages returns list of all messages in this module. +func AllMessages() []api.Message { + return []api.Message{ + (*TLSOpensslSetEngine)(nil), + (*TLSOpensslSetEngineReply)(nil), + } +} diff --git a/internal/testbinapi/binapi2001/tls_openssl/tls_openssl_rpc.ba.go b/internal/testbinapi/binapi2001/tls_openssl/tls_openssl_rpc.ba.go new file mode 100644 index 0000000..2575bf2 --- /dev/null +++ b/internal/testbinapi/binapi2001/tls_openssl/tls_openssl_rpc.ba.go @@ -0,0 +1,30 @@ +// Code generated by GoVPP's binapi-generator. DO NOT EDIT. + +package tls_openssl + +import ( + "context" + api "git.fd.io/govpp.git/api" +) + +// RPCService defines RPC service tls_openssl. +type RPCService interface { + TLSOpensslSetEngine(ctx context.Context, in *TLSOpensslSetEngine) (*TLSOpensslSetEngineReply, error) +} + +type serviceClient struct { + conn api.Connection +} + +func NewServiceClient(conn api.Connection) RPCService { + return &serviceClient{conn} +} + +func (c *serviceClient) TLSOpensslSetEngine(ctx context.Context, in *TLSOpensslSetEngine) (*TLSOpensslSetEngineReply, error) { + out := new(TLSOpensslSetEngineReply) + err := c.conn.Invoke(ctx, in, out) + if err != nil { + return nil, err + } + return out, nil +} |