Eneboo - Documentación para desarrolladores
|
00001 /* Copyright (C) 2000 MySQL AB 00002 00003 This program is free software; you can redistribute it and/or modify 00004 it under the terms of the GNU General Public License as published by 00005 the Free Software Foundation; version 2 of the License. 00006 00007 This program is distributed in the hope that it will be useful, 00008 but WITHOUT ANY WARRANTY; without even the implied warranty of 00009 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00010 GNU General Public License for more details. 00011 00012 You should have received a copy of the GNU General Public License 00013 along with this program; if not, write to the Free Software 00014 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ 00015 00016 /* 00017 Static variables for mysys library. All definied here for easy making of 00018 a shared library 00019 */ 00020 00021 C_MODE_START 00022 #include <signal.h> 00023 00024 #define MAX_SIGNALS 10 /* Max signals under a dont-allow */ 00025 #define MIN_KEYBLOCK (min(IO_SIZE,1024)) 00026 #define MAX_KEYBLOCK 8192 /* Max keyblocklength == 8*IO_SIZE */ 00027 #define MAX_BLOCK_TYPES MAX_KEYBLOCK/MIN_KEYBLOCK 00028 00029 struct st_remember { 00030 int number; 00031 sig_handler (*func)(int number); 00032 }; 00033 00034 /* 00035 Structure that stores information of a allocated memory block 00036 The data is at &struct_adr+sizeof(ALIGN_SIZE(sizeof(struct irem))) 00037 The lspecialvalue is at the previous 4 bytes from this, which may not 00038 necessarily be in the struct if the struct size isn't aligned at a 8 byte 00039 boundary. 00040 */ 00041 00042 struct st_irem 00043 { 00044 struct st_irem *next; /* Linked list of structures */ 00045 struct st_irem *prev; /* Other link */ 00046 char *filename; /* File in which memory was new'ed */ 00047 uint32 linenum; /* Line number in above file */ 00048 uint32 datasize; /* Size requested */ 00049 uint32 SpecialValue; /* Underrun marker value */ 00050 }; 00051 00052 00053 extern char NEAR curr_dir[FN_REFLEN],NEAR home_dir_buff[FN_REFLEN]; 00054 00055 extern volatile int _my_signals; 00056 extern struct st_remember _my_sig_remember[MAX_SIGNALS]; 00057 00058 extern const char *soundex_map; 00059 00060 extern USED_MEM* my_once_root_block; 00061 extern uint my_once_extra; 00062 00063 extern byte *sf_min_adress,*sf_max_adress; 00064 extern uint sf_malloc_count; 00065 extern struct st_irem *sf_malloc_root; 00066 00067 extern struct st_my_file_info my_file_info_default[MY_NFILE]; 00068 00069 #if defined(THREAD) && !defined(__WIN__) 00070 extern sigset_t my_signals; /* signals blocked by mf_brkhant */ 00071 #endif 00072 C_MODE_END