summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-02-21Merge "AST-2018-002: Crash with an invalid SDP media format description"Kevin Harwell
2018-02-21manager.c: Fix lseek() parameter order.Richard Mudgett
ASTERISK-27659 Change-Id: I04a2705d2cb7df250769967bc59e2b397a49b797
2018-02-21bridge_simple.c: Fix stream topology handling.Richard Mudgett
The handling of stream topologies was not protected by channel locks in simple_bridge_request_stream_topology_change(). * Fixed topology handling to be protected by channel locks where needed in simple_bridge_request_stream_topology_change(). ASTERISK-27692 Change-Id: Ica5d78a6c7ecf4f0b95fb16de28d3889b32c4776
2018-02-21Merge "AST-2018-005: res_pjsip_transport_management: Move to core"George Joseph
2018-02-21Merge "AST-2018-005: Fix tdata leaks when calling pjsip_endpt_send_response(2)"George Joseph
2018-02-21Merge "AST-2018-005: Add a check for NULL tdata in ast_sip_failover_request"George Joseph
2018-02-21Merge "AST-2018-001: rtp / channel: Don't allow an unnegotiated format to be ↵Joshua Colp
passed up."
2018-02-21AST-2018-006: Properly handle WebSocket frames with 0 length payload.Sean Bright
In ast_websocket_read() we were not adequately checking that the payload_len was non-zero before passing it to ws_safe_read(). Calling ws_safe_read with a len argument of 0 will result in a busy loop until the underlying socket is closed. ASTERISK-27658 #close Change-Id: I9d59f83bc563f711df1a6197c57de473f6b0663a
2018-02-21AST-2018-003: Crash with an invalid SDP fmtp attributeKevin Harwell
pjproject's fmtp retrieval function failed to catch invalid fmtp attributes. Because of this Asterisk would crash if given an SDP with an invalid fmtp attribute. When retrieving the format this patch now makes sure the fmtp attribute is available. If not available it now returns an error status. ASTERISK-27583 #close Change-Id: I5cebe000ce2d846cae3af33b6d72c416e51caf2f
2018-02-21AST-2018-002: Crash with an invalid SDP media format descriptionKevin Harwell
pjproject's media format parsing algorithm failed to catch invalid values. Because of this Asterisk would crash if given an SDP with a invalid media format description. When parsing the media format description this patch now properly parses the value and returns an error status if it can't successfully parse/convert the value. ASTERISK-27582 #close Change-Id: I883b3a4ef85b6972397f7b56bf46c5779c55fdd6
2018-02-21AST-2018-005: res_pjsip_transport_management: Move to coreGeorge Joseph
Since res_pjsip_transport_management provides several attack mitigation features, its functionality moved to res_pjsip and this module has been removed. This way the features will always be available if res_pjsip is loaded. ASTERISK-27618 Reported By: Sandro Gauci Change-Id: I21a2d33d9dda001452ea040d350d7a075f9acf0d
2018-02-21AST-2018-005: Fix tdata leaks when calling pjsip_endpt_send_response(2)George Joseph
pjsip_distributor: authenticate() creates a tdata and uses it to send a challenge or failure response. When pjsip_endpt_send_response2() succeeds, it automatically decrements the tdata ref count but when it fails, it doesn't. Since we weren't checking for a return status, we weren't decrementing the count ourselves on error and were therefore leaking tdatas. res_pjsip_session: session_reinvite_on_rx_request wasn't decrementing the ref count if an error happened while sending a 491 response. pre_session_setup wasn't decrementing the ref count if while sending an error after a pjsip_inv_verify_request failure. res_pjsip: ast_sip_send_response wasn't decrementing the ref count on error. ASTERISK-27618 Reported By: Sandro Gauci Change-Id: Iab33a6c7b6fba96148ed465b690ba8534ac961bf
2018-02-21AST-2018-005: Add a check for NULL tdata in ast_sip_failover_requestGeorge Joseph
It was discovered that there are some corner cases where a pjsip tsx might have no last_tx so calling ast_sip_failover_request with a NULL last_tx as its tdata would cause a crash. ASTERISK-27618 Reported By: Sandro Gauci Change-Id: Ic2b63f6d4ae617c4c19dcdec2a7a6156b54fd15b
2018-02-21AST-2018-004: Restrict the number of Accept headers in a SUBSCRIBE.Joshua Colp
When receiving a SUBSCRIBE request the Accept headers from it are stored locally. This operation has a fixed limit of 32 Accept headers but this limit was not enforced. As a result it was possible for memory outside of the allocated space to get written to resulting in a crash. This change enforces the limit so only 32 Accept headers are processed. ASTERISK-27640 Reported By: Sandro Gauci Change-Id: I99a814b10b554b13a6021ccf41111e5bc95e7301
2018-02-21AST-2018-001: rtp / channel: Don't allow an unnegotiated format to be passed up.Joshua Colp
When an RTP packet is received by an RTP engine it has to map the payload into the Asterisk format. The code was incorrectly checking our own static list for ALL payloads if it couldn't find a negotiated one. This included dynamic payloads. If the payload mapped to a format of a different type (for example receiving a video packet on an audio RTP instance) then the core stream code could cause a crash if a legacy channel driver was in use as no stream would be present. To provide further protection the core stream code will no longer assume that a video or audio frame will always have a stream for legacy channel drivers. If no stream is present the frame is dropped. ASTERISK-27488 Change-Id: I022556f524ad8379ee73f14037040af17ea3316a
2018-02-21Merge "channel.c: Fix typo."Jenkins2
2018-02-20Merge "res_http_websocket: Don't leak memory on read failure"Jenkins2
2018-02-20channel.c: Fix typo.Richard Mudgett
Change-Id: I4eeedf89085697e81c354eb92d546686c67b0b5b
2018-02-20chan_sip: Emit a second ringing event to ensure channel is found.Joshua Colp
When constructing a dialog-info+xml NOTIFY message a ringing channel is found if the state is ringing and further information is placed into the message. Due to the migration to the Stasis message bus this did not always work as expected. This change raises a second ringing event in such a way to guarantee that the event is received by chan_sip and another lookup is done to find the ringing channel. ASTERISK-24488 Change-Id: I547a458fc59721c918cb48be060cbfc3c88bcf9c
2018-02-20Merge "doc/lang/language-criteria.txt: Link to wiki."Jenkins2
2018-02-20Merge "core: Rename sounds_index.c to sounds.c."Jenkins2
2018-02-20Merge "BuildSystem: Allow newer autotools on OpenBSD."Joshua Colp
2018-02-20Merge "config: Fix locking for extconfig reload."Jenkins2
2018-02-20Merge "BuildSystem: Use single bootstrap.sh for Asterisk and menuselect."Joshua Colp
2018-02-20Merge "BuildSystem: Fix a typo related to ./configure --prefix=<path> on ↵Joshua Colp
OpenBSD."
2018-02-20doc/lang/language-criteria.txt: Link to wiki.Corey Farrell
This document is out of date and is superseded by content on the Asterisk wiki. ASTERISK-24386 #close Change-Id: Idbf95b27b096c205251e1bbb560c79224ba81822
2018-02-19Merge "optional_api: Refactor to use vector's and standard allocators."Jenkins2
2018-02-19Merge "rtp_engine: Load format name / mime type in uppercase again."Jenkins2
2018-02-19Merge "install_prereq: Update OpenBSD libraries."Jenkins2
2018-02-19Merge "BuildSystem: Enable IMAP storage on OpenBSD."Jenkins2
2018-02-19Merge "res_pjsip_header_funcs: Various cleanups"Jenkins2
2018-02-19Merge "res_pjsip: Use pjsip_sip_uri.user_param instead of other_param"Jenkins2
2018-02-19res_rtp_asterisk: Fix ICE candidate nominationThomas Guebels
If the ICE role is not set right away, we might have a role conflict that stays undetected and ICE finishing with successful tests and no candidate nominated. This was introduced by ASTERISK-27088. To avoid this, we set the role as soon as before but only if the ICE state permits it: still checking and not yet nominating candidates or completed. ASTERISK-27646 Change-Id: I5dbc69ad63cacbb067922850fbb113d479bd729c
2018-02-19res_http_websocket: Don't leak memory on read failureSean Bright
Change-Id: Ic449ea832bc81a1671c0e910c5fbe8c683e3da89
2018-02-19Merge "Deprecate legacy modules."Jenkins2
2018-02-19Merge "manager: Add AMI event Load/Unload"Jenkins2
2018-02-19Merge "contrib/script/sip_to_pjsip: add support for realtime"Jenkins2
2018-02-19Merge "res_pjsip: Endpoint destruction does not free DTLS configuration"Jenkins2
2018-02-19core: Rename sounds_index.c to sounds.c.Corey Farrell
This will make the source filename match the 'module reload sounds' command. This will allow conversion to a built-in module in Asterisk 16 without needing to redefine AST_MODULE. Change-Id: Ifb8e489575b27eb33d8c0b6a531f266670557f6e
2018-02-19config: Fix locking for extconfig reload.Corey Farrell
Expand locking to include full reload process for extconfig to ensure nothing can read the config mappings between clearing and reloading. Change-Id: I378316bad04f1b599ea82d0fef62b8978a644b92
2018-02-18res_pjsip_header_funcs: Various cleanupsSean Bright
* Prefer strcasecmp() over stricmp() * Use a list with no lock since we never actually lock * Minor cleanups to error messages Change-Id: I8446f44795ee8f3072e1c1f9193c6912dfc0c42b
2018-02-17rtp_engine: Load format name / mime type in uppercase again.Alexander Traud
This reverts a previous change partly. ASTERISK-27689 Change-Id: Ia3d2f282db6995be8c1c253b5d52f6038761e8af
2018-02-16BuildSystem: Use single bootstrap.sh for Asterisk and menuselect.Corey Farrell
This causes the root bootstrap.sh script to generate configure scripts for both Asterisk and menuselect. This ensures that both configure scripts are generated with the same version of autotools and avoids situations where shared autoconf macros get modified without regenerating the menuselect script. Change-Id: I2bfd8537bbb63b3d46b11efabbb15eaaf9ef731a
2018-02-16Merge "bridge_roles: Use a non-locking linked list where appropriate"Jenkins2
2018-02-16res_pjsip: Endpoint destruction does not free DTLS configurationSean Bright
ASTERISK-27679 #close Reported by: Mak Dee Change-Id: I89a2783a11be0763bf123d1619ed176b6225cf42
2018-02-16install_prereq: Update OpenBSD libraries.Alexander Traud
deleted jack sqlite renamed freetds-0.63p1-msdblib to freetds mysql-client to mariadb-client added bison bzip2 c-client doxygen e2fsprogs graphviz gsm libical jansson libltdl lua neon net-snmp libsrtp portaudio-svn postgresql-client python speexdsp subversion uriparser xmlstarlet fftw3 libsndfile ASTERISK-27684 Change-Id: I26bdcb0a1d0e484a8dad1052da97f194aefd3370
2018-02-16BuildSystem: Allow newer autotools on OpenBSD.Alexander Traud
ASTERISK-27683 Change-Id: I5ec9dafbb0c16b6f2740c641980bc2eaaf995624
2018-02-16Merge "res_calendar: Specialized calendars depend on symbols of general ↵Jenkins2
calendar."
2018-02-16contrib/script/sip_to_pjsip: add support for realtimeTorrey Searle
Add a new script that can read from legacy realtime peers & generate an sql file for populating pjsip endpoints, identify, and aor records. ASTERISK-27348 #close Change-Id: Idd3d7968a3c9c3ee7936d21acbdaf001b429bf65
2018-02-16Merge "BuildSystem: Invoke ldconfig with previous path."Jenkins2