]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-journal: make return parameter to sd_journal_get_cursor() optional
authorLennart Poettering <lennart@poettering.net>
Mon, 24 Mar 2025 10:54:30 +0000 (06:54 -0400)
committerLennart Poettering <lennart@poettering.net>
Wed, 2 Apr 2025 15:29:04 +0000 (17:29 +0200)
src/libsystemd/sd-journal/sd-journal.c
src/systemd/sd-journal.h

index 83f77206c3153dde167e37a80fbb94117d855496..3b1f060565a7cea964fdcb0f3262ca135e3dc39d 100644 (file)
@@ -1234,13 +1234,12 @@ _public_ int sd_journal_previous_skip(sd_journal *j, uint64_t skip) {
         return real_journal_next_skip(j, DIRECTION_UP, skip);
 }
 
-_public_ int sd_journal_get_cursor(sd_journal *j, char **cursor) {
+_public_ int sd_journal_get_cursor(sd_journal *j, char **ret_cursor) {
         Object *o;
         int r;
 
         assert_return(j, -EINVAL);
         assert_return(!journal_origin_changed(j), -ECHILD);
-        assert_return(cursor, -EINVAL);
 
         if (!j->current_file || j->current_file->current_offset <= 0)
                 return -EADDRNOTAVAIL;
@@ -1249,7 +1248,10 @@ _public_ int sd_journal_get_cursor(sd_journal *j, char **cursor) {
         if (r < 0)
                 return r;
 
-        if (asprintf(cursor,
+        if (!ret_cursor)
+                return 0;
+
+        if (asprintf(ret_cursor,
                      "s=%s;i=%"PRIx64";b=%s;m=%"PRIx64";t=%"PRIx64";x=%"PRIx64,
                      SD_ID128_TO_STRING(j->current_file->header->seqnum_id), le64toh(o->entry.seqnum),
                      SD_ID128_TO_STRING(o->entry.boot_id), le64toh(o->entry.monotonic),
index 7434051ce1fb92a1d8b7aea760d50a63d3c0d5b3..5eefb0d771901a31d33f245a4b4fc48abda91907 100644 (file)
@@ -124,7 +124,7 @@ int sd_journal_seek_monotonic_usec(sd_journal *j, sd_id128_t boot_id, uint64_t u
 int sd_journal_seek_realtime_usec(sd_journal *j, uint64_t usec);
 int sd_journal_seek_cursor(sd_journal *j, const char *cursor);
 
-int sd_journal_get_cursor(sd_journal *j, char **cursor);
+int sd_journal_get_cursor(sd_journal *j, char **ret_cursor);
 int sd_journal_test_cursor(sd_journal *j, const char *cursor);
 
 int sd_journal_get_cutoff_realtime_usec(sd_journal *j, uint64_t *from, uint64_t *to);