mirror of
git://anongit.mindrot.org/openssh.git
synced 2025-03-01 20:31:02 +00:00
upstream commit
revision 1.43 date: 2015/06/13 16:57:04; author: deraadt; state: Exp; lines: +4 -4; commitid: zOUKuqWBdOPOz1SZ; in glob() initialize the glob_t before the first failure check. from j@pureftpd.org ok millert stsp
This commit is contained in:
parent
fd62769c38
commit
fd37cdeafe
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: glob.c,v 1.42 2015/02/05 12:59:57 millert Exp $ */
|
||||
/* $OpenBSD: glob.c,v 1.43 2015/06/13 16:57:04 deraadt Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1989, 1993
|
||||
* The Regents of the University of California. All rights reserved.
|
||||
@ -186,9 +186,6 @@ glob(const char *pattern, int flags, int (*errfunc)(const char *, int),
|
||||
Char *bufnext, *bufend, patbuf[PATH_MAX];
|
||||
struct glob_lim limit = { 0, 0, 0 };
|
||||
|
||||
if (strnlen(pattern, PATH_MAX) == PATH_MAX)
|
||||
return(GLOB_NOMATCH);
|
||||
|
||||
patnext = (u_char *) pattern;
|
||||
if (!(flags & GLOB_APPEND)) {
|
||||
pglob->gl_pathc = 0;
|
||||
@ -201,6 +198,9 @@ glob(const char *pattern, int flags, int (*errfunc)(const char *, int),
|
||||
pglob->gl_errfunc = errfunc;
|
||||
pglob->gl_matchc = 0;
|
||||
|
||||
if (strnlen(pattern, PATH_MAX) == PATH_MAX)
|
||||
return(GLOB_NOMATCH);
|
||||
|
||||
if (pglob->gl_offs < 0 || pglob->gl_pathc < 0 ||
|
||||
pglob->gl_offs >= INT_MAX || pglob->gl_pathc >= INT_MAX ||
|
||||
pglob->gl_pathc >= INT_MAX - pglob->gl_offs - 1)
|
||||
|
Loading…
Reference in New Issue
Block a user