[dpdk-dev] crypto: use snprintf return value correctly
Checks
Commit Message
snprintf return value is the length of was encoded into destination
array excluding '\0'. Thus return value equal to the length of the
destination array or more means truncation.
This commit fixes improper use of the return value.
Signed-off-by: Tomasz Duszynski <tdu@semihalf.com>
---
drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c | 2 +-
drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c | 4 ++--
drivers/crypto/armv8/rte_armv8_pmd_ops.c | 2 +-
drivers/crypto/kasumi/rte_kasumi_pmd_ops.c | 2 +-
drivers/crypto/null/null_crypto_pmd_ops.c | 2 +-
drivers/crypto/openssl/rte_openssl_pmd_ops.c | 2 +-
drivers/crypto/snow3g/rte_snow3g_pmd_ops.c | 2 +-
drivers/crypto/zuc/rte_zuc_pmd_ops.c | 2 +-
8 files changed, 9 insertions(+), 9 deletions(-)
Comments
On Wed, Oct 11, 2017 at 11:25:40AM +0200, Tomasz Duszynski wrote:
> snprintf return value is the length of was encoded into destination
> array excluding '\0'. Thus return value equal to the length of the
> destination array or more means truncation.
>
> This commit fixes improper use of the return value.
>
> Signed-off-by: Tomasz Duszynski <tdu@semihalf.com>
> ---
Good catch.
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Hi,
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bruce Richardson
> Sent: Wednesday, October 11, 2017 10:58 AM
> To: Tomasz Duszynski <tdu@semihalf.com>
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] crypto: use snprintf return value correctly
>
> On Wed, Oct 11, 2017 at 11:25:40AM +0200, Tomasz Duszynski wrote:
> > snprintf return value is the length of was encoded into destination
> > array excluding '\0'. Thus return value equal to the length of the
> > destination array or more means truncation.
> >
> > This commit fixes improper use of the return value.
> >
> > Signed-off-by: Tomasz Duszynski <tdu@semihalf.com>
> > ---
> Good catch.
>
> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Since this is a fix, you should add Fixes lines (one per PMD), and CC stable.
Thanks!
Pablo
On Wed, Oct 11, 2017 at 10:09:02AM +0000, De Lara Guarch, Pablo wrote:
> Hi,
>
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bruce Richardson
> > Sent: Wednesday, October 11, 2017 10:58 AM
> > To: Tomasz Duszynski <tdu@semihalf.com>
> > Cc: dev@dpdk.org
> > Subject: Re: [dpdk-dev] [PATCH] crypto: use snprintf return value correctly
> >
> > On Wed, Oct 11, 2017 at 11:25:40AM +0200, Tomasz Duszynski wrote:
> > > snprintf return value is the length of was encoded into destination
> > > array excluding '\0'. Thus return value equal to the length of the
> > > destination array or more means truncation.
> > >
> > > This commit fixes improper use of the return value.
> > >
> > > Signed-off-by: Tomasz Duszynski <tdu@semihalf.com>
> > > ---
> > Good catch.
> >
> > Acked-by: Bruce Richardson <bruce.richardson@intel.com>
>
> Since this is a fix, you should add Fixes lines (one per PMD), and CC stable.
>
> Thanks!
> Pablo
>
ACK
--
- Tomasz Duszyński
@@ -195,7 +195,7 @@ aesni_gcm_pmd_qp_set_unique_name(struct rte_cryptodev *dev,
"aesni_gcm_pmd_%u_qp_%u",
dev->data->dev_id, qp->id);
- if (n > sizeof(qp->name))
+ if (n >= sizeof(qp->name))
return -1;
return 0;
@@ -397,7 +397,7 @@ aesni_mb_pmd_qp_set_unique_name(struct rte_cryptodev *dev,
"aesni_mb_pmd_%u_qp_%u",
dev->data->dev_id, qp->id);
- if (n > sizeof(qp->name))
+ if (n >= sizeof(qp->name))
return -1;
return 0;
@@ -415,7 +415,7 @@ aesni_mb_pmd_qp_create_processed_ops_ring(struct aesni_mb_qp *qp,
"%s_%s",
qp->name, str);
- if (n > sizeof(ring_name))
+ if (n >= sizeof(ring_name))
return NULL;
r = rte_ring_lookup(ring_name);
@@ -209,7 +209,7 @@ armv8_crypto_pmd_qp_set_unique_name(struct rte_cryptodev *dev,
n = snprintf(qp->name, sizeof(qp->name), "armv8_crypto_pmd_%u_qp_%u",
dev->data->dev_id, qp->id);
- if (n > sizeof(qp->name))
+ if (n >= sizeof(qp->name))
return -1;
return 0;
@@ -183,7 +183,7 @@ kasumi_pmd_qp_set_unique_name(struct rte_cryptodev *dev,
"kasumi_pmd_%u_qp_%u",
dev->data->dev_id, qp->id);
- if (n > sizeof(qp->name))
+ if (n >= sizeof(qp->name))
return -1;
return 0;
@@ -175,7 +175,7 @@ null_crypto_pmd_qp_set_unique_name(struct rte_cryptodev *dev,
"null_crypto_pmd_%u_qp_%u",
dev->data->dev_id, qp->id);
- if (n > sizeof(qp->name))
+ if (n >= sizeof(qp->name))
return -1;
return 0;
@@ -599,7 +599,7 @@ openssl_pmd_qp_set_unique_name(struct rte_cryptodev *dev,
"openssl_pmd_%u_qp_%u",
dev->data->dev_id, qp->id);
- if (n > sizeof(qp->name))
+ if (n >= sizeof(qp->name))
return -1;
return 0;
@@ -184,7 +184,7 @@ snow3g_pmd_qp_set_unique_name(struct rte_cryptodev *dev,
"snow3g_pmd_%u_qp_%u",
dev->data->dev_id, qp->id);
- if (n > sizeof(qp->name))
+ if (n >= sizeof(qp->name))
return -1;
return 0;
@@ -184,7 +184,7 @@ zuc_pmd_qp_set_unique_name(struct rte_cryptodev *dev,
"zuc_pmd_%u_qp_%u",
dev->data->dev_id, qp->id);
- if (n > sizeof(qp->name))
+ if (n >= sizeof(qp->name))
return -1;
return 0;