1*7c478bd9Sstevel@tonic-gate /*-
2*7c478bd9Sstevel@tonic-gate  * See the file LICENSE for redistribution information.
3*7c478bd9Sstevel@tonic-gate  *
4*7c478bd9Sstevel@tonic-gate  * Copyright (c) 1997, 1998
5*7c478bd9Sstevel@tonic-gate  *	Sleepycat Software.  All rights reserved.
6*7c478bd9Sstevel@tonic-gate  *
7*7c478bd9Sstevel@tonic-gate  *	@(#)os_jump.h	10.1 (Sleepycat) 10/17/98
8*7c478bd9Sstevel@tonic-gate  */
9*7c478bd9Sstevel@tonic-gate 
10*7c478bd9Sstevel@tonic-gate /* Calls which can be replaced by the application. */
11*7c478bd9Sstevel@tonic-gate struct __db_jumptab {
12*7c478bd9Sstevel@tonic-gate 	int	(*j_close) __P((int));			/* DB_FUNC_CLOSE */
13*7c478bd9Sstevel@tonic-gate 	void	(*j_dirfree) __P((char **, int));	/* DB_FUNC_DIRFREE */
14*7c478bd9Sstevel@tonic-gate 	int	(*j_dirlist)				/* DB_FUNC_DIRLIST */
15*7c478bd9Sstevel@tonic-gate 		    __P((const char *, char ***, int *));
16*7c478bd9Sstevel@tonic-gate 	int	(*j_exists)				/* DB_FUNC_EXISTS */
17*7c478bd9Sstevel@tonic-gate 		    __P((const char *, int *));
18*7c478bd9Sstevel@tonic-gate 	void	(*j_free) __P((void *));		/* DB_FUNC_FREE */
19*7c478bd9Sstevel@tonic-gate 	int	(*j_fsync) __P((int));			/* DB_FUNC_FSYNC */
20*7c478bd9Sstevel@tonic-gate 	int	(*j_ioinfo) __P((const char *,		/* DB_FUNC_IOINFO */
21*7c478bd9Sstevel@tonic-gate 		    int, u_int32_t *, u_int32_t *, u_int32_t *));
22*7c478bd9Sstevel@tonic-gate 	void   *(*j_malloc) __P((size_t));		/* DB_FUNC_MALLOC */
23*7c478bd9Sstevel@tonic-gate 	int	(*j_map)				/* DB_FUNC_MAP */
24*7c478bd9Sstevel@tonic-gate 		    __P((char *, int, size_t, int, int, int, void **));
25*7c478bd9Sstevel@tonic-gate 	int	(*j_open)				/* DB_FUNC_OPEN */
26*7c478bd9Sstevel@tonic-gate 		    __P((const char *, int, ...));
27*7c478bd9Sstevel@tonic-gate 	ssize_t	(*j_read) __P((int, void *, size_t));	/* DB_FUNC_READ */
28*7c478bd9Sstevel@tonic-gate 	void   *(*j_realloc) __P((void *, size_t));	/* DB_FUNC_REALLOC */
29*7c478bd9Sstevel@tonic-gate 	int	(*j_runlink) __P((char *));		/* DB_FUNC_RUNLINK */
30*7c478bd9Sstevel@tonic-gate 	int	(*j_seek)				/* DB_FUNC_SEEK */
31*7c478bd9Sstevel@tonic-gate 		    __P((int, size_t, db_pgno_t, u_int32_t, int, int));
32*7c478bd9Sstevel@tonic-gate 	int	(*j_sleep) __P((u_long, u_long));	/* DB_FUNC_SLEEP */
33*7c478bd9Sstevel@tonic-gate 	int	(*j_unlink) __P((const char *));	/* DB_FUNC_UNLINK */
34*7c478bd9Sstevel@tonic-gate 	int	(*j_unmap) __P((void *, size_t));	/* DB_FUNC_UNMAP */
35*7c478bd9Sstevel@tonic-gate 	ssize_t	(*j_write)				/* DB_FUNC_WRITE */
36*7c478bd9Sstevel@tonic-gate 		    __P((int, const void *, size_t));
37*7c478bd9Sstevel@tonic-gate 	int	(*j_yield) __P((void));			/* DB_FUNC_YIELD */
38*7c478bd9Sstevel@tonic-gate };
39*7c478bd9Sstevel@tonic-gate 
40*7c478bd9Sstevel@tonic-gate extern struct __db_jumptab __db_jump;
41