VWHSH3 ;;GpZ; - ; IMPROVED HASHING UTILITY: INSTALL MODULE, OpenM; 01/08/2010
V ;;8.0;KERNEL;;Jul 10, 1995
 ;
 QUIT
 ;
INIT() S MUMPS=^%ZOSF("OS"),OS=$$OPENM("uname -o","Linux")
 IF OS'["Linux" S OS=$$OPENM("Ver","Microsoft") DO
 . S PIPE="PATH"
 . OPEN PIPE:"Q" USE PIPE READ PATH CLOSE PIPE
 . S PATH=PATH_";C:\""Program Files""\GNU\GnuPG\"
 . F I=1:1:$L(PATH,";") Q:($P(PATH,";",I)["GnuPG")
 . S PATH=$P(PATH,";",I)
 ELSE  S PATH=$P($P($$OPENM("whereis gpg","gpg")," ",2),"gpg")
 S ZUT=$ZUTIL(68,40,1)
 S PIPE=$G(PATH)_"gpg --version"
 OPEN PIPE:"Q"
 F I=1:1:20 USE PIPE R HASHLIST QUIT:$ZEOF<0  D:HASHLIST["'gpg' is not recognized"  q:HASHLIST["Hash:"
 . S HASHLIST="Hash:gpg_not_found:gpg_HASHES_not_available"
 CLOSE PIPE
 S ZUT=$ZUTIL(68,40,ZUT)
 S HASHLIST=HASHLIST
 S HASHLIST=$TR($P(HASHLIST,"Hash:",2),",")
 S HASHLIST=HASHLIST_" ||"_PATH_"||"_MUMPS_OS_"||"
 QUIT HASHLIST
 ;
OPENM(PIPE,SEEKING) ;;
 N (PIPE,SEEKING)
 S ZUT=$ZUTIL(68,40,1)
 OPEN PIPE:"Q"
 F I=1:1:4 USE PIPE READ X Q:$ZEOF<0  Q:X[SEEKING
 CLOSE PIPE
 S ZUT=$ZUTIL(68,40,ZUT)
 QUIT X
