[reSIProcate] websockets heap corruption
Daniel Pocock
daniel at pocock.com.au
Tue May 7 09:04:58 CDT 2013
On 29/04/13 23:12, Scott Godin wrote:
> It appears the corruption has to do with the tryAgain flag and things
> not being aligned correctly in the buffers. I created a quick fix for
> this - but it seems the entire wsProcessData needs a good round of
> review and optimization - there seems to be a lot data copies in it -
> which is fine for testing but not great for large scale deployments.
>
> With my fix I can now get a call to establish with JSSIP
> (tryit.jssip.net <http://tryit.jssip.net>)!
>
> I have committed this fix.
>
I'm sorry that you had to waste time on this (and accidentally reverting
that patch), but that whole section of code is now updated, shifting the
WebSocket inspection code into a separate class. It should avoid doing
any copies as long as the WebSocket client sends the whole SIP message
unfragmented in a single frame. However, it still has to scan the whole
body once for unmasking, as-per the WebSocket protocol.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20130507/70e79e74/attachment.htm>
More information about the resiprocate-devel
mailing list