Commit Graph

63 Commits

Author SHA1 Message Date
Damien Miller 151c6e433a add recallocarray replacement and dependency
recallocarray() needs getpagesize() so add a tiny replacement for that.
2017-06-01 15:25:13 +10:00
Darren Tucker afec07732a Add strcasestr to compat library.
Fixes build on (at least) Solaris 10.
2016-12-13 10:23:03 +11:00
Damien Miller 1cfd5c06ef Remove portability support for mmap
We no longer need to wrap/replace mmap for portability now that
pre-auth compression has been removed from OpenSSH.
2016-09-29 03:19:23 +10:00
Darren Tucker c20dccb561 Strip trailing whitespace.
Mechanically strip trailing whitespace on files not synced with OpenBSD
(or in the case of bsd-snprint.c, rsync).
2016-08-02 09:44:25 +10:00
Darren Tucker 6310ef27a2 Move err.h replacements into compat lib.
Move implementations of err.h replacement functions into their own file
in the libopenbsd-compat so we can use them in kexfuzz.c too.  ok djm@
2016-07-13 14:42:35 +10:00
Damien Miller 72ef7c148c support --without-openssl at configure time
Disables and removes dependency on OpenSSL. Many features don't
work and the set of crypto options is greatly restricted. This
will only work on system with native arc4random or /dev/urandom.

Considered highly experimental for now.
2015-01-15 02:28:36 +11:00
Darren Tucker 642652d280 Add reallocarray to compat library 2014-12-10 01:32:23 +11:00
Damien Miller 703b98a267 - (djm) [openbsd-compat/Makefile.in openbsd-compat/kludge-fd_set.c]
[openbsd-compat/openbsd-compat.h] Kludge around bad glibc
   _FORTIFY_SOURCE check that doesn't grok heap-allocated fd_sets;
   ok dtucker@
2014-10-01 09:43:07 +10:00
Damien Miller bf7e0f03be - (djm) [openbsd-compat/Makefile.in] Add missing explicit_bzero.o 2014-02-04 11:37:50 +11:00
Damien Miller f104da263d - (djm) [ed25519.c ssh-ed25519.c openbsd-compat/Makefile.in]
[openbsd-compat/bcrypt_pbkdf.c] Make ed25519/new key format compile on
       Linux
2013-12-07 12:37:53 +11:00
Damien Miller 1ff130dac9 - [configure.ac openbsd-compat/Makefile.in openbsd-compat/bcrypt_pbkdf.c]
[openbsd-compat/blf.h openbsd-compat/blowfish.c]
   [openbsd-compat/openbsd-compat.h] Start at supporting bcrypt_pbkdf in
   portable.
2013-12-07 11:51:51 +11:00
Damien Miller 720711960b - (djm) [openbsd-compat/Makefile.in openbsd-compat/arc4random.c]
[openbsd-compat/bsd-arc4random.c] Replace old RC4-based arc4random
   implementation with recent OpenBSD's ChaCha-based PRNG. ok dtucker@,
   tested tim@
2013-10-09 10:44:47 +11:00
Darren Tucker ccfdfceacb - (dtucker) [openbsd-compat/Makefile.in openbsd-compat/getopt.c
openbsd-compat/getopt_long.c regress/modpipe.c] Remove getopt.c, add
   portability code to getopt_long.c and switch over Makefile and the ugly
   hack in modpipe.c.  Fixes bz#1448.
2013-05-10 16:28:55 +10:00
Darren Tucker 8e6fb780e5 - (dtucker) [configure.ac openbsd-compat/Makefile.in openbsd-compat/strtoull.c
openbsd-compat/openbsd-compat.h] Add strtoull to compat library for
   platforms that don't have it.
2013-02-15 12:13:01 +11:00
Darren Tucker f96ff18a92 - (dtucker) [uidswap.c openbsd-compat/Makefile.in
openbsd-compat/bsd-setres_id.c openbsd-compat/bsd-setres_id.h
   openbsd-compat/openbsd-compat.h]  Move the fallback code for setting uids
   and gids from uidswap.c to the compat library, which allows it to work with
   the new setresuid calls in auth2-pubkey.  with tim@, ok djm@
2012-11-05 17:04:37 +11:00
Darren Tucker aa3cbd1b5b - (dtucker) [INSTALL LICENCE configure.ac openbsd-compat/Makefile.in
openbsd-compat/getrrsetbyname-ldns.c openbsd-compat/getrrsetbyname.c]
   bz 1320: Add optional support for LDNS, a BSD licensed DNS resolver library
   which supports DNSSEC.  Patch from Simon Vallet (svallet at genoscope cns fr)
   with some rework from myself and djm.  ok djm.
2011-11-04 11:25:24 +11:00
Darren Tucker b54f50e5d0 - (dtucker) [configure.ac openbsd-compat/Makefile.in
openbsd-compat/strnlen.c] Add strnlen to the compat library.
2011-09-29 23:17:18 +10:00
Damien Miller 88b844f19b - (djm) [openbsd-compat/Makefile.in] Actually link timingsafe_bcmp 2010-10-07 22:19:23 +11:00
Darren Tucker aa74f6754a - (dtucker) [configure.ac openbsd-compat/Makefile.in
openbsd-compat/openbsd-compat.h openbsd-compat/strptime.c] Add strptime to
   the compat library which helps on platforms like old IRIX.  Based on work
   by djm, tested by Tom Christensen.
2010-08-16 13:15:23 +10:00
Darren Tucker 909a390bb8 - (dtucker) [configure.ac openbsd-compat/{Makefile.in,pwcache.c} Portability
for pwcache.  Also, added caching of negative hits.
2010-01-15 12:38:30 +11:00
Darren Tucker 598eaa6c0c - (dtucker) [configure.ac defines.h sftp-client.c sftp-server.c sftp.c
openbsd-compat/Makefile.in openbsd-compat/openbsd-compat.h
   openbsd-compat/bsd-statvfs.{c,h}] Add a null implementation of statvfs and
   fstatvfs and remove #defines around statvfs code.  ok djm@
2008-06-09 03:32:29 +10:00
Damien Miller a7058ec7c0 - (djm) [configure.ac mux.c sftp.c openbsd-compat/Makefile.in]
[openbsd-compat/fmt_scaled.c openbsd-compat/openbsd-compat.h]
   Fix compilation on Linux, including pulling in fmt_scaled(3)
   implementation from OpenBSD's libutil.
2008-05-20 08:57:06 +10:00
Darren Tucker febf0f5668 - (dtucker) [atomicio.c configure.ac openbsd-compat/Makefile.in
openbsd-compat/bsd-poll.{c,h} openbsd-compat/openbsd-compat.h]
   Add an implementation of poll() built on top of select(2).  Code from
   OpenNTPD with changes suggested by djm.  ok djm@
2007-06-25 22:15:12 +10:00
Damien Miller 1b06dc30ad - (djm) [CREDITS LICENCE Makefile.in auth.c configure.ac includes.h ]
[platform.c platform.h sshd.c openbsd-compat/Makefile.in]
   [openbsd-compat/openbsd-compat.h openbsd-compat/port-solaris.c]
   [openbsd-compat/port-solaris.h] Add support for Solaris process
   contracts, enabled with --use-solaris-contracts. Patch from Chad
   Mynhier, tweaked by dtucker@ and myself; ok dtucker@
2006-08-31 03:24:41 +10:00
Damien Miller 73b42d2bb0 - (djm) [Makefile.in configure.ac session.c sshpty.c]
[contrib/redhat/sshd.init openbsd-compat/Makefile.in]
   [openbsd-compat/openbsd-compat.h openbsd-compat/port-linux.c]
   [openbsd-compat/port-linux.h] Add support for SELinux, setting
   the execution and TTY contexts. based on patch from Daniel Walsh,
   bz #880; ok dtucker@
2006-04-22 21:26:08 +10:00
Damien Miller 471e9b3ca6 - (djm) [Makefile.in openbsd-compat/Makefile.in] Add added files 2006-03-15 13:09:18 +11:00
Damien Miller 598bbc2d8f - (djm) [openbsd-compat/port-tun.c openbsd-compat/port-tun.h configure.ac]
[serverloop.c ssh.c openbsd-compat/Makefile.in]
   [openbsd-compat/openbsd-compat.h] Implement tun(4) forwarding
   compatability support for Linux, diff from reyk@
2005-12-31 16:33:36 +11:00
Damien Miller 57f3915b55 - (djm) [configure.ac openbsd-compat/Makefile.in openbsd-compat/bsd-asprintf.c
openbsd-compat/bsd-snprintf.c openbsd-compat/openbsd-compat.h] Add an
   asprintf() implementation, after syncing our {v,}snprintf() implementation
   with some extra fixes from Samba's version. With help and debugging from
   dtucker and tim; ok dtucker@
2005-11-24 19:58:19 +11:00
Tim Rice 2291c00ab2 - (tim) [CREDITS LICENCE auth.c configure.ac defines.h includes.h session.c
openbsd-compat/Makefile.in openbsd-compat/openbsd-compat.h
   openbsd-compat/xcrypt.c] New files [openssh/openbsd-compat/port-uw.c
   openssh/openbsd-compat/port-uw.h] Support long passwords (> 8-char)
   on UnixWare 7 from Dhiraj Gulati and Ahsan Rashid. Cleanup and testing
   by tim@. Feedback and OK dtucker@
2005-08-26 13:15:19 -07:00
Darren Tucker a55ec77013 - (dtucker) [cipher.c openbsd-compat/Makefile.in
openbsd-compat/openbsd-compat.{c,h} openbsd-compat/openssl-compat.h]
   Move compatibility code for supporting older OpenSSL versions to the
   compat layer.  Suggested by and "no objection" djm@
2005-06-09 21:45:10 +10:00
Darren Tucker 81eb5d5e10 - (dtucker) [configure.ac openbsd-compat/Makefile.in openbsd-compat/strtoll.c]
Add strtoll to the compat library, from OpenBSD.
2005-06-01 21:39:33 +10:00
Damien Miller de3cb0a3dc - (djm) [configure.ac openbsd-compat/Makefile.in]
[openbsd-compat/openbsd-compat.h openbsd-compat/strtonum.c]
         Add strtonum(3) from OpenBSD libc, new code needs it.
         Unfortunately Linux forces us to do a bizarre dance with compiler
         options to get LLONG_MIN/MAX; Spotted by and ok dtucker@
2005-05-26 20:48:25 +10:00
Damien Miller 36f4965020 - (djm) [acconfig.h configure.ac openbsd-compat/Makefile.in
openbsd-compat/bsd-closefrom.c openbsd-compat/bsd-misc.c
   openbsd-compat/bsd-misc.h openbsd-compat/openbsd-compat.h] Use smarter
   closefrom() replacement from sudo; ok dtucker@
2004-08-15 18:40:59 +10:00
Damien Miller f4da3bb6ca - deraadt@cvs.openbsd.org 2004/01/11 21:55:06
[sshpty.c]
     for pty opening, only use the openpty() path.  the other stuff only needs
     to be in openssh-p; markus ok
 - (djm) [openbsd-compat/bsd-openpty.c] Rework old sshpty.c code into an
   openpty() replacement
2004-01-21 17:07:16 +11:00
Darren Tucker 2e8c0cc752 - (dtucker) [configure.ac openbsd-compat/Makefile.in openbsd-compat/strtoul.c]
Bug #670: add strtoul() to openbsd-compat for platforms lacking it.  ok djm@
2003-10-07 17:49:56 +10:00
Ben Lindstrom 0410e32f47 - (bal) [auth-passwd.c openbsd-compat/Makefile.in openbsd-compat/xcrypt.c
openbsd-compat/xcrypt.h] Split off encryption into xcrypt() interface,
    and isolate shadow password functions.  Tested in Solaris, but should
    not break other platforms too badly (except maybe HP =).  Also brings
    auth-passwd.c into full sync with OpenBSD tree.
2003-07-24 06:52:13 +00:00
Damien Miller c28e38d23a - (djm) Merge all the openbsd/fake-* into fake-rfc2553.[ch] 2003-06-05 18:52:47 +10:00
Damien Miller d9ec370ac3 - (djm) Import getrrsetbyname() function from OpenBSD libc (for DNS support) 2003-05-15 12:27:08 +10:00
Damien Miller 8d8168a255 - (djm) Rest of Bug #499: Import a basename() function from OpenBSD libc 2003-02-24 12:55:55 +11:00
Damien Miller b93addb6d6 - (djm) Bug #111: Run syslog and stderr logging through strnvis to eliminate
nasties. Report from peak@argo.troja.mff.cuni.cz
2003-01-07 17:04:18 +11:00
Damien Miller 771721fa31 - (djm) Added getpeereid() replacement. Properly implemented for systems
with SO_PEERCRED support. Faked for systems which lack it.
2002-09-12 10:32:59 +10:00
Tim Rice 40017b0e7a (bal/tim) [acconfig.h configure.ac monitor_mm.c servconf.c
openbsd-compat/Makefile.in] support compression on platforms that
  have no/broken MAP_ANON. Moved code to openbsd-compat/xmmap.c
  Based on patch from nalin@redhat.com of code extracted from Owl's package
2002-07-14 13:36:49 -07:00
Ben Lindstrom a9c039cf04 - (bal) Migrated AIX getuserattr and usrinfo code to
openbsd-compat/port-aix.[c] to improve readilbity of do_child() and
   simplify our diffs against upstream source.
2002-02-19 20:27:55 +00:00
Ben Lindstrom f095a85882 - (bal) Migrate IRIX jobs/projects/audit/etc code to
openbsd-compat/port-irix.[ch] to improve readiblity of do_child()
2002-02-19 20:02:48 +00:00
Ben Lindstrom 84a6bfba15 - (bal) openbsd-compat/vis.[ch] is dead wood. Removed. 2001-09-20 02:07:50 +00:00
Tim Rice e991e3cf22 - (tim) [configure.in sshconnect.c openbsd-compat/Makefile.in
openbsd-compat/openbsd-compat.h ] Add inet_ntop.c inet_ntop.h back
	 in. Needed for sshconnect.c
	 [sshconnect.c] fix INET6_ADDRSTRLEN for non IPv6 machines
	 [configure.in] make tests with missing libraries fail
	 patch by Wendy Palm <wendyp@cray.com>
	 Added openbsd-compat/bsd-cray.h. Selective patches from
	 William L. Jones <jones@mail.utexas.edu>
2001-08-07 15:29:07 -07:00
Ben Lindstrom d9e0824b43 - (bal) Starting the Unicossmk merger. File merged TODO, configure.in,
myproposal.h, ssh_prng_cmds.in, and openbsd-compat/Makefile.in.
	 Added openbsd-compat/bsd-cray.c.  Rest will be merged after
	 approval.  Selective patches from William L. Jones
	 <jones@mail.utexas.edu>
2001-07-22 19:32:00 +00:00
Tim Rice 2db5371d30 - (tim) put openssh/openbsd-compat/inet_aton.[ch] back in.
(needed by openbsd-compat/fake-getaddrinfo.c)
2001-07-15 19:07:49 -07:00
Damien Miller 4f8e66929b - (djm) Pull in getopt(3) from OpenBSD libc for the optreset extension. 2001-07-14 13:22:53 +10:00
Ben Lindstrom deacfcc43f - (bal) Removed net_aton() since we don't use it any more 2001-06-29 12:32:31 +00:00