xref: /kvmtool/include/kvm/read-write.h (revision 30a9aa69300118907de7735f5695f8b142d74455)
1c4d7847bSPekka Enberg #ifndef KVM_READ_WRITE_H
2c4d7847bSPekka Enberg #define KVM_READ_WRITE_H
3c4d7847bSPekka Enberg 
4c4d7847bSPekka Enberg #include <sys/types.h>
51547507fSSasha Levin #include <sys/uio.h>
6c4d7847bSPekka Enberg #include <unistd.h>
7c4d7847bSPekka Enberg 
8c4d7847bSPekka Enberg ssize_t xread(int fd, void *buf, size_t count);
9c4d7847bSPekka Enberg ssize_t xwrite(int fd, const void *buf, size_t count);
10c4d7847bSPekka Enberg 
11*649f9515SAndre Przywara ssize_t read_file(int fd, char *buf, size_t max_size);
12*649f9515SAndre Przywara 
13c4d7847bSPekka Enberg ssize_t read_in_full(int fd, void *buf, size_t count);
14c4d7847bSPekka Enberg ssize_t write_in_full(int fd, const void *buf, size_t count);
15c4d7847bSPekka Enberg 
166b7deb02SPekka Enberg ssize_t xpread(int fd, void *buf, size_t count, off_t offset);
176b7deb02SPekka Enberg ssize_t xpwrite(int fd, const void *buf, size_t count, off_t offset);
186b7deb02SPekka Enberg 
196b7deb02SPekka Enberg ssize_t pread_in_full(int fd, void *buf, size_t count, off_t offset);
206b7deb02SPekka Enberg ssize_t pwrite_in_full(int fd, const void *buf, size_t count, off_t offset);
216b7deb02SPekka Enberg 
221547507fSSasha Levin ssize_t xreadv(int fd, const struct iovec *iov, int iovcnt);
231547507fSSasha Levin ssize_t xwritev(int fd, const struct iovec *iov, int iovcnt);
241547507fSSasha Levin 
251547507fSSasha Levin ssize_t readv_in_full(int fd, const struct iovec *iov, int iovcnt);
261547507fSSasha Levin ssize_t writev_in_full(int fd, const struct iovec *iov, int iovcnt);
271547507fSSasha Levin 
281547507fSSasha Levin ssize_t xpreadv(int fd, const struct iovec *iov, int iovcnt, off_t offset);
291547507fSSasha Levin ssize_t xpwritev(int fd, const struct iovec *iov, int iovcnt, off_t offset);
301547507fSSasha Levin 
311547507fSSasha Levin ssize_t preadv_in_full(int fd, const struct iovec *iov, int iovcnt, off_t offset);
321547507fSSasha Levin ssize_t pwritev_in_full(int fd, const struct iovec *iov, int iovcnt, off_t offset);
331547507fSSasha Levin 
34c4d7847bSPekka Enberg #endif /* KVM_READ_WRITE_H */
35