Module Name: src Committed By: agc Date: Mon Nov 1 03:09:59 UTC 2021
Modified Files: src/external/apache2/argon2/dist/phc-winner-argon2/src: argon2.c core.c src/lib/libcrypt: Makefile Log Message: Remove the COPTS.*+= -Wno-error=.* lines for building argon2 sources, by fixing the problems at source. Addresses Rin Okuyama's concerns on tech-userlevel/tech-crypto in Message-ID: <f1eab199-3607-bb05-15cc-033e38721...@gmail.com> To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 \ src/external/apache2/argon2/dist/phc-winner-argon2/src/argon2.c cvs rdiff -u -r1.2 -r1.3 \ src/external/apache2/argon2/dist/phc-winner-argon2/src/core.c cvs rdiff -u -r1.32 -r1.33 src/lib/libcrypt/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/apache2/argon2/dist/phc-winner-argon2/src/argon2.c diff -u src/external/apache2/argon2/dist/phc-winner-argon2/src/argon2.c:1.1 src/external/apache2/argon2/dist/phc-winner-argon2/src/argon2.c:1.2 --- src/external/apache2/argon2/dist/phc-winner-argon2/src/argon2.c:1.1 Wed Oct 9 13:13:09 2019 +++ src/external/apache2/argon2/dist/phc-winner-argon2/src/argon2.c Mon Nov 1 03:09:59 2021 @@ -283,7 +283,7 @@ int argon2_verify(const char *encoded, c goto fail; } - ctx.pwd = (uint8_t *)pwd; + ctx.pwd = __UNCONST(pwd); ctx.pwdlen = (uint32_t)pwdlen; ret = decode_string(&ctx, encoded, type); @@ -346,7 +346,7 @@ int argon2_verify_ctx(argon2_context *co return ret; } - if (argon2_compare((uint8_t *)hash, context->out, context->outlen)) { + if (argon2_compare((const uint8_t *)hash, context->out, context->outlen)) { return ARGON2_VERIFY_MISMATCH; } Index: src/external/apache2/argon2/dist/phc-winner-argon2/src/core.c diff -u src/external/apache2/argon2/dist/phc-winner-argon2/src/core.c:1.2 src/external/apache2/argon2/dist/phc-winner-argon2/src/core.c:1.3 --- src/external/apache2/argon2/dist/phc-winner-argon2/src/core.c:1.2 Sun Oct 17 10:44:21 2021 +++ src/external/apache2/argon2/dist/phc-winner-argon2/src/core.c Mon Nov 1 03:09:59 2021 @@ -414,7 +414,7 @@ int validate_inputs(const argon2_context } } - if (ARGON2_MIN_PWD_LENGTH > context->pwdlen) { + if (ARGON2_MIN_PWD_LENGTH + 1 > context->pwdlen + 1) { return ARGON2_PWD_TOO_SHORT; } @@ -443,7 +443,7 @@ int validate_inputs(const argon2_context return ARGON2_SECRET_PTR_MISMATCH; } } else { - if (ARGON2_MIN_SECRET > context->secretlen) { + if (ARGON2_MIN_SECRET + 1 > context->secretlen + 1) { return ARGON2_SECRET_TOO_SHORT; } if (ARGON2_MAX_SECRET < context->secretlen) { @@ -457,7 +457,7 @@ int validate_inputs(const argon2_context return ARGON2_AD_PTR_MISMATCH; } } else { - if (ARGON2_MIN_AD_LENGTH > context->adlen) { + if (ARGON2_MIN_AD_LENGTH + 1 > context->adlen + 1) { return ARGON2_AD_TOO_SHORT; } if (ARGON2_MAX_AD_LENGTH < context->adlen) { @@ -470,7 +470,7 @@ int validate_inputs(const argon2_context return ARGON2_MEMORY_TOO_LITTLE; } - if (ARGON2_MAX_MEMORY < context->m_cost) { + if (ARGON2_MAX_MEMORY - 1 < context->m_cost - 1) { return ARGON2_MEMORY_TOO_MUCH; } Index: src/lib/libcrypt/Makefile diff -u src/lib/libcrypt/Makefile:1.32 src/lib/libcrypt/Makefile:1.33 --- src/lib/libcrypt/Makefile:1.32 Sun Oct 31 09:16:08 2021 +++ src/lib/libcrypt/Makefile Mon Nov 1 03:09:58 2021 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.32 2021/10/31 09:16:08 nia Exp $ +# $NetBSD: Makefile,v 1.33 2021/11/01 03:09:58 agc Exp $ USE_FORT?= yes # cryptographic software @@ -28,8 +28,6 @@ SRCS+= crypt-argon2.c SRCS+= ${src} COPTS.${src}+= -fvisibility=hidden . endfor -COPTS.argon2.c+= -Wno-error=cast-qual -COPTS.core.c+= -Wno-error=type-limits . if ${MACHINE} == "vax" COPTS.blake2b.c+= -O0 . endif