Commit 8c20982c authored by Herbert Xu's avatar Herbert Xu
Browse files

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



The heuristics used by gcc triggers false positive truncation
warnings in hifn_alg_alloc.

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 0501d0d1
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -1382,8 +1382,12 @@ static int __n2_register_one_hmac(struct n2_ahash_alg *n2ahash)
	ahash->setkey = n2_hmac_async_setkey;

	base = &ahash->halg.base;
	snprintf(base->cra_name, CRYPTO_MAX_ALG_NAME, "hmac(%s)", p->child_alg);
	snprintf(base->cra_driver_name, CRYPTO_MAX_ALG_NAME, "hmac-%s-n2", p->child_alg);
	if (snprintf(base->cra_name, CRYPTO_MAX_ALG_NAME, "hmac(%s)",
		     p->child_alg) >= CRYPTO_MAX_ALG_NAME)
		goto out_free_p;
	if (snprintf(base->cra_driver_name, CRYPTO_MAX_ALG_NAME, "hmac-%s-n2",
		     p->child_alg) >= CRYPTO_MAX_ALG_NAME)
		goto out_free_p;

	base->cra_ctxsize = sizeof(struct n2_hmac_ctx);
	base->cra_init = n2_hmac_cra_init;
@@ -1394,6 +1398,7 @@ static int __n2_register_one_hmac(struct n2_ahash_alg *n2ahash)
	if (err) {
		pr_err("%s alg registration failed\n", base->cra_name);
		list_del(&p->derived.entry);
out_free_p:
		kfree(p);
	} else {
		pr_info("%s alg registered\n", base->cra_name);