1234567891011121314151617181920212223242526 |
- From 39c7ac1106be844a5296d3eb5971946cc09ffda0 Mon Sep 17 00:00:00 2001
- From: Christos Zoulas <christos@zoulas.com>
- Date: Fri, 17 Oct 2014 15:49:00 +0000
- Subject: [PATCH] Fix note bounds reading, Francisco Alonso / Red Hat
- diff --git a/src/readelf.c b/src/readelf.c
- index 08f81f5..9ebdebd 100644
- --- a/src/readelf.c
- +++ b/src/readelf.c
- @@ -477,6 +477,13 @@ donote(struct magic_set *ms, void *vbuf, size_t offset, size_t size,
- uint32_t namesz, descsz;
- unsigned char *nbuf = CAST(unsigned char *, vbuf);
-
- + if (xnh_sizeof + offset > size) {
- + /*
- + * We're out of note headers.
- + */
- + return xnh_sizeof + offset;
- + }
- +
- (void)memcpy(xnh_addr, &nbuf[offset], xnh_sizeof);
- offset += xnh_sizeof;
-
- --
- 1.7.10.4
|