Commit Graph

26118 Commits

Author SHA1 Message Date
Corey Farrell
ac48e34b87 Fix crash caused by merge error on review 4138
When merging from 12 to 13 there were conflicts,
I mistakenly had the loop run ast_closestream(others[0])
when it should be ast_closestream(others[x]).


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@427181 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-11-04 14:09:43 +00:00
Richard Mudgett
b586e7f0b2 res_pjsip: Add disable_tcp_switch option.
When a packet exceeds the MTU, pjproject will switch from UDP to TCP.  In
some circumstances (on some networks), this can cause some issues with
messages not getting sent to the correct destination - and can also cause
connections to get dropped due to quirks in pjproject deciding to
terminate TCP connections with no messages.

While fixing the routing/messaging issues is important, having a
configuration option in Asterisk that tells pjproject to not switch over
to TCP would be useful.  That way, if some glitch is discovered on some
other network/site, we can at least disable the behavior until a fix is
put into place.

AFS-197 #close

Review: https://reviewboard.asterisk.org/r/4137/
........

Merged revisions 427129 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@427130 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-11-03 18:15:20 +00:00
Corey Farrell
5bec46e6c8 Fix compile error caused by review 4138
There is no procedure called ast_closeframe, fix code to use
ast_closestream.

Reported By: Matt Jordan
........

Merged revisions 427087 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 427088 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@427089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-11-03 02:34:13 +00:00
Corey Farrell
5f17490f4d Fix ast_writestream leaks
Fix cleanup in __ast_play_and_record where others[x] may be leaked.
This was caught where prepend != NULL && outmsg != NULL, once
realfile[x] == NULL any further others[x] would be leaked. A cleanup
block was also added for prepend != NULL && outmsg == NULL.

11+: Fix leak of ast_writestream recording_fs in
app_voicemail:leave_voicemail.

ASTERISK-24476 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4138/
........

Merged revisions 427023 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 427024 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 427025 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@427026 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-11-02 08:12:06 +00:00
Corey Farrell
54460c74e4 func_jitterbuffer: fix frame leaks.
Fix code paths where it is possible for frames to leak.
Fix uninitialized variable in jb_get_fixed and jb_get_adaptive.

ASTERISK-22409 #related
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4128/
........

Merged revisions 427019 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 427020 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@427021 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-11-02 07:39:36 +00:00
Matthew Jordan
d5309929be res/res_stasis: Fix crash on module unload while performing operation
When the res_stasis module is unloaded, it will dispose of the apps_registry
container. This is a problem if an ARI operation is in flight that attempts
to use the registry, as the shutdown occurs in a separate thread. This patch
adds some sanity checks to the various routines that access the registry which
cause the operations to fail if the apps_registry does not exist.

Crash caught by the Asterisk Test Suite.
........

Merged revisions 426995 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426996 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-11-02 01:01:32 +00:00
Tzafrir Cohen
beb58e48c3 install init.d files on GNU/kFreeBSD
Review: https://reviewboard.asterisk.org/r/4118/
........

Merged revisions 426926 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 426927 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426933 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426934 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-31 16:50:53 +00:00
Scott Griepentrog
b3b93a7c15 pjsip: clarify tls cert and key file usage
A question arose as to whether a .pem file
could be provided in place of the .crt and
.key files in a PJSIP TLS configuration. I
tested this and discovered that although a
cert will be read from the pem file, a key
will not, and thus the priv_key_file entry
is still required. This update to the fine
documentation clarifies the option usage.

AST-1448 #close
Review: https://reviewboard.asterisk.org/r/4129/
Reported by: John Bigelow
........

Merged revisions 426928 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426930 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-31 16:40:17 +00:00
Scott Griepentrog
b4ee155c62 pjsip: Handle outbound unregister correctly
This updates the status of the outbound registration
to reflect when it has been unregistered.  Since the
registration is unregistered but is not stopped, the
registration schedule remains active as before.  The
patch also updates the documentation of both the AMI
and CLI commands.

ASTERISK-24411 #close
Review: https://reviewboard.asterisk.org/r/4119/
Reported by: John Bigelow
patches:
  unregister-patch1.txt uploaded by John Bigelow (License 5091)
........

Merged revisions 426923 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426924 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-31 16:21:57 +00:00
Matthew Jordan
f6809b01df channels/sip/reqresp_parser: Fix unit tests for r426594
When r426594 was made, it did not take into account a unit test that verified
that the function properly populated the unsupported buffer. The function
would previously memset the buffer if it detected it had any contents; since
this function can now be called iteratively on successive headers, the unit
tests would now fail. This patch updates the unit tests to reset the buffer
themselves between successive calls, and updates the documentation of the
function to note that this is now required.
........

Merged revisions 426858 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 426860 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426863 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426865 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-31 03:26:00 +00:00
Corey Farrell
b2320497f8 REF_DEBUG: Install refcounter.py to $(ASTDATADIR)/scripts
This change ensures refcounter.py is installed to a place where it
can be found by the Asterisk testsuite if REF_DEBUG is enabled.

ASTERISK-24432 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4094/
........

Merged revisions 426830 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 426831 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426832 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426833 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-31 03:08:23 +00:00
Corey Farrell
7bd256b711 app_queue: fix a couple leaks to struct call_queue in set_member_value
set_member_value has a couple leaks to references in the variable q
found through testsuite tests/queues/set_penalty.  Also remove the
REF_DEBUG_ONLY_QUEUES compiler declaration, this is no longer possible
with the updated REF_DEBUG code.

ASTERISK-24466 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4125/
........

Merged revisions 426805 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426806 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426807 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-30 23:55:34 +00:00
Corey Farrell
d51169cd36 audiohooks: Clean references to formats
Cleanup references to in_translate[x].format and
out_translate[x].format in ast_audiohook_detach_list.

ASTERISK-24465 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4124/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426803 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-30 23:44:27 +00:00
Kevin Harwell
c3b1d0df0d res_pjsip_exten_state: PJSIPShowSubscriptionsInbound causes crash
Currently, it is possible for some subscriptions to get into a NULL state. When
this occurs and the PJSIPShowSubscriptionsInbound ami action is issued and a
device is subscribed for extension state then the associated subscription state
object can't be located.  The code then attempts to dereference a NULL object.
Added a NULL check to avoid the problem.

Reported by: John Bigelow
........

Merged revisions 426779 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426780 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-30 21:13:30 +00:00
Kevin Harwell
fed9d0deb0 res_pjsip: incorrect qualify statistics after disabling for contact
When removing the qualify_frequency from an AoR or a contact the statistics
shown when issuing "pjsip show aors" from the CLI are incorrect. This patch
deletes the contact's status object from sorcery, disassociating it from the
contact, if the qualify_freqency is removed from configuration.

ASTERISK-24462 #close
Reported by: Mark Michelson
Review: https://reviewboard.asterisk.org/r/4116/
........

Merged revisions 426755 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426757 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-30 17:17:27 +00:00
Walter Doekes
3f31b73f54 app_voicemail: Fix unchecked bounds of myArray in IMAP_STORAGE.
In update_messages_by_imapuser(), messages were appended to a finite
array which resulted in a crash when an IMAP mailbox contained more
than 256 entries. This memory is now dynamically increased as needed.

Observe that this patch adds a bunch of XXX's to questionable code. See
the review (url below) for more information.

ASTERISK-24190 #close
Reported by: Nick Adams
Tested by: Nick Adams

Review: https://reviewboard.asterisk.org/r/4126/
........

Merged revisions 426691 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 426692 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426696 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426702 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-30 09:20:28 +00:00
Igor Goncharovskiy
934ab9d1b8 Add additional checks for NULL pointers to fix several crashes reported.
ASTERISK-24304 #close
Reported by: dhanapathy sathya
........

Merged revisions 426666 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426667 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426668 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-30 06:09:27 +00:00
Matthew Jordan
906c7f4b97 channels/chan_sip: Add improved support for 4xx error codes
This patch adds support for 414, 493, 479, and a stray 400 response in REGISTER
response handling. This helps interoperability in a number of scenarios.

Review: https://reviewboard.asterisk.org/r/3437

patches:
  rb3437.patch uploaded by oej (License 5267)
........

Merged revisions 426599 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 426600 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426601 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426602 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-30 01:59:02 +00:00
Matthew Jordan
ab07cf71f8 channels/chan_sip: Support mutltiple Supported and Required headers
A SIP request may contain multiple Supported: and Required: headers. Currently,
chan_sip only parses the first Supported/Required header it finds. This patch
adds support for multiple Supported/Required headers for INVITE requests.

Review: https://reviewboard.asterisk.org/r/2478

ASTERISK-21721 #close
Reported by: Olle Johansson
patches:
  rb2478.patch uploaded by oej (License 5267)
........

Merged revisions 426594 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 426595 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426596 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426597 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-30 01:47:25 +00:00
Tzafrir Cohen
b1acfd36fd Fix building chan_phone on big endian systems
A left over from the formats conversion (Corey Farrell).

ASTERISK-24458 #close
Review: https://reviewboard.asterisk.org/r/4117/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426570 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-29 10:33:14 +00:00
Richard Mudgett
1ba42a4d8e bridge_builtin_features: Add missing channel locks around ast_get_chan_features_general_config().
The feature_automonitor() and feature_automixmonitor() functions were not
locking the channel around ast_get_chan_features_general_config().
Accessing the channel datastore list without the channel locked is a good
way to corrupt the list or follow the pointer chain into oblivion.
........

Merged revisions 426531 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 21:26:20 +00:00
Corey Farrell
0ca681a414 res_fax: Resolve T38 gateway frame leak.
When frames are translated by a fax gateway they need to be freed.  The
existing call to ast_frfree was unreachable.  This change reorganizes
fax_gateway_framehook to ensure that ast_frfree is called when needed.

ASTERISK-24457 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4115/
........

Merged revisions 426527 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426528 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426529 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 21:05:13 +00:00
Corey Farrell
a256324fcf manager: Unsubscribe from acl_change_sub at shutdown.
ASTERISK-24453 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4110/
........

Merged revisions 426524 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426525 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 20:42:42 +00:00
Malcolm Davenport
ed07535b1c ASTERISK-23512, correct inaccurate comment in manager.conf.sample
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426459 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 18:09:03 +00:00
Matthew Jordan
294ff83152 main/bridge: Destroy features struct on off nominal path during bridge impart
When a channel is imparted to a bridge, the invocation of the function may
provide an ast_bridge_features struct. Upon passing this to ast_bridge_impart,
the caller must assume that ownership has passed to the function, as in all
paths the function destroys the struct prior to returning (as its purpose is
to configure the behavior of the channel while in the bridge). On one off
nominal path - where the channel already has a PBX thread - the struct was not
being destroyed.

This patch fixes that glitch.

ASTERISK-24437 #close
Reported by: Scott Griepentrog
........

Merged revisions 426431 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426432 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 16:40:59 +00:00
Matthew Jordan
221dcb1335 main/manager: Fix typo in AMI event documentation of "OriginateResponse"
The parameter name is "Response", not "Resonse".

ASTERISK-24430 #close
Reported by: Dafi Ni
........

Merged revisions 426366 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426367 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426368 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 14:59:31 +00:00
Malcolm Davenport
0bbb351655 ASTERISK-24323, fix bug in documentation of AGI STREAM FILE CONTROL
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426362 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 14:56:31 +00:00
Malcolm Davenport
1ec27418da ASTERISK-24419, fix incorrect syntax for setting language in extensions.conf.sample
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426294 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 13:12:43 +00:00
Corey Farrell
688edd55c3 app_queue: Cleanup ao2_iterator
Clean ao2_iterator, resolving reference leak to queue members.

ASTERISK-24454 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4111/
........

Merged revisions 426255 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426260 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426266 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 11:20:21 +00:00
Corey Farrell
a113a7d2ea func_cdr: Fix CDR_PROP payload leak
Remove duplicate allocation of payload, preventing leak.

ASTERISK-24455 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4113/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426252 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-28 11:11:13 +00:00
Sean Bright
88d9d3f1fc configure: Add autoconf check for libopus.
Because opus transcoding support cannot be included in the standard Asterisk
distribution, a few codec_opus implementations have popped up.  To make it
easier for people to drop in opus support in their own installations, this
patch adds configure checks for libopus.

Review: https://reviewboard.asterisk.org/r/4106/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426234 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-27 17:54:32 +00:00
Matthew Jordan
b23580afe6 res/res_http_websocket: Fix minor nits found by wdoekes on r409681
When Moises committed the fixes for WSS (which was a great patch), wdoekes had
a few style nits that were on the review that got missed. This patch resolves
what I *think* were all of the ones that were still on the review.

Thanks to both moy for the patch, and wdoekes for the reviews.

Review: https://reviewboard.asterisk.org/r/3248/
........

Merged revisions 426209 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426210 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426211 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-27 02:46:35 +00:00
Matthew Jordan
f3fbcc550e res/res_phoneprov: Fix crash on shutdown caused by container cleanup
In res_phoneprov, unloading the module first destroys the http_routes
container, followed by the users. However, users may have a route in
the http_routes container; the validity of this container is not checked
in the users destructor. Hence, we hit an assert as the container has already
been set to NULL.

This patch does two things:
(1) It adds a sanity check in the user destructor (because why not)
(2) It switches the order of destruction, so that users are disposed of prior
    to the HTTP routes they may hold a reference to.

Note that this crash was caught by the Test Suite (go go testing!)
........

Merged revisions 426174 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-27 02:27:23 +00:00
Matthew Jordan
775640f658 res/res_srtp: Fix include issue for libsrtp 1.5.0
In libsrtp 1.5.0, crypto_get_random is no longer resolved simply by including
srtp.h. Now, one must include crypto_kernel.h as well. As it turns out, this
header file has been provided by the library since 2006, so this is a
relatively benign change.

ASTERISK-24436 #close
Reported by: Patrick Laimbock
........

Merged revisions 426140 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 426141 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 426142 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426143 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-27 01:47:26 +00:00
Jonathan Rose
e979d0d5c1 Documentation: Improve documentation for ExtensionStatus AMI events
Review: https://reviewboard.asterisk.org/r/4085/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426120 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-24 15:17:59 +00:00
Shaun Ruffell
14db1236ad codec_dahdi: Cannot use struct ast_translator.core_{src,src}_codec.
This fixes a Segmentation fault introduced in r419044 "media formats: re-architect
handling of media for performance improvements".

The problem is that codec_dahdi was using core_src_codec and core_dst_codec in the
ast_translator structure when these fields were never set. Now instead of trying to map
the new core codec descriptions to the way DAHDI defines different codecs, we will store
the DAHDI specific formats in 'struct translator' directly so we can refer to them without
mapping.

This also allows us to remove the "global_format_map" structure, since we can now query
the list of translators directly to make sure we do not ever register a DAHDI based
translator for a specific path more than once and eliminate the need to keep the list and
the map in sync.

ASTERISK-24435 #close
Reported by: Marian Koniuszko

Review: https://reviewboard.asterisk.org/r/4105/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426097 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-22 21:27:23 +00:00
Richard Mudgett
70f1c82ac2 translage.c: Fix regression when generating translation path strings.
Fix the AMI Status action read and write translation path strings from
growing for each channel in the status event list by reseting the ast
string given to ast_translate_path_to_str() to fill in the given
translation path.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@426079 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-21 17:47:38 +00:00
Matthew Jordan
0e911663e3 AST-2014-011: Fix POODLE security issues
There are two aspects to the vulnerability:
(1) res_jabber/res_xmpp use SSLv3 only. This patch updates the module to use
    TLSv1+. At this time, it does not refactor res_jabber/res_xmpp to use the
    TCP/TLS core, which should be done as an improvement at a latter date.
(2) The TCP/TLS core, when tlsclientmethod/sslclientmethod is left unspecified,
    will default to the OpenSSL SSLv23_method. This method allows for all
    encryption methods, including SSLv2/SSLv3. A MITM can exploit this by
    forcing a fallback to SSLv3, which leaves the server vulnerable to POODLE.
    This patch adds WARNINGS if a user uses SSLv2/SSLv3 in their configuration,
    and explicitly disables SSLv2/SSLv3 if using SSLv23_method.

For TLS clients, Asterisk will default to TLSv1+ and WARN if SSLv2 or SSLv3 is
explicitly chosen. For TLS servers, Asterisk will no longer support SSLv2 or
SSLv3.

Much thanks to abelbeck for reporting the vulnerability and providing a patch
for the res_jabber/res_xmpp modules.

Review: https://reviewboard.asterisk.org/r/4096/

ASTERISK-24425 #close
Reported by: abelbeck
Tested by: abelbeck, opsmonitor, gtjoseph
patches:
  asterisk-1.8-jabber-tls.patch uploaded by abelbeck (License 5903)
  asterisk-11-jabber-xmpp-tls.patch uploaded by abelbeck (License 5903)
  AST-2014-011-1.8.diff uploaded by mjordan (License 6283)
  AST-2014-011-11.diff uploaded by mjordan (License 6283)
........

Merged revisions 425987 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425991 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-20 14:15:33 +00:00
George Joseph
cb31a8aa7a build: Force -fsigned-char on platforms where the default for char is unsigned
gcc on the ARM platform defaults 'char' to 'unsigned char' whereas Intel and
SPARC default to 'signed char'.  This is only an issue in the rare cases where
negative values are assigned to a 'char' but this this patch insures
compatibility by detecting platforms that default to 'unsigned' and adding an
'-fsigned-char' flag to _ASTCFLAGS.

If compiling for ARM (native or cross-compile) be sure to run ./bootstrap.sh
and ./configure to regenerate the build files.  You shouldn't have to do this
for Intel or SPARC.

Tested-by: George Joseph

Review: https://reviewboard.asterisk.org/r/4091/
........

Merged revisions 425964 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425965 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-19 17:07:50 +00:00
Matthew Jordan
70b21c4617 res/res_pjsip_sdp_rtp: Revert 425922
This patch for r425922 introduced a bug, wherein sending an INVITE request
with no SDP would cause Asterisk to not send an SDP Offer in the 200
OK. The current structure of res_pjsip_sdp_rtp is a bit hard to deal with
to fix this, as create_outgoing_sdp has no knowledge of whether or not it is
creating an SDP as a new Offer or an Answer. This is something of an oversight
in the callback definition, as the caller of it does have this information.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425944 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-19 04:01:31 +00:00
Matthew Jordan
2c7556769c res/res_pjsip_sdp_rtp: Remove left over reference to override_prefs
The usage of the local override_prefs variable in create_outgoing_sdp_stream
was previously to track an override format preference set by PJSIP_MEDIA_OFFER.
Now, however, that function simply sets the joint capabilities structure,
session->req_caps. During the media format rework, the override_prefs was
instead used to check if there were any formats in session->req_caps.

However, this usage isn't useful in create_outgoing_sdp_stream.
session->req_caps contains the negotiated formats for *all* streams, not just
the current one being created. Thus, so long as any stream of any type has
provided a format, override_prefs will be non-zero. Hence, its usage in
checking whether or not we should look at the formats on the endpoint or
the joint capabilities is generally useless.

There's only two things useful to check:
(1) Does the endpoint have a format for the media type?
(2) Did we negotiate a format for the media type?

If either of those is a 'no', then we must kill the media stream.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425923 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-19 00:56:11 +00:00
Matthew Jordan
7a76de11b1 Blocked revisions 425921
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425922 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-19 00:50:30 +00:00
Jonathan Rose
8e610ab20e Sample Configurations: make 'pjsip reload' reload all reloadable pjsip modules
AST-1432 #close
Reported by: John Bigelow


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425905 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-17 22:43:34 +00:00
Matthew Jordan
dd7031bfb7 res_pjsip_session/res_pjsip_sdp_rtp: Be more tolerant of offers
When an inbound SDP offer is received, Asterisk currently makes a few
incorrection assumptions:

(1) If the offer contains more than a single audio/video stream, Asterisk will
    reject the entire stream with a 488. This is an overly strict response;
    generally, Asterisk should accept the media streams that it can accept and
    decline the others.
(2) If the offer contains a declined media stream, Asterisk will attempt to
    process it anyway. This can result in attempting to match format
    capabilities on a declined media stream, leading to a 488. Asterisk should
    simply ignore declined media streams.
(3) Asterisk will currently attempt to handle offers with AVPF with
    use_avpf=No/AVP with use_avpf=Yes. This mismatch results in invalid SDP
    answers being sent in response. If there is a mismatch between the media
    type being offered and the configuration, Asterisk must reject the offer
    with a 488.

This patch does the following:
* Asterisk will accept SDP offers with at least one media stream that it can
  use. Some WARNING messages have been dropped to NOTICEs as a result.
* Asterisk will not accept an offer with a media type that doesn't match its
  configuration.
* Asterisk will ignore declined media streams properly.

#SIPit31

Review: https://reviewboard.asterisk.org/r/4063/

ASTERISK-24122 #close
Reported by: James Van Vleet

ASTERISK-24381 #close
Reported by: Matt Jordan
........

Merged revisions 425868 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425879 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-17 13:35:21 +00:00
Matthew Jordan
97b5c22f07 channels/chan_sip: Respect outboundproxy setting when sending qualify requests
The outboundproxy setting is currently ignored when sending OPTIONS requests
as a result of the qualify setting. This means that if an Asterisk server is
unable to send the packet directly to a peer, it is unable to qualify any
non-inbound registered peer (e.g. a peer SIP Trunk).

This patch grabs the outboundproxy information for a peer when a qualify
attempt is being constructed and, if it finds the information, uses it
when sending the OPTIONS request.

Review: https://reviewboard.asterisk.org/r/3948

ASTERISK-24063 #close
Reported by: Damian Ivereigh
patches:
  outboundproxy-dai.patch uploaded by Damian Ivereigh (License 6632)
........

Merged revisions 425818 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 425819 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 425820 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425821 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-17 13:10:42 +00:00
Richard Mudgett
fa94bc815b AMI: Add missing VarSet events when a channel inherits variables.
There should be AMI VarSet events when channel variables are inherited by
an outgoing channel.  Also local;2 should generate VarSet events when it
gets all of its channel variables from channel local;1.

ASTERISK-24415 #close
Reported by: Richard Mudgett
Patches:
      jira_asterisk_24415_v12.patch (license #5621) patch uploaded by Richard Mudgett

Review: https://reviewboard.asterisk.org/r/4074/
........

Merged revisions 425782 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425783 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-17 02:41:34 +00:00
Matthew Jordan
5f300b7a40 bridge_native_rtp: Fix audio issues when moving from remote bridge to softmix
When a native RTP bridge that is remotely bridging its participants switches
to a softmix bridge, it may not properly re-INVITE the media for one or both
participants back to Asterisk. This is due to the current bridge_native_rtp
code only re-INVITEs if it believes the channel will survive the bridge
operation. Currently, that code is failing, as it expects the channels to
have a soft hangup flag set on it indicating that a redirect has occurred
or that the channel is going to leave the bridge. (The code did not take into
account a smart bridge operation).

This patch also renames a few things to be more reflective of the underlying
types.

Review: https://reviewboard.asterisk.org/r/3997/

ASTERISK-24327 #close
........

Merged revisions 425760 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425761 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-17 01:57:14 +00:00
Matthew Jordan
cb9ae40a31 test_cel: Update pickup test to expect CANCEL instead of ANSWSER
The CEL pickup test previously looked for a disposition of ANSWER between the
original caller/peer when the call is picked up. This is actually incorrect:
the disposition should, at the very least, not be ANSWER as the call was
never ANSWERed. The disposition is now CANCEL; this patch updates the test
accordingly.
........

Merged revisions 425757 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425758 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-17 01:45:38 +00:00
Matthew Jordan
fdcec1ef40 main/cdr: Use 'time' when rescheduling batched CDRs as opposed to 'size'
When refactoring CDRs to use the configuration framework, a 'whoops' was
introduced where the CDR batch size was used when rescheduling a batch,
as opposed to the time duration. This patch corrects that obvious mistake.

ASTERISK-24426 #close
Reported by: Shane Blaser
........

Merged revisions 425735 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425736 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-16 21:16:59 +00:00
George Joseph
b8f505294a config: Fix inf loop using ast_category_browse and ast_variable_retrieve
Fix infinite loop when calling ast_variable_retrieve inside an
ast_category_browse loop when there is more than 1 category with
the same name.

Tested-by: George Joseph

Review: https://reviewboard.asterisk.org/r/4089/
........

Merged revisions 425713 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@425714 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-10-16 17:30:39 +00:00