crypto/api.c: crypto_alg_available(): flags param not used.
Subsystems (4)
hi
A small observation. In crypto/api.c in linux-2.6.8.1
The function:
int crypto_alg_available(const char *name, u32 flags)
has a flags param which does not seem to be used.
though it does not matter much but has this been fixed in later releases? xfrm functions in ipsec do call this function but always with flags as 0.
Thanks and regards
kausty
(sorry... not subscribed to this list, pls CC if any valuable info)
Quoted 6 lines · Kausty
hi
A small observation. Incrypto/api.cin linux-2.6.8.1The function:
intcrypto_alg_available(const char *name, u32 flags)
Quoted 7 lines
has a flags param which does not seem to be used.
though it does not matter much but has this been fixed in later releases? xfrm functions in ipsec do call this function but always with flags as 0.
Thanks and regards
kausty
IIRC, this was to allow future code to specify preferences for the type of algorithm driver (e.g. hardware), but has not been used. This is an example of why it's a bad idea to add infrastructure which isn't being used at the time.
- James
Signature · 2 lines
James Morris <[email protected]>
PATCH 1/1 crypto/api.c: remove the second argument of crypto_alg_available()
Quoted 13 lines · James Morris
Quoted 11 lines · Kausty
hi
A small observation. Incrypto/api.cin linux-2.6.8.1The function:
intcrypto_alg_available(const char *name, u32 flags)has a flags param which does not seem to be used.
though it does not matter much but has this been fixed in later releases? xfrm functions in ipsec do call this function but always with flags as 0.
Quoted 7 lines
Quoted 2 lines
Thanks and regards
kaustyIIRC, this was to allow future code to specify preferences for the type of algorithm driver (e.g. hardware), but has not been used. This is an example of why it's a bad idea to add infrastructure which isn't being used at the time.
Since it's still unused, a patch to remove this second argument is below.
Quoted 1 line
- James
cu
Adrian
<-- snip -->
The second argument of crypto_alg_available() was not used and is therefore removed in this patch.
---
crypto/api.c | 2 +- crypto/tcrypt.c | 2 +- drivers/net/ppp_mppe.c | 4 ++-- include/linux/crypto.h | 4 ++-- net/xfrm/xfrm_algo.c | 8 ++++---- 5 files changed, 10 insertions(+), 10 deletions(-)
include/linux/crypto.h renamed from include/linux/crypto.h.old +2 -2
@@ -152,9 +152,9 @@* Algorithm query interface. */ #ifdef CONFIG_CRYPTO -int crypto_alg_available (const char *name,u32 flags); +int crypto_alg_available (const char *name);#else -static inline int crypto_alg_available (const char *name,u32 flags) +static inline int crypto_alg_available (const char *name) {return 0 ; }
crypto/api.c renamed from crypto/api.c.old +1 -1
@@ -300,7 +300,7 @@return ret; } -int crypto_alg_available (const char *name,u32 flags) +int crypto_alg_available (const char *name) {int ret =0 ;struct crypto_alg *alg =crypto_alg_mod_lookup (name);
crypto/tcrypt.c renamed from crypto/tcrypt.c.old +1 -1
@@ -753,7 +753,7 @@while (*name) {printk ("alg %s " , *name); -printk ((crypto_alg_available (*name,0 )) ? +printk ((crypto_alg_available (*name)) ?"found\n" :"not found\n" ); name++; }
drivers/net/ppp_mppe.c renamed from drivers/net/ppp_mppe.c.old +2 -2
@@ -695,8 +695,8 @@static int __init ppp_mppe_init (void ) {int answer; -if (!(crypto_alg_available ("arc4" ,0 ) && -crypto_alg_available ("sha1" ,0 ))) +if (!(crypto_alg_available ("arc4" ) && +crypto_alg_available ("sha1" )))return -ENODEV ; sha_pad =kmalloc (sizeof (struct sha_pad ),GFP_KERNEL );
net/xfrm/xfrm_algo.c renamed from net/xfrm/xfrm_algo.c.old +4 -4
@@ -369,7 +369,7 @@if (!probe)break ; - status =crypto_alg_available (name,0 ); + status =crypto_alg_available (name);if (!status)break ;
@@ -428,19 +428,19 @@BUG_ON (in_softirq ());for (i =0 ; i <aalg_entries (); i++) { - status =crypto_alg_available (aalg_list[i].name,0 ); + status =crypto_alg_available (aalg_list[i].name);if (aalg_list[i].available != status) aalg_list[i].available = status; }for (i =0 ; i <ealg_entries (); i++) { - status =crypto_alg_available (ealg_list[i].name,0 ); + status =crypto_alg_available (ealg_list[i].name);if (ealg_list[i].available != status) ealg_list[i].available = status; }for (i =0 ; i <calg_entries (); i++) { - status =crypto_alg_available (calg_list[i].name,0 ); + status =crypto_alg_available (calg_list[i].name);if (calg_list[i].available != status) calg_list[i].available = status; }
Herbert Xu
maintainerRe: [2.6 patch] crypto/api.c: remove the second argument of crypto_alg_available()
Quoted 8 lines · Adrian Bunk
Quoted 5 lines
IIRC, this was to allow future code to specify preferences for the type of algorithm driver (e.g. hardware), but has not been used. This is an example of why it's a bad idea to add infrastructure which isn't being used at the time.
Since it's still unused, a patch to remove this second argument is below.
I'll be using this field very soon to indicate that the caller intends to find synchronous algorithms only as opposed to either synchronous or asynchronous. So I'd like to keep it for now.
Thanks,
Signature · 4 lines
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt