nfqws: fix behavior when no proflle filter matched

This commit is contained in:
bol-van 2024-09-17 22:57:00 +03:00
parent cab95fcf4e
commit 0f6d1f4020
14 changed files with 15 additions and 2 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -589,6 +589,9 @@ hostname is revealed it's switched to another profile.
If you use 0-phase desync methods think carefully what can happen during strategy switch.
Use `--debug` logging to understand better what `nfqws` does.
Profiles are numbered from 1 to N. There's last empty profile in the chain numbered 0.
It's used when no filter matched.
IMPORTANT : multiple strategies exist only for the case when it's not possible to combine all to one strategy.
Copy-pasting blockcheck results of different websites to multiple strategies lead to the mess.
This way you may never unblock all resources and only confuse yourself.

View File

@ -678,6 +678,8 @@ nfqws способен по-разному реагировать на разл
хоста профиль меняется на лету. Поэтому если у вас есть параметры дурения нулевой фазы, тщательно
продумывайте что может произойти при переключении стратегии. Смотрите debug log, чтобы лучше
понять что делает nfqws.
Нумерация профилей идет с 1 до N. Последним в цепочке создается пустой профиль с номером 0.
Он используется, когда никакие условия фильтров не совпали.
ВАЖНО : множественные стратегии создавались только для случаев, когда невозможно обьединить
имеющиеся стратегии для разных ресурсов. Копирование стратегий из blockcheck для разных сайтов

View File

@ -1706,7 +1706,7 @@ int main(int argc, char **argv)
#endif
}
}
#ifdef __linux__
if (params.qnum<0)
{
@ -1763,7 +1763,15 @@ int main(int argc, char **argv)
}
#endif
DLOG_CONDUP("we have %d desync profile(s)\n",desync_profile_count);
DLOG("adding low-priority default empty desync profile\n");
// add default empty profile
if (!(dpl = dp_list_add(&params.desync_profiles)))
{
DLOG_ERR("desync_profile_add: out of memory\n");
exit_clean(1);
}
DLOG_CONDUP("we have %d user defined desync profile(s) and default low priority profile 0\n",desync_profile_count);
v=0;
LIST_FOREACH(dpl, &params.desync_profiles, next)