# $Id: faxsetup.linux,v 1.1.1.1 2005/11/11 21:32:02 faxguy Exp $ # # HylaFAX Facsimile Software # # Copyright (c) 1995-1996 Sam Leffler # Copyright (c) 1995-1996 Silicon Graphics, Inc. # HylaFAX is a trademark of Silicon Graphics # # Permission to use, copy, modify, distribute, and sell this software and # its documentation for any purpose is hereby granted without fee, provided # that (i) the above copyright notices and this permission notice appear in # all copies of the software and related documentation, and (ii) the names of # Sam Leffler and Silicon Graphics may not be used in any advertising or # publicity relating to the software without the specific, prior written # permission of Sam Leffler and Silicon Graphics. # # THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, # EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY # WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. # # IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR # ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, # OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, # WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF # LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE # OF THIS SOFTWARE. # # # Linux-specific definitions for faxsetup. # addPasswd() { # We're probably creating a user with the same uid as another, # so we need to use 'useradd -o' if available. Also, some # useradds copy a number of "dot" files when creating the home # directory, so if available, '-M' prevents that, and if it is # an invalid option, then simply not using '-m' will usually # do the trick. We have to watch the exit status of this script, # so, the last command run should have somthing to do with the valid # creation of the "fax" user. if [ -z "`useradd 2>&1 | grep -- -o`" ]; then # useradd does *not* support the -o option useradd -c 'Facsimile Agent' -d $4 -s /bin/false $1; usermod -u $2 -o -g $3 $1; elif [ -z "`useradd -M 2>&1 | grep -E 'invalid|illegal'`" ]; then # useradd supports the -M option useradd -M -c 'Facsimile Agent' -d $4 -u $2 -o -g $3 -s /bin/false $1; else # useradd does *not* support the -M option useradd -c 'Facsimile Agent' -d $4 -u $2 -o -g $3 -s /bin/false $1; fi } deletePasswd() { userdel -r $1 } lockPasswd() { return 0 } modifyPasswd() { usermod -d $4 -m -u $2 -o -g $3 $1 # NB: we must do it twice to keep Linux happy if the # home directory allready exists usermod -d $4 -m -u $2 -o -g $3 $1 }