From: Christian Seiler Date: Tue, 21 May 2013 09:58:35 +0000 (+0200) Subject: Fix return type of read/write utility functions. X-Git-Tag: lxc-1.0.0.alpha1~1^2~89 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=650468bb4a5c9a6c69b524f574e8d0f315f45c37;p=thirdparty%2Flxc.git Fix return type of read/write utility functions. Signed-off-by: Christian Seiler Acked-by: Serge E. Hallyn --- diff --git a/src/lxc/utils.c b/src/lxc/utils.c index c3f734b05..89d335dff 100644 --- a/src/lxc/utils.c +++ b/src/lxc/utils.c @@ -359,9 +359,9 @@ again: return status; } -int lxc_write_nointr(int fd, const void* buf, size_t count) +ssize_t lxc_write_nointr(int fd, const void* buf, size_t count) { - int ret; + ssize_t ret; again: ret = write(fd, buf, count); if (ret < 0 && errno == EINTR) @@ -369,9 +369,9 @@ again: return ret; } -int lxc_read_nointr(int fd, void* buf, size_t count) +ssize_t lxc_read_nointr(int fd, void* buf, size_t count) { - int ret; + ssize_t ret; again: ret = read(fd, buf, count); if (ret < 0 && errno == EINTR) @@ -379,13 +379,13 @@ again: return ret; } -int lxc_read_nointr_expect(int fd, void* buf, size_t count, const void* expected_buf) +ssize_t lxc_read_nointr_expect(int fd, void* buf, size_t count, const void* expected_buf) { - int ret; + ssize_t ret; ret = lxc_read_nointr(fd, buf, count); if (ret <= 0) return ret; - if (ret != count) + if ((size_t)ret != count) return -1; if (expected_buf && memcmp(buf, expected_buf, count) != 0) { errno = EINVAL; diff --git a/src/lxc/utils.h b/src/lxc/utils.h index 14b8439d4..7473b4de6 100644 --- a/src/lxc/utils.h +++ b/src/lxc/utils.h @@ -173,9 +173,9 @@ extern int wait_for_pid(pid_t pid); extern int lxc_wait_for_pid_status(pid_t pid); /* send and receive buffers completely */ -extern int lxc_write_nointr(int fd, const void* buf, size_t count); -extern int lxc_read_nointr(int fd, void* buf, size_t count); -extern int lxc_read_nointr_expect(int fd, void* buf, size_t count, const void* expected_buf); +extern ssize_t lxc_write_nointr(int fd, const void* buf, size_t count); +extern ssize_t lxc_read_nointr(int fd, void* buf, size_t count); +extern ssize_t lxc_read_nointr_expect(int fd, void* buf, size_t count, const void* expected_buf); #if HAVE_LIBGNUTLS #define SHA_DIGEST_LENGTH 20 extern int sha1sum_file(char *fnam, unsigned char *md_value);