On Mon, Nov 27, 2017 at 08:01:06PM +0000, Fan Zhang wrote: > This patch adds virtio-crypto spec user message structure to > vhost_user. > > Signed-off-by: Fan Zhang <roy.fan.zh...@intel.com> > --- > lib/librte_vhost/vhost_user.h | 25 +++++++++++++++++++++++++ > 1 file changed, 25 insertions(+) > > diff --git a/lib/librte_vhost/vhost_user.h b/lib/librte_vhost/vhost_user.h > index 990b40a..793cdc2 100644 > --- a/lib/librte_vhost/vhost_user.h > +++ b/lib/librte_vhost/vhost_user.h > @@ -108,6 +108,30 @@ typedef struct VhostUserLog { > uint64_t mmap_offset; > } VhostUserLog; > > +/* Comply with Cryptodev-Linux */ > +#define VHOST_USER_CRYPTO_MAX_HMAC_KEY_LENGTH 512 > +#define VHOST_USER_CRYPTO_MAX_CIPHER_KEY_LENGTH 64 > + > +/* Same structure as vhost-user backend session info */ > +typedef struct VhostUserCryptoSessionParam { > + int64_t session_id; > + uint32_t op_code; > + uint32_t cipher_algo; > + uint32_t cipher_key_len; > + uint32_t hash_algo; > + uint32_t digest_len; > + uint32_t auth_key_len; > + uint32_t aad_len; > + uint8_t op_type; > + uint8_t dir; > + uint8_t hash_mode; > + uint8_t chaining_dir; > + uint8_t *ciphe_key; > + uint8_t *auth_key; > + uint8_t cipher_key_buf[VHOST_USER_CRYPTO_MAX_CIPHER_KEY_LENGTH]; > + uint8_t auth_key_buf[VHOST_USER_CRYPTO_MAX_HMAC_KEY_LENGTH]; > +} VhostUserCryptoSessionParam;
I'd suggest to merge this patch (which defines the struct) and the next one (which uses it) into one patch. --yliu > + > typedef struct VhostUserMsg { > union { > VhostUserRequest master; > @@ -128,6 +152,7 @@ typedef struct VhostUserMsg { > VhostUserMemory memory; > VhostUserLog log; > struct vhost_iotlb_msg iotlb; > + VhostUserCryptoSessionParam crypto_session; > } payload; > int fds[VHOST_MEMORY_MAX_NREGIONS]; > } __attribute((packed)) VhostUserMsg; > -- > 2.9.5