-- Copyright (C) 1983 by Xerox Corporation. All rights reserved. -- HostWatcherOps.mesa, HGM, 30-Oct-83 5:30:00 DIRECTORY System USING [gmtEpoch, GreenwichMeanTime], PupDefs USING [PupBuffer], PupTypes USING [fillInPupAddress, PupAddress]; HostWatcherOps: DEFINITIONS = BEGIN Mode: TYPE = {gate, chat, ftp, mail, librarian, spruce, eftp, popCorn}; State: TYPE = {inaccessible, up, restarted, full, down, rejecting, timeout, unknown}; UpDown: TYPE = {unknown, up, down}; Info: TYPE = LONG POINTER TO InfoObject; InfoObject: TYPE = RECORD [ name: LONG STRING, to, cc, full: LONG STRING, address: PupTypes.PupAddress, mode: Mode, state: State ¬ unknown, upDown: UpDown ¬ unknown, -- the last time we knew what was happening probes: LONG CARDINAL ¬ 0, counters: ARRAY State OF LONG CARDINAL ¬ ALL[0], startTime: System.GreenwichMeanTime ¬ System.gmtEpoch, lastUp: System.GreenwichMeanTime ¬ System.gmtEpoch, -- Last time we saw it up lastGateway: PupTypes.PupAddress ¬ PupTypes.fillInPupAddress, lastHops, previousHops: CARDINAL ¬ 0, noPath: BOOLEAN ¬ TRUE, lastLineChanged, lastHopUsesPhoneLine: BOOLEAN ¬ FALSE, foundLastGateway, lastGatewayOk: BOOLEAN ¬ FALSE, text: LONG STRING, next: Info]; PokeGateway: PROCEDURE [info: Info]; PokeChat: PROCEDURE [info: Info]; PokeFtp: PROCEDURE [info: Info]; PokeMail: PROCEDURE [info: Info]; PokeLibrarian: PROCEDURE [info: Info]; PokeSpruce: PROCEDURE [info: Info]; PokeEftp: PROCEDURE [info: Info]; PokePopCorn: PROCEDURE [info: Info]; ShowErrorPup: PUBLIC PROCEDURE [b: PupDefs.PupBuffer]; END.