<> <> <> <<>> <> <<>> DIRECTORY XNS USING [Address, Net]; XNSRouter: CEDAR DEFINITIONS ~ { <> maxHops: NAT ~ 15; unreachable: NAT ~ maxHops+1; <> <<>> Hops: TYPE ~ [0..maxHops+1]; RoutingTableEntry: TYPE ~ RECORD [ hops: Hops, -- 0 => directly connected immediate: XNS.Address, -- socket is null time: CARDINAL ]; <<>> GetHops: PROC [XNS.Net] RETURNS [Hops]; GetRouting: PROC [XNS.Net] RETURNS [RoutingTableEntry]; Enumerate: PROC [ low: Hops _ 0, high: Hops _ unreachable, proc: PROC [XNS.Net, RoutingTableEntry] ]; <> Fast: PROC [XNS.Net] RETURNS [yes: BOOL]; <> }.