upstream commit
reuse parse_multistate for parse_flag (yes/no arguments). Saves a few lines of code and makes the parser more consistent wrt case- sensitivity. bz#2664 ok dtucker@ OpenBSD-Commit-ID: b2ad1b6086858d5db71c7b11e5a74dba6d60efef
This commit is contained in:
parent
d52131a983
commit
33edb6ebdc
24
servconf.c
24
servconf.c
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
/* $OpenBSD: servconf.c,v 1.319 2017/11/03 03:18:53 dtucker Exp $ */
|
/* $OpenBSD: servconf.c,v 1.320 2017/11/03 05:18:44 djm Exp $ */
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
|
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
|
||||||
* All rights reserved
|
* All rights reserved
|
||||||
|
@ -1098,6 +1098,11 @@ struct multistate {
|
||||||
char *key;
|
char *key;
|
||||||
int value;
|
int value;
|
||||||
};
|
};
|
||||||
|
static const struct multistate multistate_flag[] = {
|
||||||
|
{ "yes", 1 },
|
||||||
|
{ "no", 0 },
|
||||||
|
{ NULL, -1 }
|
||||||
|
};
|
||||||
static const struct multistate multistate_addressfamily[] = {
|
static const struct multistate multistate_addressfamily[] = {
|
||||||
{ "inet", AF_INET },
|
{ "inet", AF_INET },
|
||||||
{ "inet6", AF_INET6 },
|
{ "inet6", AF_INET6 },
|
||||||
|
@ -1338,21 +1343,8 @@ process_server_config_line(ServerOptions *options, char *line,
|
||||||
case sIgnoreRhosts:
|
case sIgnoreRhosts:
|
||||||
intptr = &options->ignore_rhosts;
|
intptr = &options->ignore_rhosts;
|
||||||
parse_flag:
|
parse_flag:
|
||||||
arg = strdelim(&cp);
|
multistate_ptr = multistate_flag;
|
||||||
if (!arg || *arg == '\0')
|
goto parse_multistate;
|
||||||
fatal("%s line %d: missing yes/no argument.",
|
|
||||||
filename, linenum);
|
|
||||||
value = 0; /* silence compiler */
|
|
||||||
if (strcmp(arg, "yes") == 0)
|
|
||||||
value = 1;
|
|
||||||
else if (strcmp(arg, "no") == 0)
|
|
||||||
value = 0;
|
|
||||||
else
|
|
||||||
fatal("%s line %d: Bad yes/no argument: %s",
|
|
||||||
filename, linenum, arg);
|
|
||||||
if (*activep && *intptr == -1)
|
|
||||||
*intptr = value;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case sIgnoreUserKnownHosts:
|
case sIgnoreUserKnownHosts:
|
||||||
intptr = &options->ignore_user_known_hosts;
|
intptr = &options->ignore_user_known_hosts;
|
||||||
|
|
Loading…
Reference in New Issue