This is fiddlepass.sh in view mode; [Download] [Up]
#!/bin/sh # # AUTHOR: Timothy J. Luoma <luomat@nerc.com> # # VERSION: 1.1.0 (second public) # # DATE: 18 Oct 1996 # # WARNING: USE ENTIRELY AT YOUR OWN RISK # (see the end of document for more) # # PURPOSE: Remove and replace password from NetInfo # # TESTED UNDER: NeXTStep 3.2 on my NeXTStation # # USAGE NOTES: # fiddlepass on|off|confirm # # CHANGES: This version is the same as 1.0.0 except that it adds # a check to see if there is a password for your account # 'fiddlepass.sh confirm' will tell you whether or not # your password exists. # # # LEGALIA: # This program is released into the public domain and may # be used by anyone as long as they keep my name attached to it # and do not charge any money for it over and above the cost # of any media cost (ie the price of a CD full of NeXTstuff). # The author is released from any responsibility, liability, etc # etc etc. If you use it, then you are responsible for it. name=`basename $0` # This should be YOUR username myuser=luomat # dump the passwords but just pick out mine pass=`nidump passwd . | grep $myuser` # IMPORTANT: This should be identical to YOUR CURRENT ENTRY, just # without the password entry nopass="luomat::100:0:Timothy J. Luoma:/Users/luomat:/usr/local/bin/zsh:" # LOGIN UID GID NAME HOME LOGINSHELL # look for arguments case $1 in # Remove the Password off) # dump the other passwords, besides $myuser, into # a file nidump passwd . | grep -v $myuser > ~/.nidump.$name # send my real password to a file echo "$pass" > ~/.origpass.$name # Send the blank entry back to netinfo # Without this you will cease to have # an account! echo "$nopass" >> ~/.nidump.$name # reload the passwords asroot niload passwd . < ~/.nidump.$name ;; # Replace the password on) # dump the other passwords, besides $myuser, into # a file nidump passwd . | grep -v $myuser > ~/.nidump.$name # add my old password entry back in cat ~/.origpass.$name >> ~/.nidump.$name # reload the passwords asroot niload passwd . < ~/.nidump.$name && \ /bin/rm -f ~/.origpass.$name ;; confirm) pass=`nidump passwd . |grep $USER | \ sed "s/$USER://g" | colrm 2 1000` if [ "$pass" = ":" ] then echo "$name[$$]: No password for $USER" else echo "$name[$$]: Password found for $USER" fi exit 0 ;; *) echo "$name: Argument unknown, use either 'off' or 'on'" exit 1 ;; esac # cleanup the file, just in case /bin/rm -f ~/.nidump.$name # Restart lookupd, to make the changes known # make the changes known pid=`/bin/ps -auxwww | grep -v grep |grep lookupd | awk '{print $2}'` # restart the lookupd asroot kill -HUP $pid exit 0 # WARNINGS, INFO, ETC # # This script requires the program 'asroot' # # This script leaves your encrypted password in ~/.origpass.$name # from the time you run 'fiddlepass off' until you run 'fiddlepass # on'. Given that 1) this probably would only be a few minutes, # 2) no one else has read access to your files, and 3) the password # is still encrypted, which is how it would be if NeXT used an # /etc/passwd file, this is not a big deal, still it should be # mentioned. # # This script is designed by and intended for use by standalone # NeXTers who would like to take advantage of the auto-login feature # of the loginwindow. This is set by ROOT's dwrite: # # dwrite loginwindow DefaultUser username # # I would not use this script, nor would I suggest anyone use this # script, over a large NetInfo network. # # This is how I use the program: # # in /etc/rc.local I have: # #if [ -x /usr/local/bin/fiddlepass ]; then # (su luomat -c /usr/local/bin/fiddlepass off) >/dev/console #fi # (WITHOUT THE "#" OBVIOUSLY!!!!) # # I then use the Workspace dwrite 'Workspace LaunchPaths' to run a # script which invokes 'fiddlepass on' # # This means that when I reboot my NeXT my password will automatically # be removed until I am logged in, at which time it will be restored. # # Note: this may not work under anything other than 3.2, I don't know! # # EOF
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.