/** \file fd.h exported symbols from fd.c */
int write_all(int fd, const char *buf, size_t *len);
+int para_readv(int fd, struct iovec *iov, int iovcnt);
int file_exists(const char *);
int para_select(int n, fd_set *readfds, fd_set *writefds,
struct timeval *timeout_tv);
__must_check int mark_fd_blocking(int fd);
void para_fd_set(int fd, fd_set *fds, int *max_fileno);
__must_check int para_fgets(char *line, int size, FILE *f);
-void *para_mmap(size_t length, int prot, int flags, int fd, off_t offset);
+int para_mmap(size_t length, int prot, int flags, int fd, off_t offset,
+ void *map);
int para_open(const char *path, int flags, mode_t mode);
int para_opendir(const char *dirname, DIR **dir, int *cwd);
int para_mkdir(const char *path, mode_t mode);
void valid_fd_012(void);
int write_nonblock(int fd, const char *buf, size_t len,
size_t max_bytes_per_write);
+int for_each_file_in_dir(const char *dirname,
+ int (*func)(const char *, void *), void *private_data);