(FILECREATED "22-Apr-86 11:16:24" {DSK}<LISPFILES>MATT>IDLERPATCH.;5 3497
changes to: (FNS \IDLE.LOAD.NAMES.PWDS \IDLE.SAVE.NAMES.PWDS \IDLE.EDIT.NAMES.PWDS \IDLE.AUTHENTICATE)
(FILEVARS IDLERPATCHCOMS)
(VARS IDLERPATCHCOMS \NAME.PWD.ALIST)
previous date: "21-Apr-86 11:18:53" {DSK}<LISPFILES>MATT>IDLERPATCH.;1)
(* Copyright (c) 1986 by Matt Heffron. All rights reserved.)
(PRETTYCOMPRINT IDLERPATCHCOMS)
(RPAQQ IDLERPATCHCOMS ((FNS \IDLE.AUTHENTICATE \IDLE.EDIT.NAMES.PWDS \IDLE.LOAD.NAMES.PWDS \IDLE.SAVE.NAMES.PWDS)
(P (\IDLE.LOAD.NAMES.PWDS))
(GLOBALVARS \NAME.PWD.ALIST)))
(DEFINEQ
(\IDLE.AUTHENTICATE
[LAMBDA (NAME PWD TYPE IFALLDOWN) (* mth: "21-Apr-86 17:45")
(if (STRING-EQUAL (\ENCRYPT.PWD PWD)
(CDR (SASSOC NAME \NAME.PWD.ALIST)))
then T
else (PROMPTPRINT "?Incorrect password")
NIL])
(\IDLE.EDIT.NAMES.PWDS
[LAMBDA NIL (* mth: "22-Apr-86 11:14")
(DECLARE (LOCALVARS . T)
(SPECVARS CURNAME))
(LET ((CURNAME (USERNAME))
(OSTREAM (GETSTREAM NIL (QUOTE OUTPUT)))
UNAME PWD ENTRY)
(while (SETQ UNAME (U-CASE (PROMPTFORWORD "Username:" CURNAME
[FUNCTION (LAMBDA NIL
(DECLARE (USEDFREE CURNAME))
(CONS CURNAME (REMOVE CURNAME
(MAPCAR
\NAME.PWD.ALIST
(FUNCTION CAR]
OSTREAM)))
do [SETQ PWD (U-CASE (PROMPTFORWORD " (password)" NIL NIL OSTREAM (QUOTE *]
(TERPRI OSTREAM)
(if [EQUAL PWD (U-CASE (PROMPTFORWORD (CONCAT "Retype password for " UNAME ":")
NIL NIL OSTREAM (QUOTE *]
then [if (SETQ ENTRY (SASSOC UNAME \NAME.PWD.ALIST))
then (RPLACD ENTRY (\ENCRYPT.PWD PWD))
else (push \NAME.PWD.ALIST (CONS UNAME (\ENCRYPT.PWD PWD]
else (printout OSTREAM T "?Not confirmed"))
(TERPRI OSTREAM])
(\IDLE.LOAD.NAMES.PWDS
[LAMBDA NIL (* mth: "22-Apr-86 10:43")
(LET ((FILE (QUOTE NAMES-PWDS.ALIST)))
[if (INFILEP FILE)
then (SETQ FILE (OPENSTREAM FILE (QUOTE INPUT)))
elseif (SETQ FILE (FINDFILE FILE))
then (SETQ FILE (OPENSTREAM FILE (QUOTE INPUT]
(SETQ \NAME.PWD.ALIST (if FILE
then (READ FILE)
else NIL))
(CLOSEF FILE])
(\IDLE.SAVE.NAMES.PWDS
[LAMBDA NIL (* mth: "22-Apr-86 10:45")
(LET ((FILE (QUOTE NAMES-PWDS.ALIST)))
[if (INFILEP FILE)
then (SETQ FILE (OPENSTREAM FILE (QUOTE OUTPUT)))
elseif (SETQ FILE (FINDFILE FILE))
then (SETQ FILE (OPENSTREAM FILE (QUOTE OUTPUT)))
else (SETQ FILE (OPENSTREAM (QUOTE NAMES-PWDS.ALIST)
(QUOTE OUTPUT]
(PRINT (AND (BOUNDP (QUOTE \NAME.PWD.ALIST))
\NAME.PWD.ALIST)
FILE)
(CLOSEF FILE])
)
(\IDLE.LOAD.NAMES.PWDS)
(DECLARE: DOEVAL@COMPILE DONTCOPY
(GLOBALVARS \NAME.PWD.ALIST)
)
(PUTPROPS IDLERPATCH COPYRIGHT ("Matt Heffron" 1986))
(DECLARE: DONTCOPY
(FILEMAP (NIL (629 3331 (\IDLE.AUTHENTICATE 639 . 947) (\IDLE.EDIT.NAMES.PWDS 949 . 2152) (\IDLE.LOAD.NAMES.PWDS 2154 .
2689) (\IDLE.SAVE.NAMES.PWDS 2691 . 3329)))))
STOP