]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
bpf: actually check for errors when loading symbols
authorLuca Boccassi <bluca@debian.org>
Wed, 3 Apr 2024 11:10:10 +0000 (12:10 +0100)
committerLuca Boccassi <bluca@debian.org>
Wed, 3 Apr 2024 13:22:07 +0000 (14:22 +0100)
Also restructure ifdef to avoid confusing vscode

Follow-up for 87e462f71361a47b154865dc14032a27580dd4cb

src/shared/bpf-dlopen.c

index 70b1ffbf99df001160126aec0b0cc678f9a23f75..1b4aa903e61b09149575411353683c2bd2728d2a 100644 (file)
@@ -82,11 +82,12 @@ int dlopen_bpf(void) {
 #if MODERN_LIBBPF
                                 /* Don't exist anymore in new libbpf, hence cannot type check them */
                                 DLSYM_ARG_FORCE(bpf_create_map),
-                                DLSYM_ARG_FORCE(bpf_probe_prog_type));
+                                DLSYM_ARG_FORCE(bpf_probe_prog_type)
 #else
                                 DLSYM_ARG(bpf_create_map),
-                                DLSYM_ARG(bpf_probe_prog_type));
+                                DLSYM_ARG(bpf_probe_prog_type)
 #endif
+                );
         } else {
                 /* symbols available from 0.7.0 */
                 r = dlsym_many_or_warn(
@@ -101,6 +102,8 @@ int dlopen_bpf(void) {
 #endif
                 );
         }
+        if (r < 0)
+                return r;
 
         r = dlsym_many_or_warn(
                         dl, LOG_DEBUG,