nfqws,tpws: remove @<config_file> function from OpenBSD

This commit is contained in:
bol-van
2024-11-03 15:32:51 +03:00
parent 74b6281770
commit 31d4eaaa14
4 changed files with 32 additions and 0 deletions

View File

@@ -122,7 +122,9 @@ static int get_default_ttl(void)
static void exithelp(void)
{
printf(
#ifndef __OpenBSD__
" @<config_file>|$<config_file>\t\t; read file for options. must be the only argument. other options are ignored.\n\n"
#endif
" --bind-addr=<v4_addr>|<v6_addr>\t; for v6 link locals append %%interface_name\n"
" --bind-iface4=<interface_name>\t\t; bind to the first ipv4 addr of interface\n"
" --bind-iface6=<interface_name>\t\t; bind to the first ipv6 addr of interface\n"
@@ -215,13 +217,17 @@ static void exithelp(void)
);
exit(1);
}
#ifndef __OpenBSD__
static void cleanup_args()
{
wordfree(&params.wexp);
}
#endif
static void cleanup_params(void)
{
#ifndef __OpenBSD__
cleanup_args();
#endif
dp_list_destroy(&params.desync_profiles);
@@ -364,6 +370,7 @@ static bool parse_pf_list(char *opt, struct port_filters_head *pfl)
return true;
}
#ifndef __OpenBSD__
// no static to not allow optimizer to inline this func (save stack)
void config_from_file(const char *filename)
{
@@ -388,6 +395,7 @@ void config_from_file(const char *filename)
exit_clean(1);
}
}
#endif
void parse_params(int argc, char *argv[])
{
@@ -427,12 +435,14 @@ void parse_params(int argc, char *argv[])
dp = &dpl->dp;
dp->n = ++desync_profile_count;
#ifndef __OpenBSD__
if (argc>=2 && (argv[1][0]=='@' || argv[1][0]=='$'))
{
config_from_file(argv[1]+1);
argv=params.wexp.we_wordv;
argc=params.wexp.we_wordc;
}
#endif
const struct option long_options[] = {
{ "help",no_argument,0,0 },// optidx=0
@@ -1133,8 +1143,10 @@ void parse_params(int argc, char *argv[])
IpsetsDebug();
VPRINT("\n");
#ifndef __OpenBSD__
// do not need args from file anymore
cleanup_args();
#endif
}