Performing substitutions during post-patch breaks tools such as mkpatches,
making it very difficult to regenerate correct patches after making changes,
and often leading to substituted string replacements being committed.
Existing SHA1 digests verified, all found to be the same on the
machine holding the existing distfiles (morden). Existing SHA1
digests retained for now as an audit trail.
Upstream changes:
-----------------
=== v0.9.16 14/08/2013 ===
* Added support to login script. Thank you Laurent Debacker for the patch.
* Fixed auto-complete failing with "-"
* Fixed bug where forbidden commands still execute if strict=1
* Fixed auto-completion complete of forbidden paths
* Fixed wrong parsing &, | or ; characters
* Added urandom function definition for python 2.3 compat
* Corrected env variable expansion
* Add support for cd command in aliases
* Split lshellmodule in multiple files under the lshell directory
* Fixed check_secure function to ignore quoted text
* Fixed multiple spaces escaping forbidden filtering
* Fixed log file permissions 644 -> 600
* Added possibility to override config file option via command-line
* Enabled job control when executing command
* Code cleanup
=== v0.9.15.2 08/05/2012 ===
* Corrected mismatch in aliaskey variable.
Security fix.
=== v0.9.15.1 15/03/2012 ===
* Corrected security bug allowing user to get out of the restricted
shell. Thank you bui from NBS System for reporting this grave issue!
=== v0.9.15 13/03/2012 ===
* Set the hostname to the "short hostname" in the prompt.
* Corrected traceback when "sudo" command was entered alone. Thank you
Kiran Reddy for reporting this.
* Added support for python2.3 as subprocess is not included by default.
* Corrected the 'strict' behavior when entering a forbidden path.
* Added short path promp support using the 'prompt_short' variable.
* Corrected stacktrace when group did not exist.
* Add support for empty prompt.
* Fixed bugs when using $() and ``.
* Corrected strict behavior to apply to forbidden path.
* Added support for wildcard '*' when using 'cd'.
* Added support for "cd -" to return to previous directory.
* Updated security issue with non printable characters permitting user
to get out of the limited shell.
* Now lshell automatically reload its configuration if the configuration
file is modified.
* Added possibility to have no "intro" when user logs in. (by setting
the intro configuration field to "")
* Corrected multiple commands over ssh, and aliases interpretation.
* Added possibility to use wildcards in path definitions.
* Finally corrected the alias replacement loop.
Upstream changes:
=== v0.9.14 27/10/2010 ===
* Corrected get_aliases function, as it was looping when aliases were
"recursive" (e.g. 'ls':'ls --color=auto')
* Added lsudo built-in command to list allowed sudo commands.
* Corrected completion function when 2 strings collided (e.g. ls and lsudo)
* Corrected the README's installation part (adding --prefix).
* Added possibility to log via syslog.
* Corrected warning counter (was counting minus 1).
* Added the possibility to disable the counter, and just warn the user
(withouht kicking him).
* Added possibility to configure prompt. Thank you bapt for the patch.
* Added possibility to set environment variables to users. Thank you bapt
for the patch.
* Added the 'history' built-in function.
=== v0.9.13 02/09/2010 ===
* Switched from deprecated popen2 to subprocess to be python2.6 compatible.
Thank you Greg Orlowski for the patch.
* Added missing builin commands when 'allowed' list was set to 'all'. For
example, the "cd" command was then missing.
* Added the "export" builtin function to export shell variables. Thank you
Chris for reporting this issue.
pkgsrc changes:
- Add license
Upstream changes:
=== v0.9.12 04/05/2010 ===
* A minor bug was inserted in version 0.9.11 with the sudo command.
It has been corrected in this version.
=== v0.9.11 27/04/2010 ===
* Corrects traceback when executing a command that had a python homonym
(e.g. "print foo" or "set"). (Closes: SF#2969631)
* Corrected completion error when using "~/". Thanks to Piotr Minkina for
reporting this.
* Corrected the get_aliases function.
* Corrected interpretation of ~user. Thank you Adrien Urban for reporting
this.
* The 'home_path' variable is being deprecated from this version and on.
Please use your system's tools to set a user's home directory.
It will be completely removed in the next version of lshell.
* Corrected shell variable and wildcards expansions when checking a command.
Thank you Adrien Urban for reporting this.
* Added possibility to allow/forbid scp upload/download using scp_upload
and scp_download variables.
* Corrected bug when using the "command=" in openSSH's authorized_keys.
lshell now takes into account the SSH_ORIGINAL_COMMAND environment
variable. Thank you Jason Heiss for reporting this.
* Corrected traceback when aliases is not defined in configuration, and
command is sent over SSH. Thank you Jason Heiss for reporting this.
0.9.10
. Corrected minor bug in the aliases function that appeared in the
previous version. Thank you Piotr Minkina for reporting this.
0.9.9
. Added the possibility to configure introduction prompt.
. Replaced "joker" by "warnings" (more elegant)
. Possibility of limiting the history file size.
. Added lpath built-in command to list allowed and denied path.
Thanks to Adrien Urban.
. Corrected bug when using "~" was not parsed as "home directory" when
used in a command other than "cd". Thank you Adrien Urban finding
this.
. Corrected minor typo when warning for a forbidden path.
. If $(foo) is present in the line, check if foo is allowed before
executing the line. Thank you Adrien Urban for pointing this out!
. Added the possibility to list commands allowed to be executed using
sudo.
The new configuration field is sudo_commands.
. Added the clear(1) command as a built-in command.
. Added '$(' and '${' in the forbidden list by default in the
configuration
file.
. Now check the content of curly braces withariables '${}'. Thank you
Adrien Urban for reporting this.
. Added possibility to set history file name using history_file in the
configuration file.
. Corrected the bug when using '|', '&' or ';' over ssh. Over ssh
forbidden
characters refers now to the list provided in the "forbidden" field.
Thank you Jools Wills for reporting this!
. It now possible to use "&&" and "||" even if "&" and/or "|" are in the
forbidden list. In order to forbid them too, you must add them
explicitely in the forbidden list. Thank you Adrien Urban for this
suggestion.
. Fixed aliases bug that replaced part of commands rendering them
unusable.
e.g. aliasei:vim replaced the view command by vimew.
. Added a logrotate file for lshell log files.
. Corrected parsing of commands overssh to be checked by the same
function
used by the lshell CLI.
Thank you Adrien Urban for you security audit and excellent ideas!
0.9.8
. Major bug fix. lshell did not launch on python 2.4 and 2.5
(https://sourceforge.net/projects/lshell/forums/forum/778301/topic/347
4668)
. Added aliases for commands over SSH.
0.9.7
. Cleaned up the Python code
. Corrected crash when directory permission denied
(Closes: https://sourceforge.net/tracker/?func=detail&aid=2875374&grou
p_id=215792&atid=1035093)
. Added possibility to set the home_path option using the '%u' flag.
(e.g. '/var/chroot/%u' where '%u' will be replaced by the user's
username)
. Now replaces "~" by user's home directory.
0.9.6
. Major security fix. User had access to all files located in forbidden
directories
(Closes: https://sourceforge.net/tracker/?func=detail&aid=2838542&grou
p_id=215792&atid=1035093)
. Corrects RPM generation bug
(Closes: https://sourceforge.net/tracker/index.php?func=detail&aid=283
8283&group_id=215792&atid=1035093)
. lshell exits gracefully when user home directory doesn't exist
0.9.5
. Minor release
. Changed lshell's group from lshellg to lshell (this should not have
an impact on older installations)
. Minor typo correction in the lshell.py code
0.9.4
. Log file name is now configurable using 'logfilename' variable
inside the configuration file
. Corrected aliases in lshell.conf to work with *BSD
0.9.3
. corrected major bug (alias related)
0.9.2
. added Force SCP directory feature
. added command alias feature
0.9.1
. loglevel can now be defined on global, group or user level
. corrected sftp support (broken since in 0.9.0)
0.9.0
. version jump to 0.9.0
. corrected bug in case PATH does not exist and allowed set to 'all'
. added support for UNIX groups in configuration file
. corrected major security bug
. corrected path completion
. added escape code handling
. added flexible +/- possibilities in configuration file
. now supports completion after '|', ';' and '&'
. Command test are also done after '|', ';' and '&'
. Doesn't list hidden directories by default
. 4 logging levels
. added 'strict' behaviour
quite simply using a configuration file. It becomes easy to restrict user's
access to a limited set of commands, chosing to allow any command over SSH
(e.g. SCP,SFTP,rsync,etc.).
OK'd by seb@