DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 4530 (0x11b2) Types: TextFile Names: »V«
└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦9b46a407a⟧ └─⟦12c68c704⟧ └─⟦this⟧ └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦458657fb6⟧ └─⟦220843204⟧ └─⟦this⟧
with Transport_Defs; package Transport_Route is -- The system maintains a table used for routing Transport -- packets. At this time the routing table is used only -- for IP packets, including TCP/IP and UDP/IP packets. -- When sending a packet to a machine on some other network -- (e.g. Ether), it must be routed first to a gateway, not the -- destination machine. Some gateways do not respond to ARP -- queries for destination machines whose traffic they carry, -- so this machine must know the address of the gateway in -- order to transmit packets to it. -- The routing table contains a list of entries. Each entry -- contains a route (i.e. the Internet address of a gateway) -- with a destination that can be reached by way of it. The -- destination may be a specific Host_Id (Internet address), or -- the network number of a network (signifying all hosts in that -- network), or the Null_Host_ID (signifying any remote host). -- There may be multiple entries for each route, identifying -- multiple hosts or networks accessible by way of that route. -- The table entries are searched in order when deciding where -- to send an outgoing packet. The table is kept ordered with -- all host-specific entries followed by all network-specific -- entries, followed by the default entry. Within each group, -- entries are maintained in order they were defined. procedure Show (Route : String := ""; Destination : String := ""; Network : Transport_Defs.Network_Name := ""; Response : String := "<PROFILE>"); -- Create a text listing of entries matching the given values, -- and write it to the current output file. "" is a wildcard -- for each parameter. That is, if Route = "", show entries -- for all routes; if Destination = "", show entries for all -- destinations; and if Network = "", show entries for all -- networks. Route and/or Destination may be a Host_Id in -- decimal dotted notation (e.g. "89.32") or a machine name -- (e.g. "Fred"). In the latter case, the name is resolved -- to a Host_Id using Transport_Name.Host_to_Host_Id. procedure Load (Table : String := "!machine.transport_routes"; Form : String := ""; Response : String := "<PROFILE>"); -- Read the object named by Table, using package Text_Io. -- Pass the specified Form to Text_Io.Open. In the resulting text, -- each text line should contain the Host_ID or name of a route, -- followed by the Host_ID or name of a destination, followed by -- a Network_Name. If the Network_Name is omitted, "IP" is assumed. -- If the destination Host_ID is omitted, the Null_Host_ID is assumed. -- For each line in the Table, call the Define procedure (below) -- with parameter values parsed from the line. The overall -- effect is to copy the information from the object named by -- Table into the system's routing table. procedure Define (Route : String; Destination : String := ""; Network : Transport_Defs.Network_Name := "IP"; Response : String := "<PROFILE>"); -- Add one entry to the routing table, with the given values. -- If there is already such an entry in the table, do nothing. -- Route and/or Destination can be a Host_Id, in decimal dotted -- notation (e.g. "89.32"), or else a host name (e.g. "Fred"). -- If Route or Destination is a symbolic name, resolve it to -- a Host_ID using Transport_Name.Host_to_Host_Id. If Route -- or Destination = "", this means Transport_Defs.Null_Host_Id. procedure Undefine (Route : String; Destination : String := ""; Network : Transport_Defs.Network_Name := "IP"; Response : String := "<PROFILE>"); -- Delete the entry with the given values from the routing table. -- If there is no such entry in the table, do nothing. -- Route and/or Destination can be a Host_Id, in decimal dotted -- notation (e.g. "89.32"), or else a host name (e.g. "Fred"). -- If Route or Destination is a symbolic name, resolve it to -- a Host_ID using Transport_Name.Host_to_Host_Id. If Route -- or Destination = "", this means Transport_Defs.Null_Host_Id. pragma Subsystem (Input_Output); pragma Module_Name (4, 3224); end Transport_Route;