Copyright (C) 1983 by Xerox Corporation. All rights reserved. The following program was created in 1983 but has not been published within the meaning of the copyright law, is furnished under license, and may not be used, copied and/or disclosed except in accordance with the terms of said license.
IPReassembly.mesa
Last Edited by: Nichols, August 1, 1983 2:21 pm
Last Edited by: Taft, January 5, 1984 5:15 pm
John Larson, July 23, 1987 12:49:09 pm PDT
DIRECTORY
IPDefs USING [Datagram];
IPReassembly: CEDAR DEFINITIONS
~ BEGIN
Fragment statistics
single, arrived, merged, finished, died, bad: INT;
IsFragment: PROC [data: IPDefs.Datagram] RETURNS [BOOL];
Tells if the given datagram is just a fragment or not.
Reassemble: PROC [data: IPDefs.Datagram] RETURNS [newData: IPDefs.Datagram];
We do fragment reassembly here. Returns NIL or a reassembled datagram.
AgeFragments: PROC [nSeconds: INT];
Adjust the timeToLive fields in the fragments and toss any that are too old.
END.