/* NetWorking Utilities */

options results ; signal on SYNTAX ; signal on ERROR ; signal on IOERR
tr=transmit ; se=sendstring ; gc=getchar ; gu=getuser ; gs=getscratch

NETUTILS:
    tr 'n1r1  CNet Amiga FIDO-Net Utilities  r0n1'
    tr '1. Net Logs'
    tr '2. Get Node Info'
    tr '3. List Net Names'
    tr '4. List  Accounting'
    tr '5. Clear Accountingn1'
    tr 'Q. Quit Net Utilsn1'
    se 'Net> ' ; gc ; a=result
    if a<1 | a>5 then do ; tr 'Quit' ; exit ; end
    if a=1 then signal NETLOGS
    if a=2 then signal GETNODE
    if a=3 then signal ENETNUM
    if a=4 then signal LISTACCT
    if a=5 then signal CLEARACCT

NETLOGS:
    se 'Net Logsn1#0pfiles:fido/NetLogViewer}'
  signal NETUTILS

GETNODE:
    se 'Get Noden2c6GetNode Addressc9:cai16512 20}n1'
    getuser 70 ; arg=result ; se 'ce#4fido:GetNode 'arg'}'
  signal NETUTILS

ENETNUM:
    se 'List Netn2c6ENumNet Addressc9:cai16512 20}n1'
    getuser 70 ; arg=result ; se 'ce#4fido:ENumNet 'arg'}'
  signal NETUTILS

LISTACCT:
    se 'List Accountingn2ce#4fido:ListAcct}'
  signal NETUTILS

CLEARACCT:
    se 'Clear Accountingn2c6Node to Clearc9:cai16512 20}n1'
    getuser 70 ; arg=result
    if arg='' then do ; se 'c6Clear cbALL c6Nodes? c7[caYesc7]c6: ca'
        gc ; a=result ; if a='N' then do ; tr 'No.' ; signal NETUTILS ; end
        arg='ALL' ; tr 'Yes!ce#4fido:ClearAcct 'arg'}n1' ; end
  signal LISTACCT

exit

SYNTAX: ; ERROR: ; IOERR:
    tr 'n2ce*** c9BOOM ce*** c9Error Detectedce!' ; tr 'c6ERc9:cb'rc' c6(ca'errortext(rc)'c6) @ cf'sigl
    tr 'cdSysop has been notified...' ; logentry 'ER:'rc' ('errortext(rc)') @ 'sigl
    logentry 'while using NetWork Utils' ; bufferflush
  exit

/*                        < END OF FILE MARKER >                         */
