forked from luck/tmp_suning_uos_patched
crypto: tcrypt - Test algorithms by name
This adds the 'alg' module parameter to be able to test an algorithm by name. If the algorithm type is not ad-hoc clear for a algorithm (e.g. pcrypt, cryptd) it is possilbe to set the algorithm type with the 'type' module parameter. Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
03b56ce541
commit
a873a5f1c4
|
@ -45,6 +45,8 @@
|
||||||
*/
|
*/
|
||||||
static unsigned int sec;
|
static unsigned int sec;
|
||||||
|
|
||||||
|
static char *alg = NULL;
|
||||||
|
static u32 type;
|
||||||
static int mode;
|
static int mode;
|
||||||
static char *tvmem[TVMEMSIZE];
|
static char *tvmem[TVMEMSIZE];
|
||||||
|
|
||||||
|
@ -885,6 +887,11 @@ static int do_test(int m)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int do_alg_test(const char *alg, u32 type)
|
||||||
|
{
|
||||||
|
return crypto_has_alg(alg, type, CRYPTO_ALG_TYPE_MASK);
|
||||||
|
}
|
||||||
|
|
||||||
static int __init tcrypt_mod_init(void)
|
static int __init tcrypt_mod_init(void)
|
||||||
{
|
{
|
||||||
int err = -ENOMEM;
|
int err = -ENOMEM;
|
||||||
|
@ -896,7 +903,11 @@ static int __init tcrypt_mod_init(void)
|
||||||
goto err_free_tv;
|
goto err_free_tv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (alg)
|
||||||
|
err = do_alg_test(alg, type);
|
||||||
|
else
|
||||||
err = do_test(mode);
|
err = do_test(mode);
|
||||||
|
|
||||||
if (err) {
|
if (err) {
|
||||||
printk(KERN_ERR "tcrypt: one or more tests failed!\n");
|
printk(KERN_ERR "tcrypt: one or more tests failed!\n");
|
||||||
goto err_free_tv;
|
goto err_free_tv;
|
||||||
|
@ -928,6 +939,8 @@ static void __exit tcrypt_mod_fini(void) { }
|
||||||
module_init(tcrypt_mod_init);
|
module_init(tcrypt_mod_init);
|
||||||
module_exit(tcrypt_mod_fini);
|
module_exit(tcrypt_mod_fini);
|
||||||
|
|
||||||
|
module_param(alg, charp, 0);
|
||||||
|
module_param(type, uint, 0);
|
||||||
module_param(mode, int, 0);
|
module_param(mode, int, 0);
|
||||||
module_param(sec, uint, 0);
|
module_param(sec, uint, 0);
|
||||||
MODULE_PARM_DESC(sec, "Length in seconds of speed tests "
|
MODULE_PARM_DESC(sec, "Length in seconds of speed tests "
|
||||||
|
|
Loading…
Reference in New Issue
Block a user