Commit graph

346 commits

Author SHA1 Message Date
tickelton
228dd0c69c fix build with --disable-ssl
Commit b06b1f15ac broke the configure option
"--disable-ssl" as the function sslMakeContext() was not enclosed in an
"#if defined(HAVE_OPENSSL)" statement.
2015-05-02 16:12:33 +02:00
KLuka
8e09b8f2a6 Added empty m4 directory for autotools 2015-04-27 16:20:44 +02:00
KLuka
f0014c3a7a Firefox keyboard fix (German layout)
Some keycodes were moved from "normalKey" flag under "alphNumKey" flag.
2015-04-22 21:42:01 +02:00
KLuka
273be9b295 Update of project build scripts
* Updated README.md with additional instructions
* Updated configure.ac and Makefile.am to remove configuration warnings

Fixes were made according to information from issue #295
2015-04-22 11:04:22 +02:00
KLuka
c13170fe33 Minor typo and font fixes
* Added "Consolas" to terminal font stack
* Fixed some typos in README.md
* Fixed consistency of "attrFg" and "attrBg" in VT100 class
2015-03-19 22:33:49 +01:00
KLuka
fc89cb1ad5 Issue #105: Extend vt100.js to support xterm 256 colors
Now we are able to catch 38 and 48 ANSI escape codes in csim funcion. This two codes
define extended foreground/background color of terminal output in 256 color mode.

This enables us to add CSS classes "ansi0-ansi255" and "bgAnsi0-bgAnsi255" to related
output sections. Colors defined in CSS classes are the same as xterm colors.
2015-03-19 18:48:01 +01:00
KLuka
62871a605d Issue #186: Does not build on OpenBSD
* Added stdint.h include for uintptr_t compilation error
2015-03-17 13:32:05 +01:00
KLuka
38362b591e Better handling of Ctrl-W event
* IE doesn't trigger warning when session is closed
* IE and Firefox actually sends Ctrl-W event to terminal
* In Chrome user still gets warning and event is NOT sent to terminal
2015-03-14 13:30:18 +01:00
Luka Krajger
57cb829be9 Update README.md with Debian info
This update is related to issues: #227, #181, #193 ...
2015-03-13 13:09:19 +01:00
KLuka
1fc7a14c19 Updated README.md
* Added preview image
* Added sections Build and Issues
2015-03-12 15:28:14 +01:00
Philip Hughes
252dbaed88 Automake requires ChangeLog file
Add a placeholder to point the user to CHANGELOG.md instead (thanks
automake).
2015-03-11 16:40:42 +01:00
KLuka
cca02b1fee Issue #52: Emacs refresh is slow
When new process is launched default terminal speed is correctly set to 38400.
This improves usage of Emacs editor and perhaps some other applications.

This is also partial fix for issue #58
2015-03-11 16:21:15 +01:00
Luka Krajger
2f2d6ffabf Merge pull request #294 from Grimthorr/changelog
Fix build error caused by #293
2015-03-11 14:18:08 +01:00
KLuka
596776756d Merge branch 'KLuka-master' 2015-03-11 13:48:15 +01:00
Philip Hughes
52acf0a6f2 Update change log file name in Makefiles 2015-03-11 12:46:16 +00:00
KLuka
5f1d52c53b Merge branch 'master' of git://github.com/KLuka/shellinabox-1 into KLuka-master
Conflicts:
	ChangeLog
2015-03-11 13:46:04 +01:00
KLuka
cb3957f770 Issue #51: backtick key not working in Chrome
This patch was created with help from @dezza
2015-03-11 18:39:46 +01:00
Ezra Buehler
284d90ccc4 Remove trailing whitespace 2015-03-11 17:56:36 +01:00
Ezra Buehler
1dd42d66c2 Add menu option "Disable Alt Key"
This makes the application usable for Mac OS clients using international
keyboards.

This patch was modified to fit in our fork by @KLuka.
2015-03-11 17:41:44 +01:00
Luka Krajger
6984ce4b56 Merge pull request #293 from Grimthorr/changelog
Adds CHANGELOG.md
2015-03-11 13:18:49 +01:00
Philip Hughes
a129d17072 Update CHANGELOG.md 2015-03-11 12:07:12 +00:00
Philip Hughes
50ef89cc54 Implement a change log
Replaced old change log file with a GitHub-friendly version which
loosely follows the keepachangelog.com convention.
2015-03-11 11:42:08 +00:00
Luka Krajger
4ced3d2738 Merge pull request #290 from Grimthorr/master
Swap to gzip compression (drops support for IE6)
2015-03-10 12:22:41 +01:00
KLuka
b2f039d9c2 Fixed error from previous merge 2015-03-10 17:51:25 +01:00
Philip Hughes
939068c533 Swap to gzip compression (fixes #262 and #266)
Instead of making the browser sniffing more complicated, it's probably
better to use code that works for all current browsers. As such, this
swaps to use gzip compression encoding instead of deflate and drops the
IE browser sniffing code. This means shellinabox works in IE11 and
should work in every version of IE since IE7. From this commit, IE6 is
no longer supported. Thanks @lfourquaux.
2015-03-10 10:21:20 +00:00
Luka Krajger
5a69cc67ca Merge pull request #289 from KLuka/master
Keyboard icon, some html fixes ...
2015-03-10 10:51:55 +01:00
Guillaume Martres
a75bacb840 Set the encoding of .html files to UTF-8 2015-03-10 17:15:06 +01:00
Daniel Gröber
6d5b639816 Fix <input> element type
type="textfield" is invalid, however most browsers seem to default to
type="text" so this must have been overlooked.

This patch was modified to fit in our fork by @KLuka.
2015-03-10 17:13:47 +01:00
KLuka
25921c9961 Issue #173: Keyboard icon on dark background
Keyboard icon was not visible on dark background. This fixes icon to work well
on light and dark background. Image was fixed by @Grimthorr.

Copy of icon was removed from demo directory.
2015-03-10 17:04:06 +01:00
Luka Krajger
2754240709 Merge pull request #288 from KLuka/master
Another (final) fix for Firefox keycodes problems
2015-03-08 21:50:54 +01:00
KLuka
3570f20b0b Another (final) fix for Firefox keycodes problems
This patch adds new Firefox codes as normal keys.

Patch was taken from issue #202 comments, and merged to fit in our
code. Previous related patches were removed.

https://code.google.com/p/shellinabox/issues/detail?id=202#c23
2015-03-08 21:30:42 +01:00
Luka Krajger
ccbad6b906 Merge pull request #287 from KLuka/master
Keyboard fixes, raised version, ...
2015-03-08 16:06:31 +01:00
KLuka
61184ca8a5 Raised version to 2.15 2015-03-08 15:36:50 +01:00
KLuka
46ea812284 Removed at sign (@) from beggining of some JS comments
Posts from issue #118 tells us that at signs in JavaScript comments could produce
some troubles in IE browsers.

This related to something called "contional compilation" in JS ...
2015-03-08 15:14:20 +01:00
KLuka
699132d536 Issues #51, #202 ... : Keycodes fixes for FireFox
Added keycodes for handling <, >, + and * on Firefox 15+.
2015-03-08 14:50:25 +01:00
Luka Krajger
cc3f2fe917 Merge pull request #286 from KLuka/master
Partial fixes for issues #103, #203, #195 and README.md
2015-03-06 13:43:12 +01:00
KLuka
26fbc157ca Added README.md with basic info 2015-03-06 16:39:33 +01:00
KLuka
502891c626 Issue #195: A couple of bugs in vt100.jspp ...
Applied some fixes from issue comments.

https://code.google.com/p/shellinabox/issues/detail?id=195
2015-03-06 16:39:13 +01:00
KLuka
91f6eabe49 Issue #103, #203: Child process termination (partial fix)
When browser tab/window is closed during active session, child process
stays alive forever (even if shellinaboxd is terminated).

This fix works only if shellinaboxd is started without root privileges.
Droping them at runtime doesn't help either. Issue is related to PAM
session management process.

If we start shellinaboxd with root priviliges this fix will not affect
anything.

* When session timeouts cleanup procedure is triggered. Procedure is executed
in launcher process, because this is parent of child (service) process.
There we execute checks, if we have correct child pid (stored in session) and
than we can terminate process.
* Added debug information about cleaning up child process

https://code.google.com/p/shellinabox/issues/detail?id=103
https://code.google.com/p/shellinabox/issues/detail?id=203
2015-03-06 16:39:02 +01:00
Luka Krajger
68b5a487b4 Merge pull request #285 from KLuka/master
SSL patches, HTTP timeout patch
2015-03-05 18:36:58 +01:00
KLuka
97521bbfeb Issue #275: gracefully manage HTTP time-outs and connection problems
Patch reference: e69132f3762bd57a328dfc40b645d670d651afe7
Patch message:

When connecting to shellinabox through an HTTP Proxy, we need to be careful
in holding the HTTP/S connection with unbound pending HTTP-POST as they would
occupy one thread in the outbound proxy.

We do need to make sure that:
- HTTP POST will graceful time-out from the client side, if no data is returned
  by the server in 30s (gives the impression to the HTTP Proxy that the "page load"
  is completed after tha time and then would release the thread)
- In case of connection errors, the browser doesn't retry with a short loop but
  waits 1s before trying again. This prevent the browser freezing and the CPU looping.
2015-03-05 18:34:21 +01:00
Jonathan G Rennison
490781d998 Add dynamic linking for functions required by SSL v2/3 disabling patch. 2015-03-05 18:02:09 +01:00
Anders Kaseorg
b06b1f15ac Set SSL options for increased security
Disable SSLv2, SSLv3, and compression; generate new DH or ECDH keys
during each handshake; always start a new session on server
renegotiation; set a strong cipher list.

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

[ Patch from https://code.google.com/p/shellinabox/issues/detail?id=215 ]
2015-03-05 18:00:16 +01:00
KLuka
4f0b949081 IE 11 - This page can’t be displayed (Issue #262)
Now we are able to identify IE11 as MSIE browser and disable
compresion.

Patch taken from issue comments.

https://code.google.com/p/shellinabox/issues/detail?id=262
2015-03-05 17:26:47 +01:00
KLuka
bd3f0bd9fd Debug info and minor fix on child process exit (service exit)
* Added debug information when child process exits
	- pid of child process (service)
	- exit code (this should help for debuging issues related to "Session closed")

* Fixed status checking from waitpid() when child process exits
	- before we were checking wrong variable (checks were allways true)
	- now we use correct status variable
2015-03-05 17:23:24 +01:00
KLuka
7e0374b783 Issue #180: Ever growing console occurs in iPad
Patch taken from comments.

More info: https://code.google.com/p/shellinabox/issues/detail?id=180
Refernece: 7ba55246327ad9934ed5d082a12b6cc73f381511
2015-03-05 17:17:41 +01:00
KLuka
8e68059b50 Issue #202: "-_" keys don't not work in FF > 15
Added new keycodes for Firefox

More info: https://code.google.com/p/shellinabox/issues/detail?id=202
Refernece: 49b538590ea57da76a0af895a23c521c9a4538be
2015-03-05 17:10:55 +01:00
Ezra Buehler
821ee789c4 No longer set HTTP Content-Length 2015-03-05 16:27:35 +01:00
KLuka
33813cd46d Issue #245: Blank screen in Chrome 31.0.1650.57
Applied patch and fixed some formating.

Patch: https://code.google.com/p/shellinabox/issues/detail?id=245#c5
2015-03-05 16:15:12 +01:00
KLuka
618999f3cc Issue #114: popup warning on tab/window close
JS `window.onbeforeunload` handler was added, and it will be
trigger if session is active.

Reference: 6693512fde244cbb7f10e0033d4b4e5ec1b20e32
2015-03-05 15:46:13 +01:00