failtest: capture pread/pwrite
[ccan] / ccan / failtest / failtest.h
index 8aae82b352d007d81e94ba4c64104266107b2e92..e8bf10ab5f6c46e056833610fd8c57b54bb1e3d5 100644 (file)
@@ -2,6 +2,7 @@
 #define CCAN_FAILTEST_H
 #include <sys/types.h>
 #include <stdbool.h>
+#include <fcntl.h>
 #include <ccan/compiler/compiler.h>
 
 /**
@@ -38,6 +39,7 @@ enum failtest_call_type {
        FAILTEST_PIPE,
        FAILTEST_READ,
        FAILTEST_WRITE,
+       FAILTEST_FCNTL,
 };
 
 struct calloc_call {
@@ -74,6 +76,7 @@ struct read_call {
        int fd;
        void *buf;
        size_t count;
+       off_t off;
 };
 
 struct write_call {
@@ -81,6 +84,18 @@ struct write_call {
        int fd;
        const void *buf;
        size_t count;
+       off_t off;
+};
+
+struct fcntl_call {
+       int ret;
+       int fd;
+       int cmd;
+       union {
+               struct flock fl;
+               long l;
+               int i;
+       } arg;
 };
 
 /**
@@ -115,6 +130,7 @@ struct failtest_call {
                struct pipe_call pipe;
                struct read_call read;
                struct write_call write;
+               struct fcntl_call fcntl;
        } u;
 };