@@ -510,7 +510,7 @@ static int calc_evm_hash(const char *file, unsigned char *hash)
static int sign_evm(const char *file, const char *key)
{
unsigned char hash[MAX_DIGEST_SIZE];
- unsigned char sig[MAX_SIGNATURE_SIZE];
+ unsigned char sig[MAX_SIGNATURE_SIZE + 1];
int len, err;
len = calc_evm_hash(file, hash);
@@ -519,7 +519,7 @@ static int sign_evm(const char *file, const char *key)
return len;
len = sign_hash(params.hash_algo, hash, len, key, NULL, sig + 1);
- assert(len < sizeof(sig));
+ assert(len <= MAX_SIGNATURE_SIZE);
if (len <= 1)
return len;
Fix off-by-one error of the output buffer passed to sign_hash(). Signed-off-by: Vitaly Chikunov <vt@altlinux.org> --- src/evmctl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)