Commit graph

381 commits

Author SHA1 Message Date
KLuka
6402688084 Improved code session and URL handling
* URL dependency was removed from session handling code. URL object
  was only needed to get session key from client request. This was
  moved somewhere else to achive better code reusability.
* Added URL parsing functionality that can be used without URL object.
2015-05-26 22:37:32 +02:00
Luka Krajger
fad30cd57c Merge pull request #311 from KLuka/colors
Solution for issue #255, manuals update
2015-05-23 10:40:43 +02:00
KLuka
8923598a6d Improved terminal cursor style
* Changed "dim" cursor visibility from invisible to almost transparent
  and in the same color as default background. This improves visibility
  of cursor, if we are usign application (like vim for example) with
  dark background and the "Black on White" user CSS is set.
2015-05-23 10:38:08 +02:00
KLuka
9bb3b787ae Updated manuals for SSH service 2015-05-21 09:51:59 +02:00
KLuka
0a2ba7c052 Issue #255: Fixed "White on Black" color theme
* Changed handling of ANSI escape codes. Now we detect when to use
  default colors and when to use explicit ANSI colors.
* Added new CSS classes "ansiDef" and "bgAnsiDef" for default terminal
  foreground and background. Before we were using "ansi0" and "bgAnsi15"
  for default bg/fg colors. This was causing problems, when "White on
  Black" color theme modified their values. Now just this two classes
  are changed when user changes his color theme.
2015-05-20 16:50:32 +02:00
KLuka
e6a6857cb1 SSH service debugging and addtional information
* Changed ssh command log level from QUIET to FATAL. This will help
  users with debugging in case of errors related to SSH service.
  (See issues #112, #310)
* Added more information about SSH service in manual page. For SSH
  service to work, sshd server needs to be running on local system
  and must be configured to accept password authentication.
2015-05-19 21:39:11 +02:00
Luka Krajger
ce25d2f2b1 Merge pull request #309 from KLuka/realip
Real IP recognition over proxy

* Recogniton of HTTP header field 'X-Real-IP' was added. Value
  is used in LOGIN service with peer name as remote host identifier.
  This was we are able to see real IP in login related log files
  such as /var/log/auth.log, etc...

  Example for failed logins over nginx as can be seen in `/var/log/auth.log` file:
  ```
  May 17 20:17:20 luka-ubuntu login[9888]: FAILED LOGIN (1) on '/dev/pts/20' from '127.0.0.1, 192.168.1.100' FOR 'UNKNOWN', User not known to the underlying authentication module
  May 17 20:17:25 luka-ubuntu login[9888]: FAILED LOGIN (2) on '/dev/pts/20' from '127.0.0.1, 192.168.1.100' FOR 'luka', Authentication failure
  ```


* Real IP, peer name and URL are also passed to launched  service
  as environment variables (SHELLINABOX_PEERNAME, SHELLINABOX_REALIP
  and SHELLINABOX_URL). This can be used by custom user service shell
  scripts or programs.

  ```
  SHELLINABOX_REALIP=192.168.1.100
  SHELLINABOX_URL=http://192.168.1.150:81/
  SHELLINABOX_PEERNAME=127.0.0.1
  ```

* Real IP can also be passed to custom user service as command line
  parameter ${realip}.

  See this example:
  ```
  ./shellinaboxd --service  '/:luka:luka:/:/home/luka/test.sh --peer ${peer} --realip ${realip}'
  ```
2015-05-19 09:54:09 +02:00
KLuka
17dd88e804 Real IP recognition over proxy (man, help)
* Manual page and output of --help parameter were updated according
  to changes in previous commit.
2015-05-18 16:28:14 +02:00
KLuka
883b7aa7f0 Real IP recognition over proxy (partial fix #54)
* Recogniton of HTTP header field 'X-Real-IP' was added. Value
  is used in LOGIN service with peer name as remote host identifier.
  This was we are able to see real IP in login related log files
  such as /var/log/auth.log, etc...
* Real IP, peer name and URL are also passed to launched  service
  as environment variables (SHELLINABOX_PEERNAME, SHELLINABOX_REALIP
  and SHELLINABOX_URL). This can be used by custom user service shell
  scripts or programs.
* Real IP can also be passed to custom user service as command line
  parameter ${realip}.
2015-05-17 20:05:15 +02:00
Luka Krajger
89d4a87c53 Merge pull request #308 from a-detiste/master
clean up debian/rules
2015-05-16 18:14:18 +02:00
Alexandre Detiste
955c7cdd46 debian: use coherant casing for user css options 2015-05-15 20:36:29 +02:00
Alexandre Detiste
b460a0ba72 debian: close release metabug 2015-05-15 18:17:56 +02:00
Alexandre Detiste
97813e9235 clean up debian/rules
so much more simple to read, yet it yelds an identical .deb

For people building the package without debian tools,
the 4 *.css won't be installed in /usr/share/doc/shellinabox;
anymore, but those aren't _documentation_,
merely sample configuration files.

The stubby Changelog "Please see CHANGELOG.md" is replaced
by a symlink; that explains the size increase of 6kb;
but Debian package should by policy ship the upstream
CHANGELOG if avaible.

```
debdiff GOOD_shellinabox_2.15-1_armhf.deb shellinabox_2.15-1_armhf.deb

File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------

Installed-Size: [-510-] {+516+}
```
2015-05-15 15:49:32 +02:00
Luka Krajger
458d441e75 Merge pull request #300 from KLuka/usercss
User CSS related fixes
2015-05-14 16:31:15 +02:00
KLuka
94a7f6339f User CSS minor typo fix
* Fixed typo for context menu option "Black On White"
2015-05-14 12:52:10 +02:00
Luka Krajger
62c36796fb Merge pull request #306 from a-detiste/master
VCS_VERSION: remove Subversion support, add support for Git & tarball
2015-05-14 12:43:25 +02:00
Alexandre Detiste
f3bb90eaf4 VCS_VERSION: remove Subversion support, add support for Git & tarball
building from tarball can be tested this way:

rsync -avix . /tmp/shellinabox --exclude-from=.gitignore --exclude=.git --delete --delete-excluded
(cd /tmp/shellinabox && autoreconf -i && ./configure && make && ./shellinaboxd --version)
2015-05-14 12:34:47 +02:00
KLuka
9d87e59356 User CSS initialization fix (issue #138)
* Now we use onload event to disable user CSS accoring to default
  or user settings. Problem was that we were setting the 'disabled'
  attribute on unloaded stylesheet. This should work in all moderen
  browsers.
2015-05-14 11:12:35 +02:00
Luka Krajger
89e40c5e3a Merge pull request #303 from a-detiste/master
fix building with debuild
2015-05-13 23:06:13 +02:00
Alexandre Detiste
29b12cba45 README.md: only 'apt-get install' the minimum
apt-get will resolve depedencies automatically
2015-05-13 10:25:07 +02:00
Alexandre Detiste
3d7c86f504 README.md: add dh-autoreconf depedency 2015-05-13 10:05:14 +02:00
Luka Krajger
3b40013406 Added build status to README.md 2015-05-13 09:30:10 +02:00
Alexandre Detiste
b244e3ffc8 ignore files generated by debuild 2015-05-13 09:00:20 +02:00
Alexandre Detiste
26d8a34638 debian: use dh-autoreconf 2015-05-13 08:56:30 +02:00
Alexandre Detiste
b54b3fa3f7 remove more autogenerated cruft 2015-05-13 08:55:29 +02:00
KLuka
371f061279 Project cleanup of build and demo files
* Removed autogenerated build files
* Removed autogenerated demo files
* Updated .gitignore
2015-05-12 20:02:59 +02:00
Luka Krajger
597890ed33 Merge pull request #299 from a-detiste/master
Refresh debian packaging
2015-05-12 18:18:34 +02:00
KLuka
e341a3e97c User CSS context menu settings fix
* Fixed initialization of user CSS settings from cookie. Now we the correct
  values are being read. This could be possible fix for issue #138.
* Changed generation of CSS link elements to get rid of JS deprecated
  warnings.
2015-05-12 16:46:53 +02:00
Alexandre Detiste
e59a2e32ae .gitignore 2015-05-12 14:52:15 +02:00
Alexandre Detiste
49d7515509 refresh Debian packaging
handle lintian file automatically
2015-05-12 14:45:56 +02:00
Luka Krajger
cb2c39c502 Merge pull request #298 from tickelton/fix_243
Issue #243: Cannot look up group "shellinabox" at service start
2015-05-08 16:39:10 +02:00
tickelton
5f1aaea6f1 Issue #243: Cannot look up group "shellinabox" at service start
_SC_GETGR_R_SIZE_MAX was treated as a maximum buffer size while
it should only be a proposition for an initial size.

The buffer size is now increased dynamically if the initial size
is not sufficient.
2015-05-08 09:03:16 +02:00
Luka Krajger
5372964801 Merge pull request #297 from Thubo/master
Added libtool and autoconf to build dependencies in README.md
2015-05-06 16:07:14 +02:00
Matthias Thubauville
8cfce23076 Added libtool and autoconf to build dependencies in README.md 2015-05-06 10:06:21 +02:00
Luka Krajger
170704671c Merge pull request #296 from tickelton/fix_disable-ssl
Fix build with --disable-ssl
2015-05-02 16:37:53 +02:00
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