#include <errno.h>
#include <limits.h>
+#define BUFLEN 4096
+
int
main(int argc, char *argv[])
{
fprintf(stderr, "Logging to %s: ", argv[1]);
+ slen = 0;
+
do {
len = splice(STDIN_FILENO, NULL, fd, NULL,
- 65536, SPLICE_F_MOVE);
+ BUFLEN, SPLICE_F_MOVE);
if (len < 0) {
if (errno == EAGAIN)
} else
if (len == 0)
break;
- fprintf(stderr, ".", len);
+ slen += len;
+ if ((slen/BUFLEN) > 0) {
+ fprintf(stderr, ".");
+ }
+ slen = slen % BUFLEN;
+
} while (1);
close(fd);
fprintf(stderr, "\n");
exit(EXIT_SUCCESS);
-}
-
+}
\ No newline at end of file