summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosh Triplett <josh@joshtriplett.org>2014-11-29 01:06:48 -0800
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2014-11-29 13:55:32 -0500
commit301af7e4853ad0281402f8d86f5a77c6cb7ce9f4 (patch)
treee62b158e25d7d367e4b81899035782b0c1d2125f
parent396f9e2b327d702ea9502b80febf836283e19350 (diff)
coredump: Support coredump.conf.d directories in the usual search paths
-rw-r--r--Makefile-man.am6
-rw-r--r--man/coredump.conf.xml14
-rw-r--r--src/journal/coredump.c9
-rw-r--r--src/journal/coredump.conf3
4 files changed, 23 insertions, 9 deletions
diff --git a/Makefile-man.am b/Makefile-man.am
index 593dc40638..01d34087b2 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 5eb5c5f199..37916f0400 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 d889ed1f8f..be45a684e5 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 0cc328f549..0fe9fe801a 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]