[asterisk-bugs] [JIRA] (ASTERISK-28854) SIGSEGV when pjsip show history encounters IPV6 address
Roger James (JIRA)
noreply at issues.asterisk.org
Mon Apr 27 15:46:25 CDT 2020
[ https://issues.asterisk.org/jira/browse/ASTERISK-28854?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Roger James updated ASTERISK-28854:
-----------------------------------
Attachment: 0001-IPV6-address-fix.patch
patch
> SIGSEGV when pjsip show history encounters IPV6 address
> -------------------------------------------------------
>
> Key: ASTERISK-28854
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-28854
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Resources/res_pjsip
> Affects Versions: 17.3.0
> Environment: Linux
> Reporter: Roger James
> Severity: Trivial
> Labels: patch
> Attachments: 0001-IPV6-address-fix.patch
>
>
> In res_pjsip_history.c
> {noformat}
> /*! \brief An item in the history */
> struct pjsip_history_entry {
> ...
> /*! \brief Source address */
> pj_sockaddr_in src; This is only long enough to hold an ipv4 address
> /*! \brief Destination address */
> pj_sockaddr_in dst; Same herw
> ...
> };
> {noformat}
> Calls like these oveflow the fields when an IPV6 address is encountered.
> {noformat}
> /*! \brief PJSIP callback when a SIP message is transmitted */
> static pj_status_t history_on_tx_msg(pjsip_tx_data *tdata)
> {
> struct pjsip_history_entry *entry;
> ...
> pj_sockaddr_cp(&entry->src, &tdata->tp_info.transport->local_addr);
> pj_sockaddr_cp(&entry->dst, &tdata->tp_info.dst_addr);
> {noformat}
> Result SIGSEGV.
> *EDIT*: Removed inline patch
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list