summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-06-16res_pjsip: New endpoint option "notify_early_inuse_ringing"Alexei Gradinari
This option was added to control whether to notify dialog-info state 'early' or 'confirmed' on Ringing when already INUSE. The value "yes" is useful for some SIP phones (Cisco SPA) to be able to indicate and pick up ringing devices. ASTERISK-26919 #close Change-Id: Ie050bc30023543c7dfb4365c5be3ce58c738c711
2017-06-08Merge "CHANGES: correct version for a new option 'refer_blind_progress'" into 13Jenkins2
2017-06-07chan_pjsip: Update device state when in early media.Joshua Colp
The chan_pjsip module uses a calculation approach for determining device state. This means that in situations where we would expect device state to change we need to tell the core to query. A scenario that was missed is when early media was signaled. This change adds the notification for the core to query device state when we are told that early media is being provided. ASTERISK-27039 Change-Id: Iafebfd152894966344ff2e950a3cee9f59a3eb6f
2017-06-07CHANGES: correct version for a new option 'refer_blind_progress'Alexei Gradinari
Change-Id: If4817d26a8974610827624fb8a4e56d681d6bf97
2017-06-07Merge "res_pjsip: Add support for returning only reachable contacts and use ↵Jenkins2
it." into 13
2017-06-07Merge "channel: ast_write frame wrongly freed after call to audiohooks" into 13Jenkins2
2017-06-06res_rtp_multicast: Use consistent timestamps when possibleSean Bright
When a frame destined for a MulticastRTP channel does not have timing information (such as when an 'originate' is done), we generate the RTP timestamps ourselves without regard to the number of samples we are about to send. Instead, use the same method as res_rtp_asterisk and 'predict' a timestamp given the number of samples. If the difference between the timestamp that we generate and the one we predict is within a specific threshold, use the predicted timestamp so that we end up with timestamps that are consistent with the number of samples we are actually sending. Change-Id: I2bf0db3541b1573043330421cbb114ff0f22ec1f
2017-06-06res_pjsip: Add support for returning only reachable contacts and use it.Joshua Colp
This introduces the ability for PJSIP code to specify filtering flags when retrieving PJSIP contacts. The first flag for use causes the query code to only retrieve contacts that are not unreachable. This change has been leveraged by both the Dial() process and the PJSIP_DIAL_CONTACTS dialplan function so they will now only attempt calls to contacts which are not unreachable. ASTERISK-26281 Change-Id: I8233b4faa21ba3db114f5a42e946e4b191446f6c
2017-06-06Merge "format: Reintroduce smoother flags" into 13Jenkins2
2017-06-06Merge "res_srtp: Add support for libsrtp2" into 13Joshua Colp
2017-06-05channel: ast_write frame wrongly freed after call to audiohooksKevin Harwell
ASTERISK-26419 introduced a bug when calling ast_audiohook_write_list in ast_write. It would free the frame given to ast_write if the frame returned by ast_audiohook_write_list was different than the given one. The frame give to ast_write should never be freed within that function. It is the caller's resposibility to free the frame after writing (or when it its done with it). By freeing it within ast_write this of course led to some memory corruption problems. This patch makes it so the frame given to ast_write is no longer freed within the function. The frame returned by ast_audiohook_write_list is now subsequently used in ast_write and is freed later. It is freed either after translate if the frame returned by translate is different, or near the end of ast_write prior to function exit. ASTERISK-26973 #close Change-Id: I463d4ac3b736ced95de986ee74a489c7c7ab103b
2017-06-05Merge "pbx_builtin: Properly handle hangup during Background" into 13Jenkins2
2017-06-01Merge "stasis_recording: Correct ast_asprintf error checking" into 13Jenkins2
2017-06-01Merge "format_mp3: Re-work menuselect/build issues" into 13Jenkins2
2017-06-01Merge "res_pjsip: New endpoint option "refer_blind_progress"" into 13Jenkins2
2017-06-01Merge "app_confbridge: Race between removing and playing name recording ↵Jenkins2
while leaving" into 13
2017-06-01Merge "sip.conf.sample: Clarify where DTLS settings are permitted" into 13Joshua Colp
2017-05-31Merge "test_json: Fix test names with reserved words" into 13Jenkins2
2017-05-31pbx_builtin: Properly handle hangup during BackgroundSean Bright
Before this patch, when a user hung up during a Background, we would stuff 0xff into a char and attempt a dialplan lookup of it. This caused problems for some realtime engines which interpreted the value as the beginning of an invalid UTF-8 sequence. ASTERISK-19291 #close Reported by: Andrew Nowrot Change-Id: I8ca6da93252d61c76ebdb46a4aa65e73ca985358
2017-05-31channel / app_meetme: Fix parentheses.Joshua Colp
ASTERISK-27025 Change-Id: Id736b0aa4ec6b6b0f04663d64fa8d151f81fdbed
2017-05-30stasis_recording: Correct ast_asprintf error checkingSean Bright
ASTERISK-27021 #close Reported by: Tim Morgan Change-Id: I0ac061f040093e806c3b1f4e2340864f3ce4dd75
2017-05-30format: Reintroduce smoother flagsSean Bright
In review 4843 (ASTERISK-24858), we added a hack that forced a smoother creation when sending signed linear so that the byte order was adjusted during transmission. This was needed because smoother flags were lost during the new format work that was done in Asterisk 13. Rather than rolling that same hack into res_rtp_multicast, re-introduce smoother flags so that formats can dictate their own options. Change-Id: I77b835fba0e539c6ce50014a984766f63cab2c16
2017-05-30format_mp3: Re-work menuselect/build issuesSean Bright
Rather than removing format_mp3 from ALL_C_MODS (which caused format_mp3 to not show up in menuselect), use .PHONY targets when the necessary source files are not present. ASTERISK-23951 Reported by: Tzafrir Cohen Change-Id: I0a7512c51acc9e86043671795020b0de725bd9e8
2017-05-30test_json: Fix test names with reserved wordsGeorge Joseph
Some of the test names were actually reserved words (true, false, int, null, string, bool). When the jenkins test results analyzer does its thing it tries to create a map using the test names as keys and fails because they're reserved words. Added "type_" to those test names. Change-Id: I90d809f46969c78a1c605b736ff0635196a2cf1b
2017-05-30Merge "format_mp3: Don't try to build format_mp3 if we don't have sources" ↵Joshua Colp
into 13
2017-05-26manager: Clear the flag on the other channel.Joshua Colp
During the channel flag audit an incorrect change was done. The flag should be cleared on the second channel. ASTERISK-26469 Change-Id: I770c5a389550a2fb5a6ade942fccbb2e1d9199c8
2017-05-26res_srtp: Add support for libsrtp2Sean Bright
ASTERISK-25294 #close Reported by: Tzafrir Cohen ASTERISK-26976 #close Reported by: Alex Change-Id: I789b1c3d1ed31365bbd9339fa58ef36f48833c40
2017-05-26Merge "asterisk: Audit locking of channel when manipulating flags." into 13Jenkins2
2017-05-26Merge "res_agi: Fix malformed AGI usage response" into 13Jenkins2
2017-05-25Merge "res_agi: Allow configuration of audio format of EAGI pipe" into 13George Joseph
2017-05-25Merge "unittests: Add a unit test that causes a SEGV and..." into 13George Joseph
2017-05-25Merge "res_agi: Prevent crash when SET VARIABLE called without arguments" ↵Jenkins2
into 13
2017-05-25format_mp3: Don't try to build format_mp3 if we don't have sourcesSean Bright
ASTERISK-23951 #close Reported by: Tzafrir Cohen Change-Id: Iebf181d44bb735787fde4b5be863c4d7e2478a30
2017-05-24Merge "res_agi: Clarify 'RECORD FILE' documentation" into 13Jenkins2
2017-05-24unittests: Add a unit test that causes a SEGV and...George Joseph
...that can only be run by explicitly calling it with 'test execute category /DO_NOT_RUN/ name RAISE_SEGV' This allows us to more easily test CI and debugging tools that should do certain things when asterisk coredumps. To allow this a new member was added to the ast_test_info structure named 'explicit_only'. If set by a test, the test will be skipped during a 'test execute all' or 'test execute category ...'. Change-Id: Ia3a11856aae4887df9a02b6b081cc777b36eb6ed
2017-05-24Merge "chan_sip: Better ICE handling for RTCP-MUX" into 13Joshua Colp
2017-05-24Merge "res_rtp_asterisk: rtcp mux using the wrong srtp unprotecting ↵Jenkins2
algorithm" into 13
2017-05-24Merge "res_format_attr_h26x: Trim blanks in fmtp attributes" into 13Jenkins2
2017-05-24Merge "app_queue: Fix members showing as being in call when not." into 13Jenkins2
2017-05-23res_agi: Allow configuration of audio format of EAGI pipeSean Bright
This change allows the format of the EAGI audio pipe to be changed by setting the dialplan variable 'EAGI_AUDIO_FORMAT' to the name of one of the loaded formats. ASTERISK-26124 #close Change-Id: I7a10fad401ad2a21c68c2e7246fa357d5cee5bbd
2017-05-23res_agi: Clarify 'RECORD FILE' documentationSean Bright
Documented the 'beep' option in both the parameters list and the command description. ASTERISK-23839 #close Change-Id: I4970395c922dbdce3f7cf0f56d5b065ec9aa53ea
2017-05-23res_agi: Prevent crash when SET VARIABLE called without argumentsSean Bright
Explicitly check that the appropriate number of arguments were passed to SET VARIABLE before attempting to reference them. Also initialize the arguments array to zeroes before populating it. ASTERISK-22432 #close Change-Id: I5143607d80a2724f749c1674f3126b04ed32ea97
2017-05-23res_agi: Fix malformed AGI usage responseSean Bright
If the generated XML documentation for a command does not end with a \n, the postamble of the usage message does not appear on its own line. ASTERISK-25662 #close Change-Id: If190f1e9e37fe215fed95897d78d4a6e142b0020
2017-05-23sip.conf.sample: Clarify where DTLS settings are permittedSean Bright
ASTERISK-25101 #close Change-Id: I09a97793e5577b4422d0ae883fadb3f0d86725cc
2017-05-23res_format_attr_h26x: Trim blanks in fmtp attributesSean Bright
Some devices separate format attributes with a semicolon followed by a space, so trim blanks before trying to match them. ASTERISK-27008 #close Change-Id: Ia44cb2e4fef5c73dc541a29da79cb0e19c22d9cc
2017-05-23app_queue: Fix members showing as being in call when not.Joshua Colp
A change was done which added an 'in_call' flag to queue members that was set to true while talking to an agent. Unfortunately in practice this does not accurately reflect whether they are talking to an agent or not. If a Local channel is involved and a transfer is performed then the app_queue application would incorrectly think the agent was still in a call with the caller. This was done to fix a race condition between an agent becoming available by device state and the checking of the last call information for the wrapup time. There was a small window where the last call information would be the previous value instead of the new one. This change goes about fixing the original issue in a different way by considering the call completed if device state is received which would make the agent available and if they are currently in a call. If this occurs the last call information is updated before the agent becomes available ensuring that old information is not present when checking if the member should be called. This also improves the transfer situation by actually updating and enforcing the wrapup time. ASTERISK-26399 ASTERISK-26400 ASTERISK-26715 ASTERISK-26975 Change-Id: Ife1cb686e3173b3a6d368601adef9aff69d4beea
2017-05-23Merge "res_pjsip_session : fixed wrong From Header number On Re-invite" into 13Jenkins2
2017-05-23app_confbridge: Race between removing and playing name recording while leavingRobert Mordec
When user leaves a conference, its channel calls async_play_sound_file() in order to play the name announcement and then unlinks the sound file. The async_play_sound_file() function adds a task to conference playback queue, which then runs playback_common() function in a different thread. It leads to a race condition when, in some cases, channel thread may unlink the sound file before playback_common() had a chance to open it. This patch creates a file deletion task, that is queued after playback. ASTERISK-27012 #close Change-Id: I412f7922d412004b80917d4e892546c15bd70dd3
2017-05-22res_rtp_asterisk: rtcp mux using the wrong srtp unprotecting algorithmKevin Harwell
When using rtcp mux if an rtcp payload came in it would still use the srtp unprotect algorithm instead of the srtp unprotect rtcp method. Since rtcp data was being passed to the rtp unprotect method this would result in an error. This patch ensures that the correct unprotect method is chosen by making sure the passed in rtcp flag is appropriately set when rtcp mux is enabled and an rtcp payload is received. ASTERISK-26979 #close Change-Id: Ic5409f9d1a267f1d4785fc5aed867daaecca6241
2017-05-22chan_sip: Better ICE handling for RTCP-MUXSean Bright
If we are offered or are offering RTCP-MUX, don't consider RTCP ICE candidates. This confuses certain browsers (current Firefox for example) and causes intial audio setup delays. ASTERISK-26982 #close Change-Id: Ifeaf47e83972fe8dbe58b7fb3d6d1823400cfb91