Annotation of 43BSD/usr.bin/uucp/vms/uucico.com, revision 1.1.1.1

1.1       root        1: $ !
                      2: $ ! Deal with requests for UUCICO
                      3: $ !
                      4: $ set noon
                      5: $ set proc/prio=4
                      6: $ set prot=w:re/default
                      7: $ assign nla0: sys$print       ! Keep those log file coming in 
                      8: $ !
                      9: $ ! Define Key Parameters & commands
                     10: $ !
                     11: $ UUCICO_DIR = "e$disk:[eunice.usr.lib.uucp]"
                     12: $ UUCICO_RESUBMIT_PERIOD = "+3:00:00"
                     13: $ UUCICO_QUEUE = "SYS$SPECIAL"
                     14: $ uucico:==$'UUCICO_DIR'uucico uucico
                     15: $ status = 1
                     16: $ !drain:==$e$disk:[eunice.usr.lib.uucp]drain drain
                     17: $ !
                     18: $ on error then $ goto error_mail      ! If there is a problem go tell the Boss
                     19: $ !
                     20: $ ! Delete JOBID file (means JOB running)
                     21: $ delete 'UUCICO_DIR'uucico.jid;*
                     22: $ oncethrough = 0
                     23: $ Old_UUCICO_Command := "NEVER LIKELY TO BE IDENTICAL"
                     24: $!
                     25: $! Main loop.  Get command file arguments and execute UUCICO.
                     26: $!
                     27: $ANOTHER_CMD_FILE:
                     28: $ UUCICO_CMD_FILE = F$SEARCH(UUCICO_DIR + "uucico.dat;*")
                     29: $ open/read/error=NO_COMMAND_FILE cmd_file 'UUCICO_DIR'uucico.dat
                     30: $ read cmd_file UUCICO_Command /end=EMPTY_COMMAND_FILE
                     31: $EMPTY_COMMAND_FILE:
                     32: $ close cmd_file
                     33: $ delete 'UUCICO_CMD_FILE'     ! Delete the UUCICO command file just read
                     34: $ goto RUN_CICO
                     35: $!
                     36: $NO_COMMAND_FILE:
                     37: $ if oncethrough .eq. 1 then $ goto RESUBMIT
                     38: $ UUCICO_Command:="-r1"                ! Default command = "look for work" (Once only)
                     39: $!
                     40: $RUN_CICO:
                     41: $ if Old_UUCICO_Command .eqs. UUCICO_Command then $ goto ANOTHER_CMD_FILE
                     42: $ ! allocate dedicated lines
                     43: $ !alloc ttd0:
                     44: $ uucico 'UUCICO_Command'              !Run UUCICO
                     45: $ status = $status
                     46: $ ! Clear up terminal lines
                     47: $ !drain ttd0:
                     48: $ oncethrough = 1
                     49: $ Old_UUCICO_Command = UUCICO_Command
                     50: $ goto ANOTHER_CMD_FILE
                     51: $!
                     52: $error_mail:
                     53: $ set noon     ! Push through regardless...
                     54: $ count = 0
                     55: $ status = $STATUS
                     56: $ subject = ""
                     57: $mail_error:
                     58: $ subject = subject + F$LOG("SYS$NODE")
                     59: $ subject = subject + "UUCICO error: " + F$STRING(STATUS)
                     60: $ subject = subject + " = " 
                     61: $ subject = subject + F$MESSAGE(STATUS)
                     62: $ subject = subject + " " + UUCICO_COMMAND
                     63: $ dis_list = UUCICO_DIR + "Disaster.DIS"
                     64: $ dis_list = F$PARSE(dis_list)
                     65: $ if dis_list .eqs. "" then $ dis_list = "SYSTEM"
                     66: $ dis_list = F$SEARCH(dis_list)
                     67: $ if dis_list .eqs. "" then $ dis_list = "SYSTEM"
                     68: $ if F$LOCATE(".DIS",dis_list) .lt. F$Length(dis_list) then -
                     69:        $ dis_list = "@" + dis_list
                     70: $ MAIL NL: "''DIS_LIST'" /Subject="''subject'"
                     71: $ if .not. $status then $ MAIL nl: SYSTEM -
                     72:        /subject="UUCICO error mailing error ''STATUS' / ''$status'"
                     73: $ !
                     74: $RESUBMIT:
                     75: $ if status then $ purge sys$login:uucico.log/keep=2
                     76: $ ! Submit the job again later (Delta = defined above)
                     77: $ assign 'UUCICO_DIR'uucico.jid sys$output
                     78: $ submit 'UUCICO_DIR'uucico -
                     79:        /after="''UUCICO_RESUBMIT_PERIOD'" -
                     80:        /queue='UUCICO_QUEUE' /keep/noprint
                     81: $ status = $status
                     82: $ deassign sys$output
                     83: $ !
                     84: $ if status then $ exit
                     85: $ if "''count'" .eqs. "" then $ count = 0
                     86: $ if count .gt. 3 then $ exit
                     87: $ count = count + 1
                     88: $ subject = "Requeue Error:"
                     89: $ goto mail_error
                     90: $ exit

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.