MODAPS PCR 15-037

PCR Number 15-037
Date 2015-09-23
Initiator James Kuyper
Abstract PGE01 v6.0.24. Changed to tread frame counts less than 1 as invalid.
Problem Statement Corrupt packets sometimes have a frame_count less than 1, which is invalid; at the very least, the packet you're reading the frame_count from must be a part of a frame of data, so there's got to be at least one frame of data. Some MOD_PR01 code uses frame_count-1 as a subscript on an array, resulting in an unintentional attempt to access memory that is not actually part of that array. The consequences of this depend upon what's in the location accessed - at optimization level 3, on a Centos 7 platform, the result was a corrupted pointer value that caused a memory segment violation.
Description of Change Correct MOD_PR01 to treat packets with a frame_count less than 1 as invalid, so the invalid frame_count is not used.
Products Affected None.
Software Affected PGE01 v6.0.24
Processing String to Receive the Change Terra and Aqua Forward Processing, NRT
Downstream Product Effects PGE01 packets corrupted in this way will be dropped, but the granules containing them will be processed correctly.
Data Granules to be Used for Science Testing  
Justification Slight increase in the number of granules successfully generated.
Effective Date for Implementation of Change Completed.
Status Neal Devine (acting for Gang Ye) approved 09/24/2015.