| 1234567891011121314151617181920 |
- #include "ourhdr.h"
- ssize_t /* Write "n" bytes to a descriptor. */
- writen(int fd, const void *vptr, size_t n)
- {
- size_t nleft, nwritten;
- const char *ptr;
- ptr = vptr; /* can't do pointer arithmetic on void* */
- nleft = n;
- while (nleft > 0) {
- if ( (nwritten = write(fd, ptr, nleft)) <= 0)
- return(nwritten); /* error */
- nleft -= nwritten;
- ptr += nwritten;
- }
- return(n);
- }
|