diff options
author | Yang Tse <yangsita@gmail.com> | 2008-09-16 16:42:48 +0000 |
---|---|---|
committer | Yang Tse <yangsita@gmail.com> | 2008-09-16 16:42:48 +0000 |
commit | aa41743ebdb8b348b70bcd886395f0ba5f5fac3a (patch) | |
tree | a88f8147f6aaf3015bcf1f0679ec1c0bdef97d84 /ares/windows_port.c | |
parent | ee5f13cb6b2a6e514dd6b2e129c48b7afd2fefae (diff) |
rearrange to allow internal/private use of ares_writev to any system
that lacks the writev function.
Diffstat (limited to 'ares/windows_port.c')
-rw-r--r-- | ares/windows_port.c | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/ares/windows_port.c b/ares/windows_port.c index 8b5e14977..cc31036a7 100644 --- a/ares/windows_port.c +++ b/ares/windows_port.c @@ -34,36 +34,5 @@ WINAPI DllMain (HINSTANCE hnd, DWORD reason, LPVOID reserved) } #endif -int -ares_writev (ares_socket_t s, const struct iovec *vector, size_t count) -{ - char *buffer, *bp; - size_t i, bytes = 0; - - /* Find the total number of bytes to write - */ - for (i = 0; i < count; i++) - bytes += vector[i].iov_len; - - if (bytes == 0) /* not an error */ - return (0); - /* Allocate a temporary buffer to hold the data - */ - buffer = bp = (char*) alloca (bytes); - if (!buffer) - { - SET_ERRNO(ENOMEM); - return (-1); - } - - /* Copy the data into buffer. - */ - for (i = 0; i < count; ++i) - { - memcpy (bp, vector[i].iov_base, vector[i].iov_len); - bp += vector[i].iov_len; - } - return (int)swrite(s, buffer, bytes); -} #endif /* WIN32 builds only */ |