When
8297136f was merged for ASTERISK-25040, a regression was introduced
surrounding the case sensitivity of device names within hints.
Previously, device names - such as 'sip/foo' - were compared in a case
insensitive fashion. Thus, 'sip/foo' was equivalent to 'SIP/foo'. After
that patch, only the case sensitive name would match, i.e., 'SIP/foo'.
As a result, some dialplan hints stopped working.
This patch re-introduces case insensitive matching for device names in
hints.
ASTERISK-25040
ASTERISK-25202 #close
Change-Id: If5046a7d14097e1e3c12b63092b9584bb1e9cb4c
(cherry picked from commit
96bbcf495a1da9e607d9b04a44b5c4f49e83cc03)
right_key = right->hintdevice;
/* Fall through */
case OBJ_SEARCH_KEY:
- cmp = strcmp(left->hintdevice, right_key);
+ cmp = strcasecmp(left->hintdevice, right_key);
break;
case OBJ_SEARCH_PARTIAL_KEY:
/*
char *device = arg;
struct ast_hint *hint = data;
- if (!strcmp(candidate->hintdevice, device)
+ if (!strcasecmp(candidate->hintdevice, device)
&& candidate->hint == hint) {
return CMP_MATCH;
}