[systemd-devel] [PATCH 07/10] coredump: Support coredump.conf.d directories in the usual search paths
Josh Triplett
josh at joshtriplett.org
Sat Nov 29 01:06:48 PST 2014
---
Makefile-man.am | 6 ++++--
man/coredump.conf.xml | 14 +++++++++++---
src/journal/coredump.c | 9 +++++----
src/journal/coredump.conf | 3 +++
4 files changed, 23 insertions(+), 9 deletions(-)
diff --git a/Makefile-man.am b/Makefile-man.am
index 593dc40..01d3408 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -714,8 +714,10 @@ MANPAGES += \
man/coredumpctl.1 \
man/systemd-coredump.8
MANPAGES_ALIAS += \
- #
-
+ man/coredump.conf.d.5
+man/coredump.conf.d.5: man/coredump.conf.5
+man/coredump.conf.d.html: man/coredump.conf.html
+ $(html-alias)
endif
diff --git a/man/coredump.conf.xml b/man/coredump.conf.xml
index 5eb5c5f..37916f0 100644
--- a/man/coredump.conf.xml
+++ b/man/coredump.conf.xml
@@ -22,7 +22,8 @@
along with systemd; If not, see <http://www.gnu.org/licenses/>.
-->
-<refentry id="coredump.conf" conditional="ENABLE_COREDUMP">
+<refentry id="coredump.conf" conditional="ENABLE_COREDUMP"
+ xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>coredump.conf</title>
<productname>systemd</productname>
@@ -44,20 +45,27 @@
<refnamediv>
<refname>coredump.conf</refname>
- <refpurpose>Coredump storage configuration file</refpurpose>
+ <refname>coredump.conf.d</refname>
+ <refpurpose>Coredump storage configuration files</refpurpose>
</refnamediv>
<refsynopsisdiv>
<para><filename>/etc/systemd/coredump.conf</filename></para>
+ <para><filename>/etc/systemd/coredump.conf.d/*.conf</filename></para>
+ <para><filename>/run/systemd/coredump.conf.d/*.conf</filename></para>
+ <para><filename>/usr/lib/systemd/coredump.conf.d/*.conf</filename></para>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
- <para>This file configures the behaviour of <command>systemd-coredump</command>,
+ <para>These files configure the behaviour of <command>systemd-coredump</command>,
a handler for core dumps invoked by the kernel.</para>
</refsect1>
+ <xi:include href="standard-conf.xml" xpointer="confd" />
+ <xi:include href="standard-conf.xml" xpointer="conf" />
+
<refsect1>
<title>Options</title>
diff --git a/src/journal/coredump.c b/src/journal/coredump.c
index d889ed1..be45a68 100644
--- a/src/journal/coredump.c
+++ b/src/journal/coredump.c
@@ -120,10 +120,11 @@ static int parse_config(void) {
{}
};
- return config_parse(NULL, "/etc/systemd/coredump.conf", NULL,
- "Coredump\0",
- config_item_table_lookup, items,
- false, false, true, NULL);
+ return config_parse_many("/etc/systemd/coredump.conf",
+ CONF_DIRS_NULSTR("systemd/coredump.conf"),
+ "Coredump\0",
+ config_item_table_lookup, items,
+ false, NULL);
}
static int fix_acl(int fd, uid_t uid) {
diff --git a/src/journal/coredump.conf b/src/journal/coredump.conf
index 0cc328f..0fe9fe8 100644
--- a/src/journal/coredump.conf
+++ b/src/journal/coredump.conf
@@ -5,6 +5,9 @@
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
+# You can override the directives in this file by creating files in
+# /etc/systemd/coredump.conf.d/*.conf.
+#
# See coredump.conf(5) for details
[Coredump]
--
2.1.3
More information about the systemd-devel
mailing list