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

Re: [reSIProcate] Issue with getRandomHex()


Hi Yannick,

What resip release are you using?  There was quite a bit of work put into the Random.cxx class a couple years ago to ensure random number generator is seeded automatically for each thread (see Random::initialize()).  If you are on an older release you may want to compare your version Random.cxx with the latest one from SVN.  Note also - there is a lot of platform depend code branches in this init logic, so your platform may be playing a role here.  What platform are you using?

Scott


On Wed, Apr 30, 2014 at 3:50 PM, Yannick Guay <yannick.guay@xxxxxxxxx> wrote:
Hi,

I ran into an issue with DUM generating same transaction id several times when my b2bua is handling multiple simultaneous calls.

I'm using DialogUsageManager::makeInviteSession() which generates a proper branch parameter for the outgoing call but when it's time to send them down to the stack the branch parameter is set again by DialogUsageManager::send() (line 1036 or so), but same value gets reused for all calls. As a result, only the first call gets out of my gateway, all other subsequent calls are considered bad and eventually get dropped by TransactionState.

Here is the line that I'm finding in log files.
2014-04-30T15:12:27.854-04:00 Warning - B2BUA TU sent us a duplicate INVITE: fix this! 

My knowledge of srandom and random is rather limited but I trust after giving it a seed, then it should always hand off unique values?

Any Ideas what I'm doing wrong?

Best Regards,
-Yannick Guay

_______________________________________________
resiprocate-devel mailing list
resiprocate-devel@xxxxxxxxxxxxxxx
https://list.resiprocate.org/mailman/listinfo/resiprocate-devel