Skip to content

Commit f8997c6

Browse files
committed
Merge branch '10.9' into 10.10
2 parents 49a22c5 + acf8dc0 commit f8997c6

File tree

89 files changed

+4195
-1064
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

89 files changed

+4195
-1064
lines changed

cmake/abi_check.cmake

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ IF(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang" AND RUN_ABI_CHECK)
3838
SET(API_PREPROCESSOR_HEADER
3939
${CMAKE_SOURCE_DIR}/include/mysql/plugin_audit.h
4040
${CMAKE_SOURCE_DIR}/include/mysql/plugin_ftparser.h
41-
${CMAKE_SOURCE_DIR}/include/mysql.h
4241
${CMAKE_SOURCE_DIR}/include/mysql/psi/psi_abi_v1.h
4342
${CMAKE_SOURCE_DIR}/include/mysql/psi/psi_abi_v2.h
4443
${CMAKE_SOURCE_DIR}/include/mysql/client_plugin.h

include/mariadb_capi_rename.h

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
/* Copyright (c) 2022, MariaDB
2+
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; version 2 of the License.
6+
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+
12+
You should have received a copy of the GNU General Public License
13+
along with this program; if not, write to the Free Software
14+
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
15+
16+
/* Renaming C API symbols inside server
17+
* client.c defines a number of functions from the C API, that are used in replication, in number of storage engine plugins, mariadb-backup.
18+
* That can cause a problem if a plugin loads libmariadb/libmysql or a library, that has dependency on them. The known case is ODBC driver.
19+
* Thus the header re-names those functions for internal use.
20+
*/
21+
22+
#ifndef MARIADB_CAPI_RENAME_INCLUDED
23+
#define MARIADB_CAPI_RENAME_INCLUDED
24+
25+
#if !defined(EMBEDDED_LIBRARY) && !defined(MYSQL_DYNAMIC_PLUGIN)
26+
27+
#define MARIADB_ADD_PREFIX(_SYMBOL) server_##_SYMBOL
28+
#define mysql_real_connect MARIADB_ADD_PREFIX(mysql_real_connect)
29+
#define mysql_init MARIADB_ADD_PREFIX(mysql_init)
30+
#define mysql_close MARIADB_ADD_PREFIX(mysql_close)
31+
#define mysql_options MARIADB_ADD_PREFIX(mysql_options)
32+
#define mysql_load_plugin MARIADB_ADD_PREFIX(mysql_load_plugin)
33+
#define mysql_load_plugin_v MARIADB_ADD_PREFIX(mysql_load_plugin_v)
34+
#define mysql_client_find_plugin MARIADB_ADD_PREFIX(mysql_client_find_plugin)
35+
#define mysql_real_query MARIADB_ADD_PREFIX(mysql_real_query)
36+
#define mysql_send_query MARIADB_ADD_PREFIX(mysql_send_query)
37+
#define mysql_free_result MARIADB_ADD_PREFIX(mysql_free_result)
38+
#define mysql_get_socket MARIADB_ADD_PREFIX(mysql_get_socket)
39+
#define mysql_set_character_set MARIADB_ADD_PREFIX(mysql_set_character_set)
40+
#define mysql_get_server_version MARIADB_ADD_PREFIX(mysql_get_server_version)
41+
#define mysql_error MARIADB_ADD_PREFIX(mysql_error)
42+
#define mysql_errno MARIADB_ADD_PREFIX(mysql_errno)
43+
#define mysql_num_fields MARIADB_ADD_PREFIX(mysql_num_fields)
44+
#define mysql_num_rows MARIADB_ADD_PREFIX(mysql_num_rows)
45+
#define mysql_options4 MARIADB_ADD_PREFIX(mysql_options4)
46+
#define mysql_fetch_lengths MARIADB_ADD_PREFIX(mysql_fetch_lengths)
47+
#define mysql_fetch_row MARIADB_ADD_PREFIX(mysql_fetch_row)
48+
#define mysql_affected_rows MARIADB_ADD_PREFIX(mysql_affected_rows)
49+
#define mysql_store_result MARIADB_ADD_PREFIX(mysql_store_result)
50+
#define mysql_select_db MARIADB_ADD_PREFIX(mysql_select_db)
51+
#define mysql_get_ssl_cipher MARIADB_ADD_PREFIX(mysql_get_ssl_cipher)
52+
#define mysql_ssl_set MARIADB_ADD_PREFIX(mysql_ssl_set)
53+
#define mysql_client_register_plugin MARIADB_ADD_PREFIX(mysql_client_register_plugin)
54+
55+
#endif // !EMBEDDED_LIBRARY && !MYSQL_DYNAMIC_PLUGIN
56+
57+
#endif // !MARIADB_CAPI_RENAME_INCLUDED

include/mysql.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ typedef int my_socket;
6363
#endif /* my_socket_defined */
6464
#endif /* MY_GLOBAL_INCLUDED */
6565

66+
#include "mariadb_capi_rename.h"
6667
#include "mysql_version.h"
6768
#include "mysql_com.h"
6869
#include "mysql_time.h"

0 commit comments

Comments
 (0)