git: 9d29fc2e4bfb - main - sh: Avoid referencing uninitialized memory in alias
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 16 May 2025 14:04:33 UTC
The branch main has been updated by jrm: URL: https://cgit.FreeBSD.org/src/commit/?id=9d29fc2e4bfba9fcd3b0944e683458a3f1fa0c47 commit 9d29fc2e4bfba9fcd3b0944e683458a3f1fa0c47 Author: Joseph Mingrone <jrm@FreeBSD.org> AuthorDate: 2025-05-15 14:42:14 +0000 Commit: Joseph Mingrone <jrm@FreeBSD.org> CommitDate: 2025-05-16 14:03:09 +0000 sh: Avoid referencing uninitialized memory in alias If run as alias '' uninitialized memory could be referenced. This is based on a fix from NetBSD. For more information, refer to https://github.com/NetBSD/src/commit/10cfed82c28 . Obtained from: NetBSD (Robert Elz <kre@netbsd.org>, 10cfed82c28) MFC after: 3 days Reported by: mckusick, Robert Elz <kre@netbsd.org> Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D50364 --- bin/sh/alias.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/bin/sh/alias.c b/bin/sh/alias.c index a02554d66e24..681e82b3e19e 100644 --- a/bin/sh/alias.c +++ b/bin/sh/alias.c @@ -204,6 +204,11 @@ aliascmd(int argc __unused, char **argv __unused) return (0); } while ((n = *argptr++) != NULL) { + if (n[0] == '\0') { + warning("'': not found"); + ret = 1; + continue; + } if ((v = strchr(n+1, '=')) == NULL) /* n+1: funny ksh stuff */ if ((ap = lookupalias(n, 0)) == NULL) { warning("%s: not found", n);