mirror of
https://github.com/bol-van/zapret.git
synced 2024-11-26 12:10:53 +03:00
nfqws: fail if hostlist/ipset does not exist at startup
This commit is contained in:
parent
e979f88963
commit
6686c4a190
@ -245,6 +245,11 @@ static struct hostlist_file *RegisterHostlist_(struct hostlist_files_head *hostl
|
|||||||
}
|
}
|
||||||
struct hostlist_file *RegisterHostlist(struct desync_profile *dp, bool bExclude, const char *filename)
|
struct hostlist_file *RegisterHostlist(struct desync_profile *dp, bool bExclude, const char *filename)
|
||||||
{
|
{
|
||||||
|
if (!file_mod_time(filename))
|
||||||
|
{
|
||||||
|
DLOG_ERR("cannot access hostlist file '%s'\n",filename);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
return RegisterHostlist_(
|
return RegisterHostlist_(
|
||||||
¶ms.hostlists,
|
¶ms.hostlists,
|
||||||
bExclude ? &dp->hl_collection_exclude : &dp->hl_collection,
|
bExclude ? &dp->hl_collection_exclude : &dp->hl_collection,
|
||||||
|
@ -225,7 +225,8 @@ static bool IpsetCheck_(const struct ipset_collection_head *ips, const struct ip
|
|||||||
|
|
||||||
bool IpsetCheck(const struct desync_profile *dp, const struct in_addr *ipv4, const struct in6_addr *ipv6)
|
bool IpsetCheck(const struct desync_profile *dp, const struct in_addr *ipv4, const struct in6_addr *ipv6)
|
||||||
{
|
{
|
||||||
if (!PROFILE_IPSETS_EMPTY(dp)) DLOG("* ipset check for profile %d\n",dp->n);
|
if (PROFILE_IPSETS_EMPTY(dp)) return true;
|
||||||
|
DLOG("* ipset check for profile %d\n",dp->n);
|
||||||
return IpsetCheck_(&dp->ips_collection,&dp->ips_collection_exclude,ipv4,ipv6);
|
return IpsetCheck_(&dp->ips_collection,&dp->ips_collection_exclude,ipv4,ipv6);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -243,6 +244,11 @@ static struct ipset_file *RegisterIpset_(struct ipset_files_head *ipsets, struct
|
|||||||
}
|
}
|
||||||
struct ipset_file *RegisterIpset(struct desync_profile *dp, bool bExclude, const char *filename)
|
struct ipset_file *RegisterIpset(struct desync_profile *dp, bool bExclude, const char *filename)
|
||||||
{
|
{
|
||||||
|
if (!file_mod_time(filename))
|
||||||
|
{
|
||||||
|
DLOG_ERR("cannot access ipset file '%s'\n",filename);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
return RegisterIpset_(
|
return RegisterIpset_(
|
||||||
¶ms.ipsets,
|
¶ms.ipsets,
|
||||||
bExclude ? &dp->ips_collection_exclude : &dp->ips_collection,
|
bExclude ? &dp->ips_collection_exclude : &dp->ips_collection,
|
||||||
|
10
nfq/nfqws.c
10
nfq/nfqws.c
@ -1511,14 +1511,14 @@ int main(int argc, char **argv)
|
|||||||
case 45: /* hostlist */
|
case 45: /* hostlist */
|
||||||
if (!RegisterHostlist(dp, false, optarg))
|
if (!RegisterHostlist(dp, false, optarg))
|
||||||
{
|
{
|
||||||
DLOG_ERR("failed to register hostlist %s\n", optarg);
|
DLOG_ERR("failed to register hostlist '%s'\n", optarg);
|
||||||
exit_clean(1);
|
exit_clean(1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 46: /* hostlist-exclude */
|
case 46: /* hostlist-exclude */
|
||||||
if (!RegisterHostlist(dp, true, optarg))
|
if (!RegisterHostlist(dp, true, optarg))
|
||||||
{
|
{
|
||||||
DLOG_ERR("failed to register hostlist %s\n", optarg);
|
DLOG_ERR("failed to register hostlist '%s'\n", optarg);
|
||||||
exit_clean(1);
|
exit_clean(1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -1549,7 +1549,7 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
if (!(dp->hostlist_auto=RegisterHostlist(dp, false, optarg)))
|
if (!(dp->hostlist_auto=RegisterHostlist(dp, false, optarg)))
|
||||||
{
|
{
|
||||||
DLOG_ERR("failed to register hostlist %s\n", optarg);
|
DLOG_ERR("failed to register hostlist '%s'\n", optarg);
|
||||||
exit_clean(1);
|
exit_clean(1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -1639,14 +1639,14 @@ int main(int argc, char **argv)
|
|||||||
case 57: /* ipset */
|
case 57: /* ipset */
|
||||||
if (!RegisterIpset(dp, false, optarg))
|
if (!RegisterIpset(dp, false, optarg))
|
||||||
{
|
{
|
||||||
DLOG_ERR("failed to register ipset %s\n", optarg);
|
DLOG_ERR("failed to register ipset '%s'\n", optarg);
|
||||||
exit_clean(1);
|
exit_clean(1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 58: /* ipset-exclude */
|
case 58: /* ipset-exclude */
|
||||||
if (!RegisterIpset(dp, true, optarg))
|
if (!RegisterIpset(dp, true, optarg))
|
||||||
{
|
{
|
||||||
DLOG_ERR("failed to register ipset %s\n", optarg);
|
DLOG_ERR("failed to register ipset '%s'\n", optarg);
|
||||||
exit_clean(1);
|
exit_clean(1);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user