1
0
mirror of https://github.com/mariadb-corporation/mariadb-connector-c.git synced 2025-08-07 02:42:49 +03:00
Commit Graph

33 Commits

Author SHA1 Message Date
Sergei Golubchik
f6e99af056 Revert "self-signed certificate verification", it's 3.4 feature
This reverts 395641549ac7..536d9e2b9e5b, in particular:

8dffd56936 MDEV-31857 enable MYSQL_OPT_SSL_VERIFY_SERVER_CERT by default
a99570c118 MDEV-31855 SSL cert validation protocol extension
9aa15e72a7 TLS fingerprint

and related commits
2024-02-19 11:16:26 +01:00
Sergei Golubchik
a99570c118 MDEV-31855 SSL cert validation protocol extension
* extend the client auth plugin API with a new callback
* relax the plugin version check to allow load a plugin with the
  same major version, even if the minor versions differ
* implement the protocol extension:
  - don't abort at once if the certificate is self signed and
    no CA was explicitly specified
  - allow it if it passes fingerprint check
  - allow it if plugin has hash_password_bin callback, password was
    non-empty and the control hash matches server's
2024-02-04 22:17:25 +01:00
Sergei Golubchik
5c9eab55f0 remove a redundant duplicate of plugin_auth.h 2024-02-04 22:17:25 +01:00
Georg Richter
2ffe9083a7 Windows build fix 2022-01-26 19:41:32 +01:00
Georg Richter
770cf2286a CONC-575: Support for MySQL zstd compression
ZSTD compression is now supported for connections
to a MySQL Server 8.0.

Compression algorithms are supported via compression
plugins, which can be found in plugins/compress.
2022-01-25 05:02:33 +01:00
Georg Richter
1fed6c3184 Build fix:
declared deinit function of plugins as deinit(void) instead
of deinit().
2020-10-21 07:23:50 +02:00
Georg Richter
50d48e91fa Reworked plugin interface
Plugin configuration happens now in CMakeLists.txt files in corresponding plugin directories.

plugins.cmake now contains REGISTER_PLUGIN_FUNCTION which accepts the following parameters:
  - TARGET: the name of the plugin (dynamic plugins will be named ${TARGET}.so (or .dll)
  - SOURCES: source files
  - LIBRARIES: additional libraries for linking
  - INCLUDES: include directories
  - CONFIGURATIONS: possible plugin configurations: valid arguments are DYNAMIC, STATIC, OFF
  - DEFAULT: default configuration (see CONFIGURATIONS)
  - COMPILE_OPTIONS: compiler flags

The default plugin configuration can be specified via cmake parameter -DCLIENT_PLUGIN_${TARGET}=[DYNAMIC|STATIC|OFF]
2018-04-07 07:14:43 +02:00
Vladislav Vaintroub
aed8005e2e Fix clang on Windows warnings
- STDCALL is ignored for variable argument functions.
- __attribute__ does work for Clang (also if that pretends to be MSVC)
- remove unused function
- simplify ma_getopt, fixes some strange compile error in clang (about
SSE intrinsics)

- fix some clang warnings
2018-02-09 19:10:50 +01:00
Georg Richter
b10c4f9e7b Fix for CONC-231: Incorrect FSF address 2017-02-05 11:35:11 +01:00
Georg Richter
87e861c360 client side implemetation for MDEV-10340:
int STDCALL mysql_reset_connection(MYSQL *mysql)
2016-12-29 19:10:35 +01:00
Georg Richter
dd9ebcf56a - Fixed license header
- More OpenSSL 1.1 fixes
2016-08-05 07:39:10 +02:00
Georg Richter
8620b754ea Added missing error messages for wrong protocol
moved connection handler into net->extension (ABI break)
2016-02-23 13:50:14 +01:00
Georg Richter
d68b48f954 10.2 integration fixes
- changed plugin API to avoid crashes: Oracle/MariaDB changed
    structure several times without updating interface version.
  - ABI fixes: moved additional net items to net->extension (connection
    handler and com_multi buffer)
2016-02-22 11:37:13 +01:00
Georg Richter
542a6f7388 10.2-integration:
Avoid redefinition of plugin structure (mysql_client_test)
2016-02-18 11:24:07 +01:00
Georg Richter
409d673291 10.2 - integration fixes
- enable data truncation reporting for ps by default
- added plugin protoype definitions to mysql.h10.2 - integration fixes
2016-02-18 10:45:26 +01:00
Georg Richter
97a6aeafff - Fixed build errors for remote_io plugin
- Bumped client version number to 10.1.7
2016-01-03 17:29:44 +01:00
Georg Richter
bec245a913 Initial aurora implementation 2015-12-10 12:52:51 +01:00
Georg Richter
7500f37150 - Renamed cio to pvio (pluggable virtual IO)
- minor fixes in windows schannel
2015-10-27 10:24:48 +01:00
Georg Richter
13c79e2263 Added type information for plugin tool 2015-10-18 13:06:41 +02:00
Georg Richter
74e62c2892 Merge remote-tracking branch 'origin/master' into cio
Conflicts:
	CMakeLists.txt
	include/mysql/client_plugin.h
	libmariadb/client_plugin.c.in
	libmariadb/libmariadb.c
	libmariadb/ma_secure.c
	libmariadb/my_malloc.c
	libmariadb/net.c
	plugins/io/CMakeLists.txt
	unittest/libmariadb/misc.c
2015-10-02 12:28:54 +02:00
Georg Richter
05659c872e More plugin configuration changes (last commit was incomplete) 2015-10-02 10:09:41 +02:00
Georg Richter
0bc7dc5e3c Added build option WITH_REMOTEIO (default=off) 2015-09-19 13:02:30 +02:00
Georg Richter
f2955a4b39 more fixes 2015-08-10 12:09:14 +02:00
Georg Richter
f886562fb2 Initial cio implementation 2015-08-06 13:06:54 +02:00
Georg Richter
95724c85a5 Added support for remote files via plugin.
This will allow to read and import data from remote locations, e.g.
LOAD DATA LOCAL INFILE 'htp://www.example.com' or
mysql_options(mysql, MYSQL_READ_DEFAULT_FILE, "http://localhost/test.cnf");
The implementation uses libcurl. For a list of supported URL types
see http://curl.haxx.se/libcurl/
2015-03-18 19:52:51 +01:00
Georg Richter
cd16280a3f - mysql_load_plugin_v supports now the environment variable MARIADB_PLUGIN_DIR
to load plugins from a different destination than PLUGINDIR.

- added dialog plugin for authentication (e.g. PAM). If an application provides
  it's own dialog function, the name must be mariadb_auth_dialog (or for libmysql
  compatibility mysql_authentication_dialog_ask).
  Windows-Todo: 
  1. provide a simple GUI dialog on windows, in case opening the console failed.
  2. convert data from console code page to character set of current connection
2014-12-11 09:47:49 +01:00
Georg Richter
69c400caaf Fix for CONC-114: Windows version of libmariadb doesn't export all symbols 2014-11-13 13:54:45 +01:00
holzboote@googlemail.com
725425a9c4 Fixes for Win64 build 2013-10-10 15:14:15 +02:00
Georg Richter
88cbaa97bb Fix for CONC-15
Removed redundant prototypes
  Fixed several prototypes with void parameters
2013-03-17 12:32:08 +01:00
Georg Richter
84aea9721c Added support for embedded (sqlite) 2013-01-30 08:37:24 +01:00
Georg Richter
4042f22bdb some clean up 2012-12-16 12:05:40 +01:00
Georg Richter
44a2b3ccc5 Fixed crash when trying to call mysql_close twice
Fixed mysql_config
Header changes
2012-11-27 09:57:10 +01:00
Georg Richter
dd3d0d6f52 First implementation based on libmysql 3.23.58 and php's mysqlnd extension 2012-11-14 18:43:45 +01:00