mariadb/storage/spider/spd_udf.h
Daniel Black cb26d41d81 MDEV-35735: UBSAN: spider udf functions mismatch with UDF defination
The mismatch occurs on the function calls as in the sql/sql_udf.h the
types of "error" and "is_null" are unsigned char rather than char.

This is corrected for the udf functions:
* spider_direct_sql
* spider_direct_bg_sql
* spider_flush_table_mon_cache
* spider_copy_tables
* spider_ping_table

Reviewer: Yuchen Pei
2025-01-12 13:40:18 +11:00

79 lines
1.7 KiB
C

/* Copyright (C) 2009-2014 Kentoku Shiba
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 */
long long spider_direct_sql_body(
UDF_INIT *initid,
UDF_ARGS *args,
unsigned char *is_null,
unsigned char *error,
my_bool bg
);
my_bool spider_direct_sql_init_body(
UDF_INIT *initid,
UDF_ARGS *args,
char *message,
my_bool bg
);
void spider_direct_sql_deinit_body(
UDF_INIT *initid
);
#ifndef WITHOUT_SPIDER_BG_SEARCH
void spider_direct_sql_bg_start(
UDF_INIT *initid
);
long long spider_direct_sql_bg_end(
UDF_INIT *initid
);
#endif
long long spider_ping_table_body(
UDF_INIT *initid,
UDF_ARGS *args,
unsigned char *is_null,
unsigned char *error
);
my_bool spider_ping_table_init_body(
UDF_INIT *initid,
UDF_ARGS *args,
char *message
);
void spider_ping_table_deinit_body(
UDF_INIT *initid
);
long long spider_flush_table_mon_cache_body();
long long spider_copy_tables_body(
UDF_INIT *initid,
UDF_ARGS *args,
unsigned char *is_null,
unsigned char *error
);
my_bool spider_copy_tables_init_body(
UDF_INIT *initid,
UDF_ARGS *args,
char *message
);
void spider_copy_tables_deinit_body(
UDF_INIT *initid
);