public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
From: Petr Vorel <pvorel@suse.cz>
To: Cyril Hrubis <chrubis@suse.cz>
Cc: ltp@lists.linux.it, Eric Biggers <ebiggers@google.com>
Subject: Re: [LTP] [PATCH v2 1/1] tst_af_alg: Another fix for disabled weak cipher
Date: Wed, 22 Dec 2021 17:49:38 +0100	[thread overview]
Message-ID: <YcNXIlOPmE05cGLT@pevik> (raw)
In-Reply-To: <YcNLv9eu1EwG5wft@yuki>

Hi Eric,

> Hi!
> > OK, this would not work for af_alg03.c, where false positive TCONF would be
> > printed:
> > tst_test.c:1426: TINFO: Timeout per run is 0h 05m 00s
> > tst_af_alg.c:81: TCONF: kernel doesn't have aead algorithm 'rfc7539(chacha20,sha256)'
> > af_alg03.c:24: TPASS: couldn't instantiate rfc7539 template with wrong digest size

> Hmm, so af_alg actually passes wrong data to the tst_have_alg() on
> purpose.

> I guess that if we want to move the TCONF to the library we either have
> to add a flag to the function or split it into a two. Not sure which one
> is actually better.
I was thinking of both (preferred split), but wasn't sure if it's worth of just
just to filter out "tst_fips.c:22: TINFO: FIPS: on" output.

> Maybe we should split it into two functions, one that wouldn't do
> anything but return the errno and one that would switch over that errno
> and print messages as well. Something as:


> int tst_try_alg(const char *algtype, const char *algname)
> {
> 	...
> 	int retval = 0;

> 	if (ret != 0)
> 		retval = errno;

> 	close(algfd);
> 	return retval;
> }


> bool tst_have_alg(const char *algtype, const char *algname)
> {
> 	ret = tst_try_alg(algtype, algname);

> 	switch (ret) {
> 	case 0:
> 		return true;
> 	case ENOENT:
> 		tst_res(TCONF, ...);
> 		return false;
> 	case ELIBBAD:
> 		if (tst_fips_enabled())
> 			return false;
> 	/* fallthrough */
> 	default:
> 		errno = ret;
> 		tst_brk(TBROK | TERRNO, ...);
> 	break;
> 	}
> }

> The the af_alg03 can call tst_try_alg() and check if the retval is
> ENOENT.
This looks good, thx! Simple enough to merge directly, but I'll send v3.

Kind regards,
Petr

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

  reply	other threads:[~2021-12-22 16:49 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-20 21:27 [LTP] [PATCH v2 1/1] tst_af_alg: Another fix for disabled weak cipher Petr Vorel
2021-12-21 11:11 ` Cyril Hrubis
2021-12-21 12:03   ` Petr Vorel
2021-12-22 14:45     ` Petr Vorel
2021-12-22 16:01       ` Cyril Hrubis
2021-12-22 16:49         ` Petr Vorel [this message]
2021-12-22 15:31 ` Eric Biggers
2021-12-22 17:01   ` Petr Vorel
2021-12-22 17:58     ` Eric Biggers
2021-12-22 19:01       ` Petr Vorel
2022-01-04 11:54 ` Petr Vorel
2022-01-11  5:29   ` Herbert Xu
2022-01-11  6:44     ` Petr Vorel

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=YcNXIlOPmE05cGLT@pevik \
    --to=pvorel@suse.cz \
    --cc=chrubis@suse.cz \
    --cc=ebiggers@google.com \
    --cc=ltp@lists.linux.it \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox