mirror of
https://gitlab.com/chrony/chrony.git
synced 2025-12-03 19:55:07 -05:00
conf: allow wildcard patterns in include directive
Use glob() to match and read multiple configuration files with one include directive.
This commit is contained in:
@@ -1668,12 +1668,15 @@ hwclockfile /etc/adjtime
|
||||
@c {{{ include
|
||||
@node include directive
|
||||
@subsection include
|
||||
The @code{include} directive includes a specified configuration file.
|
||||
This is useful when maintaining configuration on multiple hosts to
|
||||
keep the differences in a separate file.
|
||||
The @code{include} directive includes a specified configuration file or
|
||||
multiple configuration files when a wildcard pattern is specified. This can be
|
||||
useful when maintaining configuration on multiple hosts to keep the differences
|
||||
in separate files.
|
||||
|
||||
An example of the command is
|
||||
|
||||
@example
|
||||
include @SYSCONFDIR@/chrony/local.conf
|
||||
include @SYSCONFDIR@/chrony.d/*.conf
|
||||
@end example
|
||||
@c }}}
|
||||
@c {{{ initstepslew
|
||||
|
||||
14
conf.c
14
conf.c
@@ -1236,8 +1236,20 @@ parse_tempcomp(char *line)
|
||||
static void
|
||||
parse_include(char *line)
|
||||
{
|
||||
glob_t gl;
|
||||
size_t i;
|
||||
|
||||
check_number_of_args(line, 1);
|
||||
CNF_ReadFile(line);
|
||||
|
||||
if (glob(line, 0, NULL, &gl)) {
|
||||
DEBUG_LOG(LOGF_Configure, "glob of %s failed", line);
|
||||
return;
|
||||
}
|
||||
|
||||
for (i = 0; i < gl.gl_pathc; i++)
|
||||
CNF_ReadFile(gl.gl_pathv[i]);
|
||||
|
||||
globfree(&gl);
|
||||
}
|
||||
|
||||
/* ================================================== */
|
||||
|
||||
Reference in New Issue
Block a user