Page MenuHomeFreeBSD

sh: Avoid referencing uninitialized memory in alias
ClosedPublic

Authored by jrm on May 15 2025, 3:13 PM.
Tags
None
Referenced Files
F154432441: D50364.diff
Tue, Apr 28, 12:42 PM
F154386816: D50364.id.diff
Tue, Apr 28, 6:49 AM
F154339793: D50364.id155561.diff
Mon, Apr 27, 11:12 PM
F154339246: D50364.id155561.diff
Mon, Apr 27, 11:06 PM
Unknown Object (File)
Mon, Apr 27, 6:07 AM
Unknown Object (File)
Sat, Apr 25, 5:05 AM
Unknown Object (File)
Fri, Apr 24, 5:35 AM
Unknown Object (File)
Thu, Apr 23, 10:49 AM
Subscribers

Details

Summary

If run as
alias ''
uninitialized memory could be referenced.

This is based on a fix from NetBSD. For more information, refer to the
commit log in
https://github.com/NetBSD/src/commit/10cfed82c282ff96a5a8818a9ce9b0e7444d418d

Obtained from: NetBSD (kre)
MFC after: 3 days

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

jrm requested review of this revision.May 15 2025, 3:13 PM

Heh,

$ /bin/sh
$ alias '' ==
$ alias
Bus error (core dumped)
$ 
This revision is now accepted and ready to land.May 15 2025, 3:40 PM
emaste requested changes to this revision.May 15 2025, 3:45 PM
emaste added inline comments.
bin/sh/alias.c
208

n is by definition an empty string, so the message would be alias: : not found which is confusing

This revision now requires changes to proceed.May 15 2025, 3:45 PM
This revision is now accepted and ready to land.May 16 2025, 1:57 PM