X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fjournal%2Fjournal-internal.h;h=b51ecdb600a5a4c39793a6dc0b47f78b8113be3c;hp=3355fca6b8b3885063867d9f52a8aaef749d219f;hb=b6e676ce41508e2aeea22202fc8f234126177f52;hpb=14bf2c9d375db6a4670bc0ef0e521e35a939a498 diff --git a/src/journal/journal-internal.h b/src/journal/journal-internal.h index 3355fca6b..b51ecdb60 100644 --- a/src/journal/journal-internal.h +++ b/src/journal/journal-internal.h @@ -25,13 +25,14 @@ #include #include -#include +#include "systemd/sd-id128.h" #include "journal-def.h" #include "list.h" #include "hashmap.h" #include "set.h" #include "journal-file.h" +#include "sd-journal.h" typedef struct Match Match; typedef struct Location Location; @@ -57,20 +58,6 @@ struct Match { LIST_HEAD(Match, matches); }; -typedef enum LocationType { - /* The first and last entries, resp. */ - LOCATION_HEAD, - LOCATION_TAIL, - - /* We already read the entry we currently point to, and the - * next one to read should probably not be this one again. */ - LOCATION_DISCRETE, - - /* We should seek to the precise location specified, and - * return it, as we haven't read it yet. */ - LOCATION_SEEK -} LocationType; - struct Location { LocationType type; @@ -98,8 +85,9 @@ struct Directory { struct sd_journal { char *path; + char *prefix; - Hashmap *files; + OrderedHashmap *files; MMapCache *mmap; Location current_location; @@ -123,6 +111,10 @@ struct sd_journal { bool on_network; bool no_new_files; + bool unique_file_lost; /* File we were iterating over got + removed, and there were no more + files, so sd_j_enumerate_unique + will return a value equal to 0. */ size_t data_threshold;