diff --git a/Makefile-man.am b/Makefile-man.am
index 7514e6a24f..d5b328d267 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -242,6 +242,7 @@ MANPAGES_ALIAS += \
man/SD_JOURNAL_INVALIDATE.3 \
man/SD_JOURNAL_LOCAL_ONLY.3 \
man/SD_JOURNAL_NOP.3 \
+ man/SD_JOURNAL_OS_ROOT.3 \
man/SD_JOURNAL_RUNTIME_ONLY.3 \
man/SD_JOURNAL_SUPPRESS_LOCATION.3 \
man/SD_JOURNAL_SYSTEM.3 \
@@ -388,9 +389,10 @@ MANPAGES_ALIAS += \
man/sd_journal_get_timeout.3 \
man/sd_journal_has_persistent_files.3 \
man/sd_journal_next_skip.3 \
- man/sd_journal_open_container.3 \
man/sd_journal_open_directory.3 \
+ man/sd_journal_open_directory_fd.3 \
man/sd_journal_open_files.3 \
+ man/sd_journal_open_files_fd.3 \
man/sd_journal_perror.3 \
man/sd_journal_previous.3 \
man/sd_journal_previous_skip.3 \
@@ -571,6 +573,7 @@ man/SD_JOURNAL_FOREACH_UNIQUE.3: man/sd_journal_query_unique.3
man/SD_JOURNAL_INVALIDATE.3: man/sd_journal_get_fd.3
man/SD_JOURNAL_LOCAL_ONLY.3: man/sd_journal_open.3
man/SD_JOURNAL_NOP.3: man/sd_journal_get_fd.3
+man/SD_JOURNAL_OS_ROOT.3: man/sd_journal_open.3
man/SD_JOURNAL_RUNTIME_ONLY.3: man/sd_journal_open.3
man/SD_JOURNAL_SUPPRESS_LOCATION.3: man/sd_journal_print.3
man/SD_JOURNAL_SYSTEM.3: man/sd_journal_open.3
@@ -717,9 +720,10 @@ man/sd_journal_get_monotonic_usec.3: man/sd_journal_get_realtime_usec.3
man/sd_journal_get_timeout.3: man/sd_journal_get_fd.3
man/sd_journal_has_persistent_files.3: man/sd_journal_has_runtime_files.3
man/sd_journal_next_skip.3: man/sd_journal_next.3
-man/sd_journal_open_container.3: man/sd_journal_open.3
man/sd_journal_open_directory.3: man/sd_journal_open.3
+man/sd_journal_open_directory_fd.3: man/sd_journal_open.3
man/sd_journal_open_files.3: man/sd_journal_open.3
+man/sd_journal_open_files_fd.3: man/sd_journal_open.3
man/sd_journal_perror.3: man/sd_journal_print.3
man/sd_journal_previous.3: man/sd_journal_next.3
man/sd_journal_previous_skip.3: man/sd_journal_next.3
@@ -1034,6 +1038,9 @@ man/SD_JOURNAL_LOCAL_ONLY.html: man/sd_journal_open.html
man/SD_JOURNAL_NOP.html: man/sd_journal_get_fd.html
$(html-alias)
+man/SD_JOURNAL_OS_ROOT.html: man/sd_journal_open.html
+ $(html-alias)
+
man/SD_JOURNAL_RUNTIME_ONLY.html: man/sd_journal_open.html
$(html-alias)
@@ -1472,15 +1479,18 @@ man/sd_journal_has_persistent_files.html: man/sd_journal_has_runtime_files.html
man/sd_journal_next_skip.html: man/sd_journal_next.html
$(html-alias)
-man/sd_journal_open_container.html: man/sd_journal_open.html
- $(html-alias)
-
man/sd_journal_open_directory.html: man/sd_journal_open.html
$(html-alias)
+man/sd_journal_open_directory_fd.html: man/sd_journal_open.html
+ $(html-alias)
+
man/sd_journal_open_files.html: man/sd_journal_open.html
$(html-alias)
+man/sd_journal_open_files_fd.html: man/sd_journal_open.html
+ $(html-alias)
+
man/sd_journal_perror.html: man/sd_journal_print.html
$(html-alias)
diff --git a/man/sd_journal_open.xml b/man/sd_journal_open.xml
index 6c362c2f91..153af2387f 100644
--- a/man/sd_journal_open.xml
+++ b/man/sd_journal_open.xml
@@ -45,14 +45,16 @@
sd_journal_open
sd_journal_open_directory
+ sd_journal_open_directory_fd
sd_journal_open_files
- sd_journal_open_container
+ sd_journal_open_files_fd
sd_journal_close
sd_journal
SD_JOURNAL_LOCAL_ONLY
SD_JOURNAL_RUNTIME_ONLY
SD_JOURNAL_SYSTEM
SD_JOURNAL_CURRENT_USER
+ SD_JOURNAL_OS_ROOT
Open the system journal for reading
@@ -73,6 +75,13 @@
int flags
+
+ int sd_journal_open_directory_fd
+ sd_journal **ret
+ int fd
+ int flags
+
+
int sd_journal_open_files
sd_journal **ret
@@ -81,9 +90,10 @@
- int sd_journal_open_container
+ int sd_journal_open_files_fd
sd_journal **ret
- const char *machine
+ int fds[]
+ unsigned n_fds
int flags
@@ -117,29 +127,28 @@
SD_JOURNAL_CURRENT_USER are specified, all
journal file types will be opened.
- sd_journal_open_directory() is similar
- to sd_journal_open() but takes an absolute
- directory path as argument. All journal files in this directory
- will be opened and interleaved automatically. This call also takes
- a flags argument, but it must be passed as 0 as no flags are
- currently understood for this call.
+ sd_journal_open_directory() is similar to sd_journal_open() but
+ takes an absolute directory path as argument. All journal files in this directory will be opened and interleaved
+ automatically. This call also takes a flags argument. The only flags parameter accepted by this call is
+ SD_JOURNAL_OS_ROOT. If specified, the journal files are searched below the usual
+ /var/log/journal and /run/log/journal relative to the specified path,
+ instead of directly beneath it.
- sd_journal_open_files() is similar to
- sd_journal_open() but takes a
- NULL-terminated list of file paths to open.
- All files will be opened and interleaved automatically. This call
- also takes a flags argument, but it must be passed as 0 as no
- flags are currently understood for this call. Please note that in
- the case of a live journal, this function is only useful for
- debugging, because individual journal files can be rotated at any
- moment, and the opening of specific files is inherently
- racy.
+ sd_journal_open_directory_fd() is similar to
+ sd_journal_open_directory(), but takes a file descriptor referencing a directory in the file
+ system instead of an absolute file system path.
- sd_journal_open_container() is similar
- to sd_journal_open() but opens the journal
- files of a running OS container. The specified machine name refers
- to a container that is registered with
- systemd-machined8.
+ sd_journal_open_files() is similar to sd_journal_open() but takes a
+ NULL-terminated list of file paths to open. All files will be opened and interleaved
+ automatically. This call also takes a flags argument, but it must be passed as 0 as no flags are currently
+ understood for this call. Please note that in the case of a live journal, this function is only useful for
+ debugging, because individual journal files can be rotated at any moment, and the opening of specific files is
+ inherently racy.
+
+ sd_journal_open_files_fd() is similar to sd_journal_open_files()
+ but takes an array of open file descriptors that must reference journal files, instead of an array of file system
+ paths. Pass the array of file descriptors as second argument, and the number of array entries in the third. The
+ flags parameter must be passed as 0.
sd_journal objects cannot be used in the
child after a fork. Functions which take a journal object as an