Accepting request 1045707 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1045707 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=14
This commit is contained in:
commit
a2f7b64930
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3d6afde67682c909e341bf194678a8969f17628705af25f900d5f68bd299cb03
|
||||
size 917269
|
3
libbpf-1.1.0.tar.gz
Normal file
3
libbpf-1.1.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5da826c968fdb8a2f714701cfef7a4b7078be030cf58b56143b245816301cbb8
|
||||
size 2337951
|
@ -1,67 +0,0 @@
|
||||
From 881a10980b7ded995da5d9cc1919992c36c9d2be Mon Sep 17 00:00:00 2001
|
||||
From: Xu Kuohai <xukuohai@huawei.com>
|
||||
Date: Tue, 11 Oct 2022 08:01:04 -0400
|
||||
Subject: [PATCH 2/2] libbpf: Fix memory leak in parse_usdt_arg()
|
||||
|
||||
In the arm64 version of parse_usdt_arg(), when sscanf returns 2, reg_name
|
||||
is allocated but not freed. Fix it.
|
||||
|
||||
Fixes: 0f8619929c57 ("libbpf: Usdt aarch64 arg parsing support")
|
||||
Signed-off-by: Xu Kuohai <xukuohai@huawei.com>
|
||||
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
|
||||
Acked-by: Martin KaFai Lau <martin.lau@kernel.org>
|
||||
Link: https://lore.kernel.org/bpf/20221011120108.782373-3-xukuohai@huaweicloud.com
|
||||
---
|
||||
src/usdt.c | 11 ++++-------
|
||||
1 file changed, 4 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/src/usdt.c b/src/usdt.c
|
||||
index e83b497..49f3c3b 100644
|
||||
--- a/src/usdt.c
|
||||
+++ b/src/usdt.c
|
||||
@@ -1348,25 +1348,23 @@ static int calc_pt_regs_off(const char *reg_name)
|
||||
|
||||
static int parse_usdt_arg(const char *arg_str, int arg_num, struct usdt_arg_spec *arg)
|
||||
{
|
||||
- char *reg_name = NULL;
|
||||
+ char reg_name[16];
|
||||
int arg_sz, len, reg_off;
|
||||
long off;
|
||||
|
||||
- if (sscanf(arg_str, " %d @ \[ %m[a-z0-9], %ld ] %n", &arg_sz, ®_name, &off, &len) == 3) {
|
||||
+ if (sscanf(arg_str, " %d @ \[ %15[a-z0-9], %ld ] %n", &arg_sz, reg_name, &off, &len) == 3) {
|
||||
/* Memory dereference case, e.g., -4@[sp, 96] */
|
||||
arg->arg_type = USDT_ARG_REG_DEREF;
|
||||
arg->val_off = off;
|
||||
reg_off = calc_pt_regs_off(reg_name);
|
||||
- free(reg_name);
|
||||
if (reg_off < 0)
|
||||
return reg_off;
|
||||
arg->reg_off = reg_off;
|
||||
- } else if (sscanf(arg_str, " %d @ \[ %m[a-z0-9] ] %n", &arg_sz, ®_name, &len) == 2) {
|
||||
+ } else if (sscanf(arg_str, " %d @ \[ %15[a-z0-9] ] %n", &arg_sz, reg_name, &len) == 2) {
|
||||
/* Memory dereference case, e.g., -4@[sp] */
|
||||
arg->arg_type = USDT_ARG_REG_DEREF;
|
||||
arg->val_off = 0;
|
||||
reg_off = calc_pt_regs_off(reg_name);
|
||||
- free(reg_name);
|
||||
if (reg_off < 0)
|
||||
return reg_off;
|
||||
arg->reg_off = reg_off;
|
||||
@@ -1375,12 +1373,11 @@ static int parse_usdt_arg(const char *arg_str, int arg_num, struct usdt_arg_spec
|
||||
arg->arg_type = USDT_ARG_CONST;
|
||||
arg->val_off = off;
|
||||
arg->reg_off = 0;
|
||||
- } else if (sscanf(arg_str, " %d @ %m[a-z0-9] %n", &arg_sz, ®_name, &len) == 2) {
|
||||
+ } else if (sscanf(arg_str, " %d @ %15[a-z0-9] %n", &arg_sz, reg_name, &len) == 2) {
|
||||
/* Register read case, e.g., -8@x4 */
|
||||
arg->arg_type = USDT_ARG_REG;
|
||||
arg->val_off = 0;
|
||||
reg_off = calc_pt_regs_off(reg_name);
|
||||
- free(reg_name);
|
||||
if (reg_off < 0)
|
||||
return reg_off;
|
||||
arg->reg_off = reg_off;
|
||||
--
|
||||
2.38.0
|
||||
|
@ -1,39 +0,0 @@
|
||||
From 3a3ef0c1d09e1894740db71cdcb7be0bfd713671 Mon Sep 17 00:00:00 2001
|
||||
From: Shung-Hsi Yu <shung-hsi.yu@suse.com>
|
||||
Date: Wed, 12 Oct 2022 10:23:53 +0800
|
||||
Subject: [PATCH 4/4] libbpf: Fix null-pointer dereference in
|
||||
find_prog_by_sec_insn()
|
||||
|
||||
When there are no program sections, obj->programs is left unallocated,
|
||||
and find_prog_by_sec_insn()'s search lands on &obj->programs[0] == NULL,
|
||||
and will cause null-pointer dereference in the following access to
|
||||
prog->sec_idx.
|
||||
|
||||
Guard the search with obj->nr_programs similar to what's being done in
|
||||
__bpf_program__iter() to prevent null-pointer access from happening.
|
||||
|
||||
Fixes: db2b8b06423c ("libbpf: Support CO-RE relocations for multi-prog sections")
|
||||
Signed-off-by: Shung-Hsi Yu <shung-hsi.yu@suse.com>
|
||||
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
|
||||
Link: https://lore.kernel.org/bpf/20221012022353.7350-4-shung-hsi.yu@suse.com
|
||||
---
|
||||
src/libbpf.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/src/libbpf.c b/src/libbpf.c
|
||||
index 29e9df0..8c3f236 100644
|
||||
--- a/src/libbpf.c
|
||||
+++ b/src/libbpf.c
|
||||
@@ -4115,6 +4115,9 @@ static struct bpf_program *find_prog_by_sec_insn(const struct bpf_object *obj,
|
||||
int l = 0, r = obj->nr_programs - 1, m;
|
||||
struct bpf_program *prog;
|
||||
|
||||
+ if (!obj->nr_programs)
|
||||
+ return NULL;
|
||||
+
|
||||
while (l < r) {
|
||||
m = l + (r - l + 1) / 2;
|
||||
prog = &obj->programs[m];
|
||||
--
|
||||
2.38.0
|
||||
|
@ -1,136 +0,0 @@
|
||||
From 54caf920db0e489de90f3aaaa41e2a51ddbcd084 Mon Sep 17 00:00:00 2001
|
||||
From: Xu Kuohai <xukuohai@huawei.com>
|
||||
Date: Tue, 11 Oct 2022 08:01:03 -0400
|
||||
Subject: [PATCH 1/1] libbpf: Fix use-after-free in btf_dump_name_dups
|
||||
|
||||
ASAN reports an use-after-free in btf_dump_name_dups:
|
||||
|
||||
ERROR: AddressSanitizer: heap-use-after-free on address 0xffff927006db at pc 0xaaaab5dfb618 bp 0xffffdd89b890 sp 0xffffdd89b928
|
||||
READ of size 2 at 0xffff927006db thread T0
|
||||
#0 0xaaaab5dfb614 in __interceptor_strcmp.part.0 (test_progs+0x21b614)
|
||||
#1 0xaaaab635f144 in str_equal_fn tools/lib/bpf/btf_dump.c:127
|
||||
#2 0xaaaab635e3e0 in hashmap_find_entry tools/lib/bpf/hashmap.c:143
|
||||
#3 0xaaaab635e72c in hashmap__find tools/lib/bpf/hashmap.c:212
|
||||
#4 0xaaaab6362258 in btf_dump_name_dups tools/lib/bpf/btf_dump.c:1525
|
||||
#5 0xaaaab636240c in btf_dump_resolve_name tools/lib/bpf/btf_dump.c:1552
|
||||
#6 0xaaaab6362598 in btf_dump_type_name tools/lib/bpf/btf_dump.c:1567
|
||||
#7 0xaaaab6360b48 in btf_dump_emit_struct_def tools/lib/bpf/btf_dump.c:912
|
||||
#8 0xaaaab6360630 in btf_dump_emit_type tools/lib/bpf/btf_dump.c:798
|
||||
#9 0xaaaab635f720 in btf_dump__dump_type tools/lib/bpf/btf_dump.c:282
|
||||
#10 0xaaaab608523c in test_btf_dump_incremental tools/testing/selftests/bpf/prog_tests/btf_dump.c:236
|
||||
#11 0xaaaab6097530 in test_btf_dump tools/testing/selftests/bpf/prog_tests/btf_dump.c:875
|
||||
#12 0xaaaab6314ed0 in run_one_test tools/testing/selftests/bpf/test_progs.c:1062
|
||||
#13 0xaaaab631a0a8 in main tools/testing/selftests/bpf/test_progs.c:1697
|
||||
#14 0xffff9676d214 in __libc_start_main ../csu/libc-start.c:308
|
||||
#15 0xaaaab5d65990 (test_progs+0x185990)
|
||||
|
||||
0xffff927006db is located 11 bytes inside of 16-byte region [0xffff927006d0,0xffff927006e0)
|
||||
freed by thread T0 here:
|
||||
#0 0xaaaab5e2c7c4 in realloc (test_progs+0x24c7c4)
|
||||
#1 0xaaaab634f4a0 in libbpf_reallocarray tools/lib/bpf/libbpf_internal.h:191
|
||||
#2 0xaaaab634f840 in libbpf_add_mem tools/lib/bpf/btf.c:163
|
||||
#3 0xaaaab636643c in strset_add_str_mem tools/lib/bpf/strset.c:106
|
||||
#4 0xaaaab6366560 in strset__add_str tools/lib/bpf/strset.c:157
|
||||
#5 0xaaaab6352d70 in btf__add_str tools/lib/bpf/btf.c:1519
|
||||
#6 0xaaaab6353e10 in btf__add_field tools/lib/bpf/btf.c:2032
|
||||
#7 0xaaaab6084fcc in test_btf_dump_incremental tools/testing/selftests/bpf/prog_tests/btf_dump.c:232
|
||||
#8 0xaaaab6097530 in test_btf_dump tools/testing/selftests/bpf/prog_tests/btf_dump.c:875
|
||||
#9 0xaaaab6314ed0 in run_one_test tools/testing/selftests/bpf/test_progs.c:1062
|
||||
#10 0xaaaab631a0a8 in main tools/testing/selftests/bpf/test_progs.c:1697
|
||||
#11 0xffff9676d214 in __libc_start_main ../csu/libc-start.c:308
|
||||
#12 0xaaaab5d65990 (test_progs+0x185990)
|
||||
|
||||
previously allocated by thread T0 here:
|
||||
#0 0xaaaab5e2c7c4 in realloc (test_progs+0x24c7c4)
|
||||
#1 0xaaaab634f4a0 in libbpf_reallocarray tools/lib/bpf/libbpf_internal.h:191
|
||||
#2 0xaaaab634f840 in libbpf_add_mem tools/lib/bpf/btf.c:163
|
||||
#3 0xaaaab636643c in strset_add_str_mem tools/lib/bpf/strset.c:106
|
||||
#4 0xaaaab6366560 in strset__add_str tools/lib/bpf/strset.c:157
|
||||
#5 0xaaaab6352d70 in btf__add_str tools/lib/bpf/btf.c:1519
|
||||
#6 0xaaaab6353ff0 in btf_add_enum_common tools/lib/bpf/btf.c:2070
|
||||
#7 0xaaaab6354080 in btf__add_enum tools/lib/bpf/btf.c:2102
|
||||
#8 0xaaaab6082f50 in test_btf_dump_incremental tools/testing/selftests/bpf/prog_tests/btf_dump.c:162
|
||||
#9 0xaaaab6097530 in test_btf_dump tools/testing/selftests/bpf/prog_tests/btf_dump.c:875
|
||||
#10 0xaaaab6314ed0 in run_one_test tools/testing/selftests/bpf/test_progs.c:1062
|
||||
#11 0xaaaab631a0a8 in main tools/testing/selftests/bpf/test_progs.c:1697
|
||||
#12 0xffff9676d214 in __libc_start_main ../csu/libc-start.c:308
|
||||
#13 0xaaaab5d65990 (test_progs+0x185990)
|
||||
|
||||
The reason is that the key stored in hash table name_map is a string
|
||||
address, and the string memory is allocated by realloc() function, when
|
||||
the memory is resized by realloc() later, the old memory may be freed,
|
||||
so the address stored in name_map references to a freed memory, causing
|
||||
use-after-free.
|
||||
|
||||
Fix it by storing duplicated string address in name_map.
|
||||
|
||||
Fixes: 919d2b1dbb07 ("libbpf: Allow modification of BTF and add btf__add_str API")
|
||||
Signed-off-by: Xu Kuohai <xukuohai@huawei.com>
|
||||
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
|
||||
Acked-by: Martin KaFai Lau <martin.lau@kernel.org>
|
||||
Link: https://lore.kernel.org/bpf/20221011120108.782373-2-xukuohai@huaweicloud.com
|
||||
---
|
||||
src/btf_dump.c | 29 ++++++++++++++++++++++++++---
|
||||
1 file changed, 26 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/btf_dump.c b/src/btf_dump.c
|
||||
index e4da6de..bf0cc0e 100644
|
||||
--- a/src/btf_dump.c
|
||||
+++ b/src/btf_dump.c
|
||||
@@ -219,6 +219,17 @@ static int btf_dump_resize(struct btf_dump *d)
|
||||
return 0;
|
||||
}
|
||||
|
||||
+static void btf_dump_free_names(struct hashmap *map)
|
||||
+{
|
||||
+ size_t bkt;
|
||||
+ struct hashmap_entry *cur;
|
||||
+
|
||||
+ hashmap__for_each_entry(map, cur, bkt)
|
||||
+ free((void *)cur->key);
|
||||
+
|
||||
+ hashmap__free(map);
|
||||
+}
|
||||
+
|
||||
void btf_dump__free(struct btf_dump *d)
|
||||
{
|
||||
int i;
|
||||
@@ -237,8 +248,8 @@ void btf_dump__free(struct btf_dump *d)
|
||||
free(d->cached_names);
|
||||
free(d->emit_queue);
|
||||
free(d->decl_stack);
|
||||
- hashmap__free(d->type_names);
|
||||
- hashmap__free(d->ident_names);
|
||||
+ btf_dump_free_names(d->type_names);
|
||||
+ btf_dump_free_names(d->ident_names);
|
||||
|
||||
free(d);
|
||||
}
|
||||
@@ -1524,11 +1535,23 @@ static void btf_dump_emit_type_cast(struct btf_dump *d, __u32 id,
|
||||
static size_t btf_dump_name_dups(struct btf_dump *d, struct hashmap *name_map,
|
||||
const char *orig_name)
|
||||
{
|
||||
+ char *old_name, *new_name;
|
||||
size_t dup_cnt = 0;
|
||||
+ int err;
|
||||
+
|
||||
+ new_name = strdup(orig_name);
|
||||
+ if (!new_name)
|
||||
+ return 1;
|
||||
|
||||
hashmap__find(name_map, orig_name, (void **)&dup_cnt);
|
||||
dup_cnt++;
|
||||
- hashmap__set(name_map, orig_name, (void *)dup_cnt, NULL, NULL);
|
||||
+
|
||||
+ err = hashmap__set(name_map, new_name, (void *)dup_cnt,
|
||||
+ (const void **)&old_name, NULL);
|
||||
+ if (err)
|
||||
+ free(new_name);
|
||||
+
|
||||
+ free(old_name);
|
||||
|
||||
return dup_cnt;
|
||||
}
|
||||
--
|
||||
2.38.0
|
||||
|
@ -1,82 +0,0 @@
|
||||
From 741277511035893c72a34df05da3b943afa747a4 Mon Sep 17 00:00:00 2001
|
||||
From: Shung-Hsi Yu <shung-hsi.yu@suse.com>
|
||||
Date: Wed, 12 Oct 2022 10:23:51 +0800
|
||||
Subject: [PATCH 3/3] libbpf: Use elf_getshdrnum() instead of e_shnum
|
||||
|
||||
This commit replace e_shnum with the elf_getshdrnum() helper to fix two
|
||||
oss-fuzz-reported heap-buffer overflow in __bpf_object__open. Both
|
||||
reports are incorrectly marked as fixed and while still being
|
||||
reproducible in the latest libbpf.
|
||||
|
||||
# clusterfuzz-testcase-minimized-bpf-object-fuzzer-5747922482888704
|
||||
libbpf: loading object 'fuzz-object' from buffer
|
||||
libbpf: sec_cnt is 0
|
||||
libbpf: elf: section(1) .data, size 0, link 538976288, flags 2020202020202020, type=2
|
||||
libbpf: elf: section(2) .data, size 32, link 538976288, flags 202020202020ff20, type=1
|
||||
=================================================================
|
||||
==13==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6020000000c0 at pc 0x0000005a7b46 bp 0x7ffd12214af0 sp 0x7ffd12214ae8
|
||||
WRITE of size 4 at 0x6020000000c0 thread T0
|
||||
SCARINESS: 46 (4-byte-write-heap-buffer-overflow-far-from-bounds)
|
||||
#0 0x5a7b45 in bpf_object__elf_collect /src/libbpf/src/libbpf.c:3414:24
|
||||
#1 0x5733c0 in bpf_object_open /src/libbpf/src/libbpf.c:7223:16
|
||||
#2 0x5739fd in bpf_object__open_mem /src/libbpf/src/libbpf.c:7263:20
|
||||
...
|
||||
|
||||
The issue lie in libbpf's direct use of e_shnum field in ELF header as
|
||||
the section header count. Where as libelf implemented an extra logic
|
||||
that, when e_shnum == 0 && e_shoff != 0, will use sh_size member of the
|
||||
initial section header as the real section header count (part of ELF
|
||||
spec to accommodate situation where section header counter is larger
|
||||
than SHN_LORESERVE).
|
||||
|
||||
The above inconsistency lead to libbpf writing into a zero-entry calloc
|
||||
area. So intead of using e_shnum directly, use the elf_getshdrnum()
|
||||
helper provided by libelf to retrieve the section header counter into
|
||||
sec_cnt.
|
||||
|
||||
Fixes: 0d6988e16a12 ("libbpf: Fix section counting logic")
|
||||
Fixes: 25bbbd7a444b ("libbpf: Remove assumptions about uniqueness of .rodata/.data/.bss maps")
|
||||
Signed-off-by: Shung-Hsi Yu <shung-hsi.yu@suse.com>
|
||||
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
|
||||
Link: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=40868
|
||||
Link: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=40957
|
||||
Link: https://lore.kernel.org/bpf/20221012022353.7350-2-shung-hsi.yu@suse.com
|
||||
---
|
||||
src/libbpf.c | 13 +++++++++----
|
||||
1 file changed, 9 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/libbpf.c b/src/libbpf.c
|
||||
index 184ce16..2e8ac13 100644
|
||||
--- a/src/libbpf.c
|
||||
+++ b/src/libbpf.c
|
||||
@@ -597,7 +597,7 @@ struct elf_state {
|
||||
size_t shstrndx; /* section index for section name strings */
|
||||
size_t strtabidx;
|
||||
struct elf_sec_desc *secs;
|
||||
- int sec_cnt;
|
||||
+ size_t sec_cnt;
|
||||
int btf_maps_shndx;
|
||||
__u32 btf_maps_sec_btf_id;
|
||||
int text_shndx;
|
||||
@@ -3312,10 +3312,15 @@ static int bpf_object__elf_collect(struct bpf_object *obj)
|
||||
Elf64_Shdr *sh;
|
||||
|
||||
/* ELF section indices are 0-based, but sec #0 is special "invalid"
|
||||
- * section. e_shnum does include sec #0, so e_shnum is the necessary
|
||||
- * size of an array to keep all the sections.
|
||||
+ * section. Since section count retrieved by elf_getshdrnum() does
|
||||
+ * include sec #0, it is already the necessary size of an array to keep
|
||||
+ * all the sections.
|
||||
*/
|
||||
- obj->efile.sec_cnt = obj->efile.ehdr->e_shnum;
|
||||
+ if (elf_getshdrnum(obj->efile.elf, &obj->efile.sec_cnt)) {
|
||||
+ pr_warn("elf: failed to get the number of sections for %s: %s\n",
|
||||
+ obj->path, elf_errmsg(-1));
|
||||
+ return -LIBBPF_ERRNO__FORMAT;
|
||||
+ }
|
||||
obj->efile.secs = calloc(obj->efile.sec_cnt, sizeof(*obj->efile.secs));
|
||||
if (!obj->efile.secs)
|
||||
return -ENOMEM;
|
||||
--
|
||||
2.38.0
|
||||
|
@ -1,3 +1,47 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 22 07:08:39 UTC 2022 - Dirk Müller <dmueller@suse.com>
|
||||
|
||||
- update to v1.1.0:
|
||||
User space-side features and APIs:
|
||||
* user-space ring buffer (BPF_MAP_TYPE_USER_RINGBUF) support;
|
||||
* new documentation page listing all recognized SEC() definitions;
|
||||
* BTF dedup improvements:
|
||||
* unambiguous fwd declaration resolution for structs and unions;
|
||||
* better handling of some corner cases with identical structs and arrays;
|
||||
* mixed enum and enum64 forward declaration resolution logic;
|
||||
* bpf_{link,btf,pro,mapg}_get_fd_by_id_opts() and bpf_get_fd_by_id_opts()
|
||||
APIs;
|
||||
* libbpf supports loading raw BTF for BPF CO-RE from known search paths;
|
||||
* support for new cgroup local storage (BPF_MAP_TYPE_CGRP_STORAGE);
|
||||
* libbpf will only add BPF_F_MMAPABLE flag for data maps with global
|
||||
(i.e., non-static) vars;
|
||||
* latest Linux UAPI headers with lots of changes synced into
|
||||
include/uapi/linux.
|
||||
BPF-side features and APIs;
|
||||
* BPF_PROG2() macro added that supports struct-by-value arguments;
|
||||
* new BPF helpers:
|
||||
* bpf_user_ringbuf_drain();
|
||||
* cgrp_storage_get() and cgrp_storage_delete().
|
||||
Bug fixes
|
||||
* better handling of padding corner cases;
|
||||
* btf__align_of() determines packed structs better now;
|
||||
* improved handling of enums of non-standard sizes;
|
||||
* USDT spec parsing improvements;
|
||||
* overflow handling fixes for ringbufs;
|
||||
* Makefile fixes to support cross-compilation for 32-bit targets;
|
||||
* fix crash if SEC("freplace") programs don't have attach_prog_fd set;
|
||||
* better handling of file existence checks when running as non-root with
|
||||
enhanced capabilities;
|
||||
* a bunch of small fixes:
|
||||
* ELF handling improvements;
|
||||
* fix memory leak in USDT argument parsing logic;
|
||||
* fix NULL dereferences in few corner cases;
|
||||
* improved netlink attribute iteration handling.
|
||||
- drop libbpf-Use-elf_getshdrnum-instead-of-e_shnum.patch,
|
||||
libbpf-Fix-use-after-free-in-btf_dump_name_dups.patch,
|
||||
libbpf-Fix-memory-leak-in-parse_usdt_arg.patch
|
||||
libbpf-Fix-null-pointer-dereference-in-find_prog_by_.patch (upstream)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 8 06:03:55 UTC 2022 - Shung-Hsi Yu <shung-hsi.yu@suse.com>
|
||||
|
||||
|
@ -19,17 +19,13 @@
|
||||
%define sover_major 1
|
||||
%define libname libbpf%{sover_major}
|
||||
Name: libbpf
|
||||
Version: 1.0.1
|
||||
Version: 1.1.0
|
||||
Release: 0
|
||||
Summary: C library for managing eBPF programs and maps
|
||||
License: LGPL-2.1-only
|
||||
URL: https://github.com/libbpf/libbpf
|
||||
Source: https://github.com/libbpf/libbpf/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||
Source99: baselibs.conf
|
||||
Patch1: libbpf-Fix-use-after-free-in-btf_dump_name_dups.patch
|
||||
Patch2: libbpf-Fix-memory-leak-in-parse_usdt_arg.patch
|
||||
Patch3: libbpf-Use-elf_getshdrnum-instead-of-e_shnum.patch
|
||||
Patch4: libbpf-Fix-null-pointer-dereference-in-find_prog_by_.patch
|
||||
BuildRequires: libelf-devel
|
||||
BuildRequires: linux-glibc-devel >= 4.5
|
||||
BuildRequires: zlib-devel
|
||||
|
Loading…
Reference in New Issue
Block a user