diff options
Diffstat (limited to 'src/shared')
-rw-r--r-- | src/shared/bpf-program.c | 8 | ||||
-rw-r--r-- | src/shared/varlink.c | 10 |
2 files changed, 9 insertions, 9 deletions
diff --git a/src/shared/bpf-program.c b/src/shared/bpf-program.c index f4bb7f390c..d924a973ec 100644 --- a/src/shared/bpf-program.c +++ b/src/shared/bpf-program.c @@ -449,11 +449,11 @@ int bpf_program_deserialize_attachment(const char *v, FDSet *fds, BPFProgram **b if (r == 0) return -EINVAL; - r = safe_atoi(sfd, &ifd); - if (r < 0) - return r; - if (ifd < 0) + ifd = parse_fd(sfd); + if (ifd == -ERANGE) return -EBADF; + if (ifd < 0) + return r; /* Extract second word: the attach type */ r = extract_first_word(&v, &sat, NULL, 0); diff --git a/src/shared/varlink.c b/src/shared/varlink.c index 808e2b2dba..a4936bff26 100644 --- a/src/shared/varlink.c +++ b/src/shared/varlink.c @@ -3060,12 +3060,12 @@ int varlink_server_deserialize_one(VarlinkServer *s, const char *value, FDSet *f n = strcspn(v, " "); buf = strndupa_safe(v, n); - r = safe_atoi(buf, &fd); - if (r < 0) - return log_debug_errno(r, "Unable to parse VarlinkServerSocket varlink-server-socket-fd=%s: %m", buf); - if (fd < 0) + fd = parse_fd(buf); + if (fd == -ERANGE) return log_debug_errno(SYNTHETIC_ERRNO(EINVAL), - "VarlinkServerSocket varlink-server-socket-fd= has an invalid value: %d", fd); + "VarlinkServerSocket varlink-server-socket-fd= has an invalid value: %s", buf); + if (fd < 0) + return log_debug_errno(fd, "Unable to parse VarlinkServerSocket varlink-server-socket-fd=%s: %m", buf); if (!fdset_contains(fds, fd)) return log_debug_errno(SYNTHETIC_ERRNO(EBADF), "VarlinkServerSocket varlink-server-socket-fd= has unknown fd %d: %m", fd); |