esfilter: Fixed ANY match for CA filter
This commit is contained in:
parent
d039610c24
commit
5394ce2cc9
1 changed files with 10 additions and 9 deletions
|
@ -397,17 +397,18 @@ filter:
|
|||
if (esf->esf_pid && esf->esf_pid != st->es_pid)
|
||||
continue;
|
||||
}
|
||||
if (i == ESF_CLASS_CA &&
|
||||
(esf->esf_caid != -1 || esf->esf_caprovider != -1)) {
|
||||
LIST_FOREACH(ca, &st->es_caids, link) {
|
||||
if (esf->esf_caid != -1 && ca->caid != esf->esf_caid)
|
||||
if (i == ESF_CLASS_CA) {
|
||||
if ((esf->esf_caid != (uint16_t)-1 || esf->esf_caprovider != -1)) {
|
||||
LIST_FOREACH(ca, &st->es_caids, link) {
|
||||
if (esf->esf_caid != -1 && ca->caid != esf->esf_caid)
|
||||
continue;
|
||||
if (esf->esf_caprovider != -1 && ca->providerid != esf->esf_caprovider)
|
||||
continue;
|
||||
break;
|
||||
}
|
||||
if (ca == NULL)
|
||||
continue;
|
||||
if (esf->esf_caprovider != -1 && ca->providerid != esf->esf_caprovider)
|
||||
continue;
|
||||
break;
|
||||
}
|
||||
if (ca == NULL)
|
||||
continue;
|
||||
}
|
||||
if (esf->esf_log)
|
||||
tvhlog(LOG_INFO, "service", "esfilter: %s %03d %05d %s %s %s %s",
|
||||
|
|
Loading…
Add table
Reference in a new issue