Commit Graph

1434 Commits

Author SHA1 Message Date
Anthony Minessale a67505ba74 FS-4934 2013-04-09 21:38:11 -05:00
Anthony Minessale e245e81c3b sla barg cid regression 2013-04-05 16:41:51 -05:00
Anthony Minessale b934891f49 sla cid tweaks 2013-04-05 00:38:57 -05:00
Anthony Minessale 3cc441485b revert 2013-04-05 00:38:09 -05:00
Anthony Minessale 900f2aab74 sla cid tweaks
Conflicts:
	src/mod/endpoints/mod_sofia/sofia_glue.c
2013-04-05 00:36:44 -05:00
Anthony Minessale e35b087f51 remove depricated vars causing issues 2013-04-02 21:12:14 -05:00
Anthony Minessale 2207b87769 do some more caller-id cleanup 2013-04-01 23:03:14 -05:00
Anthony Minessale dd878da49d clean up proxy media mode 2013-03-31 21:27:27 -05:00
Anthony Minessale 68055eab2b support tls dir options properly 2013-03-31 21:27:26 -05:00
Anthony Minessale a4e0bae4c7 fix cert dir specification when tls is not configured (note, you probably need to move your certs for wss after this commit) 2013-03-31 21:27:26 -05:00
Anthony Minessale 5bcf68c92d handle route for ws and wss transport 2013-03-31 21:27:24 -05:00
Anthony Minessale e00ede7e7d unreg on sock disconnect 2013-03-31 21:27:22 -05:00
Anthony Minessale 81cd770a18 add ws-binding and wss-binding sofia profile params 2013-03-31 21:27:21 -05:00
Anthony Minessale 20568e64df wip 2013-03-31 21:27:17 -05:00
Anthony Minessale e4aead198e compiles and runs and probably chok full o bugs 2013-03-31 21:27:16 -05:00
Anthony Minessale 078d963222 MILESTONE: all the crap out of tech_pvt and sofia in general related to media shit 2013-03-31 21:27:16 -05:00
Anthony Minessale 85308861d8 almost rid of crufty tech_pvt members 2013-03-31 21:27:16 -05:00
Anthony Minessale 75c95fa98e MILESTONE: working audio and no reference to rtp_session in all of sofia 2013-03-31 21:27:15 -05:00
Anthony Minessale caee4cbf46 replace 2013-03-31 21:27:15 -05:00
Anthony Minessale 92ddf47293 expose some rtp func via media handle 2013-03-31 21:27:15 -05:00
Anthony Minessale faaf642d5c calls both ways still gotta push more into the core 2013-03-31 21:27:15 -05:00
Anthony Minessale d012c5f392 omg it can make calls ... long way to go ... 2013-03-31 21:27:15 -05:00
Anthony Minessale 48554d1a85 compiles 2013-03-31 21:27:15 -05:00
Anthony Minessale 22d838b4f6 pass2 2013-03-31 21:27:15 -05:00
Anthony Minessale 0fffc839e4 pass1 2013-03-31 21:27:14 -05:00
Anthony Minessale 3c51053bb4 compiles the core wow 2013-03-31 21:27:14 -05:00
Anthony Minessale eb81042a6f wip 2013-03-31 21:27:14 -05:00
Anthony Minessale d6af3a1fdd omfg 2013-03-31 21:27:14 -05:00
Anthony Minessale 10010d47c1 wip 2013-03-31 21:27:14 -05:00
Anthony Minessale 1ab88581d7 rename 2013-03-31 21:27:14 -05:00
Anthony Minessale e747229f5e typo 2013-03-31 21:27:13 -05:00
Anthony Minessale 0a246d1cb4 pull srtp negotiation stuff into the core stage 1 2013-03-31 21:27:13 -05:00
Anthony Minessale 330f68d946 convert rtp flags to arrays 2013-03-31 21:27:13 -05:00
Anthony Minessale 592993ecda baseline 2013-03-31 21:27:13 -05:00
Anthony Minessale dd1e61e0d4 part 2 of other cid patch 2013-03-30 15:39:49 -05:00
Anthony Minessale dcb4beb12f update caller_id not callee_id when getting a display update from an inbound leg 2013-03-29 22:07:35 -05:00
Brian West 49138460a3 fix 2013-03-29 17:55:50 -05:00
Anthony Minessale 3bb6acf066 FS-5223 2013-03-26 15:44:26 -05:00
Anthony Minessale a65a03a7dd revert unintended change 2013-03-21 13:05:35 -05:00
Anthony Minessale 3034de6e79 FS-5155 2013-03-08 08:24:50 -06:00
Anthony Minessale d9d238b183 FS-5139 --resolve 2013-03-05 13:33:07 -06:00
Anthony Minessale fc1316601b FS-5118 take 2 2013-02-27 09:04:55 -06:00
Anthony Minessale 8987e96744 add dedicated mutex for select based sql stuff 2013-02-25 15:42:26 -06:00
Anthony Minessale dd3bd238c5 limit simo reg processing threads to 25 and add param to raise it 2013-02-21 12:26:30 -06:00
Anthony Minessale 18cd797065 cleanup 2013-02-18 13:54:34 -06:00
William King fca349941e Adding ability to require authentication for sip messages on a sofia profile. 2013-02-04 12:00:28 -06:00
Stefan Knoblich ecc3f31373 mod_sofia: Follow-up fix for FS-5009 to avoid NULL-ptr dereference
Commit f913670e changed switch_core_session_sprintf() args
from sip->sip_to to sip->sip_from, but didn't update the enclosing if()
clause protecting the code from dereferencing NULL pointers.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-01-14 15:01:39 +01:00
Anthony Minessale f913670e27 FS-5009 2013-01-10 12:44:35 -06:00
Anthony Minessale 80c2465a75 FS-5009 2013-01-10 10:32:54 -06:00
Raymond Chandler c7c4bda847 fix pnp 2013-01-09 18:18:07 -05:00
Brian West b8dfbbe129 FS-4994 --resolve 2013-01-07 13:41:08 -06:00
Anthony Minessale eef506bcb0 FS-4985 --resolve 2013-01-07 11:43:26 -06:00
Anthony Minessale 298772184f FS-4978 --resolve this is fine besides one minor change to only consider this path when we are doing passthru 2013-01-07 11:14:51 -06:00
Anthony Minessale f2428b08f9 FS-4779 --resolve 2013-01-07 10:27:28 -06:00
Eliot Gable 6b9570cbf0 Add some additional info on transfer so callee_id_name and number are available in this scenario. 2013-01-03 23:09:19 +00:00
Anthony Minessale 7ba3dadcd8 FS-4859 regression 2012-12-10 13:52:25 -06:00
Anthony Minessale 1cebb320f8 FS-4859 2012-12-07 10:29:44 -06:00
Anthony Minessale a7fafb2039 FS-4913 revert this breaks normal calls so nevermind 2012-12-06 12:22:31 -06:00
Anthony Minessale 8e5012e4d6 FS-4913 try this patch 2012-12-06 10:44:52 -06:00
Anthony Minessale 7744b62a62 add cr 2012-12-04 10:58:51 -06:00
Anthony Minessale d31be4fbcb FS-4813 --resolve 2012-12-04 07:46:31 -06:00
Anthony Minessale 4e3bb1a1e6 rtp and signal parsing adjustments 2012-11-30 13:54:47 -06:00
Michael Jerris b4d7c2ab2c FS-4882: fix potential seg 2012-11-29 16:49:05 -05:00
Anthony Minessale 395b7a9799 FS-4882 --resolve 2012-11-29 12:59:33 -06:00
Anthony Minessale d4f8a79299 try to improve audio stream sync 2012-11-28 23:12:35 -06:00
Anthony Minessale 1f06fe909c FS-4859 correction 2012-11-21 11:49:35 -06:00
Anthony Minessale 294a6016b8 FS-4859 2012-11-21 10:32:41 -06:00
Anthony Minessale 812d876414 FS-4856 --resolve 2012-11-21 09:11:04 -06:00
Anthony Minessale 43b094f139 fix some sql order issues 2012-11-16 20:09:43 -06:00
Eliot Gable 893cd7beb7 Add att_xfer_destination_number variable to indicate the original destination number of the attended transfer leg on REFER for semi-attended transfer scenarios. 2012-11-15 20:37:52 +00:00
William King 8f0b7e69de Handle routing loop detection properly so that the delivery confirmation handling is more accurate. 2012-11-13 18:18:40 -08:00
Anthony Minessale 082085fc5a FS-4824 --resolve 2012-11-11 09:09:22 -06:00
Anthony Minessale f60962ae87 fix some contention issues under really high load...That doesn't mean you need to push it this hard and bug me about it =p 2012-11-07 12:10:50 -06:00
Anthony Minessale 8e3f6d21f9 FS-4796 --resolve 2012-11-06 08:51:38 -06:00
Anthony Minessale e884de5b07 add NUTAG_RETRY_AFTER_ENABLE() tag to lib sofia and use it in mod_sofia to disable processing retry-after headers on a per-call basis 2012-11-02 13:54:54 -05:00
Anthony Minessale 3e94242c4b FS-4779 try this instead 2012-11-01 09:14:34 -05:00
Anthony Minessale 5ca8cf7d8e call destroy not stop in sofia profile 2012-10-31 08:59:31 -05:00
Anthony Minessale 23bb963d17 FS-4779 I don't have this labbed up to try so can you try this patch and repost logs if it doesn't work 2012-10-31 08:52:00 -05:00
Anthony Minessale 3595c528ae reset rtpip index on reload 2012-10-30 14:22:31 -05:00
Anthony Minessale 4b5cdd87f1 refactor 2012-10-29 11:46:32 -05:00
Anthony Minessale f657a3787b fix regression from config refactor in rescan behaviour to pick up new gateways 2012-10-29 08:23:21 -05:00
Anthony Minessale 96550e893e finish off sql optimization 2012-10-27 12:27:00 -05:00
Anthony Minessale 16d41e463c get rid of little caesars 2012-10-25 15:09:09 -05:00
Anthony Minessale b29412054a fold reconfig_sofia into config_sofia so we don't have 2 difft config funcs 2012-10-25 12:30:08 -05:00
Anthony Minessale 68e0b7e859 optimize sofia sql by using new core transaction processor we will no longer support databases that do not support transactions 2012-10-25 11:31:47 -05:00
Anthony Minessale b8bef3eeb3 remove code 2012-10-19 17:09:33 -04:00
Anthony Minessale 7b7254ac93 fix sofia recovery on srtp legs 2012-10-19 15:49:22 -05:00
Brian West fbb99f60b4 really fix FS-3726 this time 2012-10-18 15:56:06 -05:00
Anthony Minessale a20aec182a add rtp_manual_video_rtp_bugs 2012-10-16 18:43:00 -04:00
Anthony Minessale 2369ffa989 sofia: on apply-inbound-acl you can now specify <list name>:<pass context>:<fail context> 2012-10-12 17:05:15 -04:00
Anthony Minessale a800a5fc5c FS-4708 add <param name="NDLB-allow-crypto-in-avp" value="true"/> to your sofia profile and it should set the header 2012-10-11 10:36:07 -05:00
Anthony Minessale b1c90dff53 FS-4669 ok this FS console trace demonstrates your problem, try this patch 2012-10-10 13:46:13 -05:00
Anthony Minessale e1fe289672 refactor db stuff to use single string dsn to avoid code duplication and introduce switch_sql_queue_manager api to create transactional sql queues to aggregate a bunch of sql stmts into transactions 2012-10-09 20:20:32 -05:00
Eliot Gable 1fe96ac38c Handle building on different PGSQL versions and update error message in Sofia. 2012-10-09 18:42:23 +00:00
Eliot Gable 5cb354dddc Initial core-pgsql support based on native libpq; FS starts and stops without errors using core-pgsql. 2012-10-08 20:33:57 +00:00
Anthony Minessale 6d01ad5e38 some more priority tweaks 2012-10-03 14:10:22 -05:00
Anthony Minessale 51bdf8522a FS-4677 --resolve 2012-10-02 12:22:03 -05:00
Anthony Minessale 80c2bd786a FS-4669 --resolve 2012-10-02 10:31:32 -05:00
Anthony Minessale 464155c5cd more priority tweaks 2012-10-01 10:20:48 -05:00
Anthony Minessale 8733a2c895 some priority queuing tweaks for performance 2012-10-01 11:47:26 -05:00
Anthony Minessale 5ecccf539d FS-4637 please test and repost log 2012-09-20 15:57:08 -05:00
Anthony Minessale cba999b551 FS-4598 reasonable req 2012-09-19 11:47:53 -05:00
Anthony Minessale 927c646dc7 update error message to explain more 2012-09-19 10:14:38 -05:00
Anthony Minessale 1b2b456510 add transfer_to variable for call processing 2012-09-18 15:39:28 -05:00
Anthony Minessale 475522b520 tweak 2012-09-18 11:13:09 -05:00
Jeff Lenk 6803346c94 fix for last commit - tony please check 2012-09-17 23:18:17 -05:00
Anthony Minessale 61f4648aa7 FS-4621 --resolve everyone will want this patch omfg 2012-09-17 20:02:14 -05:00
Anthony Minessale 3359f04a3f only use the wait_for_aleg_ack when the call is unanswered 2012-09-14 16:21:44 -05:00
Anthony Minessale 6721cd918a hangup unauth calls with rejected cause 2012-09-14 11:19:36 -05:00
Brian West 4100c3b532 FS-4599 --resolve 2012-09-14 10:29:25 -05:00
Anthony Minessale 8f0c726b13 add send-display-update profile param to disable the update method 2012-09-11 15:40:50 -05:00
Anthony Minessale 36cee285b0 FS-4602 --resolve 2012-09-08 16:12:35 -05:00
Anthony Minessale cd8814844a FS-4408 fix crash caused by missing or invalid call-id in sip invite 2012-09-07 15:08:10 -05:00
Anthony Minessale 4cb0e2e5bd protect against case with null sofia_private in callback 2012-09-06 10:59:39 -05:00
Anthony Minessale 77de3905ee one more try 2012-09-05 13:48:52 -05:00
Anthony Minessale d45db89833 second try at sip_wait_for_aleg_ack 2012-09-05 13:11:32 -05:00
Anthony Minessale bfee2f5382 pull this code 2012-08-31 17:38:06 -05:00
Anthony Minessale 984b27c68d add sip_wait_for_aleg_ack var 2012-08-31 14:49:21 -05:00
Anthony Minessale 722919668d add channel events to message when its in-dialog 2012-08-30 16:38:31 -05:00
Anthony Minessale 6d2b3256c3 another efficiency pass on sofia and refactoring of 3c685bff25 to be more efficient 2012-08-30 15:26:13 -05:00
Anthony Minessale c7d7bf23d3 only skip cdr on challenge calls not cancel 2012-08-29 18:35:52 -05:00
Anthony Minessale fb9b69f469 add fire-message-events profile param 2012-08-29 15:34:17 -05:00
Anthony Minessale d1b0b1168a some minor regressions from the last commit 2012-08-29 14:42:00 -05:00
Anthony Minessale c1d2624ce5 FS-4570 --resolve 2012-08-29 11:50:55 -05:00
Anthony Minessale 3c685bff25 fix double sessions on auth challenged calls 2012-08-29 10:38:37 -05:00
Anthony Minessale 29a3d7ab02 copy channel data into RECV_INFO event 2012-08-23 13:07:08 -05:00
Anthony Minessale 5213c764bb FS-4079 FS-4540 minor refactoring to fix some minor side effects of recent changes 2012-08-23 11:10:03 -05:00
Anthony Minessale b3140af073 cleanup 2012-08-22 17:05:25 -05:00
Anthony Minessale 2a8841ab66 change mod_sofia to use new core based recovery engine 2012-08-22 16:27:07 -05:00
Anthony Minessale a6bdbb2c09 FS-4559 --resolve 2012-08-22 16:03:47 -05:00
Anthony Minessale e008af0e50 refactor some unneeded code and move artoo code into the core 2012-08-22 10:08:20 -05:00
Anthony Minessale 00f586ca5a fix endless 5xx race when system is paused or overloaded 2012-08-21 16:19:25 -05:00
Anthony Minessale b6f64dc1c2 FS-4079 FS-4540 please update and test 2012-08-21 00:14:50 -05:00
Anthony Minessale 8c6b8edfea FS-4542 --resolve ok if this causes any problems it should lead us back to this commit 2012-08-17 14:07:20 -05:00
Anthony Minessale b81e780a26 FS-4079 FS-4540 new patch 2012-08-17 13:24:20 -05:00
Anthony Minessale cc351ca004 revert 2012-08-16 12:09:19 -05:00
Anthony Minessale 42bf44de51 FS-4539 please test this and post new logs if necessary 2012-08-16 11:56:55 -05:00
Anthony Minessale bb69310259 FS-4079 FS-4540 please update to this version 2012-08-15 22:51:41 -05:00
Anthony Minessale e5a15cde31 debug lost read lock 2012-08-15 15:11:57 -05:00
Anthony Minessale b3a6bb9c2b improve parsing 2012-08-15 11:19:16 -05:00
Anthony Minessale 0d05762085 FS-4079 revert 4ef9b3fe56 2012-08-14 17:06:02 -05:00
Anthony Minessale 4ef9b3fe56 FS-4079 new patch, please test 2012-08-13 13:48:06 -05:00
Anthony Minessale d806014009 FS-4079 try this 2012-08-07 17:23:01 -05:00
Anthony Minessale b843e8fd8b FS-4495 --resolve 2012-08-06 10:49:48 -05:00
Anthony Minessale 996c5378a1 4579 tweaks 2012-08-05 16:45:14 -05:00
Anthony Minessale e97da8e20a remove debug 2012-07-31 16:35:56 -05:00
Anthony Minessale a7b10081c8 send notifies for refer for 4579 2012-07-31 15:26:03 -05:00
Anthony Minessale e40e8696fc update 4579 stuff 2012-07-31 14:01:56 -05:00
Anthony Minessale 0f4ecab5e9 FS-4481 --resolve seg is fixed but just utf-8 will not work. you need type/subtype format like text/utf-8 2012-07-30 16:36:20 -05:00
Anthony Minessale 365b9feb72 457x tweaks 2012-07-27 15:07:11 -05:00
Anthony Minessale 034d3741c1 4569 tweaks 2012-07-26 21:07:10 -05:00
Anthony Minessale 772f60d235 4569 tweaks 2012-07-26 16:47:50 -05:00
Anthony Minessale 93f96addc3 FS-4453 confirm this fixes your problem please 2012-07-26 12:32:51 -05:00
Anthony Minessale d832b5dfef FS-4453 --resolve this will now cause up to a 20 second timeout waiting for the response and the call will be blocking 2012-07-24 13:45:10 -05:00
Anthony Minessale 9fe08675a1 add tags to allow crypto in avp 2012-07-20 12:11:02 -05:00
Anthony Minessale f50d14a7d1 treate no method as INVITE 2012-07-19 17:03:23 -05:00
Anthony Minessale 7ec09b0e56 FS-4378 --resolve 0 is success, thats the missing bit, this will work 2012-07-19 11:09:30 -05:00
Anthony Minessale ec412c07d2 typo 2012-07-18 23:02:32 -05:00
Anthony Minessale d3f1eeea61 FS-4378 actually fire the event 2012-07-18 12:37:12 -05:00
Anthony Minessale 223244d491 FS-4435 looks ok at a glance, at least this code is isolated to the small few who actually use it so i will put it in for testing 2012-07-17 17:01:10 -05:00
Anthony Minessale cbca8b3480 FS-4428 --resolve 2012-07-16 13:53:19 -05:00
Anthony Minessale 18a16e6931 FS-4335 test this patch, and also remember you must resubmit the logs after each new test 2012-07-12 17:45:43 -05:00
Anthony Minessale cc48015709 conf tweaks 2012-07-12 14:30:44 -05:00
Anthony Minessale 4e0f40d7c6 update 2012-07-11 17:25:45 -05:00
Anthony Minessale 2aebe2456f first pass on some new stuff 2012-07-11 15:15:50 -05:00
Anthony Minessale ba428a1559 FS-4406 please test asap and report back 2012-07-10 23:04:16 -05:00
Anthony Minessale 6904ae6f3b FS-4404 regression from b9b4db7d40 2012-07-10 13:28:38 -05:00
Stefan Knoblich 111ef49f1f mod_sofia: Use switch_add_event_header_string() for string values.
Errors fixed:
	sofia.c: In function 'sofia_handle_sip_i_refer':
	sofia.c:7323:5: error: format not a string literal and no format arguments
	sofia.c:7324:5: error: format not a string literal and no format arguments

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-07-10 14:30:01 +02:00
Anthony Minessale e79e6146c5 FS-4378 add sofia::error custom event 2012-07-09 10:56:04 -05:00
Anthony Minessale b9b4db7d40 FS-4404 --resolve 2012-07-09 10:37:15 -05:00
Anthony Minessale 694c8c0fa1 FS-4335 please update and try this 2012-07-05 11:42:07 -05:00
Anthony Minessale 9470c079dd FS-4298 see if you can see the sip_reinvite_sdp variable with this patch 2012-06-12 10:15:14 -05:00
Travis Cross c85c8d7bbd
Add mechanism to set OpenSSL session timeout
In a sofia profile, you can now set the parameter tls-timeout to a
positive integer value which represents the maximum time in seconds
that OpenSSL will keep a TLS session (and its ephemeral keys) alive.

This value is passed to OpenSSL's SSL_CTX_set_timeout(3).

OpenSSL's default value is 300 seconds, but the relevant standard
(RFC 2246) suggests that much longer session lifetimes are
acceptable (it recommends values less than 24 hours).

Longer values can be useful for extending battery life on mobile
devices.

Signed-off-by: Travis Cross <tc@traviscross.com>
2012-06-11 21:46:05 +00:00
Michael Jerris ec27618fc8 don't segfault after starting sofia, upon xml_open_config lookup failure for the profile from launch_sofia_worker_thread 2012-06-11 10:43:55 -04:00
Anthony Minessale fc2bb00eb1 FS-4298 --resolve var is called execute_on_sip_reinvite 2012-06-08 12:43:50 -05:00
Raymond Chandler 9b488fbffd pnp 2012-06-04 15:16:30 -04:00
Travis Cross c98cdb4e04 avoid warning if late negotiation is enabled anyway 2012-06-01 21:44:21 +00:00
Anthony Minessale 410040218a add warning so users know inbound-zrtp-passthru will enable late negotiation 2012-06-01 14:11:21 -05:00
Anthony Minessale f685e4c504 allow ep_codec_string to draw from absolute_codec_string before the profile prefs 2012-06-01 10:06:28 -05:00
Anthony Minessale 693e04a7de FS-4250 please post a new log if this does not work 2012-05-31 09:04:14 -05:00
Anthony Minessale 8bb55ed4bf abstract out originate_signal_bond to a function to avoid confustion and regressions 2012-05-29 13:10:15 -05:00
Travis Cross 23f8967c32
add enhanced zrtp passthrough (zrtp passthru) mode
ZRTP passthrough mode allows two ZRTP-capable clients to negotiate an
end-to-end security association through FreeSWITCH.  The clients are
therefore able to be certain that the FreeSWITCH instance mediating
the call cannot eavesdrop on their conversation.

Importantly, this capability is maintained across multiple FreeSWITCH
hops.  If widely deployed, this enables a global network architecture
where two people can speak securely with strong cryptographically
protected authentication and confidentiality.

With this commit we implement a zrtp-passthru mode that handles all
the details of the negotiation intelligently.  This mode can be
selected by setting the boolean parameter inbound-zrtp-passthru in the
sofia profile.  This will also force late-negotiation as it is
essential for correctly negotiating an end-to-end ZRTP security
association.

When an incoming call with a zrtp-hash is received and this mode is
enabled, we find the first audio and the first video zrtp-hash in the
SDP and store them as remote values on this channel.  Once a b-leg is
available, we set the local zrtp-hash values on that channel to the
remote zrtp-hash values collected from the a-leg.

Because zrtp-passthru absolutely requires that the channels negotiate
the same codec, we offer to the b-leg only codecs that the a-leg can
speak.  Once the b-leg accepts a codec, we will force that choice onto
the a-leg.

If the b-leg sends us zrtp-hash values in the signaling, we store
those as remote values on the b-leg and copy them to the local values
on the a-leg.

At this point, each leg has the zrtp-hash values from the other, and
we know we can do ZRTP passthrough mode on the call.  We send the
b-leg's zrtp-hash back to the a-leg in the 200 OK.

We then enable UDPTL mode on the rtp streams for both the audio and
the video so that we don't interfere in the ZRTP negotiation.

If the b-leg fails to return a zrtp-hash in the signaling, we set up a
ZRTP security association with the a-leg ourselves, if we are so
equipped.  Likewise, if the a-leg fails to send a zrtp-hash in the
signaling, we attempt to set up a ZRTP security association ourselves
with the b-leg.

The zrtp-passthru mode can also be enabled in the dialplan by setting
the boolean channel variable zrtp_passthru.  If enabled in this
manner, we can't force late-negotiation, so the user would need to be
sure this is configured.

If ZRTP passthrough mode is not enabled in either manner, this change
should have no effect.

Channel variables for each of the various zrtp-hash values are set,
though it is anticipated that there is no good reason to use them, so
they may be removed without warning.  For checking whether zrtp
passthrough mode was successful, we provide the channel variable
zrtp_passthru_active which is set on both legs.

Though not implemented by this commit, the changes here should make it
more straightforward to add correct zrtp-hash values to the signaling
and verify that correct hello hash values are received when FreeSWITCH
is acting as a terminating leg of the ZRTP security association.

A historical note...

This commit replaces the recently-added sdp_zrtp_hash_string method,
commit 2ab1605a88.

This prior method sets a channel variable from the a-leg's zrtp-hash,
then relies on the dialplan to export this channel variable to the
b-leg, where it is put into the SDP.

While it was a great start and wonderful for testing, this approach
has some drawbacks that motivated the present work:

 * There's no good way to pass the zrtp-hash from the b-leg back to
   the a-leg.  In fact, the implementation seems to send the a-leg's
   zrtp-hash back to the originating client in the 200 OK.  This is
   not correct.

 * To support video, we'd need to have a separate dialplan variable,
   and the dialplan author would need to deal with that explicitly.

 * The API is problematic as it requires the dialplan author to
   understand intricate details of how ZRTP works to implement a
   correct dialplan.  Further, by providing too fine-grained control
   (but at the same time, not enough control) it would limit our
   ability to make the behavior smarter once people started relying on
   this.
2012-05-24 20:39:03 +00:00
Travis Cross 16cf43a68d fix indentation; whitespace 2012-05-23 23:46:21 +00:00
Anthony Minessale fb790bc320 block any inbound messages when queue is full; add debounce for mwi and pres on register; fix missing detach attr on new mode to process reg in new thread 2012-05-22 10:27:23 -05:00
Anthony Minessale 792b004f36 add mwi-use-reg-callid 2012-05-21 13:55:50 -05:00
Anthony Minessale bbdcd33bde performance tweaks for sip message parsing and event system 2012-05-17 20:10:53 -05:00
Anthony Minessale b117a65c50 put a little contention in the reg in new thread feature to prevent endless pileup 2012-05-17 19:57:02 -05:00
Anthony Minessale 5c75d4cf5b FS-4220 --resolve i refactored this into a general cross platform function and use it everywhere else we try to set affinity 2012-05-15 08:31:42 -05:00
Anthony Minessale 0a5a057c46 add inbound-reg-in-new-thread sofia param to launch a new thread to process each new inbound register when using heavier backends 2012-05-14 17:51:15 -05:00
Anthony Minessale 5b3b77071b make sure bargers use the same codec as bargee to avoid transcoding delay 2012-05-14 10:03:35 -05:00
Anthony Minessale f3b1809a63 tweak to standby mode 2012-05-11 10:20:45 -05:00
Anthony Minessale f9653fbd38 FS-4204 --resolve 2012-05-10 22:34:37 -05:00
Anthony Minessale 07204a1fb5 add param:confirm-blind-transfer var:confirm_blind_transfer that makes blind transfers keep the transferrer on the line until its confirmed that the call was completed or brings it back to the bridge. blind_transfer_ack app can be executed in the dp by the transferee to indicate sucess or fail or a sucessful bridge will automatically trigger a success 2012-05-08 08:50:41 -05:00
Anthony Minessale a511ff3026 re-implement sla barge using eavesdrop backend 2012-05-07 13:44:16 -05:00
William King 6ac20ed54d If the notify event contains call-info headers, then process the call-info linked list into comma separated values and add them to a header on the event. 2012-05-04 10:07:08 -07:00
Anthony Minessale 8664dc6d5a some perfomance tweaks 2012-05-03 16:31:21 -05:00
William King 40fff624df Some sip notify events don't have a content type, such as notifies that only update the caller id info of a call. 2012-05-02 12:55:34 -07:00
Anthony Minessale 8203475563 FS-4148 --resolve note: see switch_core_session_get_partner 2012-04-26 08:52:29 -05:00
Anthony Minessale 845639025c FS-4122 2012-04-20 08:04:32 -05:00
Anthony Minessale 677b223579 FS-4122 --resolve this fixes the issue and eliminates the delay unless you configure it to have some 2012-04-18 09:56:06 -05:00
Ken Rice c5554eb939 Copyright date update. 2012-04-18 11:52:02 -05:00
Ken Rice 437e502b59 fix my contact info as i havent had that email address in years 2012-04-18 11:52:02 -05:00
Anthony Minessale 1145905513 FS-4106 --resolve 2012-04-13 11:18:16 -05:00
Anthony Minessale 6072da1b1f FS-3993 --resolve 2012-04-10 15:46:27 -05:00
Ken Rice cd8d4d6812 RESOLVE FS-4081 2012-04-09 13:30:51 -05:00
Anthony Minessale 153a3b3d96 fix null warning 2012-04-05 11:18:18 -05:00
Anthony Minessale 61fe806c0a delete subs on 481 2012-04-02 14:51:23 -05:00
Anthony Minessale 2ab1605a88 ZRTP passthru mode code for phil 2012-03-29 18:37:15 -05:00
Anthony Minessale ef9dfe42fc mirror back record-route header in options 2012-03-29 15:58:19 -05:00
Anthony Minessale 221b82f1e9 FS-4053 try this 2012-03-29 11:36:07 -05:00
Anthony Minessale 2baed0ab00 FS-4016 --resolve 2012-03-28 12:24:19 -05:00
Anthony Minessale 6f6765b8f2 start one msg thread per cpu by default 2012-03-27 16:48:30 -05:00
Anthony Minessale 2da9450a8b FS-4048 --resolve 2012-03-27 10:18:08 -05:00
Anthony Minessale 061d6c9cda FS-4012 oh no are we in the 4xxx range for bug numbers now 2012-03-23 19:03:06 -05:00
Anthony Minessale f558247d7d add user_via to ack in case with track calls 2012-03-07 15:41:02 -06:00
Michael Jerris 063acdbd24 remove some debug 2012-03-02 17:58:05 -05:00
Anthony Minessale 17cb6a22b3 add some defensive code to allow support for yealink in SCA mode even when its broken 2012-03-02 16:42:05 -06:00
Anthony Minessale ee95a35b71 formatting 2012-02-24 15:18:44 -06:00
Anthony Minessale e9a7cb42a1 FS-3930 --resolve 2012-02-21 15:52:17 -06:00
Anthony Minessale 341cc2f0fc FS-3917 sneaky sql null vs != crap 2012-02-17 19:47:57 -06:00
Anthony Minessale db9aa0b59b FS-3906 --resolve FS-3907 doh lisdexic 2012-02-16 09:49:41 -06:00
Anthony Minessale 3004fa05d6 FS-3907 2012-02-15 16:24:21 -06:00
Anthony Minessale 60fd5f9a73 FS-3842 going to go on a hunch and push this change 2012-02-10 12:13:52 -06:00
Anthony Minessale 9b02315282 add presence-disable-early sofia option to send non-specifc presence messages w/o special case for early 2012-02-07 11:10:51 -06:00
Anthony Minessale 12907b454c FS-3868 --resolve 2012-02-02 16:18:45 -06:00
Anthony Minessale 23dcdbd8d1 produce sip_full_via var 2012-02-02 15:09:32 -06:00
Anthony Minessale 348ac89809 FS-3855 --resolve 2012-01-31 11:03:09 -06:00
Anthony Minessale f25c5aaf27 FS-3842 here is the from and contact change but I can't remove the user agent but I added a new param to the gateway config called options_user_agent to set something specific 2012-01-29 17:37:56 -06:00
Anthony Minessale cde54eb5e8 FS-3842 the fix was to remove the (null) if you are asking for a to uri in the options with no username try this patch. You were not clear that you were looking for no username in the to uri. Keep in mind our system considers a 404 a sucessful response to an options request anyway but this should be what you want. 2012-01-27 12:55:09 -06:00
Anthony Minessale 3a71f86209 FS-3842 --resolve I think these feilds were recently only made optional when register=true. This should take care of it. 2012-01-27 09:10:18 -06:00
Anthony Minessale 049be82ae8 FS-2216 found one bug that is 4 years old from commit 205cf0534f 2012-01-26 16:54:09 -06:00
Anthony Minessale b3b33ea995 FS-3794 please test this version 2012-01-26 04:46:48 -06:00
Anthony Minessale 5783078401 FS-3794 please try latest and see if you get any more missing hostnames 2012-01-24 17:38:36 -06:00
Anthony Minessale 224f4c0f8a fix packet storm of vid refresh in edge case 2012-01-24 11:38:41 -06:00
Anthony Minessale 5d4cccd447 FS-3818 --resolve 2012-01-20 13:33:54 -06:00
Anthony Minessale b3f3a10336 FS-3794 revert 2012-01-19 14:09:36 -06:00
Anthony Minessale 23680eed36 remove erronous line to set TFLAG_BYE 2012-01-19 14:08:18 -06:00
Brian West edd6562ce3 FS-3726 2012-01-19 19:43:48 -06:00
Anthony Minessale 0a503b1a77 FS-3794 revert some of baa11b2d03 2012-01-18 18:08:52 -06:00
Anthony Minessale 8cba6ee19e FS-3819 --resolve regression from FS-3762 10dfc377 feeding NULL string to printf again 2012-01-18 18:17:59 -06:00
Anthony Minessale 7a370d7771 FS-3819 --resolve regression from FS-3762 10dfc377 feeding NULL string to printf 2012-01-18 17:45:48 -06:00
Anthony Minessale baa11b2d03 FS-3794 pre-emptive changes based on reports 2012-01-18 12:25:58 -06:00
Anthony Minessale 34c0cbeb47 FS-3794 ok all testers update to this version and retest 2012-01-17 16:08:25 -06:00
Anthony Minessale 3b825e0113 FS-3794 try this patch for the REFER issue 2012-01-17 09:21:47 -06:00
Anthony Minessale e87a48b824 FS-3812 --resolve 2012-01-13 15:22:31 -06:00
Anthony Minessale 5b7e20133a add registration-thread-frequency param 2012-01-09 17:17:03 -06:00
Anthony Minessale 8daaec3849 FS-3794 remove delete-subs-on-register param and some tweaks based on this bug report 2012-01-03 11:40:52 -06:00
Brian West 8059cdca81 FS-3771 --resolve 2011-12-22 14:03:32 -06:00
Anthony Minessale 8073c9d626 FS-3698 reproduce the logs etc with this version 2011-12-19 15:35:02 -06:00
Jeff Lenk cd7047a30c doh 2011-12-19 11:50:03 -06:00