Commit Graph

25799 Commits

Author SHA1 Message Date
Travis Cross beca9eff9d Consolidate two conditionals
If we get SWITCH_STATUS_BREAK then we didn't get
SWITCH_STATUS_SUCCESS.
2014-04-19 01:49:25 +00:00
Travis Cross 6f279e52b0 Remove variable assignment without effect
We're breaking out of the loop here anyway, so setting done to true is
useless.
2014-04-19 01:49:25 +00:00
Travis Cross 90930d2958 Fix memory leak in phrase macro playback
We were leaking memory when break_on_match was set or when we received
back SWITCH_STATUS_BREAK from a callee as we were failing to free
field_expanded_alloc.
2014-04-19 01:49:25 +00:00
Travis Cross bd2b63da27 Remove tautological conditional
If pattern is null we're setting it to a non-null value, so this
branch will always be taken.

Use `git diff -w` or `git log -p -w` to see what's going on in this
commit.
2014-04-19 01:49:24 +00:00
Travis Cross e9c8afc5ec Fix memory leak on memory error
In the event of a memory error, we were trying to free a null pointer
while leaking the allocation for field_expanded_alloc.
2014-04-19 01:49:24 +00:00
Travis Cross 6e8a053464 Move variables down into loop where they're used
These variables aren't used outside of this for loop, so they should
be declared within it.
2014-04-19 01:49:24 +00:00
Seven Du 586f0d2e17 fix compiler warning 2014-04-17 14:59:09 +08:00
Anthony Minessale 370230e323 update 2014-04-17 04:33:21 +05:00
Anthony Minessale 41fa2c9c6a FS-6462 --resolve
I found a problem here but it may not completely match your expectations.
I reviewed the RFC 4028 and checked against the code and I discovered we should not be putting a Min-SE in any response at all besides a 422:

section 5:

   The Min-SE header field MUST NOT be used in responses except for
   those with a 422 response code.  It indicates the minimum value of
   the session interval that the server is willing to accept.

I corrected this problem and implemented the 422 response so if you request a value lower than the minimum specified for the profile.
If the value is equal or higher to the minimum, it will be reflected in the Session-Expires header in the response and no Min-SE will be present.
2014-04-17 04:32:44 +05:00
Anthony Minessale 264fd6ffcc FS-5997 regression from commit 70accd9f27 this caused some attended transfers to calls with multiple targets to get the abondoned channels to be stuck on write lock 2014-04-17 02:42:08 +05:00
Chris Rienzo 56e5a9ce8e FS-6407 --resolve mod_rayo: support SIP URI caller ID w/ display name 2014-04-15 14:28:11 -04:00
Raymond Chandler 33c484ad9f add parsing of user params on invite 2014-04-15 13:00:11 -04:00
Anthony Minessale a18ae09c61 stable branch version of spandsp changes in 4178688b4a 2014-04-15 01:57:28 +05:00
Nathan Neulinger 564f7b88f5 FS-6460 --resolve fix leaked RTP ports that cause mod_skinny to fail after N calls 2014-04-14 13:22:24 -05:00
Chris Rienzo 00500421c4 FS-6447 --resolve return subscriber-absent platform-code 20 if <dial> is attempted to user that is not registered 2014-04-14 09:48:03 -04:00
Anthony Minessale c748b0d97f remove SSML from mod_rss 2014-04-11 03:34:13 +05:00
Chris Rienzo 66c268a5ab mod_rayo: fixed input crash introduced in 2014-04-07 commit 2014-04-10 10:22:01 -04:00
Travis Cross 0a388d0104 Suppress spurious warning in phrase macro playback
Prior to this commit, if anything at all went wrong in
switch_ivr_phrase_macro_event() we would generate a warning like this:

  [WARNING] switch_ivr_play_say.c:348 Macro [macro_name]: 'pattern_name' did not match any patterns

This is clearly misleading.  The natural thing to do on seeing that
message is to verify that the language files are there, and that the
pattern really does exist in that macro.  But none of that was usually
the problem.  The message would be generated if the language wasn't
found, or if the channel had gone away, for example.

With this commit, we verify that we actually tried looking for the
pattern before displaying the warning about the pattern not matching.
2014-04-09 05:30:33 +00:00
Travis Cross 622a5d7ef2 Avoid playback on dead channels in voicemail
For years we've been generating spurious messages like:

  [WARNING] switch_ivr_play_say.c:348 Macro [voicemail_ack]: 'saved' did not match any patterns

This would happen when the caller hangs up during the playback of
certain prompts in the voicemail system where we weren't checking the
return value of vm_macro_get().  Looking closely at the log, it's
clear we were calling down into switch_ivr_phrase_macro() long after
the channel was gone.

The message above is also misleading -- switch_ivr_phrase_macro()
would have been able to find that pattern just fine, but it never
actually looked because the channel was gone.  We'll clean up that
message in a follow on commit.
2014-04-09 05:30:26 +00:00
Travis Cross 39bbcaff1b Avoid crash on event without content-type
If we received an event without a content-type header we were
dereferencing a null pointer leading to a seg fault.

Reported-by: Ico <ico@voip-io.org>

ESL-90 --resolve
2014-04-09 05:30:22 +00:00
Brian West 4425265038 ESL-89: fix install path and single_command require
Conflicts:
	libs/esl/ruby/single_command.rb
2014-04-07 16:29:45 -04:00
Michael Jerris 58331abefa ESL-89: --resolve add rubymod-install and add ability to use a ruby not in your path by setting RUBY env var
Conflicts:
	libs/esl/Makefile.am
2014-04-07 15:50:30 -04:00
Chris Rienzo 9f9262486a mod_rayo: fix memory corruption in dial, input, output 2014-04-07 12:37:24 -04:00
Anthony Minessale 84123800ef send muted members as recvonly on RFC4575 data 2014-04-07 20:51:51 +05:00
Anthony Minessale e6b8b3e4f2 fix seg in complete del with no arg 2014-04-07 01:05:07 +05:00
Anthony Minessale d7c3ec582d FS-5832 regression.... After this change the sticky completes were deleting. This should correct it 2014-04-06 03:52:08 +05:00
Brian West fb61a66770 swig 2014-04-05 13:42:59 -05:00
Anthony Minessale d621262db1 fix seg in alias del 2014-04-05 21:09:49 +05:00
Anthony Minessale a296cdaba2 force sofia rebuild 2014-04-04 23:44:42 +05:00
Anthony Minessale 87b935d6a1 FS-6287 2014-04-04 13:42:29 -05:00
Anthony Minessale 9836564352 FS-6403 --resolve
This commit also reverts 2 previous attempts to fix this very rare race issue spanning back to 2009

62ce853897 Patch from MOC
3a85348cdf FS-2302 mutex added around switch_xml_toxml()

The real problem was switch_xml_toxml_buf() was actually temporarily modifying the xml structure being searialized to make it appaer to be a root structure then serializing it and restoring the pointers.  This caused a non-threadsafe operation when some other thread was scanning the same xml structure.

This patch removes the modification and instead passes a new arg to switch_xml_toxml_r indicating to treat the structure as if it were a root structure.

This bug has been present since the induction of xml into FS.

Conflicts:
	src/switch_xml.c
2014-04-03 20:32:21 +05:00
Brian West 1936bdd410 FS-6422: --resolve obvious copy and paste error 2014-04-03 07:21:59 -05:00
Anthony Minessale 51e2d9bf84 FS-6421 --resolve 2014-04-02 16:43:54 -05:00
Anthony Minessale 693eea0d03 FS-6310 hold up, revert 2014-03-31 17:32:30 -05:00
Anthony Minessale 05f2f2cd14 FS-6310 --resolve try this version 2014-03-31 17:03:21 -05:00
Anthony Minessale ffe0cf67ff FS-6413 stable-version 2014-04-01 01:24:16 +05:00
Raymond Chandler cbcd1fec96 FS-5845 more leaks found by mikej 2014-03-25 22:45:42 -04:00
Ico 73790b4f0d Fix memory leak when outbound socket is closed by server
ESL-88 --resolve

Signed-off-by: Travis Cross <tc@traviscross.com>
2014-03-26 01:37:53 +00:00
Seven Du b96946822d add missing break, please review 2014-03-19 08:21:32 +08:00
Chris Rienzo 15e181780d FS-6374 --resolve mod_rayo sendfax was using uninitialized memory pool 2014-03-18 15:21:45 -04:00
Ken Rice 769a03a629 version bump 2014-03-17 16:34:43 -05:00
Anthony Minessale 01e12f6b0f force rebuild 2014-03-17 16:18:04 -05:00
Anthony Minessale fdafab786a FS-6287 --resolve 2014-03-17 16:17:41 -05:00
Travis Cross 8b496f976e Mitigate the CRIME TLS flaw
If an attacker can cause a device to make an authenticated request to
a service via TLS while including a payload of the attacker's choice
in that request, and if TLS compression is enabled, the attacker can
uncover the plaintext authentication information by making a series of
guesses and observing changes in the length of the ciphertext.

This is CVE-2012-4929.

FS-6360 --resolve

Thanks-to: Brian West <brian@freeswitch.org>
2014-03-16 16:07:02 +00:00
Chris Rienzo 468dc29ae0 mod_rayo: some bugfixes to pause-when-offline 2014-03-14 17:23:27 -04:00
Chris Rienzo 818bf3c6e3 mod_rayo: add new config pause-when-offline - will pause inbound calling if there are no online clients to handle calls. This is useful if you want FS to respond 503 to options ping when there are no online rayo clients. Default behavior is to disable this param. 2014-03-14 15:50:21 -04:00
Chris Rienzo 5269931bfd mod_rayo: fix regression in ACL 2014-03-14 14:33:53 -04:00
Chris Rienzo b1dbf0f5bb mod_rayo: add remote IP and port to xmpp stream logging 2014-03-14 14:24:53 -04:00
Anthony Minessale 2d35604369 FS-6350 --resolve Parse params out of user portion of caller_id and save them to sip_name_params
Conflicts:
	src/mod/endpoints/mod_sofia/sofia.c
2014-03-14 13:19:11 -05:00
Anthony Minessale 90da4deb1e do not retry so fast on failed outbound subs 2014-03-14 12:56:01 -05:00