Skip to content

Instantly share code, notes, and snippets.

@tuklusan
Created February 4, 2020 04:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tuklusan/e248e1c16db0aa19992909e205bc5bbc to your computer and use it in GitHub Desktop.
Save tuklusan/e248e1c16db0aa19992909e205bc5bbc to your computer and use it in GitHub Desktop.
DECNET-TEST.COM - Check and Report on DECnet Connection Status of Nodes at SANYALnet Labs | List of Nodes: http://tuklusan.decsystem.org/
$! ---
$! AUTHOR: SUPRATIM SANYAL
$! http://tuklusan.decsystem.org
$! ---
$! My Hobbyist DECnet Nodes as of Feb 3, 2020
$! ---
$ NODELIST = "IMPVAX,PYRTR,QCOCAL,CLOUDY,JUICHI,FEDACH,FOMFOR,OSTARA,WEXPEE,ENTEE4,RAPTOR,MACOS9,WFW311,WXPEE2,TRU64,XLVII,TSTVAX,W2000S,MACOS7,RST101,TWENEX"
$ NODELIST = NODELIST + ",VAXSTN,XLIV,PIPY,XL,NANAJU,NJEVX1,NJEVX2,SHAKTI,IBM390,MOKSHA,PYDNET,IMPRTR"
$ OUTPUT_TXT="sys$scratch:sanyalnet-labs-decnet-node-status.txt"
$!
$ SET PROC/PRIV=ALL
$ SET NOON
$ NCP="MCR NCP"
$!
$ OPEN/WRITE/ERROR=ERR_EXIT fd_outputtxt 'OUTPUT_TXT'_TMP
$!
$ NEXT = 0
$ LOOP:
$ NODE = F$ELEMENT(NEXT,",",NODELIST)
$ IF (NODE .NES. ",")
$ THEN
$ WRITE SYS$OUTPUT "***"
$ WRITE SYS$OUTPUT "*** CHECKING ''NODE' ... PLEASE WAIT ..."
$ WRITE SYS$OUTPUT "***"
$ ! TRY A LOOP; IF RESULT IS ANYTHING EXCEPT "%SYSTEM-F-UNREACHABLE" ASSUME NODE IS REACHABLE
$ PIPE (NCP LOOP NODE 'NODE') | SEARCH SYS$INPUT "%SYSTEM-F-UNREACHABLE"
$ NCPSTAT=$STATUS ! SEARCH RESULT: %X10000001 = SUCCESS, %X18D78053 = FAILED
$ IF NCPSTAT .EQ. %X10000001 ! NODE IS UNREACHABLE
$ THEN
$ WRITE/ERROR=ERR_EXIT fd_outputtxt "''NODE' - ** UNREACHABLE **"
$ ELSE ! IS REACHABLE
$ WRITE/ERROR=ERR_EXIT fd_outputtxt "''NODE' - reachable"
$ ENDIF
$ NEXT = NEXT + 1
$ GOTO LOOP
$ ENDIF
$ CLOSE fd_outputtxt
$ RENAME /NOCONFIRM /LOG 'OUTPUT_TXT'_TMP 'OUTPUT_TXT'
$ PURGE /NOCONF 'OUTPUT_TXT'
$ TYPE/PAGE NLA0: ! CLS
$ TYPE 'OUTPUT_TXT'
$ EXIT
$!
$ ERR_EXIT:
$ CLOSE fd_outputtxt
$ EXIT
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment