lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sun, 7 Apr 2019 06:11:25 +0000 From: Yonghong Song <yhs@...com> To: Andrey Ignatov <rdna@...com>, "netdev@...r.kernel.org" <netdev@...r.kernel.org> CC: "ast@...nel.org" <ast@...nel.org>, "daniel@...earbox.net" <daniel@...earbox.net>, Kernel Team <Kernel-team@...com> Subject: Re: [PATCH bpf-next] libbpf: Ignore -Wformat-nonliteral warning On 4/6/19 10:37 PM, Andrey Ignatov wrote: > vsprintf() in __base_pr() uses nonliteral format string and it breaks > compilation for those who provide corresponding extra CFLAGS, e.g.: > https://github.com/libbpf/libbpf/issues/27 > > If libbpf is built with the flags from PR: > > libbpf.c:68:26: error: format string is not a string literal > [-Werror,-Wformat-nonliteral] > return vfprintf(stderr, format, args); > ^~~~~~ > 1 error generated. > > Ignore this warning since the use case in libbpf.c is legit. > > Signed-off-by: Andrey Ignatov <rdna@...com> Tested with clang compiler as well. It also resolved the same issue when using clang to build libbpf in libbpf repo. Acked-by: Yonghong Song <yhs@...com> > --- > tools/lib/bpf/libbpf.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c > index e1e4d35cf08e..1ebfe7943d53 100644 > --- a/tools/lib/bpf/libbpf.c > +++ b/tools/lib/bpf/libbpf.c > @@ -52,6 +52,11 @@ > #define BPF_FS_MAGIC 0xcafe4a11 > #endif > > +/* vsprintf() in __base_pr() uses nonliteral format string. It may break > + * compilation if user enables corresponding warning. Disable it explicitly. > + */ > +#pragma GCC diagnostic ignored "-Wformat-nonliteral" > + > #define __printf(a, b) __attribute__((format(printf, a, b))) > > static int __base_pr(enum libbpf_print_level level, const char *format, >
Powered by blists - more mailing lists