diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-13 12:24:36 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-13 12:24:36 +0000 |
commit | 06eaf7232e9a920468c0f8d74dcf2fe8b555501c (patch) | |
tree | e2c7b5777f728320e5b5542b6213fd3591ba51e2 /storage/maria/ma_check_standalone.h | |
parent | Initial commit. (diff) | |
download | mariadb-06eaf7232e9a920468c0f8d74dcf2fe8b555501c.tar.xz mariadb-06eaf7232e9a920468c0f8d74dcf2fe8b555501c.zip |
Adding upstream version 1:10.11.6.upstream/1%10.11.6
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'storage/maria/ma_check_standalone.h')
-rw-r--r-- | storage/maria/ma_check_standalone.h | 163 |
1 files changed, 163 insertions, 0 deletions
diff --git a/storage/maria/ma_check_standalone.h b/storage/maria/ma_check_standalone.h new file mode 100644 index 00000000..9442800a --- /dev/null +++ b/storage/maria/ma_check_standalone.h @@ -0,0 +1,163 @@ +/* Copyright (C) 2007 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; version 2 of the License. + + 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */ + +#include <my_check_opt.h> + +/* almost every standalone maria program will need it */ +void _mi_report_crashed(void *file __attribute__((unused)), + const char *message __attribute__((unused)), + const char *sfile __attribute__((unused)), + uint sline __attribute__((unused))) +{ +} + +static unsigned int no_key(unsigned int not_used __attribute__((unused))) +{ + return ENCRYPTION_KEY_VERSION_INVALID; +} + +struct encryption_service_st encryption_handler= +{ + no_key, 0, 0, 0, 0, 0, 0 +}; + +int encryption_scheme_encrypt(const unsigned char* src __attribute__((unused)), + unsigned int slen __attribute__((unused)), + unsigned char* dst __attribute__((unused)), + unsigned int* dlen __attribute__((unused)), + struct st_encryption_scheme *scheme __attribute__((unused)), + unsigned int key_version __attribute__((unused)), + unsigned int i32_1 __attribute__((unused)), + unsigned int i32_2 __attribute__((unused)), + unsigned long long i64 __attribute__((unused))) +{ + return -1; +} + + +int encryption_scheme_decrypt(const unsigned char* src __attribute__((unused)), + unsigned int slen __attribute__((unused)), + unsigned char* dst __attribute__((unused)), + unsigned int* dlen __attribute__((unused)), + struct st_encryption_scheme *scheme __attribute__((unused)), + unsigned int key_version __attribute__((unused)), + unsigned int i32_1 __attribute__((unused)), + unsigned int i32_2 __attribute__((unused)), + unsigned long long i64 __attribute__((unused))) +{ + return -1; +} + +/* only those that included myisamchk.h may need and can use the below */ +#ifdef _myisamchk_h +/* + All standalone programs which need to use functions from ma_check.c + (like maria_repair()) must define their version of _ma_killed_ptr() + and _ma_check_print_info|warning|error(). Indeed, linking with ma_check.o + brings in the dependencies of ma_check.o which are definitions of the above + functions; if the program does not define them then the ones of + ha_maria.o are used i.e. ha_maria.o is linked into the program, and this + brings dependencies of ha_maria.o on mysqld.o into the program's linking + which thus fails, as the program is not linked with mysqld.o. + This file contains the versions of these functions used by maria_chk and + maria_read_log. +*/ + +/* + Check if check/repair operation was killed by a signal +*/ + +int _ma_killed_ptr(HA_CHECK *param __attribute__((unused))) +{ + return 0; +} + + +void _ma_report_progress(HA_CHECK *param __attribute__((unused)), + ulonglong progress __attribute__((unused)), + ulonglong max_progress __attribute__((unused))) +{ +} + + /* print warnings and errors */ + /* VARARGS */ + +void _ma_check_print_info(HA_CHECK *param __attribute__((unused)), + const char *fmt,...) +{ + va_list args; + DBUG_ENTER("_ma_check_print_info"); + DBUG_PRINT("enter", ("format: %s", fmt)); + + va_start(args,fmt); + vfprintf(stdout, fmt, args); + fputc('\n',stdout); + va_end(args); + DBUG_VOID_RETURN; +} + +/* VARARGS */ + +void _ma_check_print_warning(HA_CHECK *param, const char *fmt,...) +{ + va_list args; + DBUG_ENTER("_ma_check_print_warning"); + DBUG_PRINT("enter", ("format: %s", fmt)); + + fflush(stdout); + if (!param->warning_printed && !param->error_printed) + { + if (param->testflag & T_SILENT) + fprintf(stderr,"%s: Aria file %s\n",my_progname_short, + param->isam_file_name); + param->out_flag|= O_DATA_LOST; + } + param->warning_printed++; + va_start(args,fmt); + fprintf(stderr,"%s: warning: ",my_progname_short); + vfprintf(stderr, fmt, args); + fputc('\n',stderr); + fflush(stderr); + va_end(args); + DBUG_VOID_RETURN; +} + +/* VARARGS */ + +void _ma_check_print_error(HA_CHECK *param, const char *fmt,...) +{ + va_list args; + DBUG_ENTER("_ma_check_print_error"); + DBUG_PRINT("enter", ("format: %s", fmt)); + + fflush(stdout); + if (!param->warning_printed && !param->error_printed) + { + if (param->testflag & T_SILENT) + fprintf(stderr,"%s: Aria file %s\n",my_progname_short,param->isam_file_name); + param->out_flag|= O_DATA_LOST; + } + param->error_printed++; + va_start(args,fmt); + fprintf(stderr,"%s: error: ",my_progname_short); + vfprintf(stderr, fmt, args); + fputc('\n',stderr); + fflush(stderr); + va_end(args); + DBUG_VOID_RETURN; +} + +#endif + |