Commit Graph

33595 Commits

Author SHA1 Message Date
George Joseph
955c2e06ff .github: Fix quoting in PROpenedOrUpdated
(cherry picked from commit af0535f302)
2023-07-10 11:49:47 +00:00
George Joseph
5e37887d82 .github: Add cherry-pick reminder to new PRs
(cherry picked from commit e72b35e7fb)
2023-07-10 11:49:47 +00:00
Jaco Kroon
dda4dd513f configure: fix test code to match gethostbyname_r prototype.
This enables the test to work with CC=clang.

Without this the test for 6 args would fail with:

utils.c:99:12: error: static declaration of 'gethostbyname_r' follows non-static declaration
static int gethostbyname_r (const char *name, struct hostent *ret, char *buf,
           ^
/usr/include/netdb.h:177:12: note: previous declaration is here
extern int gethostbyname_r (const char *__restrict __name,
           ^

Fixing the expected return type to int sorts this out.

Signed-off-by: Jaco Kroon <jaco@uls.co.za>
(cherry picked from commit f178bf78b7)
2023-07-10 11:49:47 +00:00
Sean Bright
bbf47fefab res_pjsip_pubsub.c: Use pjsip version for pending NOTIFY check. (#77)
The functionality we are interested in is present only in pjsip 2.13
and newer.

Resolves: #45
(cherry picked from commit 2d18fb6e9d)
2023-07-10 11:49:47 +00:00
zhengsh
2d1e5f81ee res_sorcery_memory_cache.c: Fix memory leak
Replace the original call to ast_strdup with a call to ast_strdupa to fix the leak issue.

Resolves: #55
ASTERISK-30429

(cherry picked from commit 8abb294063)
2023-07-10 11:49:47 +00:00
Sean Bright
0e4a9d7251 xml.c: Process XML Inclusions recursively.
If processing an XInclude results in new <xi:include> elements, we
need to run XInclude processing again. This continues until no
replacement occurs or an error is encountered.

There is a separate issue with dynamic strings (ast_str) that will be
addressed separately.

Resolves: #65
(cherry picked from commit 19973b73fd)
2023-07-10 11:49:47 +00:00
Joshua C. Colp
6812357bef .github: Tweak improvement issue type language.
(cherry picked from commit f0e2d45089)
2023-07-10 11:49:47 +00:00
Gitea
d35a0d3d4e .github: Tweak new feature language, and move feature requests elsewhere.
(cherry picked from commit c0e32d8245)
2023-07-10 11:49:47 +00:00
Joshua C. Colp
31c11bec74 .github: Fix staleness check to only run on certain labels.
(cherry picked from commit 851ec44714)
2023-07-10 11:49:47 +00:00
Asterisk Development Team
6dc1877b2d Update for 20.3.1 20.3.1 2023-07-07 20:09:14 +00:00
Sean Bright
9ca24c9c2b apply_patches: Use globbing instead of file/sort.
This accomplishes the same thing as a `find ... | sort` but with the
added benefit of clarity and avoiding a call to a subshell.

Additionally drop the -s option from call to patch as it is not POSIX.
2023-07-07 10:02:18 -06:00
George Joseph
90069a94b0 apply_patches: Sort patch list before applying
The apply_patches script wasn't sorting the list of patches in
the "patches" directory before applying them. This left the list
in an indeterminate order. In most cases, the list is actually
sorted but rarely, they can be out of order and cause dependent
patches to fail to apply.

We now sort the list but the "sort" program wasn't in the
configure scripts so we needed to add that and regenerate
the scripts as well.

Resolves: #193
2023-07-07 10:02:02 -06:00
Stanislav Abramenkov
0fa022a39c pjsip: Upgrade bundled version to pjproject 2.13.1 2023-07-07 10:01:51 -06:00
Asterisk Development Team
282045db34 Update for 20.3.0 20.3.0 2023-05-23 14:31:56 +00:00
George Joseph
a004574465 Set up new ChangeLogs directory 2023-05-09 08:34:50 -06:00
Asterisk Development Team
2e1842229a Update for 20.3.0-rc1 20.3.0-rc1 2023-05-08 18:13:41 +00:00
George Joseph
3fe0d8088f .github: Add AsteriskReleaser
(cherry picked from commit 9d99f6aaf1)
2023-05-08 18:13:36 +00:00
Henning Westerholt
ac747ce562 chan_pjsip: also return all codecs on empty re-INVITE for late offers
We should also return all codecs on an re-INVITE without SDP for a
call that used late offer (e.g. no SDP in the initial INVITE, SDP
in the ACK). Bugfix for feature introduced in ASTERISK-30193
(https://issues.asterisk.org/jira/browse/ASTERISK-30193)

Migration from previous gerrit change that was not merged.

(cherry picked from commit 37a41a2a20)
2023-05-08 18:13:36 +00:00
Mike Bradeen
21ee5f705a cel: add local optimization begin event
The current AST_CEL_LOCAL_OPTIMIZE event is and has been
triggered on a local optimization end to serve as a flag
indicating the event occurred.  This change adds a second
AST_CEL_LOCAL_OPTIMIZE_BEGIN event for further detail.

Resolves: #52

UpgradeNote: The existing AST_CEL_LOCAL_OPTIMIZE can continue
to be used as-is and the AST_CEL_LOCAL_OPTIMIZE_BEGIN event
can be ignored if desired.

UserNote: The new AST_CEL_LOCAL_OPTIMIZE_BEGIN can be used
by itself or in conert with the existing
AST_CEL_LOCAL_OPTIMIZE to book-end local channel optimizaion.

(cherry picked from commit 8d3d8fcdcd)
2023-05-08 18:13:36 +00:00
Sean Bright
7677e78b4f core: Cleanup gerrit and JIRA references. (#57)
* Remove .gitreview and switch to pulling the main asterisk branch
  version from configure.ac instead.

* Replace references to JIRA with GitHub.

* Other minor cleanup found along the way.

Resolves: #39
(cherry picked from commit 5c6d5ea38f)
2023-05-08 18:13:36 +00:00
George Joseph
9a1ac9142f .github: Fix CherryPickTest to only run when it should
Fixed CherryPickTest so it triggers only on the
"cherry-pick-test" label instead of all labels.

(cherry picked from commit 9097fc7515)
2023-05-08 18:13:36 +00:00
George Joseph
272fbca4d0 .github: Fix reference to CHERRY_PICK_TESTING_IN_PROGRESS
(cherry picked from commit fbde0a71f0)
2023-05-08 18:13:36 +00:00
George Joseph
e3b9f66678 .github: Remove separate set labels step from new PR
(cherry picked from commit aced9046ca)
2023-05-08 18:13:36 +00:00
George Joseph
6aa490d373 .github: Refactor CP progress and add new PR test progress
(cherry picked from commit b7eeef6314)
2023-05-08 18:13:36 +00:00
Maximilian Fridrich
9cfda39d36 res_pjsip: mediasec: Add Security-Client headers after 401
When using mediasec, requests sent after a 401 must still contain the
Security-Client header according to
draft-dawes-sipcore-mediasec-parameter.

Resolves: #48
(cherry picked from commit f3cc1e7fbd)
2023-05-08 18:13:36 +00:00
George Joseph
ea564b640d .github: Add cherry-pick test progress labels
(cherry picked from commit 3707140472)
2023-05-08 18:13:36 +00:00
Joshua C. Colp
42c243866e LICENSE: Update link to trademark policy.
Resolves: #43
(cherry picked from commit a614604f32)
2023-05-08 18:13:36 +00:00
Naveen Albert
e6b84eca75 chan_dahdi: Add dialmode option for FXS lines.
Currently, both pulse and tone dialing are always enabled
on all FXS lines, with no way of disabling one or the other.

In some circumstances, it is desirable or necessary to
disable one of these, and this behavior can be problematic.

A new "dialmode" option is added which allows setting the
methods to support on a per channel basis for FXS (FXO
signalled lines). The four options are "both", "pulse",
"dtmf"/"tone", and "none".

Additionally, integration with the CHANNEL function is
added so that this setting can be updated for a channel
during a call.

Resolves: #35
ASTERISK-29992

UserNote: A "dialmode" option has been added which allows
specifying, on a per-channel basis, what methods of
subscriber dialing (pulse and/or tone) are permitted.

Additionally, this can be changed on a channel
at any point during a call using the CHANNEL
function.

(cherry picked from commit 82d7bb49dd)
2023-05-08 18:13:36 +00:00
George Joseph
81310a031c .github: Update issue templates
(cherry picked from commit ef644c3e93)
2023-05-08 18:13:35 +00:00
George Joseph
5cb6d8a453 .github: Remove unnecessary parameter in CherryPickTest
(cherry picked from commit 313cd9dd84)
2023-05-08 18:13:35 +00:00
George Joseph
cc36ae8de5 Initial GitHub PRs
(cherry picked from commit 987315a5fa)
2023-05-08 18:13:35 +00:00
George Joseph
f994463aee Initial GitHub Issue Templates
(cherry picked from commit f8dc014819)
2023-05-08 18:13:35 +00:00
Joshua C. Colp
6a347f413d pbx_dundi: Fix PJSIP endpoint configuration check.
ASTERISK-28233

Change-Id: I0f11c096b307a6178e22ca49d9c756343f0e1fdc
(cherry picked from commit 6c53e5e870)
2023-05-08 18:13:35 +00:00
Joshua Colp
9c5f5358d7 Revert "app_queue: periodic announcement configurable start time."
This reverts commit 3fd0b65bae.

Reason for revert: Causes segmentation fault.

Change-Id: Ic189c6f7872943a5500d3e71142f0c09d54fcc31
(cherry picked from commit de15852ef0)
2023-05-08 18:13:35 +00:00
Naveen Albert
59c9e4531e res_pjsip_stir_shaken: Fix JSON field ordering and disallowed TN characters.
The current STIR/SHAKEN signing process is inconsistent with the
RFCs in a couple ways that can cause interoperability issues.

RFC8225 specifies that the keys must be ordered lexicographically, but
currently the fields are simply ordered according to the order
in which they were added to the JSON object, which is not
compliant with the RFC and can cause issues with some carriers.

To fix this, we now leverage libjansson's ability to dump a JSON
object sorted by key value, yielding the correct field ordering.

Additionally, telephone numbers must have any leading + prefix removed
and must not contain characters outside of 0-9, *, and # in order
to comply with the RFCs. Numbers are now properly formatted as such.

ASTERISK-30407 #close

Change-Id: Iab76d39447c4b8cf133de85657dba02fda07f9a2
(cherry picked from commit 66a7cff57e)
2023-05-08 18:13:35 +00:00
Naveen Albert
99d17db963 pbx_dundi: Add PJSIP support.
Adds PJSIP as a supported technology to DUNDi.

To facilitate this, we now allow an endpoint to be specified
for outgoing PJSIP calls. We also allow users to force a specific
channel technology for outgoing SIP-protocol calls.

ASTERISK-28109 #close
ASTERISK-28233 #close

Change-Id: I2e28e5a5d007bd49e3df113ad567b011103899bf
(cherry picked from commit b33f92cbb5)
2023-05-08 18:13:35 +00:00
The_Blode
81a912f3ce install_prereq: Add Linux Mint support.
ASTERISK-30359 #close

Change-Id: I9c140c7f12ca7dafe65c317f2a26122cf2c72556
(cherry picked from commit de9aaf7e97)
2023-05-08 18:13:35 +00:00
Henning Westerholt
51509309ca chan_pjsip: fix music on hold continues after INVITE with replaces
In a three party scenario with INVITE with replaces, we need to
unhold the call, otherwise one party continues to get music on
hold, and the call is not properly bridged between them.

ASTERISK-30428

Change-Id: I5675df11e739be5226b328f8828d4b8d81fbefb4
(cherry picked from commit 1c5720b802)
2023-05-08 18:13:35 +00:00
Naveen Albert
c9aa3b0169 voicemail.conf: Fix incorrect comment about #include.
A comment at the top of voicemail.conf says that #include
cannot be used in voicemail.conf because this breaks
the ability for app_voicemail to auto-update passwords.
This is factually incorrect, since Asterisk has no problem
updating files that are #include'd in the main configuration
file, and this does work in voicemail.conf as well.

ASTERISK-30479 #close

Change-Id: I3bf7d275849ab83f55f7fb6702a75a3077ee1df3
(cherry picked from commit d0f39250ee)
2023-05-08 18:13:35 +00:00
Naveen Albert
5e7d21e5a5 app_queue: Fix minor xmldoc duplication and vagueness.
The F option in the xmldocs for the Queue application
was erroneously duplicated, causing it to display
twice on the wiki. The two sections are now merged into one.

Additionally, the description for the d option was quite
vague. Some more details are added to provide context
as to what this actually does.

ASTERISK-30486 #close

Change-Id: I6706cea708b5cc781f59f8652c2cb377e55aed7e
(cherry picked from commit bad5bda08c)
2023-05-08 18:13:35 +00:00
George Joseph
d0ce6d4ee5 test.c: Fix counting of tests and add 2 new tests
The unit test XML output was counting all registered tests as "run"
even when only a subset were actually requested to be run and
the "failures" attribute was missing.

* The "tests" attribute of the "testsuite" element in the
  output XML now reflects only the tests actually requested
  to be executed instead of all the tests registered.

* The "failures" attribute was added to the "testsuite"
  element.

Also added 2 new unit tests that just pass and fail to be
used for CI testing.

Change-Id: Ia137814b5aeb0e1a44c75034bd3615c26021da69
(cherry picked from commit a0fd95ef52)
2023-05-08 18:13:35 +00:00
Jaco Kroon
3a158c07a1 res_calendar: output busy state as part of show calendar.
Change-Id: I894e4ecc3e93db4ff7783d46266ba3c5e6ccda10
Signed-off-by: Jaco Kroon <jaco@uls.co.za>
(cherry picked from commit 019dc51139)
2023-05-08 18:13:35 +00:00
Sean Bright
255565e240 loader.c: Minor module key check simplification.
Change-Id: I65aefd4434a783096165c179b5f94f2e4810dffe
(cherry picked from commit 6dab013e49)
2023-05-08 18:13:35 +00:00
Sean Bright
6ff3258c17 ael: Regenerate lexers and parsers.
Various changes to ensure that the lexers and parsers can be correctly
generated when REBUILD_PARSERS is enabled.

Some notes:

* Because of the version of flex we are using to generate the lexers
  (2.5.35) some post-processing in the Makefile is still required.

* The generated lexers do not contain the problematic C99 check that
  was being replaced by the call to sed in the respective Makefiles so
  it was removed.

* Since these files are generated, they will include trailing
  whitespace in some places. This does not need to be corrected.

Change-Id: Ibbd343606fcf5c0d285b1599e6e8e59f514f2e4e
(cherry picked from commit 34ff836db5)
2023-05-08 18:13:35 +00:00
Mike Bradeen
2ac8388c6d bridge_builtin_features: add beep via touch variable
Add periodic beep option to one-touch recording by setting
the touch variable TOUCH_MONITOR_BEEP or
TOUCH_MIXMONITOR_BEEP to the desired interval in seconds.

If the interval is less than 5 seconds, a minimum of 5
seconds will be imposed.  If the interval is set to an
invalid value, it will default to 15 seconds.

A new test event PERIODIC_HOOK_ENABLED was added to the
func_periodic_hook hook_on function to indicate when
a hook is started.  This is so we can test that the touch
variable starts the hook as expected.

ASTERISK-30446

Change-Id: I800e494a789ba7a930bbdcd717e89d86040d6661
(cherry picked from commit ffe346b2de)
2023-05-08 18:13:35 +00:00
Mike Bradeen
e00eaa74e3 res_mixmonitor: MixMonitorMute by MixMonitor ID
While it is possible to create multiple mixmonitor instances
on a channel, it was not previously possible to mute individual
instances.

This change includes the ability to specify the MixMonitorID
when calling the manager action: MixMonitorMute.  This will
allow an individual MixMonitor instance to be muted via id.
This id can be stored as a channel variable using the 'i'
MixMonitor option.

As part of this change, if no MixMonitorID is specified in
the manager action MixMonitorMute, Asterisk will set the mute
flag on all MixMonitor spy-type audiohooks on the channel.
This is done via the new audiohook function:
ast_audiohook_set_mute_all.

ASTERISK-30464

Change-Id: Ibba8c7e750577aa1595a24b23316ef445245be98
(cherry picked from commit fa635a872e)
2023-05-08 18:13:35 +00:00
Mike Bradeen
3a4fd2fa42 format_sln: add .slin as supported file extension
Adds '.slin' to existing supported file extensions:
.sln and .raw

ASTERISK-30465

Change-Id: Ice848addc03a64c8404b87cb5d3b13399c57e496
(cherry picked from commit 8d2ffc8aa5)
2023-05-08 18:13:35 +00:00
Sean Bright
b376d16d81 res_agi: RECORD FILE plays 2 beeps.
Sending the "RECORD FILE" command without the optional
`offset_samples` argument can result in two beeps playing on the
channel.

This bug has been present since Asterisk 0.3.0 (2003-02-06).

ASTERISK-30457 #close

Change-Id: I95e88aa59378784d7f0eb648843f090e6723b787
(cherry picked from commit a3ec3efa02)
2023-05-08 18:13:35 +00:00
Naveen Albert
e104bd0852 func_json: Fix JSON parsing issues.
Fix issue with returning empty instead of dumping
the JSON string when recursing.

Also adds a unit test to capture this fix.

ASTERISK-30441 #close

Change-Id: If0bde9f3fe84f7af485e0838205cc21e0f752a85
(cherry picked from commit f9fd76677f)
2023-05-08 18:13:35 +00:00
Naveen Albert
3dcf6ddde5 app_senddtmf: Add SendFlash AMI action.
Adds an AMI action to send a flash event
on a channel.

ASTERISK-30440 #close

Change-Id: I4707aeecb3cd8f3e63fd0c3fe009798943c369c9
(cherry picked from commit 3556ca239a)
2023-05-08 18:13:35 +00:00