systemd/0002-lz4-fix-size-check-whi...

30 lines
1008 B
Diff

From 274e72394432cc35af5c9e7b91e49f3dc5180243 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Tue, 1 Dec 2015 22:53:23 -0500
Subject: [PATCH 2/4] lz4: fix size check which had no chance of working on
big-endian
(cherry picked from commit b3aa622929f81b44974d182636b1fde8b2a506e5)
Resolves: #1286249
---
src/journal/compress.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/journal/compress.c b/src/journal/compress.c
index e1ca0a8..1a3d2cd 100644
--- a/src/journal/compress.c
+++ b/src/journal/compress.c
@@ -201,7 +201,7 @@ int decompress_blob_lz4(const void *src, uint64_t src_size,
return -EBADMSG;
size = le64toh( *(le64_t*)src );
- if (size < 0 || (le64_t) size != *(le64_t*)src)
+ if (size < 0 || (unsigned) size != le64toh(*(le64_t*)src))
return -EFBIG;
if ((size_t) size > *dst_alloc_size) {
out = realloc(*dst, size);
--
2.5.0