From ac88ce4f7f19be1aae1fdf390fa870b4be8dc3f5 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Sat, 2 May 2020 17:32:01 +0200 Subject: make bind(2) error handling consistent The mount() and bind() syscalls return -1 on error, and the mountid sequence number on success. The manpage states that the mountid sequence number is a positive integer, but the kernels implementation currently uses a unsigned 32-bit integer and does not guarantee that the mountid will not become negative. Most code just cares about the error, so test for the -1 error value only. --- sys/src/cmd/pipefile.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sys/src/cmd/pipefile.c') diff --git a/sys/src/cmd/pipefile.c b/sys/src/cmd/pipefile.c index 3c4f4dd75..c803b3f58 100644 --- a/sys/src/cmd/pipefile.c +++ b/sys/src/cmd/pipefile.c @@ -78,9 +78,9 @@ main(int argc, char *argv[]) sysfatal("open %s: %r", file); } - if(bind("#|", TEMP, MREPL) < 0) + if(bind("#|", TEMP, MREPL) == -1) sysfatal("bind pipe %s: %r", TEMP); - if(bind(TEMP "/data", file, MREPL) < 0) + if(bind(TEMP "/data", file, MREPL) == -1) sysfatal("bind %s %s: %r", TEMP "/data", file); fd0 = open(TEMP "/data1", OREAD); -- cgit v1.2.3