-- CommunicationInternal.mesa (last edited by: HGM/BLyon on: June 2, 1980  4:24 PM)
-- CommunicationInternal.mesa (last edited by: BLyon on: January 16, 1981  3:00 PM)

DIRECTORY
  SpecialSystem USING [HostNumber];

CommunicationInternal: DEFINITIONS =
  BEGIN
  -- the interface to Pilot.
  PilotCommUtil: PROGRAM;
  -- the main OIS Router and Socket modules.
  ChecksumsImpl: PROGRAM;
  RouterImpl: PROGRAM;
  RoutingTableImpl: PROGRAM;
  SocketImpl: PROGRAM;
  PacketExchangeImpl: PROGRAM;
  EchoServerImpl: PROGRAM;
  -- the OIS Packet and Network Stream managers.
  PacketStreamMgr: PROGRAM;
  NetworkStreamMgr: PROGRAM;


  -- stuff for fast, efficient compares of HostIDs
  PrivateHostID: TYPE = RECORD [ab: LONG CARDINAL, c: CARDINAL];

  HostIDsAreEqual: PROCEDURE [x, y: SpecialSystem.HostNumber] RETURNS [BOOLEAN] =
    INLINE
    BEGIN
    xx: PrivateHostID = LOOPHOLE[x];
    yy: PrivateHostID = LOOPHOLE[y];
    RETURN[(xx.c = yy.c) AND (xx.ab = yy.ab)];
    END;

  END.
LOG
Time: July 7, 1979  1:44 PM	By: Dalal	Action: Created file.
Time: January 4, 1980  2:51 PM	By: Dalal	Action: Changed SocketMgr to SocketImpl.
Time: January 4, 1980  2:51 PM	By: Dalal	Action: Changed OISCPRouter to RouterImpl and RoutingTableImpl.
Time: January 27, 1980  10:22 AM	By: Dalal	Action: added PacketStreamMgr.
Time: August 20, 1980  10:37 AM	By: BLyon	Action: added ChecksumsImpl.