journal: refuse an entry with invalid timestamp fields

The journal verification functions would reject such an entry. It would probably
still display fine (because we prefer _SOURCE_REALTIME_TIMESTAMP= if present), but
it seems wrong to create an entry that would not pass verification.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2018-05-24 13:11:12 +02:00
parent 4d9685be5f
commit c627395366

View file

@ -1958,7 +1958,16 @@ int journal_file_append_entry(JournalFile *f, const dual_timestamp *ts, const st
assert(f->header);
assert(iovec || n_iovec == 0);
if (!ts) {
if (ts) {
if (!VALID_REALTIME(ts->realtime)) {
log_debug("Invalid realtime timestamp %"PRIu64", refusing entry.", ts->realtime);
return -EBADMSG;
}
if (!VALID_MONOTONIC(ts->monotonic)) {
log_debug("Invalid monotomic timestamp %"PRIu64", refusing entry.", ts->monotonic);
return -EBADMSG;
}
} else {
dual_timestamp_get(&_ts);
ts = &_ts;
}