[asterisk-bugs] [JIRA] Updated: (ASTERISK-20495) Segfault in XMPP caused by the presence stanza of one of my contacts
Martin W (JIRA)
noreply at issues.asterisk.org
Tue Oct 2 10:30:27 CDT 2012
[ https://issues.asterisk.org/jira/browse/ASTERISK-20495?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Martin W updated ASTERISK-20495:
--------------------------------
Description:
Apologies if this report is a dupe or not appropriate here; I am new to the Asterisk source so please go easy.
Builds of asterisk were causing a segfault at start-up. I traced it to a particular contact whose presence contained the following:
{code}
<c ver="mac-2.2.0s" xmlns="http://jabber.org/protocol/caps"/>
{code}
It looks like the handling of "node" and "ver" attributes is incorrect: on res_xmpp.c:3144 (r374095).
To get it running locally I worked around it with the attached patch.
Hope this is useful.
was:
Apologies if this report is a dupe or not appropriate here; I am new to the Asterisk source so please go easy.
Builds of asterisk were causing a segfault at start-up. I traced it to a particular contact whose presence contained the following:
{code}
<c ver="mac-2.2.0s" xmlns="http://jabber.org/protocol/caps"/>
{code}
It looks like the handling of "node" and "ver" attributes is incorrect: on res_xmpp.c:3144 (r374095).
To get it running locally I worked around it with this:
{code}
Index: res/res_xmpp.c
===================================================================
--- res/res_xmpp.c (revision 374095)
+++ res/res_xmpp.c (working copy)
@@ -3142,8 +3142,12 @@
}
if ((node && strcmp(resource->caps.node, node)) || (ver && strcmp(resource->caps.version, ver))) {
- ast_copy_string(resource->caps.node, node, sizeof(resource->caps.node));
- ast_copy_string(resource->caps.version, ver, sizeof(resource->caps.version));
+ if (node) {
+ ast_copy_string(resource->caps.node, node, sizeof(resource->caps.node));
+ }
+ if (ver) {
+ ast_copy_string(resource->caps.version, ver, sizeof(resource->caps.version));
+ }
/* Google Talk places the capabilities information directly in presence, so see if it is there */
if (iks_find_with_attrib(pak->x, "c", "node", "http://www.google.com/xmpp/client/caps") ||
{code}
Hope this is useful.
> Segfault in XMPP caused by the presence stanza of one of my contacts
> --------------------------------------------------------------------
>
> Key: ASTERISK-20495
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-20495
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Resources/res_xmpp
> Affects Versions: 11.0.0-beta2
> Environment: built from head on x86_64 Ubuntu
> Reporter: Martin W
> Assignee: Martin W
>
> Apologies if this report is a dupe or not appropriate here; I am new to the Asterisk source so please go easy.
> Builds of asterisk were causing a segfault at start-up. I traced it to a particular contact whose presence contained the following:
> {code}
> <c ver="mac-2.2.0s" xmlns="http://jabber.org/protocol/caps"/>
> {code}
> It looks like the handling of "node" and "ver" attributes is incorrect: on res_xmpp.c:3144 (r374095).
> To get it running locally I worked around it with the attached patch.
> Hope this is useful.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the asterisk-bugs
mailing list