<> <> <> <> <> <> <> <<>> DIRECTORY Arpa USING [Address], ArpaIP USING [Buffers], ArpaTCPOps USING [ConnectionState, TCPHandle], IO USING [STREAM], Rope USING [ROPE]; ArpaTCPLogging: CEDAR DEFINITIONS ~ BEGIN Direction: TYPE ~ {fromNet, toNet, rexmitToNet}; pktFile, logFile: IO.STREAM; -- make non-NIL to enable logging addrToWatch: Arpa.Address; -- Address to watch. Arpa.nullAddress will disable logging, [255,255,255,255] to watch all. PrintTCPPacket: PROC [handle: ArpaTCPOps.TCPHandle, data: ArpaIP.Buffers, dir: Direction]; <> <> <> <> <> <> <> <> < Destination Address and Port>> PrintStateChange: PROC [handle: ArpaTCPOps.TCPHandle, newState: ArpaTCPOps.ConnectionState]; <> PrintMessage: PROC [r: Rope.ROPE]; PrintMessageWithSrc: PROC [r: Rope.ROPE, sourceAddr: Arpa.Address]; END.