/* Copyright (C) 2000 MySQL AB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /* Static variables for mysys library. All definied here for easy making of a shared library */ #include "mysys_priv.h" #include #define MAX_SIGNALS 10 /* Max signals under a dont-allow */ #define MIN_KEYBLOCK (min(IO_SIZE,1024)) #define MAX_KEYBLOCK 8192 /* Max keyblocklength == 8*IO_SIZE */ #define MAX_BLOCK_TYPES MAX_KEYBLOCK/MIN_KEYBLOCK struct st_remember { int number; sig_handler (*func)(int number); }; struct irem { struct remember *_pNext; /* Linked list of structures */ struct remember *_pPrev; /* Other link */ my_string _sFileName; /* File in which memory was new'ed */ uint _uLineNum; /* Line number in above file */ uint _uDataSize; /* Size requested */ #ifdef THREAD pthread_t thread_id; #endif long _lSpecialValue; /* Underrun marker value */ }; struct remember { struct irem tInt; char aData[1]; }; extern char NEAR curr_dir[FN_REFLEN],NEAR home_dir_buff[FN_REFLEN]; extern volatile int _my_signals; extern struct st_remember _my_sig_remember[MAX_SIGNALS]; extern const char *soundex_map; extern USED_MEM* my_once_root_block; extern uint my_once_extra; #ifdef THREAD /* These threads are exempt from safemalloc leak scrutiny unless PEDANTIC_SAFEMALLOC is defined */ extern pthread_t signal_th, kill_th, main_th; #endif #ifndef HAVE_TEMPNAM extern int _my_tempnam_used; #endif extern byte *sf_min_adress,*sf_max_adress; extern uint cNewCount; extern struct remember *pRememberRoot; #if defined(THREAD) && !defined(__WIN__) extern sigset_t my_signals; /* signals blocked by mf_brkhant */ #endif