[ Note: As mentionned to me recently, you should rather
use
http://monkey.org/~dugsong/openbsd/stsh-1.0.tar.gz ]
Here is a modified version of the
stsh
systraced shell.
Trying to setup a systraced CVS server, I ran into troubles with the
following error:
$ cvs co src
/bin/ksh: <stdin>[1]: Root: not found
/bin/ksh: <stdin>[2]: Valid-responses: not found
/bin/ksh: <stdin>[3]: valid-requests: not found
^Ccvs [checkout aborted]: received interrupt signal
Killed by signal 2.
Exit 1
The
stsh
version from Jose works very well but is only capable to handle full
login sessions. It is not what CVS uses when CVS_RSH is set to
'rsh' or preferably to 'ssh'.
I tried to add this feature to stsh. Here is what I get:
stsh-0.4.taz. It has
been successfully tested on OpenBSD and NetBSD-3.x.
This archive also includes an OpenBSD usr_bin_cvs systrace policy and a
NetBSD usr_bin_cvs one. These policies
are based on my needs.
If you write an improved version of this policy, please send it to
me. Thanks.
Documentation:
The installation process is exactly the same than the one explained
on the Jose's page. Read
it!
Exceptions go to these 2 make's variables:
- make -D WITH_USER_POLICIES
- compile stsh to use user-configured policies.
It is required if you manage to setup multiple CVSROOT (CVS trees)
with dedicated users. Take care of user's homes and all related
file permissions.
- make -D DEBUG_SYSLOG
- compile stsh in debugging mode. Extra informations are
sent to syslogd using the 'LOG_NOTICE' priority.
(You can generaly see these debug messages into
/var/log/messages.)