Commit graph

38 commits

Author SHA1 Message Date
zodiac@gmail.com
c5d55118af Removed non-standard fields from updwtmpx() wrapper function. This should improve
compatibility with systems that implement updwtmp() but not updwtmpx().

Also, changed Makefile rules in an attempt to improve compatibility with BSD
make utilities.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@208 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2010-07-09 15:48:51 +00:00
zodiac@gmail.com
83621919cd Added support for systems that have utmpx.h, but don't implement updwtmpx().
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@207 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2010-07-08 17:54:15 +00:00
zodiac@gmail.com
9b0a937e35 Started working on support for WebSockets.
Fixed some compiler warnings when compiling with -Wextra

Thanks to Jan Jaeger's excellent bug report, made some changes
that should make it easier to build ShellInABox for OpenWRT.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@202 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2010-03-29 16:40:17 +00:00
zodiac@gmail.com
5a75b2f091 Avoid compiler warnings with some versions of GCC.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@201 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2010-02-04 00:33:37 +00:00
zodiac@gmail.com
0fcf50735e Allow retrieval of the user's default login shell from /etc/passwd.
Allow the code to be built without support for the LOGIN service, as
calling /bin/login does not work well on Fedora.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@198 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-12-04 06:33:36 +00:00
zodiac@gmail.com
fe5a28f992 Some minor tweaks to make newer versions of gcc and glibc compile without warnings.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@181 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-11-18 17:17:56 +00:00
zodiac
e8ef411627 Escape potentially problematic characters in ${url}
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@179 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-08-24 02:19:43 +00:00
zodiac
9b8e3af162 Added a ${url} parameter that can be used in the service description
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@174 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-08-19 19:08:30 +00:00
zodiac
341eb1982c Included example style sheets that allow switching to white-on-black or to
monochrome mode from the right click context menu. This required a couple of
architectural changes to the JavaScript code.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@167 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-08-12 02:32:26 +00:00
zodiac
e78b94961c Sanitize the SSH command line a little more.
Show the real host name in the SSH password prompt, if available.
Add some commented-out debugging helpers for tracking down problems with non-US keyboards. 


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@164 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-08-09 19:08:40 +00:00
zodiac
e35cf266da - Added the --css command line option to make incremental changes to the style sheet without having to load a full replacement with the --static-file option. Added an example that enables white text on a black background.
- Added Debian specific documentation to the manual page.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@158 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-07-30 17:40:54 +00:00
zodiac@gmail.com
0a834e6488 Allow unprivileged users to run the daemon. This requires calling "ssh" instead of "login".
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@154 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-07-29 18:30:03 +00:00
zodiac
ca18a5346f Run-time testing for availability of libpthread functions does not
work reliably on some platforms. So, avoid doing so on anything other
than Linux/i386. For all other platforms, assume that the code is not
linked against libpthread. For ShellInABox, this is always the correct
assumption. But if the code gets embedded into other projects, this
might have to be changed.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@141 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-07-07 00:40:51 +00:00
zodiac@gmail.com
adadddf91c Released version 2.8
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@121 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-05-23 19:53:09 +00:00
zodiac
41fd8f3ea5 Fixed various issues with building on OpenBSD
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@119 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-05-21 07:50:22 +00:00
zodiac
abb9a50f3b Fixed variable expansion in service descriptions.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@118 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-04-28 07:12:55 +00:00
zodiac
3bacdb002b - Make the code actually do, what the comments say (i.e. skip PAM account
management, if we don't have the privileges to do so, anyway)
- Make ssl.h compile again, even if OpenSSL is not found at compile time.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@115 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-04-16 20:54:08 +00:00
zodiac
0258d46926 - Add support for commands that want to read before they write anything.
- A couple of changes to avoid false error messages in valgrind.
- Fixed a bug that could potentially lead to a double-free()


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@114 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-04-16 05:33:05 +00:00
zodiac
3e0241dde3 Added initial revision of demo application
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@93 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-03-30 08:41:48 +00:00
zodiac
97fff401a3 Fixed IE6 support, and fixed possible memory corruption, when sessions
time out.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@77 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-03-17 17:51:42 +00:00
zodiac
85ae25cdf5 Fixed some compiler warnings that newer versions of GCC issue.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@75 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-03-16 15:08:11 +00:00
zodiac
2d4768183b Better error reporting if forkpty() fails.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@74 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-28 07:57:46 +00:00
zodiac
b0341e1549 Added fallback on old-style pty's, if /dev/pts is not mounted.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@73 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-28 05:34:21 +00:00
zodiac
11cda91356 Remove the dependency on fdopendir, which does not exist everywhere.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@71 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-28 02:45:18 +00:00
zodiac
84dcc33650 Allow "configure" to explicitly disable OpenSSL and PAM support. Also, allow
OpenSSL and PAM libraries to be optionally linked as regular shared libraries
instead of being searched for and loaded at run-time.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@65 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-17 04:13:47 +00:00
zodiac
530182d15e Only defined binary conversation support, if actually available.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@64 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-17 00:59:34 +00:00
zodiac
cc8979092c Fixed FreeBSD support. We now find both /bin/login and /usr/bin/login. We
provide our own conversation function, if PAM misc is not available. We
rely on login_tty to set up the terminal for us. And we avoid a few other
API uses that turned out to be Linux specific extensions.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@63 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-17 00:51:41 +00:00
zodiac
1e27276feb Use a config.h file, instead of passing configuration options on the compiler's
command line.

Fix fatal compilation warning when building without SSL support.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@59 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-11 23:25:15 +00:00
zodiac
75c09f9f83 Make code a little more portable. In particular, fix sed scripts.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@56 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-02 21:42:33 +00:00
zodiac
90d9d492b7 Added better compatibility with different versions of compilers and libaries.
In particular, work around a problem with gcc complaining about NULL format
strings. And added additional system header files that might be required on
some platforms.

This should fix some of the problems reported when compiling on BSD-style
systems. But we are still using SysV style session management code. This
probably needs to be rewritten before ShellInABox can be run on BSD-style
system.

In particular, we rely on grantpt(), we use the utmpx API, and we access
/dev/urandom.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@55 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-02-02 00:55:15 +00:00
zodiac
e40a555cbf Allow SSL certificate and key to be passed in through a file handle.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@46 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-01-17 03:37:20 +00:00
zodiac
537d83a5b1 - Released version 2.1
- Fixed a few more build issues.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@36 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-01-12 18:59:06 +00:00
zodiac
48a3768baa Found a work-around for gcc warning about type-punning.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@29 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-01-05 20:42:07 +00:00
zodiac
046a9305c9 Updated copyright notice.
git-svn-id: https://shellinabox.googlecode.com/svn/trunk@25 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-01-02 06:09:13 +00:00
zodiac
8dc6ebbfa6 Negotiate session keys early, allowing web servers to perform authentication
when operating in CGI mode.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@24 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-01-01 23:16:32 +00:00
zodiac
60d6d8433a Fix a bug that could result in orphaned sessions if a browser just navigated
away from the page and never returned.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@23 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-01-01 18:17:44 +00:00
zodiac
35aa1a7881 - Tightened setuid operation to not allow any user or group changes.
- Added support for --cgi mode.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@22 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2009-01-01 05:53:04 +00:00
zodiac
aab20f5ed0 First public release of the version 2.0 rewrite. This is the
first release of ShellInABox that supports an AJAX interface
instead of the original Java applet.


git-svn-id: https://shellinabox.googlecode.com/svn/trunk@2 0da03de8-d603-11dd-86c2-0f8696b7b6f9
2008-12-29 23:57:07 +00:00