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_oid.c 15 Find a hash, Tom St Denis 16 */ 17 18 int find_hash_oid(const unsigned long *ID, unsigned long IDlen) 19 { 20 int x; 21 LTC_ARGCHK(ID != NULL); 22 LTC_MUTEX_LOCK(<c_hash_mutex); 23 for (x = 0; x < TAB_SIZE; x++) { 24 if (hash_descriptor[x].name != NULL && hash_descriptor[x].OIDlen == IDlen && !XMEMCMP(hash_descriptor[x].OID, ID, sizeof(unsigned long) * IDlen)) { 25 LTC_MUTEX_UNLOCK(<c_hash_mutex); 26 return x; 27 } 28 } 29 LTC_MUTEX_UNLOCK(<c_hash_mutex); 30 return -1; 31 } 32 33 /* $Source: /cvs/libtom/libtomcrypt/src/misc/crypt/crypt_find_hash_oid.c,v $ */ 34 /* $Revision: 1.4 $ */ 35 /* $Date: 2006/11/01 09:28:17 $ */ 36