You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Bill Blough (Jira)" <ji...@apache.org> on 2020/04/07 15:54:00 UTC

[jira] [Updated] (AXIS2C-1597) Memory corruption in axis2_http_transport_utils_process_accept_headers()

     [ https://issues.apache.org/jira/browse/AXIS2C-1597?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Blough updated AXIS2C-1597:
--------------------------------
    Fix Version/s: 1.7.0

> Memory corruption in axis2_http_transport_utils_process_accept_headers()
> ------------------------------------------------------------------------
>
>                 Key: AXIS2C-1597
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-1597
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: transport/http
>    Affects Versions: Current (Nightly)
>            Reporter: Ivan Pechorin
>            Assignee: Korale Gamaralalage Nandika Chandrasiri Jayawardana
>            Priority: Critical
>             Fix For: 1.7.0
>
>         Attachments: axis2-c-accept_record_list.patch
>
>
> There's an obvious bug/typo in src/core/transport/http/util/http_transport_utils.c in function axis2_http_transport_utils_process_accept_headers().
> First, the "Accept:" header is tokenized into <accept_field_list>.
> Then in a loop (iterating over the accept_record_list):
> 1) each field is parsed into struct axis2_http_accept_record_t
> 2) the struct should be added into a list of records list, <accept_record_list>
> However, there's a typo here and the record is added into the same original list (<accept_field_list>), not into the <accept_record_list>.
> This results in looping over and over the same list with 100% CPU load, and also memory issues (because arbitrary not necessary 0-terminated pieces of memory are being strdup'ed).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: c-dev-help@axis.apache.org