Commit 588a90ac authored by Herbert Xu's avatar Herbert Xu
Browse files

crypto: ccree - Silence gcc format-truncation false positive warnings

The heuristics used by gcc triggers false positive truncation
warnings in hifn_alg_alloc.  The warning triggered by the strings
here are clearly false positives (see
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95755

).

Add checks on snprintf calls to silence these warnings, including
the one for cra_driver_name even though it does not currently trigger
a gcc warning.

Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 6d51b9ae
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -2569,9 +2569,13 @@ static struct cc_crypto_alg *cc_create_aead_alg(struct cc_alg_template *tmpl,

	alg = &tmpl->template_aead;

	snprintf(alg->base.cra_name, CRYPTO_MAX_ALG_NAME, "%s", tmpl->name);
	snprintf(alg->base.cra_driver_name, CRYPTO_MAX_ALG_NAME, "%s",
		 tmpl->driver_name);
	if (snprintf(alg->base.cra_name, CRYPTO_MAX_ALG_NAME, "%s",
		     tmpl->name) >= CRYPTO_MAX_ALG_NAME)
		return ERR_PTR(-EINVAL);
	if (snprintf(alg->base.cra_driver_name, CRYPTO_MAX_ALG_NAME, "%s",
		     tmpl->driver_name) >= CRYPTO_MAX_ALG_NAME)
		return ERR_PTR(-EINVAL);

	alg->base.cra_module = THIS_MODULE;
	alg->base.cra_priority = CC_CRA_PRIO;

+7 −3
Original line number Diff line number Diff line
@@ -1427,9 +1427,13 @@ static struct cc_crypto_alg *cc_create_alg(const struct cc_alg_template *tmpl,

	memcpy(alg, &tmpl->template_skcipher, sizeof(*alg));

	snprintf(alg->base.cra_name, CRYPTO_MAX_ALG_NAME, "%s", tmpl->name);
	snprintf(alg->base.cra_driver_name, CRYPTO_MAX_ALG_NAME, "%s",
		 tmpl->driver_name);
	if (snprintf(alg->base.cra_name, CRYPTO_MAX_ALG_NAME, "%s",
		     tmpl->name) >= CRYPTO_MAX_ALG_NAME)
		return ERR_PTR(-EINVAL);
	if (snprintf(alg->base.cra_driver_name, CRYPTO_MAX_ALG_NAME, "%s",
		     tmpl->driver_name) >= CRYPTO_MAX_ALG_NAME)
		return ERR_PTR(-EINVAL);

	alg->base.cra_module = THIS_MODULE;
	alg->base.cra_priority = CC_CRA_PRIO;
	alg->base.cra_blocksize = tmpl->blocksize;