Hi Vitaly, Thank you for this and the other reviews. They'll be addressed in the next version. On Wed, 2022-09-14 at 17:51 +0300, Vitaly Chikunov wrote: > > @@ -350,12 +356,11 @@ static int calc_evm_hash(const char *file, unsigned char *hash) > > #if OPENSSL_VERSION_NUMBER < 0x10100000 > > EVP_MD_CTX ctx; > > pctx = &ctx; > > -#else > > - pctx = EVP_MD_CTX_new(); > > #endif > > > > if (lstat(file, &st)) { > > log_err("Failed to stat: %s\n", file); > > + errno = 0; > > Why it clears errno (here and below)? > > errno(3) says "The value of errno is never set to zero by any system > call or library function." evmctl, itself, is not a system call or a library function. Is this a generic statement or here in particular as to how evmctl should handle failed system calls? Another example is reading the keyfile. The existence of which is not required. thanks, Mimi