diff --git a/os/Xtrans.c b/os/Xtrans.c index 135476de17..857d80ed30 100644 --- a/os/Xtrans.c +++ b/os/Xtrans.c @@ -705,12 +705,12 @@ int _XSERVTransRead (XtransConnInfo ciptr, char *buf, int size) return ciptr->transptr->Read (ciptr, buf, size); } -int _XSERVTransWrite (XtransConnInfo ciptr, const char *buf, int size) +ssize_t _XSERVTransWrite (XtransConnInfo ciptr, const char *buf, size_t size) { return ciptr->transptr->Write (ciptr, buf, size); } -int _XSERVTransWritev (XtransConnInfo ciptr, struct iovec *buf, int size) +ssize_t _XSERVTransWritev (XtransConnInfo ciptr, struct iovec *buf, int size) { return ciptr->transptr->Writev (ciptr, buf, size); } diff --git a/os/Xtrans.h b/os/Xtrans.h index 0ef4a6528f..8ca0be1334 100644 --- a/os/Xtrans.h +++ b/os/Xtrans.h @@ -232,13 +232,13 @@ int _XSERVTransRead ( int /* size */ ); -int _XSERVTransWrite ( +ssize_t _XSERVTransWrite ( XtransConnInfo, /* ciptr */ const char *, /* buf */ - int /* size */ + size_t /* size */ ); -int _XSERVTransWritev ( +ssize_t _XSERVTransWritev ( XtransConnInfo, /* ciptr */ struct iovec *, /* buf */ int /* size */ diff --git a/os/Xtransint.h b/os/Xtransint.h index 0270ed6177..27aa7f46d3 100644 --- a/os/Xtransint.h +++ b/os/Xtransint.h @@ -181,13 +181,13 @@ typedef struct _Xtransport { int /* size */ ); - int (*Write)( + ssize_t (*Write)( XtransConnInfo, /* connection */ const char *, /* buf */ - int /* size */ + size_t /* size */ ); - int (*Writev)( + ssize_t (*Writev)( XtransConnInfo, /* connection */ struct iovec *, /* buf */ int /* size */ diff --git a/os/Xtranslcl.c b/os/Xtranslcl.c index 1698c8bc07..5beb78773b 100644 --- a/os/Xtranslcl.c +++ b/os/Xtranslcl.c @@ -754,14 +754,14 @@ static int _XSERVTransLocalRead(XtransConnInfo ciptr, char *buf, int size) return read(ciptr->fd,buf,size); } -static int _XSERVTransLocalWrite(XtransConnInfo ciptr, const char *buf, int size) +static ssize_t _XSERVTransLocalWrite(XtransConnInfo ciptr, const char *buf, size_t size) { prmsg(2,"LocalWrite(%d,%p,%d)\n", ciptr->fd, (const void *) buf, size ); return write(ciptr->fd,buf,size); } -static int _XSERVTransLocalWritev(XtransConnInfo ciptr, struct iovec *buf, int size) +static ssize_t _XSERVTransLocalWritev(XtransConnInfo ciptr, struct iovec *buf, int size) { prmsg(2,"LocalWritev(%d,%p,%d)\n", ciptr->fd, (const void *) buf, size ); diff --git a/os/Xtranssock.c b/os/Xtranssock.c index e36a4d176a..06f0c6d2b8 100644 --- a/os/Xtranssock.c +++ b/os/Xtranssock.c @@ -1337,7 +1337,7 @@ static int _XSERVTransSocketRead ( #endif /* WIN32 */ } -static int _XSERVTransSocketWritev ( +static ssize_t _XSERVTransSocketWritev ( XtransConnInfo ciptr, struct iovec *buf, int size) { prmsg (2,"SocketWritev(%d,%p,%d)\n", ciptr->fd, (void *) buf, size); @@ -1357,7 +1357,7 @@ static int _XSERVTransSocketWritev ( .msg_controllen = CMSG_LEN(nfd * sizeof(int)) }; struct cmsghdr *hdr = CMSG_FIRSTHDR(&msg); - int i; + ssize_t i; int *fds; hdr->cmsg_len = msg.msg_controllen; @@ -1380,17 +1380,15 @@ static int _XSERVTransSocketWritev ( return WRITEV (ciptr, buf, size); } -static int _XSERVTransSocketWrite ( - XtransConnInfo ciptr, const char *buf, int size) +static ssize_t _XSERVTransSocketWrite ( + XtransConnInfo ciptr, const char *buf, size_t size) { - prmsg (2,"SocketWrite(%d,%p,%d)\n", ciptr->fd, (const void *) buf, size); + prmsg (2,"SocketWrite(%d,%p,%lu)\n", ciptr->fd, (const void *) buf, (unsigned long)size); -#if defined(WIN32) - { - int ret = send ((SOCKET)ciptr->fd, buf, size, 0); #ifdef WIN32 + { + ssize_t ret = send ((SOCKET)ciptr->fd, buf, size, 0); if (ret == SOCKET_ERROR) errno = WSAGetLastError(); -#endif return ret; } #else