X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=blobdiff_plain;f=utils%2Fstatd%2Fsm-notify.c;h=15d0a921889e8ccbf37c88ecd4a28fb51779732f;hp=1d4403a6d973c5773ebf65ece7bced0dae46b9c5;hb=686ae9e82b90881f5ea775602c7fd6c187980cad;hpb=85747f37936c9b7ea599b3ad8a2c989989d45e68 diff --git a/utils/statd/sm-notify.c b/utils/statd/sm-notify.c index 1d4403a..15d0a92 100644 --- a/utils/statd/sm-notify.c +++ b/utils/statd/sm-notify.c @@ -765,17 +765,21 @@ nsm_get_state(int update) static int record_pid(void) { char pid[20]; + ssize_t len; int fd; - snprintf(pid, 20, "%d\n", getpid()); + (void)snprintf(pid, sizeof(pid), "%d\n", (int)getpid()); fd = open("/var/run/sm-notify.pid", O_CREAT|O_EXCL|O_WRONLY, 0600); if (fd < 0) return 0; - if (write(fd, pid, strlen(pid)) != strlen(pid)) { + + len = write(fd, pid, strlen(pid)); + if ((len < 0) || ((size_t)len != strlen(pid))) { xlog_warn("Writing to pid file failed: errno %d (%m)", errno); } - close(fd); + + (void)close(fd); return 1; }