X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=fd.h;h=b95588207d4c69e303409184e7a91e52df643e00;hp=041a7732d3169ced0cbda3d9aa40727d0841f6c5;hb=98f2c8aea52a49fad3fd6df67b1eb32c1499176c;hpb=a6cbab95272b31c55b2b41e1d3dd55743c7c774f diff --git a/fd.h b/fd.h index 041a7732..b9558820 100644 --- a/fd.h +++ b/fd.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006-2009 Andre Noll + * Copyright (C) 2006-2010 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -7,6 +7,7 @@ /** \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); @@ -14,7 +15,8 @@ __must_check int mark_fd_nonblocking(int fd); __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); @@ -25,5 +27,10 @@ int mmap_full_file(const char *filename, int open_mode, void **map, int para_munmap(void *start, size_t length); int write_ok(int fd); void valid_fd_012(void); +int readv_nonblock(int fd, struct iovec *iov, int iovcnt, fd_set *rfds, + size_t *num_bytes); +int read_nonblock(int fd, void *buf, size_t sz, fd_set *rfds, size_t *num_bytes); 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);