paulc
11a02cf913
Resolved or silenced a number of compile warnings.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5891 acf43c95-373e-0410-b603-e72c3f656dc1
2014-07-31 16:30:15 +00:00
paulc
11fcab1ab1
Implement independent CSeq generators for INVITE dialogs and REGISTER sessions.
...
Always parse CSeq in base 10, some implementations left pad with zeros.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5855 acf43c95-373e-0410-b603-e72c3f656dc1
2014-06-25 12:27:56 +00:00
paulc
fce2aa8548
Allow retrieving and setting more SIP dialog components.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5846 acf43c95-373e-0410-b603-e72c3f656dc1
2014-06-18 08:38:30 +00:00
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
f2fe82537c
Generate monotonic per-dialog Command Sequence numbers (CSeq) derived from the global sequence.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5841 acf43c95-373e-0410-b603-e72c3f656dc1
2014-06-11 12:02:40 +00:00
paulc
3e29286042
When building a default SIP domain from local address include port if not 5060.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5815 acf43c95-373e-0410-b603-e72c3f656dc1
2014-04-02 11:23:58 +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
6c99ac9558
Added reporting the number of SIP transactions to "status sip" command.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5746 acf43c95-373e-0410-b603-e72c3f656dc1
2014-01-29 13:26:24 +00:00
marian
1385c6ae07
Fixed debug message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5690 acf43c95-373e-0410-b603-e72c3f656dc1
2013-11-27 14:00:21 +00:00
marian
0c55017c41
Added SIP IPv6 support.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5673 acf43c95-373e-0410-b603-e72c3f656dc1
2013-10-18 18:30:41 +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
326a3d43d4
Added some more SIP errors from recent standards.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5452 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 13:33:49 +00:00
paulc
3b49b78ecb
Added a shared static list of Atom strings and an YATOM macro.
...
This speeds up signifficantly the Yate RTTI on compilers that HAVE_BLOCK_RETURN.
Made the String comparison operator inline to shave off a few cycles.
Fast handle the comparison in identity case.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5449 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 13:19:14 +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
paulc
ab2222ef67
Changed the way SIP authentication is performed by UAS.
...
This allows implementing custom authentication schemes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4975 acf43c95-373e-0410-b603-e72c3f656dc1
2012-03-26 00:25:00 +00:00
marian
60102b4db6
Don't quote the qop and nc parameters in Authorization response. Patch suggested by billsimon in Mantis issue #285 .
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4807 acf43c95-373e-0410-b603-e72c3f656dc1
2012-01-17 16:26: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
marian
8c5ca9bc71
Handle qop=auth authentication requested by UAS when acting as UAC.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4365 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-10 13:37:44 +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
6a09c86bad
Added flags that control how SIP message components are automatically completed.
...
These flags can be configured per engine and can be overridden in some messages by setting an "xsip_flags" parameter.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4161 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-07 13:50:59 +00:00
paulc
453fe76909
Set the value of rport parameter (RFC 3581) in the topmost Via header only if the parameter is already set by the client or proxy and has no value.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4160 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-07 11:56:43 +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
313d1bb82a
Added optional parameter to retrieve the last header or its parameters from a SIP message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4079 acf43c95-373e-0410-b603-e72c3f656dc1
2011-01-28 09:48:00 +00:00
paulc
d95cb2fec6
Spelling cleanup of a very common error: Retrive -> Retrieve
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3371 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-11 11:25:10 +00:00
paulc
15904daef1
Reorder libraries so that Yate libraries and modules can be linked using --as-needed avoiding underlinking or overlinking.
...
Reported by Mandriva (bug report #206 ).
git-svn-id: http://yate.null.ro/svn/yate/trunk@3143 acf43c95-373e-0410-b603-e72c3f656dc1
2010-03-24 13:46:12 +00:00
paulc
c7d6f8c029
Use static Regexps instead of allocating them on stack. Multiplies 2.5x the parser performance.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3048 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-31 20:30:02 +00:00
paulc
717d48cd77
Minor performance improvement parsing non-SIP/2.0 branches.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3047 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-31 20:27:56 +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
7ba9fb751c
Fixed documentation generating comments for SIP classes.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2823 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-06 14:58:18 +00:00
paulc
9fa5281f19
Added new methods to SIPDialog to compare only callid and tags (RFC 3261) and to retrieve the From and To URI or tags depending on direction.
...
Documented members of SIPDialog.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2822 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-06 14:50:36 +00:00
paulc
eeafea378b
Prevent the escaping of user-unreserved characters (RFC 3261 25.1 Page 222) when building the user part of SIP From and Contact.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2817 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-01 14:42:28 +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
65fa4adbd4
Fixed warnings and a few minor bugs when compiling on a different architecture.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2724 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-19 11:19:20 +00:00
paulc
2c03a9624d
Use the system detected CFLAGS instead of hardcoding -O2
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2673 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-01 16:06:14 +00:00
paulc
c069997056
Link the libraries using the C++ linker so it properly links against libstdc++ and compiler support.
...
Not required on ELF systems as libyate.so would pull in the required libraries but was confusing and could cause problems on other platforms.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2667 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-31 18:58:25 +00:00
paulc
6017353332
Add a Contact header to INVITE even if user part of URI is empty.
...
Properly escape the user component of the URI.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2645 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-21 20:57:51 +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