Module Name: src Committed By: abs Date: Sun May 29 10:58:09 UTC 2022
Modified Files: src/lib/libcrypt: crypt-argon2.c Log Message: Avoid null SEGV if libargon passed string with too few $ Seen on netbsd-9 built xscreensaver running on a current system. Whatever triggered this should also be fixed, but in the meantime we can improve the behaviour from "Segmentation Fault" To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/lib/libcrypt/crypt-argon2.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/libcrypt/crypt-argon2.c diff -u src/lib/libcrypt/crypt-argon2.c:1.17 src/lib/libcrypt/crypt-argon2.c:1.18 --- src/lib/libcrypt/crypt-argon2.c:1.17 Sun May 29 10:51:41 2022 +++ src/lib/libcrypt/crypt-argon2.c Sun May 29 10:58:09 2022 @@ -335,13 +335,17 @@ decode_option(argon2_context *ctx, argon } a = strsep(&inp, "$"); + if (a == null) { + free(in); + return -1; + } sl = ctx->saltlen; if (from_base64(ctx->salt, &sl, a) == NULL) { - free(in); + free(in); return -1; - } + } ctx->saltlen = sl;