[
https://issues.apache.org/jira/browse/TS-4313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15219275#comment-15219275
]
ASF GitHub Bot commented on TS-4313:
------------------------------------
Github user jpeach commented on the pull request:
https://github.com/apache/trafficserver/pull/542#issuecomment-203736906
Oh interesting. It looks like the pointers are ~500GB apart, so that
certainly confirms the problem you found! I wonder if that is specific to the
ASAN virtual address space?
Anyway, it sounds like we agree on adding
``MIMEFieldBlockImpl::contains(MIMEField*)`` ... sounds great :)
> 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
> Assignee: Masakazu Kitajo
> Fix For: 6.2.0
>
>
> 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)