< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index  

Re: [reSIProcate] Incorrect pre-parsing SIP-ETag header


        Yikes! This code is at fault:

*snip*
      Data etag = Random::getCryptoRandom(8);
while (mServerPublications.find(etag) != mServerPublications.end())
      {
         etag = Random::getCryptoRandom(8);
      }

      if (request.getContents())
      {
ServerPublication* sp = new ServerPublication(*this, etag, request);
         mServerPublications[etag] = sp;
         sp->dispatch(request);
      }
      else
      {
*snip*

Shoving raw binary into an etag header is bad. I suspect that _this_ is what was meant:

*snip*
      Data etag = Random::getCryptoRandomHex(8);
while (mServerPublications.find(etag) != mServerPublications.end())
      {
         etag = Random::getCryptoRandomHex(8);
      }

      if (request.getContents())
      {
ServerPublication* sp = new ServerPublication(*this, etag, request);
         mServerPublications[etag] = sp;
         sp->dispatch(request);
      }
      else
      {
*snip*

I will fix this right away.

Best regards,
Byron Campen


Hi,

As I see resiprocate does not parse SIP-ETag correctly
(BTW it was generated by itself). For example attached
200 OK was generated by resiprocate's DUM but cannot
be processed by resiprocate when it was received via
UDP, error is:
Scanner rejecting datagram as unparsable / fragmented

As I see it happens when 0x0a symbol exists in this
header because resiprocate correctly parses all other
messages where SIP-ETag exists without this symbol...

Any idea how to fix it? ;)


______________________________________________________________________ ______________
Looking for last minute shopping deals?
Find them fast with Yahoo! Search. http://tools.search.yahoo.com/ newsearch/category.php? category=shopping<OK.sip>_____________________________________________ __
resiprocate-devel mailing list
resiprocate-devel@xxxxxxxxxxxxxxx
https://list.resiprocate.org/mailman/listinfo/resiprocate-devel

Attachment: smime.p7s
Description: S/MIME cryptographic signature