* \param buf The buffer to be sent.
* \param len The length of \a buf.
*
- * \return Standard. In any case, the number of bytes that have been written is
- * stored in \a len.
+ * \return Standard.
*/
-int write_all(int fd, const char *buf, size_t *len)
+int write_all(int fd, const char *buf, size_t len)
{
- size_t total = *len;
+ size_t total = len;
assert(total);
- *len = 0;
- while (*len < total) {
- int ret = write(fd, buf + *len, total - *len);
+ len = 0;
+ while (len < total) {
+ int ret = write(fd, buf + len, total - len);
if (ret == -1)
return -ERRNO_TO_PARA_ERROR(errno);
- *len += ret;
+ len += ret;
}
- return 1;
+ return len;
}
/**