All of lore.kernel.org
 help / color / mirror / Atom feed
From: "De Lara Guarch, Pablo" <pablo.de.lara.guarch@intel.com>
To: "Jastrzebski, MichalX K" <michalx.k.jastrzebski@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Cc: "Mrozowicz, SlawomirX" <slawomirx.mrozowicz@intel.com>,
	"Kobylinski, MichalX" <michalx.kobylinski@intel.com>,
	"Kulasek, TomaszX" <tomaszx.kulasek@intel.com>,
	"Mrzyglod, DanielX T" <danielx.t.mrzyglod@intel.com>
Subject: Re: [PATCH v2 1/4] libcrypto_pmd: initial implementation of SW crypto device
Date: Mon, 19 Sep 2016 22:52:37 +0000	[thread overview]
Message-ID: <E115CCD9D858EF4F90C690B0DCB4D8973C9F8F92@IRSMSX108.ger.corp.intel.com> (raw)
In-Reply-To: <1474275582-6108-2-git-send-email-michalx.k.jastrzebski@intel.com>



> -----Original Message-----
> From: Jastrzebski, MichalX K
> Sent: Monday, September 19, 2016 2:00 AM
> To: dev@dpdk.org
> Cc: De Lara Guarch, Pablo; Mrozowicz, SlawomirX; Kobylinski, MichalX;
> Kulasek, TomaszX; Mrzyglod, DanielX T
> Subject: [PATCH v2 1/4] libcrypto_pmd: initial implementation of SW
> crypto device
> 
> From: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
> 
> This code provides the initial implementation of the libcrypto
> poll mode driver. All cryptography operations are using Openssl
> library crypto API. Each algorithm uses EVP_ interface from
> openssl API - which is recommended by Openssl maintainers.
> 
> LibCrypto PMD has support for:
> 
> Supported cipher algorithms:
> RTE_CRYPTO_CIPHER_3DES_CBC
> RTE_CRYPTO_CIPHER_AES_CBC
> RTE_CRYPTO_CIPHER_AES_CTR
> RTE_CRYPTO_CIPHER_3DES_CTR
> RTE_CRYPTO_CIPHER_AES_GCM
> 
> Supported authentication algorithms:
> RTE_CRYPTO_AUTH_AES_GMAC
> RTE_CRYPTO_AUTH_MD5
> RTE_CRYPTO_AUTH_SHA1
> RTE_CRYPTO_AUTH_SHA224
> RTE_CRYPTO_AUTH_SHA256
> RTE_CRYPTO_AUTH_SHA384
> RTE_CRYPTO_AUTH_SHA512
> RTE_CRYPTO_AUTH_MD5_HMAC
> RTE_CRYPTO_AUTH_SHA1_HMAC
> RTE_CRYPTO_AUTH_SHA224_HMAC
> RTE_CRYPTO_AUTH_SHA256_HMAC
> RTE_CRYPTO_AUTH_SHA384_HMAC
> RTE_CRYPTO_AUTH_SHA512_HMAC
> 
> Installation
> ------------
> To compile libcrypto PMD It has to be enabled in the config/common_base
> file and appropriate openssl packages have to be installed in the build
> environment.
> 

I think the supported algorithms and how to install can be removed from the commit message,
as message is too big (and this information is present in the documentation).

> Signed-off-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
> Signed-off-by: Michal Kobylinski <michalx.kobylinski@intel.com>
> Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
> Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
> ---

...

> diff --git a/doc/guides/cryptodevs/libcrypto.rst
> b/doc/guides/cryptodevs/libcrypto.rst
> new file mode 100644
> index 0000000..f9daa05
> --- /dev/null
> +++ b/doc/guides/cryptodevs/libcrypto.rst
> @@ -0,0 +1,113 @@

...

> +
> +LibCrypto Crypto Poll Mode Driver
> +============================================

Remove the extra "=" and extra blank line below.

> +
> +
> +This code provides the initial implementation of the libcrypto poll mode
> +driver All cryptography operations are using Openssl library crypto API.

Missing "." before All.

> +Each algorithm uses EVP_ interface from openssl API - which is
> recommended
> +by Openssl maintainers.
> +
> +For more details about openssl library please visit openssl webpage:
> +https://www.openssl.org/
> +
> +Features
> +--------
> +
> +LibCrypto PMD has support for:
> +
> +Supported cipher algorithms:
> +* ``RTE_CRYPTO_CIPHER_3DES_CBC``
> +* ``RTE_CRYPTO_CIPHER_AES_CBC``
> +* ``RTE_CRYPTO_CIPHER_AES_CTR``
> +* ``RTE_CRYPTO_CIPHER_3DES_CTR``
> +* ``RTE_CRYPTO_CIPHER_AES_GCM``
> +
> +Supported authentication algorithms:
> +* ``RTE_CRYPTO_AUTH_AES_GMAC``
> +* ``RTE_CRYPTO_AUTH_MD5``
> +* ``RTE_CRYPTO_AUTH_SHA1``
> +* ``RTE_CRYPTO_AUTH_SHA224``
> +* ``RTE_CRYPTO_AUTH_SHA256``
> +* ``RTE_CRYPTO_AUTH_SHA384``
> +* ``RTE_CRYPTO_AUTH_SHA512``
> +* ``RTE_CRYPTO_AUTH_MD5_HMAC``
> +* ``RTE_CRYPTO_AUTH_SHA1_HMAC``
> +* ``RTE_CRYPTO_AUTH_SHA224_HMAC``
> +* ``RTE_CRYPTO_AUTH_SHA256_HMAC``
> +* ``RTE_CRYPTO_AUTH_SHA384_HMAC``
> +* ``RTE_CRYPTO_AUTH_SHA512_HMAC``
> +
> +
> +Installation
> +------------

Blank line here.

> +To compile libcrypto PMD It has to be enabled in the

Comma after PMD.

> config/common_base file
> +and appropriate openssl packages have to be installed in the build
> environment.
> +
> +The newest openssl library version is supported:
> +* 1.0.2h-fips  3 May 2016.
> +Older versions that were also verified:
> +* 1.0.1f 6 Jan 2014
> +* 1.0.1 14 Mar 2012
> +
> +For Ubuntu 14.04 LTS these packages have to be installed in the build
> system:
> +sudo apt-get install openssl
> +sudo apt-get install libc6-dev-i386 (for i686-native-linuxapp-gcc target)
> +
> +This code was also verified on Fedora 24.
> +This code was NOT yet verified on FreeBSD.
> +
> +Initialization
> +--------------
> +
> +User can use app/test application to check how to use this pmd and to
> verify
> +crypto processing.
> +
> +Test name is cryptodev_libcrypto_autotest.
> +For performance test cryptodev_libcrypto_perftest can be used.
> +
> +To verify real traffic l2fwd-crypto example can be used with this command:
> +sudo ./build/l2fwd-crypto -c 0x3 -n 4 --vdev "cryptodev_libcrypto_pmd"
> +--vdev "cryptodev_libcrypto_pmd"-- -p 0x3 --chain CIPHER_HASH
> +--cipher_op ENCRYPT --cipher_algo AES_CBC
> +--cipher_key 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f
> +--iv 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:ff
> +--auth_op GENERATE --auth_algo SHA1_HMAC
> +--auth_key
> 11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11
> +:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:1
> 1:11:11
> +:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11

Use code-block here.

> +
> +Limitations
> +-----------

Blank line here.

> +* Maximum number of sessions is 2048.
> +* Chained mbufs are not supported.
> +* Hash only is not supported for GCM and GMAC.
> +* Cipher only is not supported for GCM and GMAC.

...

> diff --git a/mk/rte.app.mk b/mk/rte.app.mk
> index 1a0095b..67c0aa9 100644
> --- a/mk/rte.app.mk
> +++ b/mk/rte.app.mk
> @@ -135,7 +135,8 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB)
> += -lrte_pmd_aesni_mb
>  _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB)   += -
> L$(AESNI_MULTI_BUFFER_LIB_PATH) -lIPSec_MB
>  _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_GCM)  += -
> lrte_pmd_aesni_gcm -lcrypto
>  _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_GCM)  += -
> L$(AESNI_MULTI_BUFFER_LIB_PATH) -lIPSec_MB
> -_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO) += -
> lrte_pmd_null_crypto
> +_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_LIBCRYPTO)    += -
> lrte_pmd_libcrypto -lcrypto
> +_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO)+= -
> lrte_pmd_null_crypto

Space removed here by mistake.
 
>  _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_QAT)        += -lrte_pmd_qat -lcrypto
>  _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_SNOW3G)     += -lrte_pmd_snow3g
>  _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_SNOW3G)     += -
> L$(LIBSSO_SNOW3G_PATH)/build -lsso_snow3g
> --
> 1.9.1

  reply	other threads:[~2016-09-19 22:52 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-19  8:59 [PATCH v2 0/4] new crypto software based device Michal Jastrzebski
2016-09-19  8:59 ` [PATCH v2 1/4] libcrypto_pmd: initial implementation of SW crypto device Michal Jastrzebski
2016-09-19 22:52   ` De Lara Guarch, Pablo [this message]
2016-09-19  8:59 ` [PATCH v2 2/4] lib/cryptodev: added support to libcrypto PMD Michal Jastrzebski
2016-09-19 22:59   ` De Lara Guarch, Pablo
2016-09-19  8:59 ` [PATCH v2 3/4] app/test: added tests for " Michal Jastrzebski
2016-09-19  8:59 ` [PATCH v2 4/4] examples/l2fwd-crypto: updated example " Michal Jastrzebski
2016-09-19 23:58   ` De Lara Guarch, Pablo
2016-09-29 14:14 ` [PATCH v3 0/3] new crypto software based device Slawomir Mrozowicz
2016-09-29 14:14   ` [PATCH v3 1/3] libcrypto_pmd: initial implementation of SW crypto device Slawomir Mrozowicz
2016-09-29 14:14   ` [PATCH v3 2/3] app/test: added tests for libcrypto PMD Slawomir Mrozowicz
2016-09-29 14:39   ` [PATCH v3 3/3] examples/l2fwd-crypto: updated example " Slawomir Mrozowicz
2016-09-30 16:17   ` [PATCH v4 0/5] new crypto software based device Slawomir Mrozowicz
2016-09-30 16:17     ` [PATCH v4 1/5] libcrypto_pmd: initial implementation of SW crypto device Slawomir Mrozowicz
2016-09-30 16:32     ` [PATCH v4 2/5] app/test: cryptodev AES tests rework Slawomir Mrozowicz
2016-09-30 16:32       ` [PATCH v4 3/5] app/test: added tests for libcrypto PMD Slawomir Mrozowicz
2016-09-30 16:32       ` [PATCH v4 4/5] app/test: added big data GMAC test for libcrypto Slawomir Mrozowicz
2016-09-30 17:18         ` Thomas Monjalon
2016-10-03  8:12           ` Mrozowicz, SlawomirX
2016-09-30 16:32       ` [PATCH v4 5/5] examples/l2fwd-crypto: updated example for libcrypto PMD Slawomir Mrozowicz
2016-10-03 14:26     ` [PATCH v5 0/4] new crypto software based device Slawomir Mrozowicz
2016-10-03 14:45       ` [PATCH v5 1/4] libcrypto_pmd: initial implementation of SW crypto device Slawomir Mrozowicz
2016-10-03 15:02       ` [PATCH v5 2/4] app/test: cryptodev AES tests rework Slawomir Mrozowicz
2016-10-03 15:17       ` [PATCH v5 3/4] app/test: added tests for libcrypto PMD Slawomir Mrozowicz
2016-10-03 15:28       ` [PATCH v5 4/4] examples/l2fwd-crypto: updated example " Slawomir Mrozowicz
2016-10-03 22:36       ` [PATCH v5 0/4] new crypto software based device De Lara Guarch, Pablo
2016-10-04 15:11       ` [PATCH v6 " Slawomir Mrozowicz
2016-10-04 15:11         ` [PATCH v6 1/4] libcrypto_pmd: initial implementation of SW crypto device Slawomir Mrozowicz
2016-10-04 15:11         ` [PATCH v6 2/4] app/test: cryptodev AES tests rework Slawomir Mrozowicz
2016-10-04 15:11         ` [PATCH v6 3/4] app/test: added tests for libcrypto PMD Slawomir Mrozowicz
2016-10-06 13:30           ` Trahe, Fiona
2016-10-06 13:53             ` Azarewicz, PiotrX T
2016-10-04 15:11         ` [PATCH v6 4/4] examples/l2fwd-crypto: updated example " Slawomir Mrozowicz
2016-10-04 23:36         ` [PATCH v6 0/4] new crypto software based device De Lara Guarch, Pablo
2016-10-05  0:05           ` De Lara Guarch, Pablo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E115CCD9D858EF4F90C690B0DCB4D8973C9F8F92@IRSMSX108.ger.corp.intel.com \
    --to=pablo.de.lara.guarch@intel.com \
    --cc=danielx.t.mrzyglod@intel.com \
    --cc=dev@dpdk.org \
    --cc=michalx.k.jastrzebski@intel.com \
    --cc=michalx.kobylinski@intel.com \
    --cc=slawomirx.mrozowicz@intel.com \
    --cc=tomaszx.kulasek@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.