1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-23 21:35:11 +03:00

journal: fix field retrieval by name

This commit is contained in:
Lennart Poettering 2011-10-14 04:52:56 +02:00
parent 3fbf9cbb02
commit 161e54f871

View File

@ -493,22 +493,24 @@ int sd_journal_get_field(sd_journal *j, const char *field, const void **data, si
l = le64toh(o->object.size) - offsetof(Object, data.payload);
if (field_length+1 > l)
continue;
if (l >= field_length+1 &&
memcmp(o->data.payload, field, field_length) == 0 &&
o->data.payload[field_length] == '=') {
if (memcmp(o->data.payload, field, field_length) ||
o->data.payload[field_length] != '=')
continue;
t = (size_t) l;
t = (size_t) l;
if ((uint64_t) t != l)
return -E2BIG;
if ((uint64_t) t != l)
return -E2BIG;
*data = o->data.payload;
*size = t;
*data = o->data.payload;
*size = t;
return 1;
}
return 1;
r = journal_file_move_to_object(f, f->current_offset, OBJECT_ENTRY, &o);
if (r < 0)
return r;
}
return 0;