1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis */ 2 /* SPDX-License-Identifier: Unlicense */ 3 #include "tomcrypt_private.h" 4 5 /** 6 @file ecb_done.c 7 ECB implementation, finish chain, Tom St Denis 8 */ 9 10 #ifdef LTC_ECB_MODE 11 12 /** Terminate the chain 13 @param ecb The ECB chain to terminate 14 @return CRYPT_OK on success 15 */ ecb_done(symmetric_ECB * ecb)16int ecb_done(symmetric_ECB *ecb) 17 { 18 int err; 19 LTC_ARGCHK(ecb != NULL); 20 21 if ((err = cipher_is_valid(ecb->cipher)) != CRYPT_OK) { 22 return err; 23 } 24 cipher_descriptor[ecb->cipher]->done(&ecb->key); 25 return CRYPT_OK; 26 } 27 28 29 30 #endif 31