Commit Graph

196 Commits

Author SHA1 Message Date
Anders Kaseorg 335e3869b7 configure: Another flag for macOS distcheck: -Wno-error=nested-anon-types
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2019-06-12 22:51:08 -07:00
Anders Kaseorg f7a054c3e7 configure: Add --enable-static-LIBRARY options for selective static linking
Statically linking mosh-server with glibc isn’t a great idea for
various reasons (nsswitch modules, locale format incompatibilities).
But we can provide most of the benefits of static linking by allowing
specific library dependencies to be linked statically using -Bstatic
and -Bdynamic.  The full set is enabled by

    ./configure --enable-static-libraries

which is equivalent to

    ./configure --enable-static-libstdc++ --enable-static-libgcc \
      --enable-static-utempter --enable-static-zlib --enable-static-curses \
      --enable-static-crypto --enable-static-protobuf

and results in binaries whose only runtime library dependencies are
provided with libc:

    $ ldd src/frontend/mosh-server
            linux-vdso.so.1 (0x00007ffe0b377000)
            libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007fa0d9970000)
            libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fa0d97e3000)
            libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fa0d97c2000)
            libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fa0d95d8000)
            /lib64/ld-linux-x86-64.so.2 (0x00007fa0d9f6a000)

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2019-02-10 15:49:43 -08:00
Anders Kaseorg 6d30b18ccb configure.ac: Fix underquoted AC_HELP_STRING call
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2019-02-10 15:49:43 -08:00
John Hood 6fe7cde94d Require C++11 if protobuf version >= 3.6.0 is installed
This shouldn't require C++11 when not required.

This hack may not always detect when C++11 *is* required,
in which case a little autoconf tweaking may be needed
to get a good compile.
2018-08-02 19:09:21 -04:00
Tom Judge ab31b0f271 Add syslog logging of connections
Log connection change events to syslog in the auth log, logging the PID,
username and remote host.

Also log session begin and end.

Co-Authored-By: John Hood <cgull@glup.org>
2017-11-05 11:54:43 -05:00
Keith Winstein cf73e1f879 Update version to 1.3.2 (fixes Debian revision inversion) 2017-07-21 14:53:57 -07:00
John Hood dedb2c5b6f mosh 1.3.1 2017-07-20 17:45:41 -04:00
John Hood e054a86ecc mosh 1.3.1-rc3 2017-07-19 22:31:28 -04:00
John Hood b17c5795f7 Update to 1.3.1-rc2. 2017-05-19 19:29:34 -04:00
John Hood 561ac25d76 Version 1.3.1 rc1. Update changelogs. 2017-05-08 23:39:48 -04:00
Adrien Destugues aa74af9a34 Fix build on Haiku.
- Look for socket in libnetwork
- Look for forkpty in libbsd
2017-04-24 22:40:31 -04:00
John Hood c05793cb22 Bump version to 1.3.0 for release.
Signed-off-by: John Hood <cgull@glup.org>
2017-03-17 14:06:51 -04:00
Keith Winstein be023c5afc Bump version to 1.3.0~rc3 2017-03-03 02:22:35 -08:00
John Hood a092b0f7ca Mosh 1.3.0-rc2 release. 2017-01-05 00:14:48 -05:00
John Hood 9f59c69e40 1.3.0-rc0-- test build process 2016-12-21 21:26:53 -05:00
Anders Kaseorg 94027efc45 Make all commands properly support --help and --version
These should output to stdout and exit with status 0.  Passing
std-options to AM_INIT_AUTOMAKE causes ‘make installcheck’ (hence also
‘make distcheck’) to verify this.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2016-11-19 17:15:48 -05:00
john hood 11190526ad Fix Configure failure on FreeBSD with only base OpenSSL.
Search for OpenSSL libraries both with pkg-config and directly.

Fixes #763.
2016-11-19 15:02:06 -05:00
John Hood f728456898 Handle more warnings from protobuf on OS X compile 2016-10-29 20:48:48 -04:00
John Hood b0facb55c4 Test carefully for clock_gettime() and CLOCK_MONOTONIC 2016-09-29 01:10:23 -04:00
John Hood e494025b24 Work around "make distcheck" fail on OS X with protobuf 3.02. 2016-09-19 13:56:47 -04:00
John Hood 1077db41b6 Support OpenBSD 6.0 pledge() syscall for sandboxing. 2016-09-19 13:23:16 -04:00
john hood b7d081056b Fix CPPFLAGS handling possibly causing curses detection failure
This is an old, old bug.
2016-09-18 01:52:50 -04:00
John Hood 5f92a8a835 Bump version to 1.2.6.
Signed-off-by: John Hood <cgull@glup.org>
2016-07-30 21:36:55 -07:00
John Hood 05fe24d50d 1.2.5.95rc1 pre-release 2016-05-25 02:13:12 -04:00
john hood 70c62c5a94 #include <memory> for std::shared 2016-05-11 00:51:00 -04:00
john hood 9073983df3 crypto.cc: prefer bswap64() and ffs() if available.
Fixes #745.
2016-05-08 20:45:01 -04:00
Baruch Siach 7196dfdb26 configure.ac: link test for -fstack-protector-all
There are (broken) compilers out there that accept -fstack-protector-*
parameters, but do not provide the needed ssp library. As a result,
build does not fail, but link does. Use the local check_link_flag
autoconf function to correctly test for SSP availability.

Required for the Imagination Technologies Codescape IMG MIPS
toolchain, version 2015.10 (and who knows what else).

Fixes #744.
2016-04-07 20:05:06 -04:00
John Hood 08f64a750a Prefer the system cc/c++, not GCC 2016-03-30 23:52:19 -04:00
john hood a47917b976 configure.ac: Do s/-pthreads -lpthreads/-pthreads/ for protobuf
protobuf uses an obsolete automake pthreads detection macro,
which results in "pkgconfig --libs protobuf" returning
"-lprotobuf -pthread -lpthread" on Linux.  Remove
the unnecessary and dangerous -lpthread in that case.

Fixes #727, mosh-server crash in libutempter on Debian Sid.
2016-03-18 20:31:01 -04:00
John Hood caab7a7d88 configure.ac: always enable distcheck warning errors 2015-12-06 17:47:11 -05:00
John Hood b41bad918d Make Terminal::Framebuffer::Rows shared and copy-on-write.
* Support both std:: and std::tr1:: shared_ptr. FreeBSD 10 now uses C++11 by default.
* Remove Framebuffer pointers in STMClient
2015-12-06 17:42:34 -05:00
John Hood 0eb614809a Add configurable support for Apple Common Crypto and Nettle libraries. 2015-10-16 19:00:42 -04:00
John Hood 29112b410a configure: add --enable-warnings=distcheck
This disables -Werror everywhere but "Linux".
The heuristic is rather crude.
2015-10-03 03:46:17 -04:00
John Hood 3c3b356cb5 Bump version to 1.2.5.
Signed-off-by: John Hood <cgull@glup.org>
2015-07-12 12:48:22 -04:00
John Hood 7f7a1beb0f Fix bad bash-completion directory in non pkg-config case.
Signed-off-by: John Hood <cgull@glup.org>
2015-06-28 16:13:35 -04:00
John Hood d988cad455 configure.ac: respect --prefix for bash completion
Signed-off-by: John Hood <cgull@glup.org>
2015-06-28 14:43:25 -04:00
John Hood 8905127ef6 Bump version to 1.2.4.95rc2 (1.2.5 release candidate.)
Signed-off-by: John Hood <cgull@glup.org>
2015-06-26 18:28:46 -04:00
John Hood dee1a2eecc Improve Debian bash-completion support
* Autoconf queries pkgconf for bash-completion dir-- resolves
  lintian's `package-install-into-obsolete-dir` diagnostic
* Use improved completion snippet from
  <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=782169>
* Remove old /etc/bash_completion.d/mosh "conffile" with
  dh-maintscript + dpkg-maintscript-helper

Closes #628.

Signed-off-by: John Hood <cgull@glup.org>
2015-06-25 01:02:17 -04:00
John Hood c532429784 1.2.4.95rc1 pre-release.
Includes Debian and Fedora packaging.  Mac OS X package build is still
broken.

Signed-off-by: John Hood <cgull@glup.org>

Closes #625
2015-06-09 23:09:07 -07:00
Anders Kaseorg fb97e54b2f configure: Add -Wmissing-declarations to maximum compiler warnings set
This helps to catch inconsistent declarations in headers that weren’t
included, and local functions that are not marked static.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-04 23:52:03 -04:00
Anders Kaseorg af720b41e1 configure.ac: Intentionally underquote m4_normalize calls
This works around a bug in Autoconf 2.64 and earlier, which generated
ridiculous symbols like
  /* #undef HAVE_M4_NORMALIZE___FCNTL_H__LANGINFO_H__LIMITS_H__… */
instead of the ones we need.  It was fixed by v2.65~21:
  http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=81c80d1bf6c8ddf732d0b89f6fc5e306dac9705e

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-05-25 02:24:12 -04:00
Anders Kaseorg 553918d3f2 Connection: Support IPv6 addresses
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2013-08-17 09:02:44 -04:00
Jérémie Courrèges-Anglas 9314ea18fa use betoh64 if be64toh not found
Instead of looking for htobe64 which is be available both when
be64toh or betoh64 are, check for the latter functions.  If we
find betoh64 but not be64toh, use compat #defines.  If both
can't be found, search for OSX' OSSwapHostToBigInt64.
Also include sys/types.h in byteorder.h (which is necessary for
byteorder functions on OpenBSD), and incidentally fixes build
of networkfragment.cc.

Fixes build on OpenBSD

Signed-off-by: Jérémie Courrèges-Anglas <jca@wxcvbn.org>
2013-04-16 11:11:45 +02:00
Jérémie Courrèges-Anglas 24b078a5a1 workaround for systems not providing pselect
using a mix of good old select and sigprocmask

Signed-off-by: Jérémie Courrèges-Anglas <jca@wxcvbn.org>
2013-04-16 11:09:42 +02:00
Anders Kaseorg 8ff636d54e Work around automake bug that dropped portability warnings
There’s a bug in automake ≥ 1.10, < 1.12 where ‘-Wall foreign’
incorrectly turns off warnings about portability issues.  To get
consistent results across automake versions, use ‘foreign -Wall’
instead.

http://debbugs.gnu.org/cgi-bin/bugreport.cgi?bug=7669

Signed-off-by: Anders Kaseorg <andersk@mit.edu>

Closes #413
2013-04-15 13:37:52 -04:00
Keith Winstein 1b9915fcaf Bump version to 1.2.4a 2013-03-27 18:36:03 -04:00
Keith Winstein 688bf21b07 Bump version to 1.2.4 2013-03-27 00:28:47 -04:00
Keith Winstein 4668dc595f Bump version to 1.2.3.95rc1 (1.2.4 release candidate) 2013-03-10 17:52:56 -04:00
Keith Winstein 1bd38e6dab Include sys/uio.h to fix OpenBSD build problem (closes #391) 2013-03-10 16:58:16 -04:00
Anders Kaseorg 7b9e548aa0 Run tests with ‘make check’
The configure --enable-tests flag is no longer needed because
check_PROGRAMS are not built until you run ‘make check’.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2013-03-10 15:47:33 -04:00