Commit Graph

1060 Commits

Author SHA1 Message Date
Anders Kaseorg ba8d013609 main: Don’t leak desired_ip memory
Signed-off-by: Anders Kaseorg <andersk@mit.edu>

Closes #385.
2013-03-10 15:45:52 -04:00
Anders Kaseorg b9763b6997 serve: Remove dead store of bytes_read
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2013-03-10 15:45:47 -04:00
Anders Kaseorg d6ff754a9a get_SSH_IP: Don’t leak SSH_writable memory
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2013-03-10 15:45:47 -04:00
Anders Kaseorg 2686b7c634 main: Don’t leak shell_name memory
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2013-03-10 15:45:47 -04:00
sqweek 5af90cc1ac Don't touch window title before an OSC is received.
Fixes the "window title being clobbered" issue raised in issue 137.

Signed-off-by: sqweek <sqweek@gmail.com>

Closes #380. Closes #137.
2013-03-10 15:44:49 -04:00
sqweek 13a16332d4 Treat empty OSC number as zero.
For interoperability's sake, accept OSCs of the form ESC];title^G
treating them the same as ESC]0;title^G

Signed-off-by: sqweek <sqweek@gmail.com>
2013-03-10 15:44:17 -04:00
Keith Winstein 1ee95974bc Since terminfo is guarded by include guard, need to define HAVE_CURSES_H 2013-01-18 12:11:55 -05:00
Alexander von Gernler ebe7ae96f6 fix a perror() message in mosh-server
A perror() message flanking an open() call was reading "dup2" where it
should read "open".

[closes #377]
2013-01-18 11:51:28 -05:00
Keith Winstein 8290e387af Remove dependency on IO::Pty 2013-01-18 11:50:58 -05:00
Anton Lundin 74e1a30944 Replace IO::Pty with pipe
Now when we don't need some fancy pty for sending on window-size and
reading proxy-output from, just use a regular pipe to drop dependency on
IO::Pty

[closes #378]
2013-01-18 11:31:28 -05:00
Anton Lundin e0dfe363a0 Have ssh close stdin and forceallocate pty
Somehow we still need to have a real pty on stdin to ssh so
window-size-thingie works.
2013-01-18 11:31:19 -05:00
Anton Lundin 077b664f13 Close some leftover fd's 2013-01-18 11:31:19 -05:00
Anton Lundin dd5a69bc70 Conditional curses detection
Make the whole extra curses/ncurses/ncursesw only check if we didn't
find tinfo the "old" way.
2013-01-17 16:44:06 +01:00
Anton Lundin eeb8ae99d7 Reintroduce pkg-config based searching for ncurses
Fixes issue rased in #358
2013-01-17 16:44:06 +01:00
Anton Lundin 4b1da58ae0 Convert all tabs to 4 whitespaces
Tabs where erronusly introduced in 993abf57
2013-01-17 16:44:06 +01:00
Anton Lundin 2ef025c09a Dup to pty to prevent ssh from reading our stdin
Dup the pty to STDIN to prevent hour the exec'ed ssh from consuming our
early input.
Due to the fact that mosh-server copies the pty settings from the pty it
as when starting, we can't set that one to a raw.

This are probably a combination of effects cased by fcc629ac and
18dc967c.

This probably fixes #366

[Closes #369]
2013-01-16 02:16:13 -05:00
Keith Winstein 2dcef54e24 Allow new states slowly even when queue full (fixes Axel Beckert lockup) 2013-01-15 02:03:35 -05:00
Keith Winstein e9c4184c27 Fix compilation bug when clock_gettime missing 2013-01-14 22:25:03 -05:00
Anton Lundin 438d0d8b9a Use the right term.h
When ncurses is in a separate include dir, we need to take the term.h
from there to match with the [n]curses.h
2012-12-16 17:30:14 +01:00
Keith Winstein 1fe6799092 Don't leak extra /dev/null fd (thanks to Julien Cristau) 2012-12-12 19:05:24 -05:00
Keith Winstein 3ea9cad285 Update THANKS 2012-12-12 18:42:33 -05:00
Keith Winstein 1034f7092a Wrap termio.h include in guard 2012-12-12 18:03:15 -05:00
Anton Lundin 99dc1f93cf Use MSG_NONBLOCK when MSG_DONTWAIT doesn't exist 2012-12-01 14:49:29 +01:00
Anton Lundin 55eb2759c0 use unistd.h instead of getopt.h
getopt.h doesn't exist on AIX and getopt is in unistd.h
2012-12-01 14:49:29 +01:00
Anton Lundin f1a4e209b6 Use c99 standard name instead of gcc-ism 2012-12-01 14:49:29 +01:00
Anton Lundin 846a2fa535 Port my_forkpty to be compatible with AIX 2012-12-01 14:49:29 +01:00
Anton Lundin 73d39980f4 Solaris term.h needs both termio.h and termios.h
On solaris, the term.h pulls in termio.h and termios.h if it detects
that they are not loaded. Because stmclient.h pulls in termios.h that
breaks type definitions in term.h that needs termio.h.
2012-12-01 12:53:29 +01:00
Anton Lundin 993abf57f1 Rework curses detection
Detect diffrent variants of curses and use them.
2012-12-01 12:53:28 +01:00
Anton Lundin 70a7c8024a We can't iterate over the object we are modifying
If subtract is called on itself, prefix and this is the same and the
iterator is invalid after modifying the underlaying object.

Instead just clear everyting.

Closes #354. Closes #355.
2012-11-30 19:55:15 -05:00
Jonathan McCrohan 0496a8f244 Update watchfile to fix Github breakage 2012-11-29 03:04:47 -05:00
Keith Winstein a2da17d48a Don't immediately clear network exceptions, even when problem solved 2012-11-26 04:19:56 -05:00
Keith Winstein c52f874fd3 Document new Ctrl-^ Ctrl-Z sequence 2012-11-26 04:05:11 -05:00
Keith Winstein e2b40fcaa7 Show infobar when Ctrl-^ is typed. 2012-11-26 04:03:04 -05:00
Keith Winstein 5eafc209ea Allow suspend by keystroke (Ctrl-^ Ctrl-Z)
(based on patch by Nickolai Zeldovich)
2012-11-26 03:34:14 -05:00
Keith Winstein 1c2b48abc6 mosh-server warning on unattached servers checks that device exists 2012-11-26 03:06:11 -05:00
Keith Winstein 2f8a67acc7 Adjust timeouts so server dies quicker, updates utmp slower 2012-11-26 02:21:06 -05:00
Keith Winstein 486325e76b mosh-server: Fix bug where spins forever if process dies while disconnected 2012-11-26 02:14:48 -05:00
Keith Winstein 6a16eecce0 Use dup() instead of move semantics for Network::Socket 2012-11-23 13:31:23 -05:00
Keith Winstein 05ec364b7d Verify $port_request defined before scanning it for error purposes 2012-11-09 11:56:28 -05:00
Keith Winstein 3811249787 Merge branch 'humane-times'
Closes #333
2012-11-05 22:05:10 -05:00
Keith Winstein b018e3a1ab Make "elapsed time" human readable even when other error is displayed 2012-11-05 22:02:46 -05:00
Keith Winstein cdd00fee42 Simplify implementation of human_readable_duration() 2012-11-05 21:57:02 -05:00
Kevin Ballard efbe9b2bab Make the 'lost contact' string more human-readable
Teach the 'lost contact' warning string about time units larger than
seconds. After 60 esconds it will switch over to using a time display
that looks like 1:23, or 1:02:34.

Fixes #321.

Signed-off-by: Kevin Ballard <kevin@sb.org>
2012-11-05 18:39:09 -08:00
Keith Winstein 28ed30c356 Allow stopping (via kill -STOP) and "fg" to resume session 2012-11-04 13:07:24 -05:00
Keith Winstein 07b2942945 Friendlier error message when server does not support UDP port range. 2012-10-29 15:35:56 -04:00
Peter Iannucci 93507a7195 macosx: builds a universal package for i386, x86_64. 2012-10-29 15:08:14 -04:00
Luke Mewburn 3e3510d382 Display results at end of configure.
Display configuration results at end of configure run,
including the version, c++ compiler, and various
compiler flag variables.

Signed-off-by: Luke Mewburn <luke@mewburn.net>
2012-10-29 15:03:13 -04:00
Luke Mewburn 141ec239da Support port range as -p/--port PORT[:HIGHPORT].
Extend mosh and mosh-server to support parsing a high port from
the desired_port argument.  The first (low) port must not be
greater than the second (high) port.
If only one value is provided, behaviour is as before; bind
to one port.  Also tweak the formatting in mosh-server(1) synopsis
to be consistent.

This resolves mosh issue # 296.

Signed-off-by: Luke Mewburn <luke@mewburn.net>
2012-10-29 14:59:28 -04:00
Keith Winstein b99da057bb Back out use of ip.h IPTOS_DSCP_AF42 constant (missing on OS X) 2012-10-22 10:50:28 -04:00
Keith Winstein c53a174d0c Revert "Check for netinet/ip.h (now that we are using it), and don't also use in.h"
This reverts commit 0909ea55d6.
2012-10-22 10:50:07 -04:00