Masakazu Kitajo created TS-4313:
-----------------------------------
Summary: MIMEHdr fails to find header fields
Key: TS-4313
URL: https://issues.apache.org/jira/browse/TS-4313
Project: Traffic Server
Issue Type: Bug
Components: MIME
Reporter: Masakazu Kitajo
MIMEHdr fails to find a MIMEField occasionally due to improper type conversion.
It happens if the lower 32 bits of addresses of m_field_slots are the same. The
logic below picks up wrong block.
mime_hdr_field_slotnum():
{code}
for (fblock = &(mh->m_first_fblock); fblock != NULL; fblock = fblock->m_next) {
MIMEField *first = &(fblock->m_field_slots[0]);
int block_slot = (int)(field - first); // in units of MIMEField
if ((block_slot >= 0) && (block_slot < MIME_FIELD_BLOCK_SLOTS))
{code}
The type of block_slot should be intptr_t.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)