mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-23 03:10:05 +00:00
resolv: Remove processing of unimplemented "spoof" host.conf options
This commit is contained in:
parent
5c6e674735
commit
7d68cdaa4f
@ -1,3 +1,12 @@
|
||||
2016-12-27 Florian Weimer <fweimer@redhat.com>
|
||||
|
||||
* resolv/res_hconf.h (HCONF_FLAG_SPOOF, HCONF_FLAG_SPOOFALERT):
|
||||
Remove.
|
||||
* resolv/res_hconf.c (ENV_SPOOF, arg_spoof): Remove.
|
||||
(cmd): Remove spoof, nospoof, spoofalert.
|
||||
(parse_line): Ignore spoof-related lines.
|
||||
(do_init): Do not process RESOLV_SPOOF_CHECK.
|
||||
|
||||
2016-12-27 Florian Weimer <fweimer@redhat.com>
|
||||
|
||||
[BZ #20964]
|
||||
|
@ -21,9 +21,6 @@
|
||||
Though mostly compatibly, the following differences exist compared
|
||||
to the original implementation:
|
||||
|
||||
- new command "spoof" takes an arguments like RESOLV_SPOOF_CHECK
|
||||
environment variable (i.e., `off', `nowarn', or `warn').
|
||||
|
||||
- line comments can appear anywhere (not just at the beginning of
|
||||
a line)
|
||||
*/
|
||||
@ -55,7 +52,6 @@
|
||||
|
||||
/* Environment vars that all user to override default behavior: */
|
||||
#define ENV_HOSTCONF "RESOLV_HOST_CONF"
|
||||
#define ENV_SPOOF "RESOLV_SPOOF_CHECK"
|
||||
#define ENV_TRIM_OVERR "RESOLV_OVERRIDE_TRIM_DOMAINS"
|
||||
#define ENV_TRIM_ADD "RESOLV_ADD_TRIM_DOMAINS"
|
||||
#define ENV_MULTI "RESOLV_MULTI"
|
||||
@ -65,7 +61,6 @@ enum parse_cbs
|
||||
{
|
||||
CB_none,
|
||||
CB_arg_trimdomain_list,
|
||||
CB_arg_spoof,
|
||||
CB_arg_bool
|
||||
};
|
||||
|
||||
@ -78,10 +73,7 @@ static const struct cmd
|
||||
{
|
||||
{"order", CB_none, 0},
|
||||
{"trim", CB_arg_trimdomain_list, 0},
|
||||
{"spoof", CB_arg_spoof, 0},
|
||||
{"multi", CB_arg_bool, HCONF_FLAG_MULTI},
|
||||
{"nospoof", CB_arg_bool, HCONF_FLAG_SPOOF},
|
||||
{"spoofalert", CB_arg_bool, HCONF_FLAG_SPOOFALERT},
|
||||
{"reorder", CB_arg_bool, HCONF_FLAG_REORDER}
|
||||
};
|
||||
|
||||
@ -163,28 +155,6 @@ arg_trimdomain_list (const char *fname, int line_num, const char *args)
|
||||
}
|
||||
|
||||
|
||||
static const char *
|
||||
arg_spoof (const char *fname, int line_num, const char *args)
|
||||
{
|
||||
const char *start = args;
|
||||
size_t len;
|
||||
|
||||
args = skip_string (args);
|
||||
len = args - start;
|
||||
|
||||
if (len == 3 && __strncasecmp (start, "off", len) == 0)
|
||||
_res_hconf.flags &= ~(HCONF_FLAG_SPOOF | HCONF_FLAG_SPOOFALERT);
|
||||
else
|
||||
{
|
||||
_res_hconf.flags |= (HCONF_FLAG_SPOOF | HCONF_FLAG_SPOOFALERT);
|
||||
if ((len == 6 && __strncasecmp (start, "nowarn", len) == 0)
|
||||
|| !(len == 4 && __strncasecmp (start, "warn", len) == 0))
|
||||
_res_hconf.flags &= ~HCONF_FLAG_SPOOFALERT;
|
||||
}
|
||||
return args;
|
||||
}
|
||||
|
||||
|
||||
static const char *
|
||||
arg_bool (const char *fname, int line_num, const char *args, unsigned flag)
|
||||
{
|
||||
@ -261,8 +231,6 @@ parse_line (const char *fname, int line_num, const char *str)
|
||||
|
||||
if (c->cb == CB_arg_trimdomain_list)
|
||||
str = arg_trimdomain_list (fname, line_num, str);
|
||||
else if (c->cb == CB_arg_spoof)
|
||||
str = arg_spoof (fname, line_num, str);
|
||||
else if (c->cb == CB_arg_bool)
|
||||
str = arg_bool (fname, line_num, str, c->arg);
|
||||
else
|
||||
@ -325,10 +293,6 @@ do_init (void)
|
||||
fclose (fp);
|
||||
}
|
||||
|
||||
envval = getenv (ENV_SPOOF);
|
||||
if (envval)
|
||||
arg_spoof (ENV_SPOOF, 1, envval);
|
||||
|
||||
envval = getenv (ENV_MULTI);
|
||||
if (envval)
|
||||
arg_bool (ENV_MULTI, 1, envval, HCONF_FLAG_MULTI);
|
||||
|
@ -41,8 +41,6 @@ struct hconf
|
||||
const char *trimdomain[TRIMDOMAINS_MAX];
|
||||
unsigned int flags;
|
||||
# define HCONF_FLAG_INITED (1 << 0) /* initialized? */
|
||||
# define HCONF_FLAG_SPOOF (1 << 1) /* refuse spoofed addresses */
|
||||
# define HCONF_FLAG_SPOOFALERT (1 << 2) /* syslog warning of spoofed */
|
||||
# define HCONF_FLAG_REORDER (1 << 3) /* list best address first */
|
||||
# define HCONF_FLAG_MULTI (1 << 4) /* see comments for gethtbyname() */
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user