From 4328a7dd0badd93c60f736e301e187fb6b1d9b4b Mon Sep 17 00:00:00 2001 From: Mike Makonnen Date: Sun, 6 Jun 2004 17:55:55 +0000 Subject: Accept full path names in addition to base names for shells. Make explicit in the documentation that valid shells need to be supplied only if the -S option is not given. --- adduser/adduser.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'adduser/adduser.sh') diff --git a/adduser/adduser.sh b/adduser/adduser.sh index c04463d..7e21cb5 100644 --- a/adduser/adduser.sh +++ b/adduser/adduser.sh @@ -118,7 +118,8 @@ valid_shells() { } # fullpath_from_shell shell -# Given $shell, the basename component of a valid shell, get the +# Given $shell, which is either the full path to a shell or +# the basename component of a valid shell, get the # full path to the shell from the /etc/shells file. # fullpath_from_shell() { @@ -131,7 +132,8 @@ fullpath_from_shell() { \#*|'') ;; *) - if [ "`basename $_path`" = "$_shell" ]; then + if [ "$_path" = "$_shell" -o \ + "`basename $_path`" = "$_shell" ]; then echo $_path return 0 fi @@ -372,7 +374,7 @@ get_gecos() { # get_shell # Get the account's shell. Works in interactive and batch mode. It -# accepts only the base name of the shell, NOT the full path. +# accepts either the base name of the shell or the full path. # If an invalid shell is entered it will simply use the default shell. # get_shell() { -- cgit v1.2.3-56-ge451