Commit Graph

1093 Commits

Author SHA1 Message Date
John Hood fce56ae6fe Improve Makefile generation of version files.
Remove bad automake dependency causing double execution.
Properly update the version in the non-Git case.
Git commands are now in a condition-expression, won't break build.
Test that we're in repo root (i.e., our own and not somebody else's).
Do `git describe --always` to handle shallow Git clones.

Signed-off-by: John Hood <cgull@glup.org>
2015-07-07 19:09:09 -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 6a169dc7ea Revert "Update bash completion for Debian."
This reverts commit 05da49fc3f.
2015-06-24 00:28:23 -04:00
John Hood 05da49fc3f Update bash completion for Debian.
This improves the completion, as suggested in
<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=782169>,
and moves the completion from `/etc/bash_completion.d/mosh` to
`/usr/share/bash-completion/completions/mosh` as recommended by
lintian in its `package-install-into-obsolete-dir` check.

Closes #628.

Signed-off-by: John Hood <cgull@glup.org>
2015-06-21 16:27:06 -04:00
John Hood a099638603 macosx: Make build more portable and general
This broadens the OS X build support to include old and current OS
X/Xcode, and Homebrew/MacPorts.

Support pkgbuild/productbuild + metadata from Mosh-1.2.4-3 package
Search for protobufs in /{usr,opt}/local
Make build select pkgbuild if available, PackageMaker if not
Make PackageBuilder build work on OS X 10.5, XCode 3.1, Macports
Do version substitution
Use generic names for c/c++/cpp
Make build script arch-indepdendent
Changes install dir from /usr to /usr/local

Closes #633.

Signed-off-by: John Hood <cgull@glup.org>
2015-06-21 16:20:11 -04:00
John Hood 83bfae7cf2 Add contents of mosh-1.2.4-3.pkg, except Payload
This is the base for new package builds using
pkgbuild and productbuild.

Signed-off-by: John Hood <cgull@glup.org>
2015-06-21 16:16:38 -04:00
John Hood 310b899a23 Support older getaddrinfo() missing AI_NUMERICSERV
Define this flag as 0 if unavailable.
This is needed for my OS X 10.5 system.

Signed-off-by: John Hood <cgull@glup.org>
2015-06-21 16:14:41 -04:00
Anders Kaseorg a2a34ef57f Include test suite in static analysis
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-11 01:17:37 -04:00
Anders Kaseorg 10dd74c016 NotificationEngine: Fix -Weffc++ warning
Fixes warning: ‘Overlay::NotificationEngine::escape_key_string’ should
be initialized in the member initialization list.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-11 01:16:52 -04:00
John Hood d0db0968b1 Enable altivec on ppc64el
From http://launchpadlibrarian.net/171225681/mosh_1.2.4a-1build1_1.2.4a-1ubuntu1.diff.gz

Fixes #615.
2015-06-11 00:55:12 -04:00
John Hood fc80eaaecf Show the escape key properly when server unavailable.
Fixes #624.

Signed-off-by: John Hood <cgull@glup.org>
2015-06-11 00:49:06 -04:00
John Hood 39c8b04c97 Makefile.am: fixup version file generation
Signed-off-by: John Hood <cgull@glup.org>
2015-06-11 00:39:55 -04:00
John Hood c58642dd63 Add static checkers to Makefile
Signed-off-by: John Hood <cgull@glup.org>
2015-06-10 23:54:50 -04:00
John Hood 8acee95c02 Resolve Coverity issue with Parser::Transition's ownership of Action *.
This commit is somewhat subtle; it informs Coverity that
Parser::Transition only holds an Action* temporarily, and should never
create/delete one.  I believe runtime checkers should also understand
this OK.

Signed-off-by: John Hood <cgull@glup.org>
2015-06-10 23:52:25 -04:00
John Hood 6f4a59e20f Resolve Coverity issues
Signed-off-by: John Hood <cgull@glup.org>
2015-06-10 23:51:42 -04:00
John Hood 026a3f0346 Resolve cppcheck issues.
Signed-off-by: John Hood <cgull@glup.org>
2015-06-10 23:50:56 -04:00
Keith Winstein c064ec1946 Update AUTHORS and THANKS 2015-06-09 23:09:47 -07: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
Keith Winstein 305fe612a4 .gitignore: add autogenerated files 2015-06-09 23:01:01 -07:00
Keith Winstein 43ff145c2f debian/control: bump standards version 2015-06-09 23:00:57 -07:00
Keith Winstein 2e4e601468 mosh-server.cc: compare like types.
Fixes #626 (resize not working) introduced by 543f346a
2015-06-09 15:17:48 -07:00
John Hood dd58a398de ocb.cc: Mark local functions as static
This fixes the broken i386 build (aka generic code).
Untested on __ALTIVEC__ and __ARM_NEON__.

Signed-off-by: John Hood <cgull@glup.org>
2015-06-07 17:06:40 -04:00
Anders Kaseorg 90965f175f benchmark: Swap misleading width and height variables
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-06 13:53:05 -04:00
John Hood 543f346ac7 Fix various new compiler warnings.
terminalfunctions.cc: set_if_available() was undeclared.
Fix printf() wint_t/wchar_t warnings.
mosh-server.cc: Fix warning for side effects inside typeid().

Signed-off-by: John Hood <cgull@glup.org>
2015-06-06 13:12:32 -04:00
Anders Kaseorg b604a7d7c2 Respect HOME environment variable if set
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-05 22:53:31 -04:00
Anders Kaseorg 9019f62bf6 Respect SHELL environment variable if set
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-05 22:53:31 -04:00
John Hood 8a91e78349 termemu: respect $SHELL and exec argv if given
Signed-off-by: John Hood <cgull@glup.org>
2015-06-05 22:41:21 -04:00
John Hood 73fd6442c5 Add command line parameters for benchmark. 2015-06-05 22:41:21 -04:00
John Hood 67c22e5065 issue #507: fix/simplify parsing of colors 2015-06-05 00:12:01 -04: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 cd2ae36f36 Mark local functions as static
This helps to catch unused functions like the former mosh_read_line,
allows the compiler to make better inlining decisions, and reduces the
binary size a bit.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-04 23:52:03 -04:00
Anders Kaseorg a52b095f50 mosh-server: Remove unused mosh_read_line function
This function is buggy.  feof(file) does not become true until after
we’ve tried to read past the last character; it should instead be
checking the getc return value for EOF (which is distinct from any
unsigned char).  Really it should just be replaced by istream
&std::getline(istream &is, string &str).  Fortunately, it’s unused so
we can just delete it.

Resolves a truncated stdio return value issue found by Coverity Scan
service.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-04 23:50:40 -04:00
Anders Kaseorg 0824e6549a base64: Make base64_encode declaration consistent with its definition
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-04 23:50:40 -04:00
Anders Kaseorg 8f6b226d8b Base64Key: Deduplicate PRNG code
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-04 23:50:40 -04:00
Anders Kaseorg c03bacd0c9 mosh-server: Catch exception for parsing nonintegral number of colors
Print a real error message instead of abnormally aborting.  Found by
Coverity Scan service.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-04 23:50:40 -04:00
Anders Kaseorg 23f0eedb8c Parser::UTF8Parser::input: Remove dead code for negative size_t
size_t is unsigned.  Fixes two issues found by the Coverity Scan
service, one about the dead code and one about the std::string
exception being uncaught by mosh-server.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-04 23:50:40 -04:00
Geoffrey Thomas a38b6f61d5 STMClient::process_network_input: Return void, instead of always true
This function has never in its history had a codepath returning false.
2015-06-04 23:47:32 -04:00
Geoffrey Thomas 4b75bcfdd9 terminaldisplay: Make a for loop's boundary better match its body
Both f and frame.last_frame must have the same number of rows here, but
since we're iterating over frame.last_frame's rows, make that more
explicit.
2015-06-04 23:47:32 -04:00
Geoffrey Thomas f4a93fbf26 macosx: Stop setting ac_cv_poll_pty, since it was removed in bb651581. 2015-06-04 23:47:32 -04:00
Geoffrey Thomas b5ac92491c Throw std::exception subclasses instead of std::strings
Now everything we throw or catch ourselves is a subclass of
std::exception.
2015-06-04 23:47:32 -04:00
Geoffrey Thomas aeffb71cfc Style cleanup: "foo &x", not "foo& x" 2015-06-04 23:47:32 -04:00
Geoffrey Thomas 9e9919c941 UTF8Parser::input: size_t is unsigned, so it can't be negative 2015-06-04 23:47:31 -04:00
Geoffrey Thomas 5721b392ab Make all exception classes inherit from std::exception
This refactors out a very common pattern of formatting "%s: %s" with
e.function.c_str() and strerror( e.the_errno ) into just the what()
method of NetworkException. It's also a prerequisite for making cleaner
public API for any exceptions we throw, and allows us to more easily
get exceptions passed back to us to handle.
2015-06-04 23:47:31 -04:00
Anders Kaseorg ebecb9bd3a Remove trailing commas from enums
I do sympathize with the motivation for these trailing commas, but
they cause silly build failures with --enable-compile-warnings=error
(which is used at least by the Debian/Ubuntu package).

  CXX      parseraction.o
In file included from terminal.h:42:0,
                 from parseraction.cc:37:
terminalframebuffer.h:200:39: error: comma at end of enumerator list [-Werror=pedantic]
       MOUSE_REPORTING_ANY_EVENT = 1003,
                                       ^
terminalframebuffer.h:210:34: error: comma at end of enumerator list [-Werror=pedantic]
       MOUSE_ENCODING_URXVT = 1015,
                                  ^
cc1plus: all warnings being treated as errors
Makefile:354: recipe for target 'parseraction.o' failed

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-06-04 08:43:48 -04:00
John Hood 937ab14f86 scripts/mosh: Make the generated file executable. 2015-05-31 23:09:04 -04:00
John Hood 8af7473cc4 Reset XTerm mouse modes on suspend/exit. 2015-05-31 22:50:17 -04:00
Louis Kruger c4236c6762 Fix xterm mouse support. 2015-05-31 18:18:30 -04:00