VistA-hash/VWHSHGTM.m

19 lines
605 B
Mathematica
Raw Normal View History

2010-01-26 22:53:53 -05:00
XUSHSH ;;GpZ; - ; IMPROVED HASHING UTILITY: GT.M Version (VWHSHGTM); 01/08/2010
V ;;8.0;KERNEL;;Jul 10, 1995
;;
A S X=$$EN(X) Q
;;
EN(X,HASH) ;;
N (X,HASH)
D:'$L($G(^%ZOSF("HASHLIST"))) DEFHASH^VWHSH0
S HASHLIST=^%ZOSF("HASHLIST")
S HASH=$S('$L($G(HASH)):$P(HASHLIST,"|",1),1:$TR(HASH,"abcdefghijklmnopqrstuvwxyz- ","ABCDEFGHIJKLMNOPQRSTUVWXYZ"))
IF HASH="LEGACY" QUIT $$EN^VWHSHLEG(X)
Q:HASHLIST'[(" "_HASH_" ") X
S SED="sed -e 's/$/\r/'|"
OPEN "PIPE":(COMM=SED_"gpg --print-md "_HASH)::"PIPE"
USE "PIPE" W X,! W /EOF
F R X Q:$ZEOF S HASHOUT=$G(HASHOUT)_X
CLOSE "PIPE"
Q $TR(HASHOUT," ")