summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-07-22Fix sqlalchemy error regarding identifier length.Mark Michelson
sqlalchemy was complaining: sqlalchemy.exc.IdentifierError: Identifier 'ps_contacts_qualifyfreq_exptime' exceeds maximum length of 30 characters This fixes the problem by changing the index name to be "ps_contacts_qualifyfreq_exp" instead. ASTERISK-26227 #close Reported by Mark Michelson Change-Id: I0ed784f87504be2a59ee8d3242ef6f625d5ed1a9
2016-07-22Merge "res_pjsip: Whitespace and comment cleanup." into 13zuul
2016-07-22Merge "chan_sip: Prevent deadlock when issuing "sip show channels"" into 13Joshua Colp
2016-07-22Merge "res_pjsip_pubsub: fixed a bug when pjsip_tx_data_dec_ref is called ↵zuul
twice." into 13
2016-07-21res_pjsip: Whitespace and comment cleanup.Richard Mudgett
Change-Id: I11139a4a95df34e223ba622aa6227e33ab8f6c38
2016-07-21Merge "chan_dahdi.c: Fix deadlock potential in fax redirection." into 13zuul
2016-07-21Merge "chan_sip.c: Fix deadlock potential in fax redirection." into 13zuul
2016-07-21Merge "chan_pjsip.c: Fix deadlock potential in fax redirection." into 13zuul
2016-07-21Merge "res_fax.c: Fix deadlock potential in FAXOPT(faxdetect) framehook." ↵zuul
into 13
2016-07-21Merge changes from topic 'ASTERISK-26214' into 13Joshua Colp
* changes: res_fax: Fix FAXOPT(faxdetect) timeout option. chan_dahdi: Add faxdetect_timeout option.
2016-07-21chan_sip: Prevent deadlock when issuing "sip show channels"George Joseph
sip_show_channels locks the dialogs container first then locks each sip_pvt so it can spit out the details. The rest of sip dialog processing locks the sip_pvt first then locks the dialogs container if it needs to. Both lock in the order they need but deadlocks can result. To fix, sip_show_channels and sip_show_channelstats have been converted to use an iterator rather than ao2_callback. This way the container is locked only while getting the next entry and is unlocked when the callback is called. ASTERISK-23013 #close Change-Id: Id9980419909e811f89484950ed46ef117b9eb990
2016-07-21Merge "res_pjsip: Add fax_detect_timeout endpoint option." into 13Joshua Colp
2016-07-21Merge "Add conditional support for noreturn functions." into 13zuul
2016-07-21res_pjsip_pubsub: fixed a bug when pjsip_tx_data_dec_ref is called twice.Alexei Gradinari
This patch removed call of pjsip_tx_data_dec_ref in send_notify if send_request failed. The pjsip_dlg_send_request deletes the message on error by itself. It seems this patch fixes next issues: ASTERISK-26199 ASTERISK-26166 ASTERISK-26174 Change-Id: I8b05917c93d993f95d604c042ace5f1a5500f59a
2016-07-20Merge "Makefile: Retain XML Declaration and DTD in docs." into 13zuul
2016-07-20Merge "Unit tests: Use AST_TEST_DEFINE in conditional code only." into 13zuul
2016-07-20Merge "res_rtp_asterisk: Count a roll-over of the sequence number even on ↵zuul
lost packets." into 13
2016-07-20Merge "res_pjsip_mwi: remove unneeded check on endpoint's contacts." into 13zuul
2016-07-19Add conditional support for noreturn functions.Corey Farrell
This adds support for tagging functions with the noreturn attribute. If DO_CRASH is enabled then ast_do_crash never returns. If AST_DEVMODE and DO_CRASH are enabled then failed assertions never return. This can resolve a large number of false positives with static analyzers. ASTERISK-26220 #close Change-Id: Icfb61e5fe54574eced4c3e88b317244f467ec753
2016-07-19chan_dahdi.c: Fix deadlock potential in fax redirection.Richard Mudgett
The dahdi_handle_dtmf() and my_handle_dtmf() have the potential to deadlock if an incoming fax happens during the Playback or similar application. * Fixed the potential deadlock by not calling ast_async_goto() with the channel lock held. ASTERISK-26216 #close Reported by: Richard Mudgett Change-Id: I9144b84ade5f96690996624ec8a2d40c56af40aa
2016-07-19chan_sip.c: Fix deadlock potential in fax redirection.Richard Mudgett
The sip_read() has the potential to deadlock if an incoming fax happens during the Playback or similar application. * Fixed the potential deadlock by not calling ast_async_goto() with the channel lock held. * Made always eat the fax detection frame whether there is a fax extension or not. ASTERISK-26216 Reported by: Richard Mudgett Change-Id: I6d3f5cccd4b77c3aa6ffc1a54c0f6bde61c9278e
2016-07-19chan_pjsip.c: Fix deadlock potential in fax redirection.Richard Mudgett
The chan_pjsip_cng_tone_detected() has the potential to deadlock if an incoming fax happens during the Playback or similar application. * Fixed the potential deadlock by not calling ast_async_goto() with the channel lock held. * Made always eat the fax detection frame whether there is a fax extension or not. ASTERISK-26216 Reported by: Richard Mudgett Change-Id: I32aecbb4818af646dc5a619f0dc040e9b1f222e5
2016-07-19res_fax.c: Fix deadlock potential in FAXOPT(faxdetect) framehook.Richard Mudgett
The fax_detect_framehook() has the potential to deadlock if an incoming fax happens during the Playback or similar application. * Fixed the potential deadlock by not calling ast_async_goto() with the channel lock held. * Made always eat the fax detection frame whether there is a fax extension or not. * Made only detach the framehook if we detected a fax and not on other possible frames. ASTERISK-26216 Reported by: Richard Mudgett Change-Id: I99da35c26d1cd802626ffb4c1b4eb5b015581b6d
2016-07-19res_fax: Fix FAXOPT(faxdetect) timeout option.Richard Mudgett
The fax detection timeout option did not work because basically the wrong variable was checked in fax_detect_framehook(). As a result, the timer would timeout immediately and disable fax detection. * Fixed ignoring negative timeout values. We'd complain and then go right on using the negative value. * Fixed destroy_faxdetect() in the off-nominal case of an incomplete object creation. * Added more range checking to FAXOPT(gateway) timeout parameter. ASTERISK-26214 #close Reported by: Richard Mudgett Change-Id: Idc5e698dfe33572de9840bc68cd9fc043cbad976
2016-07-19chan_dahdi: Add faxdetect_timeout option.Richard Mudgett
The new option allows the channel driver's faxdetect option to timeout on a call after the specified number of seconds into a call. The new feature is disabled if the timeout is set to zero. The option is disabled by default. * Don't clear dsp_features after passing them to the dsp code in my_pri_ss7_open_media(). We should still remember them especially for the new faxdetect_timeout option. ASTERISK-26214 Reported by: Richard Mudgett Change-Id: Ieffd3fe788788d56282844774365546dce8ac810
2016-07-19res_pjsip: Add fax_detect_timeout endpoint option.Richard Mudgett
The new endpoint option allows the PJSIP channel driver's fax_detect endpoint option to timeout on a call after the specified number of seconds into a call. The new feature is disabled if the timeout is set to zero. The option is disabled by default. ASTERISK-26214 Reported by: Richard Mudgett Change-Id: Id5a87375fb2c4f9dc1d4b44c78ec8735ba65453d
2016-07-19Makefile: Retain XML Declaration and DTD in docs.Alexander Traud
Since Asterisk 12, the documentation got an XML Stylesheet. Because of a typo, the XML Declaration and DTD were overwritten by this. ASTERISK-26212 #close Change-Id: If5ee4625068042e98ab3fcb22a25e2f15d0c68bd
2016-07-18Unit tests: Use AST_TEST_DEFINE in conditional code only.Corey Farrell
If AST_TEST_DEFINE is not conditional to TEST_FRAMEWORK it produces dead code. This places all existing unit tests into a conditional block if they weren't already. ASTERISK-26211 #close Change-Id: I8ef83ee11cbc991b07b7a37ecb41433e8c734686
2016-07-18res_rtp_asterisk: Count a roll-over of the sequence number even on lost packets.Alexander Traud
With this change, the initial RTP sequence number is randomly chosen not between 0 and 65535 (0xffff) but 0 and 32767 (0x7fff). This assures, the roll-over counter (ROC) synchronization is not lost for sRTP, when the very first RTP packets get lost; see http://srtp.sourceforge.net/faq.html#Q6 ASTERISK-26207 #close Change-Id: I9a527e3aa3ce8f3becc5131d7ba32b57b5845464
2016-07-18Makefile: Suppress echoing of target 'config' again.Alexander Traud
ASTERISK-26038 #close Change-Id: I5746cf639f3fdc6332e8a97cf01f979e30bf403f
2016-07-15Merge "app_queue: Only remove queue member from pending when state changes." ↵zuul
into 13
2016-07-14features.c: Remove unneeded adsi.h include.Corey Farrell
adsi.h is no longer used by features.c since parking was moved to a module. Change-Id: I2248b8a455225a17cb6ddaafd6c20c511a1eaf59
2016-07-14Merge "Update support for SILK format." into 13zuul
2016-07-14res_pjsip_mwi: remove unneeded check on endpoint's contacts.Alexei Gradinari
The function create_mwi_subscriptions_for_endpoint checks if there is active contacts by retrieving aors and contacts. This function is used to create all unsolicited mwi subscriptions on startup and is used when contact added. In both cases it's not necessary to check if there are contacts. The contacts are needed when asterisk sends mwi. ASTERISK-26200 #close Change-Id: I98e43bdc97f3c0829951cd9bf5f3c6348c6ac1fa
2016-07-14Update support for SILK format.Mark Michelson
This commit adds scaffolding in order to support the SILK audio format on calls. Roughly, this is what is added: * Cached silk formats. One for each possible sample rate. * ast_codec structures for each possible sample rate. * RTP payload mappings for "SILK". In addition, this change overhauls the res_format_attr_silk file in the following ways: * The "samplerate" attribute is scrapped. That's native to the format. * There are far more checks to ensure that attributes have been allocated before attempting to reference them. * We do not SDP fmtp lines for attributes set to 0. These changes make way to be able to install a codec_silk module and have it actually work. It also should allow for passthrough silk calls in Asterisk. Change-Id: Ieeb39c95a9fecc9246bcfd3c45a6c9b51c59380e
2016-07-14Merge "translate: explicit format destination not properly set" into 13zuul
2016-07-14Merge "threadpool: Fix leak in ast_threadpool_serializer_group error path." ↵Joshua Colp
into 13
2016-07-14Merge "pbx: Fix leak of timezone for time based includes." into 13zuul
2016-07-14Merge "BuildSystem: Avoid obsolete warning with pthread.m4 on autoconf." into 13zuul
2016-07-14Merge "res_rtp_asterisk: Enable Forward Secrecy (PFS) for DTLS." into 13zuul
2016-07-14Merge "stasis_endpoint.c: Fix contactstatus_to_json()." into 13zuul
2016-07-14app_queue: Only remove queue member from pending when state changes.Joshua Colp
It is possible for a not in use state change to occur multiple times causing a queue member to be removed from the pending call container prematurely. The first not in use state change will remove the queue member from the container. At this moment the member may be called and placed in the pending container. After this another not in use state change can be received which will remove it from the container. Despite being called at this point the code will incorrectly see that there are no pending calls to it. This change only removes it from the pending container if the state has actually changed. ASTERISK-26133 #close patches: app_queue.diff submitted by Richard Miller (license 5685) Change-Id: Ie5a7f17a44f98e9159e9b85009ce3f8393aa78c0
2016-07-14Merge "pjsip_options.c: Fix container operation." into 13zuul
2016-07-14Merge "pjsip_configuration.c: Misc cleanups." into 13zuul
2016-07-14pbx: Fix leak of timezone for time based includes.Corey Farrell
Create include_free to run ast_destroy_timing and ast_free, use that in all places that freed an ast_include structure. This fixes a couple of paths that previously did not run ast_destroy_timing. ASTERISK-26196 #close Change-Id: I1671bd111bef0dc113e8bf8f77f89fcfc395d838
2016-07-13Merge "chan_sip: Fix reference leak in mwi_event_cb" into 13zuul
2016-07-13Merge "res/res_pjsip_session: Check for presence of an active negotiator" ↵zuul
into 13
2016-07-13Merge "res/res_pjsip_pubsub: Add additional debug statements" into 13Joshua Colp
2016-07-13Merge "res/res_corosync: Raise a Stasis message on node join/leave events" ↵Joshua Colp
into 13
2016-07-13translate: explicit format destination not properly setKevin Harwell
If the destination format's name differed from the codec name then the translator's explict_dst field would be improperly set. In some circumstances it would end up setting it to a newly created format that has the same name as the codec when it actually needed to be the given destination codec. This could cause the translation path to use the wrong format. For instance, if an endpoint had specified 'myulaw' as a format the translator could end up using a 'ulaw' format (with whatever/default settings) instead. If the format attribute settings differed between the two then there may unexpected results during processing. This patch removes the name check when building the translation path. This should make it always set the translator's explicit_dst to the given destination format as long as the sample rate and types match. Change-Id: Iaf8a03831d68e657d89569d54b505074efbefab5