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@gmail.com, http://libtomcrypt.com 10 */ 11 #include "tomcrypt.h" 12 13 /** 14 @file crypt_find_hash_id.c 15 Find hash by ID, Tom St Denis 16 */ 17 18 /** 19 Find a hash by ID number 20 @param ID The ID (not same as index) of the hash to find 21 @return >= 0 if found, -1 if not present 22 */ find_hash_id(unsigned char ID)23int find_hash_id(unsigned char ID) 24 { 25 int x; 26 LTC_MUTEX_LOCK(<c_hash_mutex); 27 for (x = 0; x < TAB_SIZE; x++) { 28 if (hash_descriptor[x].ID == ID) { 29 x = (hash_descriptor[x].name == NULL) ? -1 : x; 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_id.c,v $ */ 39 /* $Revision: 1.6 $ */ 40 /* $Date: 2006/03/31 14:15:35 $ */ 41