diff options
Diffstat (limited to 'src/include/port.h')
-rw-r--r-- | src/include/port.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/include/port.h b/src/include/port.h index 3a53bcf2e4b..81583d557cd 100644 --- a/src/include/port.h +++ b/src/include/port.h @@ -392,6 +392,23 @@ extern double rint(double x); extern int inet_aton(const char *cp, struct in_addr *addr); #endif +/* + * Windows and older Unix don't have pread(2) and pwrite(2). We have + * replacement functions, but they have slightly different semantics so we'll + * use a name with a pg_ prefix to avoid confusion. + */ +#ifdef HAVE_PREAD +#define pg_pread pread +#else +extern ssize_t pg_pread(int fd, void *buf, size_t nbyte, off_t offset); +#endif + +#ifdef HAVE_PWRITE +#define pg_pwrite pwrite +#else +extern ssize_t pg_pwrite(int fd, const void *buf, size_t nbyte, off_t offset); +#endif + #if !HAVE_DECL_STRLCAT extern size_t strlcat(char *dst, const char *src, size_t siz); #endif |