1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis 2 * 3 * LibTomCrypt is a library that provides various cryptographic 4 * algorithms in a highly modular and flexible manner. 5 * 6 * The library is free for all purposes without any express 7 * guarantee it works. 8 * 9 * Tom St Denis, tomstdenis (at) gmail.com, http://libtomcrypt.com 10 */ 11 #include "tomcrypt.h" 12 13 /** 14 @file crypt_find_hash.c 15 Find a hash, Tom St Denis 16 */ 17 18 /** 19 Find a registered hash by name 20 @param name The name of the hash to look for 21 @return >= 0 if found, -1 if not present 22 */ 23 int find_hash(const char *name) 24 { 25 int x; 26 LTC_ARGCHK(name != NULL); 27 LTC_MUTEX_LOCK(<c_hash_mutex); 28 for (x = 0; x < TAB_SIZE; x++) { 29 if (hash_descriptor[x].name != NULL && XSTRCMP(hash_descriptor[x].name, name) == 0) { 30 LTC_MUTEX_UNLOCK(<c_hash_mutex); 31 return x; 32 } 33 } 34 LTC_MUTEX_UNLOCK(<c_hash_mutex); 35 return -1; 36 } 37 38 /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_find_hash.c,v $ */ 39 /* $Revision: 1.6 $ */ 40 /* $Date: 2006/11/29 23:43:57 $ */ 41