my_manage.h
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:4k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. /*
  2.   Copyright (c) 2002 Novell, Inc. All Rights Reserved. 
  3.   This program is free software; you can redistribute it and/or modify 
  4.   it under the terms of the GNU General Public License as published by 
  5.   the Free Software Foundation; either version 2 of the License, or 
  6.   (at your option) any later version. 
  7.   This program is distributed in the hope that it will be useful, 
  8.   but WITHOUT ANY WARRANTY; without even the implied warranty of 
  9.   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 
  10.   GNU General Public License for more details. 
  11.   You should have received a copy of the GNU General Public License 
  12.   along with this program; if not, write to the Free Software 
  13.   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  14. */ 
  15. #ifndef _MY_MANAGE
  16. #define _MY_MANAGE
  17. /******************************************************************************
  18.         includes
  19.         
  20. ******************************************************************************/
  21. #include <stdlib.h>
  22. #ifndef __WIN__
  23. #include <unistd.h>
  24. #endif
  25. #ifndef __NETWARE__
  26. #include <string.h>
  27. #include <my_global.h>
  28. #include <m_string.h>
  29. #ifndef __WIN__
  30. #define strnicmp strncasecmp
  31. #define strlwr(STRARG) (STRARG)
  32. #else
  33. int my_vsnprintf_(char *to, size_t n, const char* value, ...);
  34. #endif
  35. #endif
  36. /******************************************************************************
  37.         macros
  38.         
  39. ******************************************************************************/
  40. #define ARG_BUF                 10
  41. #define TRY_MAX                 5
  42. #ifdef __WIN__
  43. #define PATH_MAX _MAX_PATH
  44. #define NAME_MAX _MAX_FNAME
  45. #define kill(A,B) TerminateProcess((HANDLE)A,0)
  46. #define NOT_NEED_PID 0
  47. #define MASTER_PID   1
  48. #define SLAVE_PID    2
  49. #define mysqld_timeout 60000
  50. int pid_mode;
  51. bool run_server;
  52. bool skip_first_param;
  53. #define snprintf _snprintf
  54. #define vsnprintf _vsnprintf
  55. #endif
  56. /******************************************************************************
  57.         structures
  58.         
  59. ******************************************************************************/
  60. typedef struct
  61. {
  62.   
  63.   int argc;
  64.   char **argv;
  65.   size_t size;
  66. } arg_list_t;
  67. #ifdef __WIN__
  68. typedef int pid_t;
  69. #endif
  70. /******************************************************************************
  71.         global variables
  72.         
  73. ******************************************************************************/
  74. /******************************************************************************
  75.         prototypes
  76.         
  77. ******************************************************************************/
  78. void init_args(arg_list_t *);
  79. void add_arg(arg_list_t *, const char *, ...);
  80. void free_args(arg_list_t *);
  81. #ifndef __WIN__
  82. int sleep_until_file_exists(char *);
  83. int sleep_until_file_deleted(char *);
  84. #else
  85. int sleep_until_file_exists(HANDLE);
  86. int sleep_until_file_deleted(HANDLE);
  87. #endif
  88. int wait_for_server_start(char *, char *, char *, char *, int,char *);
  89. #ifndef __WIN__
  90. int spawn(char *, arg_list_t *, int, char *, char *, char *, char *);
  91. #else
  92. int spawn(char *, arg_list_t *, int , char *, char *, char *, HANDLE *);
  93. #endif
  94. #ifndef __WIN__
  95. int stop_server(char *, char *, char *, char *, int, char *,char *);
  96. pid_t get_server_pid(char *);
  97. void kill_server(pid_t pid);
  98. #else
  99. int stop_server(char *, char *, char *, char *, int, HANDLE,char *);
  100. #endif
  101. void del_tree(char *);
  102. int removef(const char *, ...);
  103. void get_basedir(char *, char *);
  104. void remove_empty_file(const char *file_name);
  105. bool create_system_files(const char *mdata,const char *output_file, bool test);
  106. #endif /* _MY_MANAGE */