From: Sami Kerola Date: Wed, 6 Apr 2011 19:31:02 +0000 (+0200) Subject: ttymsg: fix compiler warnings and use EXIT_ X-Git-Tag: v2.20-rc1~372 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5e6bf8008bbc605929e5b884dc92b6c08b80d57b;p=thirdparty%2Futil-linux.git ttymsg: fix compiler warnings and use EXIT_ [kzak@redhat.com: - remove 'register' storage class specifier] Signed-off-by: Sami Kerola Signed-off-by: Karel Zak --- diff --git a/term-utils/ttymsg.c b/term-utils/ttymsg.c index a4df59e6ce..b5c1973271 100644 --- a/term-utils/ttymsg.c +++ b/term-utils/ttymsg.c @@ -64,12 +64,13 @@ * ignored (exclusive-use, lack of permission, etc.). */ char * -ttymsg(struct iovec *iov, int iovcnt, char *line, int tmout) { +ttymsg(struct iovec *iov, size_t iovcnt, char *line, int tmout) { static char device[MAXNAMLEN]; static char errbuf[MAXNAMLEN+1024]; - register int cnt, fd, left, wret; + size_t cnt, left; + ssize_t wret; struct iovec localiov[6]; - int forked = 0, errsv; + int fd, forked = 0, errsv; if (iovcnt > sizeof(localiov) / sizeof(localiov[0])) return (_("too many iov's (change code in wall/ttymsg.c)")); @@ -106,7 +107,7 @@ ttymsg(struct iovec *iov, int iovcnt, char *line, int tmout) { for (;;) { wret = writev(fd, iov, iovcnt); - if (wret >= left) + if (wret >= (ssize_t) left) break; if (wret >= 0) { left -= wret; @@ -115,13 +116,13 @@ ttymsg(struct iovec *iov, int iovcnt, char *line, int tmout) { iovcnt * sizeof(struct iovec)); iov = localiov; } - for (cnt = 0; wret >= iov->iov_len; ++cnt) { + for (cnt = 0; wret >= (ssize_t) iov->iov_len; ++cnt) { wret -= iov->iov_len; ++iov; --iovcnt; } if (wret) { - iov->iov_base += wret; + iov->iov_base = (char *) iov->iov_base + wret; iov->iov_len -= wret; } continue; @@ -132,7 +133,7 @@ ttymsg(struct iovec *iov, int iovcnt, char *line, int tmout) { if (forked) { (void) close(fd); - _exit(1); + _exit(EXIT_FAILURE); } cpid = fork(); if (cpid < 0) { @@ -169,7 +170,7 @@ ttymsg(struct iovec *iov, int iovcnt, char *line, int tmout) { break; (void) close(fd); if (forked) - _exit(1); + _exit(EXIT_FAILURE); if (strlen(strerror(errno)) > 1000) (void) sprintf(errbuf, _("%s: BAD ERROR, message is " "far too long"), device); @@ -184,6 +185,6 @@ ttymsg(struct iovec *iov, int iovcnt, char *line, int tmout) { (void) close(fd); if (forked) - _exit(0); + _exit(EXIT_SUCCESS); return (NULL); } diff --git a/term-utils/ttymsg.h b/term-utils/ttymsg.h index 5d27951977..2cfa73027b 100644 --- a/term-utils/ttymsg.h +++ b/term-utils/ttymsg.h @@ -1,2 +1,2 @@ -char *ttymsg(struct iovec *iov, int iovcnt, char *line, int tmout); +char *ttymsg(struct iovec *iov, size_t iovcnt, char *line, int tmout);