]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
ami: Improve substring parsing for disabled events.
authorNaveen Albert <asterisk@phreaknet.org>
Thu, 24 Feb 2022 16:55:23 +0000 (16:55 +0000)
committerFriendly Automation <jenkins2@gerrit.asterisk.org>
Mon, 7 Mar 2022 20:23:11 +0000 (14:23 -0600)
ASTERISK_29853 added the ability to selectively disable
AMI events on a global basis, but the logic for this uses
strstr which means that events with names which are the prefix
of another event, if disabled, could disable those events as
well.

Instead, we account for this possibility to prevent this
undesired behavior from occuring.

ASTERISK_29853

Change-Id: Icccd1872602889806740971e4adf932f92466959

main/manager.c

index f6feb8e3079f5daa124018ec01525f81f655d4f3..76a6611a241fd2fb999e88cb86a72fb34d317c08 100644 (file)
@@ -7234,7 +7234,7 @@ int __ast_manager_event_multichan(int category, const char *event, int chancount
        int res;
 
        if (!ast_strlen_zero(manager_disabledevents)) {
-               if (strstr(manager_disabledevents, event)) {
+               if (ast_in_delimited_string(event, manager_disabledevents, ',')) {
                        ast_debug(3, "AMI Event '%s' is globally disabled, skipping\n", event);
                        /* Event is globally disabled */
                        ao2_cleanup(sessions);