]> git.ipfire.org Git - thirdparty/asterisk.git/commit
app.c: Allow ampersands in playback lists to be escaped.
authorSean Bright <sean@seanbright.com>
Tue, 7 Nov 2023 20:03:53 +0000 (15:03 -0500)
committerasterisk-org-access-app[bot] <120671045+asterisk-org-access-app[bot]@users.noreply.github.com>
Tue, 28 Nov 2023 19:52:03 +0000 (19:52 +0000)
commitca931c9436f939e1380dc0f4a4e89e85e62bf36e
tree25b4cd53980901150f3cdd3e82eea2a9a2a837f1
parent31c44d06344fd479568cd532adc8d7ff156f8f7e
app.c: Allow ampersands in playback lists to be escaped.

Any function or application that accepts a `&`-separated list of
filenames can now include a literal `&` in a filename by wrapping the
entire filename in single quotes, e.g.:

```
exten = _X.,n,Playback('https://example.com/sound.cgi?a=b&c=d'&hello-world)
```

Fixes #172

UpgradeNote: Ampersands in URLs passed to the `Playback()`,
`Background()`, `SpeechBackground()`, `Read()`, `Authenticate()`, or
`Queue()` applications as filename arguments can now be escaped by
single quoting the filename. Additionally, this is also possible when
using the `CONFBRIDGE` dialplan function, or configuring various
features in `confbridge.conf` and `queues.conf`.
apps/app_authenticate.c
apps/app_confbridge.c
apps/app_playback.c
apps/app_queue.c
apps/app_read.c
apps/app_skel.c
apps/app_speech_utils.c
main/app.c
main/pbx_builtins.c