1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis */ 2 /* SPDX-License-Identifier: Unlicense */ 3 #include "tomcrypt_private.h" 4 5 /** 6 @file crypt_find_cipher.c 7 Find a cipher in the descriptor tables, Tom St Denis 8 */ 9 10 /** 11 Find a registered cipher by name 12 @param name The name of the cipher to look for 13 @return >= 0 if found, -1 if not present 14 */ find_cipher(const char * name)15int find_cipher(const char *name) 16 { 17 int x; 18 LTC_ARGCHK(name != NULL); 19 LTC_MUTEX_LOCK(<c_cipher_mutex); 20 for (x = 0; x < TAB_SIZE; x++) { 21 if (cipher_descriptor[x] != NULL && !XSTRCMP(cipher_descriptor[x]->name, name)) { 22 LTC_MUTEX_UNLOCK(<c_cipher_mutex); 23 return x; 24 } 25 } 26 LTC_MUTEX_UNLOCK(<c_cipher_mutex); 27 return -1; 28 } 29 30