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: ┃ B T ┃
Length: 980 (0x3d4) Types: TextFile Names: »B«
└─⟦149519bd4⟧ Bits:30000546 8mm tape, Rational 1000, !projects 93-07-13 └─ ⟦124ff5788⟧ »DATA« └─⟦this⟧ └─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16 └─ ⟦6f12a12be⟧ »DATA« └─⟦this⟧
SEPARATE (Transport) PROCEDURE Close (Connection : Transport.Connection_Id) IS Temp_Connect : Transport.Connection_Id := Connection; System_Call_Result : Unix_Base_Types.Int; BEGIN IF Connection = Null_Connection_Id THEN RETURN; END IF; IF Connection.Socket_Status = Connected THEN Transport.Disconnect (Connection => Connection); END IF; IF Connection.Socket_Status = Open OR Connection.Socket_Status = Not_Connected THEN System_Call_Result := Socket_System_Interface.Shutdown (S => Connection.Local_Socket_Descriptor, How => 2); System_Call_Result := System_Interface.File_Io.Close (Fildes => Connection.Local_Socket_Descriptor); IF System_Call_Result < 0 THEN RAISE Program_Error; ELSE Connection.Local_Socket_Descriptor := Unix_Error; Connection.Socket_Status := Closed; END IF; END IF; END Close;