summaryrefslogtreecommitdiff
path: root/src/journal/journal-file.c
AgeCommit message (Collapse)Author
2012-08-17journal: rework terminologyLennart Poettering
Let's clean up our terminology a bit. New terminology: FSS = Forward Secure Sealing FSPRG = Forward Secure Pseudo-Random Generator FSS is the combination of FSPRG and a HMAC. Sealing = process of adding authentication tags to the journal. Verification = process of checking authentication tags to the journal. Sealing Key = The key used for adding authentication tags to the journal. Verification Key = The key used for checking authentication tags of the journal. Key pair = The pair of Sealing Key and Verification Key Internally, the Sealing Key is the combination of the FSPRG State plus change interval/start time. Internally, the Verification Key is the combination of the FSPRG Seed plus change interval/start time.
2012-08-16journal: add FSPRG journal authenticationLennart Poettering
2012-08-16journal: parse fsprg seedLennart Poettering
2012-08-16journal: count number of entry arrays in headerLennart Poettering
2012-08-16journal: rename 'mmap' to 'mmap_cache' to appease gccZbigniew Jędrzejewski-Szmek
warning: declaration of 'mmap' shadows a global declaration [-Wshadow]
2012-08-16journal: verify hashes only during actual verification, not all the timeLennart Poettering
2012-08-16journal: split up journal-file.cLennart Poettering
2012-08-16journal: add superficial structure verifierLennart Poettering
2012-08-16journal: implement basic journal file verification logicLennart Poettering
2012-08-16journal: implement generic sharable mmap caching logicLennart Poettering
instead of having one simple per-file cache implement an more comprehensive one that works for multiple files and can actually maintain multiple maps per file and per object type.
2012-08-13journal: include tag object header in hmacLennart Poettering
2012-08-13journal: add all objects we add to HMACLennart Poettering
2012-08-13journald: initial version of FSPRG hookupLennart Poettering
This adds forward-secure authentication of journal files. This patch includes key generation as well as tagging of journal files, Verification of journal files will be added in a later patch.
2012-08-08fix a couple of issues found with llvm-analyzeLennart Poettering
2012-07-19journal: rotate busy files away when we try to write to themLennart Poettering
2012-07-18journal: when we suggest a rotation, explain whyLennart Poettering
2012-07-18journal: estimate data hash table size a bit larger by defaultLennart Poettering
2012-07-17journal: actually set archived files to archived stateLennart Poettering
2012-07-17journalctl: decode more header files in --headerLennart Poettering
2012-07-17journal: size journal data hash table based on maximum file size metricsLennart Poettering
The default of 2047 hash table entries turned out to result in way too many collisions for bigger files, hence scale the hash table size by the estimated maximum file size.
2012-07-17journal: immediately rotate when the journal was previously not closed properlyLennart Poettering
2012-07-17journal: automatically rotate journal files if the data hash table is full > 75%Lennart Poettering
Previously, when the main data hash table grows too full the performance simply started to decrease drastically. Instead, now simply rotate to a new journal file as the hash table gets to full, so that we can start with a new fresh empty hash table.
2012-07-16journal: use tail/head timestamps from header for cutoff logicLennart Poettering
We have them, they are faster to use them, so use them...
2012-07-16journald: don't enforce monotonicity of realtime clocks when copying entriesLennart Poettering
After all the point of the realtime clock (in contrast to the monotonic clock) is that it does not have to be strictly monotonic, hence don't enforce this when flushing the journal from /run to /var.
2012-07-13journal: beef up journal matches considerablyLennart Poettering
we now can take multiple matches, and they will apply as AND if they apply to different fields and OR if they apply to the same fields. Also, terms of this kind can be combined with an overreaching OR.
2012-07-13journal: fix seeking by realtime/seqnumLennart Poettering
2012-07-13journal: fix bad memory accessLennart Poettering
2012-07-13journal: fix bisection logic for first entryLennart Poettering
2012-06-17journal: fix monotonic seekingLennart Poettering
2012-06-17journal: expose and make use of cutoff times of journalLennart Poettering
This helps explaining when the log output of "systemctl status" is incomplete because the logs got rotated since the service was started.
2012-06-17journal: correct list link up on hash collisionsLennart Poettering
2012-06-17journal: add basic object definition for signaturesLennart Poettering
2012-06-17journal: replace arena offset by header sizeLennart Poettering
2012-06-12journal-file: fix mmap leakMichal Schmidt
https://bugzilla.redhat.com/show_bug.cgi?id=831132
2012-05-22Fixed handling of posix_fallocate() returned valueGuillermo Vidal
According to the man pages of posix_fallocate, it returns zero on success or an error number on failure; however, errno is not set on failure. If the kernel or a library other than glibc does not support the function for example, EOPNOTSUPP will be returned and the error will not be handled properly with original code.
2012-04-13fix a couple of things found with the llvm static analyzerLennart Poettering
2012-04-12relicense to LGPLv2.1 (with exceptions)Lennart Poettering
We finally got the OK from all contributors with non-trivial commits to relicense systemd from GPL2+ to LGPL2.1+. Some udev bits continue to be GPL2+ for now, but we are looking into relicensing them too, to allow free copy/paste of all code within systemd. The bits that used to be MIT continue to be MIT. The big benefit of the relicensing is that closed source code may now link against libsystemd-login.so and friends.
2012-04-02journal: decrease default mmap window size to allow a bigger number of ↵Lennart Poettering
journals to be traversed in parallel
2012-03-22add sparse support to detect endianness bugFrederic Crozat
le16/32/64_t type should be used when storing little-endian value header to integrate with sparse from Josh Triplett <josh@joshtriplett.org>
2012-03-21journal: react with immediate rotation to a couple of more errorsLennart Poettering
2012-03-15man: document systemd-journald.conf(5)Lennart Poettering
2012-03-15journal: only use uint8_t for stateFrederic Crozat
2012-03-15journald: be a bit more verboseLennart Poettering
2012-03-15journald: fix calculation of disk spaceLennart Poettering
2012-03-15journald: copy metrics/compression state from template when rotatingLennart Poettering
2012-03-15journald: increase max file size to 128MBLennart Poettering
2012-03-15journal: vacuum corrupted files, tooLennart Poettering
2012-03-15journal: if we encounter a corrupted file, rotate and go onLennart Poettering
2012-03-06journal: make sure to refresh window position and pointer after we linked up ↵Lennart Poettering
a data object
2012-03-05journal: fix endianness errorsFrederic Crozat