summaryrefslogtreecommitdiff
path: root/src/libstddjb/iobufferk_fill.c
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2021-09-25 19:48:26 +0000
committerLaurent Bercot <ska@appnovation.com>2021-09-25 19:48:26 +0000
commitf268a8871a061395633d943e6f177fa8f8008963 (patch)
treec01e2ddf63e4934ced4eb34764b520bd47070e08 /src/libstddjb/iobufferk_fill.c
parent754da814c32de5fbbd8b065e9f106cbb7bfc8ae6 (diff)
downloadskalibs-f268a8871a061395633d943e6f177fa8f8008963.tar.xz
Axe iobuffer
Signed-off-by: Laurent Bercot <ska@appnovation.com>
Diffstat (limited to 'src/libstddjb/iobufferk_fill.c')
-rw-r--r--src/libstddjb/iobufferk_fill.c56
1 files changed, 0 insertions, 56 deletions
diff --git a/src/libstddjb/iobufferk_fill.c b/src/libstddjb/iobufferk_fill.c
deleted file mode 100644
index c24ceba..0000000
--- a/src/libstddjb/iobufferk_fill.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* ISC license. */
-
-#include <skalibs/sysdeps.h>
-
-#ifdef SKALIBS_HASSPLICE
-
-#include <skalibs/nonposix.h>
-#include <fcntl.h>
-#include <errno.h>
-#include <skalibs/iobuffer.h>
-
-static ssize_t iobufferk_tee (iobufferk *k)
-{
- ssize_t r = tee(k->fd[0], k->fd[1], IOBUFFERK_SIZE - k->n, k->nb & 1 ? SPLICE_F_NONBLOCK : 0) ;
- if (r > 0) k->n += r ;
- return r ;
-}
-
-static ssize_t iobufferk_splice (iobufferk *k)
-{
- ssize_t r = splice(k->fd[0], 0, k->fd[1], 0, IOBUFFERK_SIZE, k->nb ? SPLICE_F_NONBLOCK : 0) ;
- if (r > 0) k->n += r ;
- if ((r < 0) && (errno == EINVAL)) errno = ENOSYS ;
- return r ;
-}
-
-static ssize_t iobufferk_fill_3 (iobufferk *k)
-{
- ssize_t r = splice(k->fd[0], 0, k->p[1], 0, IOBUFFERK_SIZE - k->n, k->nb & 1 ? SPLICE_F_NONBLOCK : 0) ;
- if (r > 0) k->n += r ;
- if ((r < 0) && (errno == EINVAL)) errno = ENOSYS ;
- return r ;
-}
-
-iobufferk_input_func_ref const iobufferk_fill_f[4] =
-{
- &iobufferk_tee, &iobufferk_splice, &iobufferk_splice, &iobufferk_fill_3
-} ;
-
-#else
-
-#include <errno.h>
-#include <skalibs/iobuffer.h>
-
-static ssize_t iobufferk_inosys (iobufferk *k)
-{
- (void)k ;
- return (errno = ENOSYS, -1) ;
-}
-
-iobufferk_input_func_ref const iobufferk_fill_f[4] =
-{
- &iobufferk_inosys, &iobufferk_inosys, &iobufferk_inosys, &iobufferk_inosys
-} ;
-
-#endif