os_method.c
上传用户:tsgydb
上传日期:2007-04-14
资源大小:10674k
文件大小:3k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. /*-
  2.  * See the file LICENSE for redistribution information.
  3.  *
  4.  * Copyright (c) 1999, 2000
  5.  * Sleepycat Software.  All rights reserved.
  6.  */
  7. #include "db_config.h"
  8. #ifndef lint
  9. static const char revid[] = "$Id: os_method.c,v 11.6 2000/11/15 19:25:39 sue Exp $";
  10. #endif /* not lint */
  11. #ifndef NO_SYSTEM_INCLUDES
  12. #include <sys/types.h>
  13. #endif
  14. #include "db_int.h"
  15. #include "os_jump.h"
  16. struct __db_jumptab __db_jump;
  17. int
  18. db_env_set_func_close(func_close)
  19. int (*func_close) __P((int));
  20. {
  21. __db_jump.j_close = func_close;
  22. return (0);
  23. }
  24. int
  25. db_env_set_func_dirfree(func_dirfree)
  26. void (*func_dirfree) __P((char **, int));
  27. {
  28. __db_jump.j_dirfree = func_dirfree;
  29. return (0);
  30. }
  31. int
  32. db_env_set_func_dirlist(func_dirlist)
  33. int (*func_dirlist) __P((const char *, char ***, int *));
  34. {
  35. __db_jump.j_dirlist = func_dirlist;
  36. return (0);
  37. }
  38. int
  39. db_env_set_func_exists(func_exists)
  40. int (*func_exists) __P((const char *, int *));
  41. {
  42. __db_jump.j_exists = func_exists;
  43. return (0);
  44. }
  45. int
  46. db_env_set_func_free(func_free)
  47. void (*func_free) __P((void *));
  48. {
  49. __db_jump.j_free = func_free;
  50. return (0);
  51. }
  52. int
  53. db_env_set_func_fsync(func_fsync)
  54. int (*func_fsync) __P((int));
  55. {
  56. __db_jump.j_fsync = func_fsync;
  57. return (0);
  58. }
  59. int
  60. db_env_set_func_ioinfo(func_ioinfo)
  61. int (*func_ioinfo)
  62.     __P((const char *, int, u_int32_t *, u_int32_t *, u_int32_t *));
  63. {
  64. __db_jump.j_ioinfo = func_ioinfo;
  65. return (0);
  66. }
  67. int
  68. db_env_set_func_malloc(func_malloc)
  69. void *(*func_malloc) __P((size_t));
  70. {
  71. __db_jump.j_malloc = func_malloc;
  72. return (0);
  73. }
  74. int
  75. db_env_set_func_map(func_map)
  76. int (*func_map) __P((char *, size_t, int, int, void **));
  77. {
  78. __db_jump.j_map = func_map;
  79. return (0);
  80. }
  81. int
  82. db_env_set_func_open(func_open)
  83. int (*func_open) __P((const char *, int, ...));
  84. {
  85. __db_jump.j_open = func_open;
  86. return (0);
  87. }
  88. int
  89. db_env_set_func_read(func_read)
  90. ssize_t (*func_read) __P((int, void *, size_t));
  91. {
  92. __db_jump.j_read = func_read;
  93. return (0);
  94. }
  95. int
  96. db_env_set_func_realloc(func_realloc)
  97. void *(*func_realloc) __P((void *, size_t));
  98. {
  99. __db_jump.j_realloc = func_realloc;
  100. return (0);
  101. }
  102. int
  103. db_env_set_func_rename(func_rename)
  104. int (*func_rename) __P((const char *, const char *));
  105. {
  106. __db_jump.j_rename = func_rename;
  107. return (0);
  108. }
  109. int
  110. db_env_set_func_seek(func_seek)
  111. int (*func_seek) __P((int, size_t, db_pgno_t, u_int32_t, int, int));
  112. {
  113. __db_jump.j_seek = func_seek;
  114. return (0);
  115. }
  116. int
  117. db_env_set_func_sleep(func_sleep)
  118. int (*func_sleep) __P((u_long, u_long));
  119. {
  120. __db_jump.j_sleep = func_sleep;
  121. return (0);
  122. }
  123. int
  124. db_env_set_func_unlink(func_unlink)
  125. int (*func_unlink) __P((const char *));
  126. {
  127. __db_jump.j_unlink = func_unlink;
  128. return (0);
  129. }
  130. int
  131. db_env_set_func_unmap(func_unmap)
  132. int (*func_unmap) __P((void *, size_t));
  133. {
  134. __db_jump.j_unmap = func_unmap;
  135. return (0);
  136. }
  137. int
  138. db_env_set_func_write(func_write)
  139. ssize_t (*func_write) __P((int, const void *, size_t));
  140. {
  141. __db_jump.j_write = func_write;
  142. return (0);
  143. }
  144. int
  145. db_env_set_func_yield(func_yield)
  146. int (*func_yield) __P((void));
  147. {
  148. __db_jump.j_yield = func_yield;
  149. return (0);
  150. }
  151. int
  152. db_env_set_pageyield(onoff)
  153. int onoff;
  154. {
  155. DB_GLOBAL(db_pageyield) = onoff;
  156. return (0);
  157. }
  158. int
  159. db_env_set_panicstate(onoff)
  160. int onoff;
  161. {
  162. DB_GLOBAL(db_panic) = onoff;
  163. return (0);
  164. }
  165. int
  166. db_env_set_region_init(onoff)
  167. int onoff;
  168. {
  169. DB_GLOBAL(db_region_init) = onoff;
  170. return (0);
  171. }
  172. int
  173. db_env_set_tas_spins(tas_spins)
  174. u_int32_t tas_spins;
  175. {
  176. DB_GLOBAL(db_tas_spins) = tas_spins;
  177. return (0);
  178. }