I say first C then a bit of A on top of that to prevent the situation that leads to that.<br><br><br><div class="gmail_quote">On Thu, Apr 17, 2008 at 3:51 PM, David Knell <<a href="mailto:dave@3c.co.uk">dave@3c.co.uk</a>> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi all -<br>
<br>
Just had an interesting FS segfault. switch_xml_free (called from<br>
mod_xml_cdr) recursed 3500+ times<br>
and, I guess, the thing ran out of stack space.<br>
<br>
Having a look at the core dump shows that it's freeing a valid XML CDR<br>
structure for a call which<br>
wasn't cleared for ages; FS sat in a loop playing a prompt. The net<br>
result would have been a CDR<br>
with a vast number of <application> lines, had the segfault not occurred.<br>
<br>
Fixes:<br>
(a) don't get in this situation in the first place;<br>
(b) rewrite switch_xml_free to eliminate recursion;<br>
(c) limit the number of children created in switch_ivr_generate_xml_cdr;<br>
- and probably some more.<br>
<br>
My favourite's (c) - any alternatives/objections? If not, I'll pop this<br>
with a patch in Jira.<br>
<br>
Cheers --<br>
<br>
Dave<br>
<br>
--<br>
David Knell, Director, 3C Limited<br>
T: 020 8114 8901 F: 020 3002 7257 M: 001 415 630 3031<br>
<a href="http://www.3c.co.uk" target="_blank">http://www.3c.co.uk</a><br>
<br>
<br>
_______________________________________________<br>
Freeswitch-users mailing list<br>
<a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>Anthony Minessale II<br><br>FreeSWITCH <a href="http://www.freeswitch.org/">http://www.freeswitch.org/</a><br>ClueCon <a href="http://www.cluecon.com/">http://www.cluecon.com/</a><br>
<br>AIM: anthm<br><a href="mailto:MSN%3Aanthony_minessale@hotmail.com">MSN:anthony_minessale@hotmail.com</a><br>GTALK/JABBER/<a href="mailto:PAYPAL%3Aanthony.minessale@gmail.com">PAYPAL:anthony.minessale@gmail.com</a><br>
IRC: <a href="http://irc.freenode.net">irc.freenode.net</a> #freeswitch<br><br>FreeSWITCH Developer Conference<br><a href="mailto:sip%3A888@conference.freeswitch.org">sip:888@conference.freeswitch.org</a><br><a href="http://iax:guest@conference.freeswitch.org/888">iax:guest@conference.freeswitch.org/888</a><br>
<a href="mailto:googletalk%3Aconf%2B888@conference.freeswitch.org">googletalk:conf+888@conference.freeswitch.org</a><br>pstn:213-799-1400