mirror of
https://github.com/systemd/systemd.git
synced 2024-12-23 21:35:11 +03:00
11a1589223
Files which are installed as-is (any .service and other unit files, .conf files, .policy files, etc), are left as is. My assumption is that SPDX identifiers are not yet that well known, so it's better to retain the extended header to avoid any doubt. I also kept any copyright lines. We can probably remove them, but it'd nice to obtain explicit acks from all involved authors before doing that.
137 lines
5.3 KiB
XML
137 lines
5.3 KiB
XML
<?xml version='1.0'?> <!--*-nxml-*-->
|
||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||
|
||
<!--
|
||
SPDX-License-Identifier: LGPL-2.1+
|
||
|
||
This file is part of systemd.
|
||
|
||
Copyright 2012 Lennart Poettering
|
||
-->
|
||
|
||
<refentry id="sd_journal_get_cursor">
|
||
|
||
<refentryinfo>
|
||
<title>sd_journal_get_cursor</title>
|
||
<productname>systemd</productname>
|
||
|
||
<authorgroup>
|
||
<author>
|
||
<contrib>Developer</contrib>
|
||
<firstname>Lennart</firstname>
|
||
<surname>Poettering</surname>
|
||
<email>lennart@poettering.net</email>
|
||
</author>
|
||
</authorgroup>
|
||
</refentryinfo>
|
||
|
||
<refmeta>
|
||
<refentrytitle>sd_journal_get_cursor</refentrytitle>
|
||
<manvolnum>3</manvolnum>
|
||
</refmeta>
|
||
|
||
<refnamediv>
|
||
<refname>sd_journal_get_cursor</refname>
|
||
<refname>sd_journal_test_cursor</refname>
|
||
<refpurpose>Get cursor string for or test cursor string against the current journal entry</refpurpose>
|
||
</refnamediv>
|
||
|
||
<refsynopsisdiv>
|
||
<funcsynopsis>
|
||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||
|
||
<funcprototype>
|
||
<funcdef>int <function>sd_journal_get_cursor</function></funcdef>
|
||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||
<paramdef>char **<parameter>cursor</parameter></paramdef>
|
||
</funcprototype>
|
||
|
||
<funcprototype>
|
||
<funcdef>int <function>sd_journal_test_cursor</function></funcdef>
|
||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||
<paramdef>const char *<parameter>cursor</parameter></paramdef>
|
||
</funcprototype>
|
||
|
||
</funcsynopsis>
|
||
</refsynopsisdiv>
|
||
|
||
<refsect1>
|
||
<title>Description</title>
|
||
|
||
<para><function>sd_journal_get_cursor()</function> returns a
|
||
cursor string for the current journal entry. A cursor is a
|
||
serialization of the current journal position formatted as text.
|
||
The string only contains printable characters and can be passed
|
||
around in text form. The cursor identifies a journal entry
|
||
globally and in a stable way and may be used to later seek to it
|
||
via
|
||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||
The cursor string should be considered opaque and not be parsed by
|
||
clients. Seeking to a cursor position without the specific entry
|
||
being available locally will seek to the next closest (in terms of
|
||
time) available entry. The call takes two arguments: a journal
|
||
context object and a pointer to a string pointer where the cursor
|
||
string will be placed. The string is allocated via libc
|
||
<citerefentry project='man-pages'><refentrytitle>malloc</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||
and should be freed after use with
|
||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||
|
||
<para>Note that <function>sd_journal_get_cursor()</function> will
|
||
not work before
|
||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||
(or related call) has been called at least once, in order to
|
||
position the read pointer at a valid entry.</para>
|
||
|
||
<para><function>sd_journal_test_cursor()</function>
|
||
may be used to check whether the current position in
|
||
the journal matches the specified cursor. This is
|
||
useful since cursor strings do not uniquely identify
|
||
an entry: the same entry might be referred to by
|
||
multiple different cursor strings, and hence string
|
||
comparing cursors is not possible. Use this call to
|
||
verify after an invocation of
|
||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||
whether the entry being sought to was actually found
|
||
in the journal or the next closest entry was used
|
||
instead.</para>
|
||
</refsect1>
|
||
|
||
<refsect1>
|
||
<title>Return Value</title>
|
||
|
||
<para><function>sd_journal_get_cursor()</function> returns 0 on
|
||
success or a negative errno-style error code.
|
||
<function>sd_journal_test_cursor()</function> returns positive if
|
||
the current entry matches the specified cursor, 0 if it does not
|
||
match the specified cursor or a negative errno-style error code on
|
||
failure.</para>
|
||
</refsect1>
|
||
|
||
<refsect1>
|
||
<title>Notes</title>
|
||
|
||
<para>All functions listed here are thread-agnostic and only a single thread may operate
|
||
on a given <structname>sd_journal</structname> object.</para>
|
||
|
||
<para>The <function>sd_journal_get_cursor()</function> and
|
||
<function>sd_journal_test_cursor()</function> interfaces are
|
||
available as a shared library, which can be compiled and linked to
|
||
with the
|
||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||
file.</para>
|
||
</refsect1>
|
||
|
||
<refsect1>
|
||
<title>See Also</title>
|
||
|
||
<para>
|
||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||
</para>
|
||
</refsect1>
|
||
|
||
</refentry>
|