Rinominate le prime versioni dei vari programmi in Elem, la versione piu`
[gapil.git] / sources / SockWrite.c
1 #include <unistd.h>
2 #include <errno.h>
3
4 ssize_t SockWrite(int fd, const void *buf, size_t count) 
5 {
6     size_t nleft;
7     ssize_t nwritten;
8
9     nleft = count;
10     while (nleft > 0) {             /* repeat until no left */
11         if ( (nwritten = write(fd, buf, nleft)) < 0) {
12             if (errno == EINTR) {   /* if interrupted by system call */
13                 continue;           /* repeat the loop */
14             } else {
15                 return(nwritten);   /* otherwise exit with error */
16             }
17         }
18         nleft -= nwritten;          /* set left to write */
19         buf +=nwritten;             /* set pointer */
20     }
21     return (count);
22 }
23