summaryrefslogtreecommitdiff
path: root/iscsiuio/src/unix/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'iscsiuio/src/unix/main.c')
-rw-r--r--iscsiuio/src/unix/main.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/iscsiuio/src/unix/main.c b/iscsiuio/src/unix/main.c
index 5e3f66c..0c9ad49 100644
--- a/iscsiuio/src/unix/main.c
+++ b/iscsiuio/src/unix/main.c
@@ -51,6 +51,7 @@
#ifndef NO_SYSTEMD
#include <systemd/sd-daemon.h>
#endif
+#include <assert.h>
#include "uip.h"
#include "uip_arp.h"
@@ -186,16 +187,17 @@ static void main_usage()
static void daemon_init()
{
int fd;
+ int res;
fd = open("/dev/null", O_RDWR);
- if (fd == -1)
- exit(-1);
+ assert(fd >= 0);
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
setsid();
- chdir("/");
+ res = chdir("/");
+ assert(res == 0);
close(fd);
}
@@ -338,10 +340,12 @@ int main(int argc, char *argv[])
exit(1);
} else if (pid) {
char msgbuf[4];
+ int res;
/* parent: wait for child msg then exit */
- close(pipefds[1]);
- read(pipefds[0], msgbuf, sizeof(msgbuf));
+ close(pipefds[1]); /* close unused end */
+ res = read(pipefds[0], msgbuf, sizeof(msgbuf));
+ assert(res > 0);
exit(0);
}
@@ -414,9 +418,12 @@ int main(int argc, char *argv[])
goto error;
if (!foreground) {
+ int res;
+
/* signal parent they can go away now */
- close(pipefds[0]);
- write(pipefds[1], "ok\n", 3);
+ close(pipefds[0]); /* close unused end */
+ res = write(pipefds[1], "ok\n", 3);
+ assert(res > 0);
close(pipefds[1]);
}