mirror of
git://git.code.sf.net/p/cdesktopenv/code
synced 2025-03-09 15:50:02 +00:00
Fix segfault if $PATH contains a .paths directory (#55)
ksh crashed if it encountered a .paths directory in any of the
directories in $PATH.
Ref: 1534855
src/cmd/ksh93/sh/path.c: path_chkpaths():
- Refuse to read .paths if it's not a regular file
or a symlink to a regular file.
This commit is contained in:
parent
0c40e7c182
commit
035a4cb3f4
4 changed files with 20 additions and 1 deletions
|
@ -1507,6 +1507,10 @@ static int path_chkpaths(Shell_t *shp,Pathcomp_t *first, Pathcomp_t* old,Pathcom
|
|||
if((fd=open(stakptr(offset),O_RDONLY))>=0)
|
||||
{
|
||||
fstat(fd,&statb);
|
||||
if (!S_ISREG(statb.st_mode)) {
|
||||
close(fd);
|
||||
return 0;
|
||||
}
|
||||
n = statb.st_size;
|
||||
stakseek(offset+pp->len+n+2);
|
||||
sp = stakptr(offset+pp->len);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue