Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 2aeba34a authored by Hemant Gupta's avatar Hemant Gupta Committed by Andre Eisenbach
Browse files

MAP: Fix to handle incomplete message listing object sent.

Usecase:
1) Establish Map Session with Remote Carkit.
2) Send MesageListing request from remote.
(Can be seen with getMessage Email, folderListing
email)
Note: Incomplete MessageListing object is sent only
when listing object size is between A and B where
A = (MaxPacketSize - HeaderArray_A_Size - 6) where
    HeaderArray_A contains only CONNECTION_ID and
    HeaderArray_A_Size = 5;
B = (MaxPacketSize - HeaderArray_B_size - 6) where
    HeaderArray_B contains CONNECTION_ID and APPLICATION
    PARAMETERS
    HeaderArray_B_Size = 37;

Issue:
Incomplete message listing object is sent in this rare
case.

Root Cause:
Application parameter header size was not taken into
consideration while sending MaxPacketSize when outputstream
(PrivateOutputStream) was created from ServerOperation.

Fix:
Create output stream instance (of ServerOperation) after all
reply headers are created in MAP side. This will set correct
MaxPacketSize in PrivateOutputStream.

Test: After following above steps issue is not seen.

Bug: 69726554
Change-Id: I2ea8864e4ff704935883044929f7d9225f2c47b4
parent 444e340b
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment