diff options
Diffstat (limited to 'storage/bdb/dbinc/os.h')
-rw-r--r-- | storage/bdb/dbinc/os.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/storage/bdb/dbinc/os.h b/storage/bdb/dbinc/os.h new file mode 100644 index 00000000000..01ca0ac470d --- /dev/null +++ b/storage/bdb/dbinc/os.h @@ -0,0 +1,54 @@ +/*- + * See the file LICENSE for redistribution information. + * + * Copyright (c) 1997-2002 + * Sleepycat Software. All rights reserved. + * + * $Id: os.h,v 11.14 2002/03/27 04:34:55 bostic Exp $ + */ + +#ifndef _DB_OS_H_ +#define _DB_OS_H_ + +#if defined(__cplusplus) +extern "C" { +#endif + +/* DB filehandle. */ +struct __fh_t { +#if defined(DB_WIN32) + HANDLE handle; /* Windows/32 file handle. */ +#endif + int fd; /* POSIX file descriptor. */ + char *name; /* File name. */ + + u_int32_t log_size; /* XXX: Log file size. */ + u_int32_t pagesize; /* XXX: Page size. */ + +#define DB_FH_NOSYNC 0x01 /* Handle doesn't need to be sync'd. */ +#define DB_FH_UNLINK 0x02 /* Unlink on close */ +#define DB_FH_VALID 0x04 /* Handle is valid. */ + u_int8_t flags; +}; + +/* + * We group certain seek/write calls into a single function so that we + * can use pread(2)/pwrite(2) where they're available. + */ +#define DB_IO_READ 1 +#define DB_IO_WRITE 2 +typedef struct __io_t { + DB_FH *fhp; /* I/O file handle. */ + DB_MUTEX *mutexp; /* Mutex to lock. */ + size_t pagesize; /* Page size. */ + db_pgno_t pgno; /* Page number. */ + u_int8_t *buf; /* Buffer. */ + size_t bytes; /* Bytes read/written. */ +} DB_IO; + +#if defined(__cplusplus) +} +#endif + +#include "dbinc_auto/os_ext.h" +#endif /* !_DB_OS_H_ */ |