Commit Graph

32 Commits

Author SHA1 Message Date
paulc 41241ca8fc Allow controlling the number of (re)transmission per SIP transaction.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5844 acf43c95-373e-0410-b603-e72c3f656dc1
2014-06-12 09:50:50 +00:00
paulc 37a72e4bc1 Added copyright notices to sources and scripts missing them.
Updated copyright notices for 2014.
Fixed end of lines in many files.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5755 acf43c95-373e-0410-b603-e72c3f656dc1
2014-02-05 11:42:17 +00:00
paulc cf5d0fd71a Changed license terms in each source file to reference an external file.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5609 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-06 13:38:10 +00:00
marian a0b11fc63d Propagate non-retryable send errors to transaction. Terminate outgoing transactions in Trying state if first send attempt failed. Reset failed message party otherwise.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5599 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-02 10:01:39 +00:00
paulc 3843f27737 Ignore To tags in 100 answers, they are not supposed to establish a dialog.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5587 acf43c95-373e-0410-b603-e72c3f656dc1
2013-07-18 12:55:01 +00:00
paulc 8aa902352c Retrieve and reuse Time::now() at most twice per SIPEngine::getEvent()
Avoids making too many calls to gettimeofday() when there are many SIP transactions.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5254 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-11 10:27:56 +00:00
marian a77586a7a9 Added configurable option (defaults to disable) used to change remote party's ip/port when a channel receives a response or a new transaction from a different address.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5250 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-03 09:41:46 +00:00
paulc 955f946503 Downgraded branck/non-branch SIP ACK from MILD to NOTE, they are too frequent.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5005 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-12 13:34:46 +00:00
marian 5845857da0 Double the timeout period before using it. Decreased retransmission counters default values to keep the same overall timeout.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4559 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-22 15:16:26 +00:00
marian df8ec5d64d Made configurable the number of times to transmit a request or a final response when retransmission is required.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4556 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-22 14:11:51 +00:00
marian 80cd472913 Don't retransmit non 2xx final responses to INVITE on reliable transports.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4555 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-22 12:29:22 +00:00
marian 34924962aa Added support for tcp/tls sip transport. The sip module can now use (bind on) more then one address for udp.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4493 acf43c95-373e-0410-b603-e72c3f656dc1
2011-07-12 14:55:02 +00:00
paulc 1ae0546b45 Added class for pseudo random number generation.
Replace library ::random() and ::rand() calls with shared Random method.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4470 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-29 11:19:02 +00:00
paulc 51111b0f6d Optimized const String usage in the SIP library.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4427 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-03 13:04:21 +00:00
marian b77429d566 Use a global (per engine) nonce counter. Increase it each time we need it.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4378 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-16 08:18:56 +00:00
paulc ef393de662 Added method to check easily if a SIP transaction can send a response message.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4192 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-17 20:31:18 +00:00
paulc 3400667350 Consistently use the branch from the last Via header in matching transactions.
Fixes bug #237.


git-svn-id: http://yate.null.ro/svn/yate/trunk@4080 acf43c95-373e-0410-b603-e72c3f656dc1
2011-01-28 09:49:55 +00:00
paulc 9e536a65cf Bumped SVN trunk version to 3.0.0 alpha 1.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2883 acf43c95-373e-0410-b603-e72c3f656dc1
2009-11-03 09:48:34 +00:00
paulc 0533a9baf6 Made the SIP transactions list protected, added methods to add or remove transactions from list that lock the engine.
Remove transactions from engine's list on destroyed() as later access to their virtual methods is unsafe.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2868 acf43c95-373e-0410-b603-e72c3f656dc1
2009-10-16 12:08:22 +00:00
paulc a2835ec68d Added separate method to actually process a SIP message after identifying its transaction.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2791 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-14 12:51:05 +00:00
paulc df88815dfe Transmit the internally generated 408 answer, prevent the stack from immediately cleaning up the transaction.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2790 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-14 11:34:04 +00:00
paulc 2c3d47c29c Added mutex names to most Yate libraries.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2612 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-05 12:37:55 +00:00
paulc bcdef30339 Set the latest message in SIP client transactions. Compute user timeout from standard SIP timers.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2442 acf43c95-373e-0410-b603-e72c3f656dc1
2009-01-16 14:59:27 +00:00
paulc 496ed73cce Use the Human Interaction timer once we see any answer with code > 100
git-svn-id: http://yate.null.ro/svn/yate/trunk@2441 acf43c95-373e-0410-b603-e72c3f656dc1
2009-01-16 13:48:24 +00:00
paulc 05e9f1bbb7 Use the MIME quoting method instead of blindly adding quotes around strings.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2344 acf43c95-373e-0410-b603-e72c3f656dc1
2008-11-17 12:38:17 +00:00
paulc 4b8483ca1c Added capability to skip the initial "100 Trying" for non-INVITE transactions.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2146 acf43c95-373e-0410-b603-e72c3f656dc1
2008-08-06 17:16:34 +00:00
paulc 587b1edc89 Detect and drop the calls for which a proper transaction ACK was not received.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1892 acf43c95-373e-0410-b603-e72c3f656dc1
2008-04-10 18:08:40 +00:00
paulc 3fc8d46810 Performance improvments suggested by Allan Sandfeld:
Change order of transaction to match most recent ones first.
Don't wait in select in SIP channel if we had events last loop.


git-svn-id: http://yate.null.ro/svn/yate/trunk@1631 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-15 15:15:44 +00:00
marian dabd23216d Moved header classes and some utilities from SIP to MIME. Updated SIP module and library to reflect the changes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1599 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-08 12:29:12 +00:00
paulc 75a86343c8 Return pending and outgoing events of all transactions before trying to create new ones.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1515 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-30 16:46:06 +00:00
paulc 40f949391a Accept requests with a CSeq sequence number of 0, they are valid.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1482 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-21 18:22:06 +00:00
paulc bccee6022e Directory reorder #1
git-svn-id: http://yate.null.ro/svn/yate/trunk@1474 acf43c95-373e-0410-b603-e72c3f656dc1
2007-11-15 22:08:39 +00:00