Commit Graph

44 Commits

Author SHA1 Message Date
Darren Tucker
8854724cce Sync rev 1.49.
Prevent infinite for loop since i went from ssize_t to size_t.  Patch from
eagleoflqj via OpenSSH github PR#178, ok djm@, feedback & ok millert@
2020-04-21 18:28:19 +10:00
Darren Tucker
290c994336 Check if TILDE is already defined and undef.
Prevents redefinition warning on AIX.
2020-02-17 22:51:36 +11:00
Damien Miller
fbcb9a7fa5 upstream commit
revision 1.48
date: 2019/02/04 16:45:40;  author: millert;  state: Exp;  lines: +16 -17;  commitid: cpNtVC7erojNyctw;
Make gl_pathc, gl_matchc and gl_offs size_t in glob_t to match POSIX.
This requires a libc major version bump.  OK deraadt@
2019-11-15 16:06:30 +11:00
Damien Miller
2cfb11abac upstream commit
revision 1.47
date: 2017/05/08 14:53:27;  author: millert;  state: Exp;  lines: +34 -21;  commitid: sYfxfyUHAfarP8sE;
Fix exponential CPU use with repeated '*' operators by changing '*'
handling to be interative instead of recursive.
Fix by Yves Orton, ported to OpenBSD glob.c by Ray Lai.  OK tb@
2019-11-15 16:05:07 +11:00
Damien Miller
228dd595c7 upstream commit
revision 1.46
date: 2015/12/28 22:08:18;  author: mmcc;  state: Exp;  lines: +5 -9;  commitid: 0uXuF2O13NH9q2e1;
Remove NULL-checks before free() and a few related dead assignments.

ok and valuable input from millert@
2019-11-15 16:04:28 +11:00
Damien Miller
a16f748690 upstream commit
revision 1.44
date: 2015/09/14 16:09:13;  author: tedu;  state: Exp;  lines: +3 -5;  commitid: iWfSX2BIn0sLw62l;
remove null check before free. from Michael McConville
ok semarie
2019-11-15 16:02:43 +11:00
Damien Miller
fd37cdeafe 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
2019-11-15 16:02:27 +11:00
Damien Miller
fd62769c38 upstream commit
revision 1.42
date: 2015/02/05 12:59:57;  author: millert;  state: Exp;  lines: +2 -1;  commitid: DTQbfd4poqBW8iSJ;
Include stdint.h, not limits.h to get SIZE_MAX.  OK guenther@
2019-11-15 16:01:20 +11:00
Damien Miller
2b6cba7ee2 upstream commit
revision 1.41
date: 2014/10/08 05:35:27;  author: deraadt;  state: Exp;  lines: +3 -3;  commitid: JwTGarRLHQKDgPh2;
obvious realloc -> reallocarray conversion
2019-11-15 16:00:07 +11:00
Damien Miller
19f8ec428d upstream commit
revision 1.40
date: 2013/09/30 12:02:34;  author: millert;  state: Exp;  lines: +14 -15;
Use PATH_MAX, NAME_MAX and LOGIN_NAME_MAX not MAXPATHNAMELEN,
MAXNAMLEN or MAXLOGNAME where possible.  OK deraadt@
2019-11-15 15:08:28 +11:00
Damien Miller
bb7413db98 upstream commit
revision 1.39
date: 2012/01/20 07:09:42;  author: tedu;  state: Exp;  lines: +4 -4;
the glob stat limit is way too low.  bump to 2048.
while here, failed stats should count against the limit too.
ok deraadt sthen stsp
2019-11-15 15:07:30 +11:00
Darren Tucker
8db134e7f4 Prevent name collisions with system glob (bz#2463)
Move glob.h from includes.h to the only caller (sftp) and override the
names for the symbols.  This prevents name collisions with the system glob
in the case where something other than ssh uses it (eg kerberos).  With
jjelen at redhat.com, ok djm@
2015-10-29 10:48:23 +11:00
Damien Miller
e128a50e35 - djm@cvs.openbsd.org 2011/09/22 06:27:29
[glob.c]
     fix GLOB_KEEPSTAT without GLOB_NOSORT; the implicit sort was being
     applied only to the gl_pathv vector and not the corresponding gl_statv
     array. reported in OpenSSH bz#1935; feedback and okay matthew@
2011-09-22 21:22:21 +10:00
Damien Miller
c4bf7dde92 - stsp@cvs.openbsd.org 2011/09/20 10:18:46
[glob.c]
     In glob(3), limit recursion during matching attempts. Similar to
     fnmatch fix. Also collapse consecutive '*' (from NetBSD).
     ok miod deraadt
2011-09-22 21:21:48 +10:00
Damien Miller
e01a627047 - pyr@cvs.openbsd.org 2011/05/12 07:15:10
[openbsd-compat/glob.c]
     When the max number of items for a directory has reached GLOB_LIMIT_READDIR
     an error is returned but closedir() is not called.
     spotted and fix provided by Frank Denis obsd-tech@pureftpd.org
     ok otto@, millert@
2011-09-22 21:20:21 +10:00
Damien Miller
4927aaf446 - djm@cvs.openbsd.org 2011/01/12 01:53:14
avoid some integer overflows mostly with GLOB_APPEND and GLOB_DOOFFS
     and sanity check arguments (these will be unnecessary when we switch
     struct glob members from being type into to size_t in the future);
     "looks ok" tedu@ feedback guenther@
2011-01-12 13:32:03 +11:00
Damien Miller
b66e917831 - nicm@cvs.openbsd.org 2010/10/08 21:48:42
[openbsd-compat/glob.c]
     Extend GLOB_LIMIT to cover readdir and stat and bump the malloc limit
     from ARG_MAX to 64K.
     Fixes glob-using programs (notably ftp) able to be triggered to hit
     resource limits.
     Idea from a similar NetBSD change, original problem reported by jasper@.
     ok millert tedu jasper
2011-01-12 13:30:18 +11:00
Damien Miller
37f4f1892f - (djm) [openbsd-compat/glob.c] restore ARG_MAX compat code. 2010-10-07 22:10:38 +11:00
Damien Miller
a6e121aaa0 - djm@cvs.openbsd.org 2010/09/25 09:30:16
[sftp.c configure.ac openbsd-compat/glob.c openbsd-compat/glob.h]
     make use of new glob(3) GLOB_KEEPSTAT extension to save extra server
     rountrips to fetch per-file stat(2) information.
     NB. update openbsd-compat/ glob(3) implementation from OpenBSD libc to
     match.
2010-10-07 21:39:17 +11:00
Darren Tucker
528d6fa10a - (dtucker) [configure.ac openbsd-compat/glob.{c,h}] Bug #1407: force use of
builtin glob implementation on Mac OS X.  Based on a patch from
   vgiffin at apple.
2007-12-31 21:29:26 +11:00
Damien Miller
9c51c8d81a - deraadt@cvs.openbsd.org 2005/11/28 17:50:12
[openbsd-compat/glob.c]
     unused arg in internal static API
2007-10-26 16:13:39 +10:00
Darren Tucker
096faecdea - (dtucker) [configure.ac includes.h openbsd-compat/glob.{c,h}] Explicitly
test for GLOB_NOMATCH and use our glob functions if it's not found.
   Stops sftp from segfaulting when attempting to get a nonexistent file on
   Cygwin (previous versions of OpenSSH didn't use the native glob). Partly
   from and tested by Corinna Vinschen.
2006-09-01 20:29:10 +10:00
Darren Tucker
f78fb54412 - (dtucker) [openbsd-compat/{bsd-asprintf.c,bsd-openpty.c,bsd-snprintf.c,
glob.c}] Include stdlib.h for malloc and friends in compat code.
2006-08-06 21:25:24 +10:00
Damien Miller
8b373baf13 - (djm) [openbsd-compat/glob.c]
Move get_arg_max() into the ifdef HAVE_GLOB block so that it compiles
   on OpenBSD (or other platforms with a decent glob implementation) with
   -Werror
2006-07-24 14:55:47 +10:00
Damien Miller
b8fe89c4d9 - (djm) [acss.c auth-krb5.c auth-options.c auth-pam.c auth-shadow.c]
[canohost.c channels.c cipher-acss.c defines.h dns.c gss-genr.c]
   [gss-serv-krb5.c gss-serv.c log.h loginrec.c logintest.c readconf.c]
   [servconf.c ssh-keygen.c ssh-keyscan.c ssh-keysign.c ssh-rand-helper.c]
   [ssh.c sshconnect.c sshd.c openbsd-compat/bindresvport.c]
   [openbsd-compat/bsd-arc4random.c openbsd-compat/bsd-misc.c]
   [openbsd-compat/getrrsetbyname.c openbsd-compat/glob.c]
   [openbsd-compat/mktemp.c openbsd-compat/port-linux.c]
   [openbsd-compat/port-tun.c openbsd-compat/readpassphrase.c]
   [openbsd-compat/setproctitle.c openbsd-compat/xmmap.c]
   make the portable tree compile again - sprinkle unistd.h and string.h
   back in. Don't redefine __unused, as it turned out to be used in
   headers on Linux, and replace its use in auth-pam.c with ARGSUSED
2006-07-24 14:51:00 +10:00
Darren Tucker
2c1a02a8d0 - (dtucker) [loginrec.c openbsd-compat/xmmap.c openbsd-compat/bindresvport.c
openbsd-compat/glob.c openbsd-compat/mktemp.c openbsd-compat/port-tun.c
   openbsd-compat/readpassphrase.c openbsd-compat/strtonum.c] Include <errno.h>.
2006-07-12 22:40:50 +10:00
Damien Miller
a1738e4c65 - (djm) [loginrec.c ssh-rand-helper.c sshd.c openbsd-compat/glob.c]
[openbsd-compat/mktemp.c openbsd-compat/openbsd-compat.h]
   [openbsd-compat/port-tun.c openbsd-compat/readpassphrase.c]
   [openbsd-compat/xcrypt.c] Fix includes.h fallout, mainly fcntl.h
2006-07-10 21:33:04 +10:00
Damien Miller
6645e7a70d - (djm) [auth-pam.c clientloop.c includes.h monitor.c session.c]
[sftp-client.c ssh-keysign.c ssh.c sshconnect.c sshconnect2.c]
   [sshd.c openbsd-compat/bsd-misc.c openbsd-compat/bsd-openpty.c]
   [openbsd-compat/glob.c openbsd-compat/mktemp.c]
   [openbsd-compat/readpassphrase.c] Lots of include fixes for
   OpenSolaris
2006-03-15 14:42:54 +11:00
Darren Tucker
6524d4f161 - (dtucker) [openbsd-compat/glob.c] Update from OpenBSD 1.22 -> 1.25. 2005-11-10 17:02:21 +11:00
Darren Tucker
7f24a0e647 - (dtucker) [openbsd-compat/{LOTS}] Move the "OPENBSD ORIGINAL" markers to
after the copyright notices.  Having them at the top next to the CVSIDs
   guarantees a conflict for each and every sync.
2005-11-10 16:18:56 +11:00
Damien Miller
3db2e4daf7 - (djm) Annotate OpenBSD-derived files in openbsd-compat/ with original
source file path (in OpenBSD tree).
2003-11-24 13:33:34 +11:00
Ben Lindstrom
af4a6c3a56 - (bal) openbsd-compat/ OpenBSD updates. Mostly licensing, ansifications
and minor fixes.
2003-08-25 01:10:51 +00:00
Damien Miller
329638e49c - (djm) Sync openbsd-compat with OpenBSD CVS.
- No more 4-term BSD licenses in our tree
2003-06-03 12:12:50 +10:00
Damien Miller
71eb0c1550 - (djm) Sync openbsd-compat with OpenBSD -current 2002-09-11 10:29:11 +10:00
Ben Lindstrom
604de56009 - (bal) glob.c defines TILDE and AIX also defines it. #undef it first.
bug #265
2002-07-04 18:20:51 +00:00
Damien Miller
79b332dd67 - (djm) Fix a few warnings the above turned up 2001-06-27 23:36:08 +10:00
Damien Miller
6e77a538ca - Sync with OpenBSD glob.c, strlcat.c and vis.c changes 2001-04-14 00:22:33 +10:00
Damien Miller
d8f72ca6d5 - (djm) Another openbsd-compat/glob.c sync 2001-03-30 10:23:17 +10:00
Damien Miller
b68af624a9 - (djm) Sync openbsd-compat/glob.c 2001-03-28 21:05:26 +10:00
Tim Rice
d9d5ba2bbd add get_arg_max(). Use sysconf() if ARG_MAX is not defined. 2001-03-19 20:46:50 -08:00
Ben Lindstrom
11c78f8119 - (bal) glob.c update to set gl_pathv to NULL (OpenBSD CVS). 2001-03-19 19:00:09 +00:00
Ben Lindstrom
a77d641cea - (bal) glob.c update to added GLOB_LIMITS. 2001-03-19 18:58:13 +00:00
Ben Lindstrom
45b14dbddc - Check for gl_matchc support in glob_t and fall back to the
openbsd-compat/glob.[ch] support if it does not exist.
2001-03-17 01:15:38 +00:00
Damien Miller
3c02768950 - (djm) Add replacement glob() from OpenBSD libc if the system glob is
missing or lacks the GLOB_ALTDIRFUNC extension
 - (djm) Remove -I$(srcdir)/openbsd-compat from CFLAGS, refer to headers
   relatively. Avoids conflict between glob.h and /usr/include/glob.h
2001-03-14 11:39:45 +11:00