Commit Graph

14 Commits

Author SHA1 Message Date
Darren Tucker 527cb43fa1 Return ERANGE from getcwd() if buffer size is 1.
If getcwd() is supplied a buffer size of exactly 1 and a path of "/", it
could result in a nul byte being written out of array bounds.  POSIX says
it should return ERANGE if the path will not fit in the available buffer
(with terminating nul). 1 byte cannot fit any possible path with its nul,
so immediately return ERANGE in that case.

OpenSSH never uses getcwd() with this buffer size, and all current
(and even quite old) platforms that we are currently known to work
on have a native getcwd() so this code is not used on those anyway.
Reported by Qualys, ok djm@
2022-07-14 11:22:08 +10:00
Damien Miller 715c892f0a remove sys/param.h in -portable, after upstream 2021-12-22 09:02:50 +11:00
Darren Tucker 30f9bd1c09 Repair $OpenBSD markers. 2016-08-02 09:06:27 +10:00
Damien Miller acdf3fbdba - (djm) [openbsd-compat/getcwd.c] Remove OpenBSD rcsid marker since we no
longer want to sync this file (OpenBSD uses a __getcwd syscall now, we
   want this longhand version)
2011-09-23 10:40:50 +10:00
Darren Tucker 0a149d19d3 - (dtucker) [openbsd-compat/getcwd.c] Replace lstat with fstat to match up
with OpenBSD code since we don't support platforms without fstat any more.
2005-11-10 17:15:06 +11:00
Darren Tucker 31ba53e333 - (dtucker) [openbsd-compat/getcwd.c] Update from OpenBSD 1.9 -> 1.14. 2005-11-10 17:11:29 +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 13dd03a0e2 - (djm) Sync openbsd-compat/ with OpenBSD -current 2003-01-08 11:16:48 +11:00
Ben Lindstrom dd21fe9ca0 - (bal) s/config.h/includes.h/ in openbsd-compat/ for *.c. Otherwise wise
have issues of our fixes not propogating right (ie bcopy instead of
   memmove).  OK tim
2002-06-27 18:23:20 +00:00
Ben Lindstrom 4ffaad8c33 - (bal) Fix mixed up params to memmove() from Jan 5th in setenv.c and
getcwd.c.
2001-02-19 19:54:43 +00:00
Ben Lindstrom 3c06f6a0b2 - (bal) Reorder. Move all bsd-*, fake-*, next-*, and cygwin* stuff to
openbsd-compat/.  And resolve all ./configure and Makefile.in issues
   assocated.

Logic:

* All OpenBSD functions should have the same filename as in the OpenBSD
  tree

* All 'home brew' functions have bsd-* infront of them.

* All 'not really implemented' functions have fake-* infront of them.
2001-01-31 21:52:01 +00:00