diff options
author | Robert Mustacchi <rm@joyent.com> | 2013-04-11 20:06:23 +0000 |
---|---|---|
committer | Robert Mustacchi <rm@joyent.com> | 2013-04-23 00:54:54 +0000 |
commit | 0a073d9c072a82ec2d59f578a3a68c82aca35b5c (patch) | |
tree | ce678151ab5f89e38d255e73fb8af07513c2e548 /usr/src/lib/libresolv2_joy/common/bsd/readv.c | |
parent | ebdeab6a22ff38dc9e8777a6c4ed3270a3d4b044 (diff) | |
download | illumos-joyent-0a073d9c072a82ec2d59f578a3a68c82aca35b5c.tar.gz |
OS-2115 /etc/resolv.conf only handles a fixed number of DNS resolvers
OS-2148 suspect nscd is not honoring DNS TTLs
Diffstat (limited to 'usr/src/lib/libresolv2_joy/common/bsd/readv.c')
-rw-r--r-- | usr/src/lib/libresolv2_joy/common/bsd/readv.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/usr/src/lib/libresolv2_joy/common/bsd/readv.c b/usr/src/lib/libresolv2_joy/common/bsd/readv.c new file mode 100644 index 0000000000..5fa691a92f --- /dev/null +++ b/usr/src/lib/libresolv2_joy/common/bsd/readv.c @@ -0,0 +1,39 @@ +#ifndef LINT +static const char rcsid[] = "$Id: readv.c,v 1.2 2005/04/27 04:56:11 sra Exp $"; +#endif + +#include "port_before.h" + +#include <sys/types.h> +#include <sys/uio.h> +#include <sys/stat.h> +#include <sys/socket.h> + +#include "port_after.h" + +#ifndef NEED_READV +int __bindcompat_readv; +#else + +int +__readv(fd, vp, vpcount) + int fd; + const struct iovec *vp; + int vpcount; +{ + int count = 0; + + while (vpcount-- > 0) { + int bytes = read(fd, vp->iov_base, vp->iov_len); + + if (bytes < 0) + return (-1); + count += bytes; + if (bytes != vp->iov_len) + break; + vp++; + } + return (count); +} +#endif /* NEED_READV */ +/*! \file */ |