summaryrefslogtreecommitdiff
path: root/plugin
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-18578 build aws sdk for all plugins to useVladislav Vaintroub2019-02-181-172/+10
|
* Merge 10.3 into 10.4Marko Mäkelä2019-02-112-2/+2
|\
| * Changed user_variables and sql_sequence to maturity state stableMonty2019-02-062-2/+2
| |
* | MDEV-11340 Allow multiple alternative authentication methods for the same userSergei Golubchik2019-02-042-0/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | introduce the syntax ... IDENTIFIED { WITH | VIA } plugin [ { USING | AS } auth ] [ OR plugin [ { USING | AS } auth ] [ OR ... ]] Server will try auth plugins in the specified order until the first success. No protocol changes, server uses the existing "switch plugin" packet. The auth chain is stored in json as "auth_or":[{"plugin":"xxx","authentication_string":"yyy"}, {}, {"plugin":"foo","authentication_string":"bar"}, ...], "plugin":"aaa", "authentication_string":"bbb" Note: * "auth_or" implies that there might be "auth_and" someday; * one entry in the array is an empty object, meaning to take plugin/auth from the main json object. This preserves compatibility with the existing mysql.global_priv table and with the mysql.user view. This entry is preferrably a mysql_native_password plugin for a non-empty mysql.user.password column. SET PASSWORD is supported and changes the password for the *first* plugin in the chain that has a notion of a "password"
* | upgrade C/C to 3.1Sergei Golubchik2019-02-041-2/+2
| |
* | ed25519: better error message for an incorrect password hashSergei Golubchik2019-02-041-1/+8
| |
* | MDEV-17950 SHOW GRANTS FOR does not work for a user identified with ↵Sergei Golubchik2019-02-046-46/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | non-existing plugin Revert the side effect of 7c40996cc866. Do not convert password hash to its binary representation when a user entry is loaded. Do it lazily on the first authenticatation attempt. As a collateral - force all authentication plugins to follow the protocol and read_packet at least once before accessing info->username (username is not available before first client handshake packet is read). Fix PAM and GSSAPI plugins to behave.
* | cleanup: use only one callback in PAM plugin, not twoSergei Golubchik2019-02-043-24/+10
| |
* | MDEV-18400 - Move shutdown handling to main threadSergey Vojtovich2019-01-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signal handler is now respoinsible for setting abort_loop and breaking poll() in main thread. The rest is handled by main thread itself. Removed redundant LOCK_error_log init/destroy wrappers. Removed redundant unireg_end(): it is trivial and it has only one caller. Removed unused ready_to_exit from PFS. Removed kill_in_progress: duplicates abort_loop. Removed shutdown_in_progress: duplicates abort_loop. Removed ready_to_exit: was used to make sure main thread waits for cleanups, which are now done by main thread itself. Removed SIGNALS_DONT_BREAK_READ, MAYBE_BROKEN_SYSCALL, kill_broken_server: never defined/used. Make clean_up() static.
* | Move THD list handling to THD_listSergey Vojtovich2019-01-282-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implemented and integrated THD_list as a replacement for the global thread list. It uses own mutex instead of LOCK_thread_count for THD list protection. Removed unused first_global_thread() and next_global_thread(). delayed_insert_threads is now protected by LOCK_delayed_insert. Although this patch doesn't fix very wrong synchronization of this variable. After this patch there are only 2 legitimate uses of LOCK_thread_count left, both in mysqld.cc: thread_count and ready_to_exit. Aim is to reduce usage of LOCK_thread_count and COND_thread_count. Part of MDEV-15135.
* | Galera4Brave Galera Crew2019-01-234-66/+42
| |
* | time_collector transition to std::atomicSergey Vojtovich2018-12-291-23/+16
| |
* | Combine GLOBAL and COMMIT namespaces into BACKUP namespace.Sergey Vojtovich2018-12-092-25/+7
| | | | | | | | | | | | | | Part of MDEV-5336 Implement LOCK FOR BACKUP Other things: - Added printing of MDL locks to DBUG.
* | Merge 10.3 into 10.4Marko Mäkelä2018-11-064-4/+10
|\ \ | |/
| * Merge 10.2 into 10.3Marko Mäkelä2018-11-064-4/+10
| |\ | | | | | | | | | | | | | | | | | | | | | | | | main.derived_cond_pushdown: Move all 10.3 tests to the end, trim trailing white space, and add an "End of 10.3 tests" marker. Add --sorted_result to tests where the ordering is not deterministic. main.win_percentile: Add --sorted_result to tests where the ordering is no longer deterministic.
| | * Merge 10.1 into 10.2Marko Mäkelä2018-11-062-3/+9
| | |\
| | | * auth_gssapi : Fix string formatting in my_printf_error()Vladislav Vaintroub2018-10-161-1/+1
| | | |
| | | * remove MYF flags from pluginVladislav Vaintroub2018-10-161-2/+2
| | | |
| | | * Fix regular expression in replace_regex in auth_gssapi test.Vladislav Vaintroub2018-10-151-1/+1
| | | |
| | | * make auth_gssapi_basic work, also in domain environment.Vladislav Vaintroub2018-10-153-1/+4
| | | |
| | | * MDEV-17462 Heap corruption with auth_gssapi on Windows.Vladislav Vaintroub2018-10-151-1/+6
| | | | | | | | | | | | | | | | | | | | use FreeContextAttributes() on individual members of SecPkgContext_NativeNames, not on the struct itself.
| | * | MDEV-14267: correct FSF addressDaniel Black2018-10-302-2/+2
| | | |
* | | | MDEV-12321 authentication plugin: SET PASSWORD supportSergei Golubchik2018-10-317-22/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support SET PASSWORD for authentication plugins. Authentication plugin API is extended with two optional methods: * hash_password() is used to compute a password hash (or digest) from the plain-text password. This digest will be stored in mysql.user table * preprocess_hash() is used to convert this digest into some memory representation that can be later used to authenticate a user. Build-in plugins convert the hash from hexadecimal or base64 to binary, to avoid doing it on every authentication attempt. Note a change in behavior: when loading privileges (on startup or on FLUSH PRIVILEGES) an account with an unknown plugin was loaded with a warning (e.g. "Plugin 'foo' is not loaded"). But such an account could not be used for authentication until the plugin is installed. Now an account like that will not be loaded at all (with a warning, still). Indeed, without plugin's preprocess_hash() method the server cannot know how to load an account. Thus, if a new authentication plugin is installed run-time, one might need FLUSH PRIVILEGES to activate all existing accounts that were using this new plugin.
* | | | cleanup: add 'const' to password validation APISergei Golubchik2018-10-312-3/+4
| | | |
* | | | Merge 10.3 into 10.4Marko Mäkelä2018-10-101-13/+16
|\ \ \ \ | |/ / /
| * | | Merge 10.2 into 10.3Marko Mäkelä2018-10-091-13/+16
| |\ \ \ | | |/ /
| | * | AWS KMS plugin : more detailed message when API calls fail.Vladislav Vaintroub2018-10-031-13/+16
| | | | | | | | | | | | | | | | Output API function name, exception name, exception text
* | | | MDEV-17279 Windows : link C runtime dynamicallyVladislav Vaintroub2018-10-091-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed the build to use /MD flag so that DDL version of C runtime is used. To make sure MariaDB is always runnable on target system, include redistributable CRT libraries into installer. For MSI package, use Microsoft's merge modules. For ZIP use "applocal" approach,i.e place redistributable dlls into the bin directory of the package(via InstallRequiredSystemLibraries cmake module) The space overhead of libraries in negligible, ~ 3MB unpacked. There are 2 cases, where we still link C runtime statically - Upgrade wizard, it uses MFC, and we link statically to avoid redistribute also whole MFC (for this single application, does not make much sense). - MSI installer's custom action dll wixca.dll.Here, we need static link so that MSI won't fail on a target system that does not have VC++2015 runtime already installed.
* | | | Merge 10.3 into 10.4Marko Mäkelä2018-09-112-3/+5
|\ \ \ \ | |/ / /
| * | | Merge 10.2 into 10.3Marko Mäkelä2018-09-062-3/+5
| |\ \ \ | | |/ /
| | * | Merge 10.1 into 10.2Marko Mäkelä2018-08-312-3/+5
| | |\ \ | | | |/
| | | * MDEV-16665 ed25519 describes itself as 1.0-alpha even though it's not alpha.Alexey Botchkov2018-08-301-1/+1
| | | | | | | | | | | | | | | | Plugin version name fixed.
| | | * MDEV-17095 pam_user_map module throws syntax error if group name contains ↵Alexey Botchkov2018-08-301-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | backslash. Let '\\' and '/' symbols to be part of a group name.
* | | | Merge 10.3 into 10.4Marko Mäkelä2018-08-161-8/+1
|\ \ \ \ | |/ / /
| * | | compiler warningsSergei Golubchik2018-08-121-1/+1
| | | |
| * | | remove obsolete checks for -fno-implicit-templatesSergei Golubchik2018-08-121-8/+1
| | | | | | | | | | | | | | | | we stopped using -fno-implicit-templates many years ago
* | | | MDEV-15473 Isolate/sandbox PAM modules, so that they can't crash the server.Alexey Botchkov2018-07-141-1/+6
| | | | | | | | | | | | | | | | mysql_install_db.sh script fixed.
* | | | Fix of feedback plugin.Oleksandr Byelkin2018-07-061-1/+2
| | | | | | | | | | | | | | | | Assign "SELECT" to the table before it usage.
* | | | MDEV-15473 Isolate/sandbox PAM modules, so that they can't crash the server.Alexey Botchkov2018-07-038-154/+651
| | | | | | | | | | | | | | | | | | | | | | | | New version of PAM plugin (v2.0) added along with the old v1.0. There the pam module is isolated in the auth_pam_tool application so cannot crash the server.
* | | | Merge remote-tracking branch 'origin/10.3' into 10.4Alexander Barkov2018-07-032-6/+6
|\ \ \ \ | |/ / /
| * | | Merge branch '10.2' into 10.3Sergei Golubchik2018-06-302-6/+6
| |\ \ \ | | |/ /
| | * | Merge branch '10.1' into 10.2Sergei Golubchik2018-06-281-1/+1
| | |\ \ | | | |/
| | | * mark ed25519 stableSergei Golubchik2018-06-281-1/+1
| | | |
| | * | don't use my_error(0) or my_printf_error(0)Sergei Golubchik2018-06-211-5/+5
| | | | | | | | | | | | | | | | there's an assert that catches it
* | | | mysys: ME_ERROR_LOG_ONLY flagSergei Golubchik2018-06-041-11/+11
| | | |
* | | | mysys: rename ME_xxx flags to match plugin apiSergei Golubchik2018-06-042-9/+9
|/ / /
* | | Merge 10.2 into 10.3Marko Mäkelä2018-05-121-4/+25
|\ \ \ | |/ /
| * | Merge 10.1 into 10.2Marko Mäkelä2018-05-111-4/+25
| |\ \ | | |/
| | * MDEV-15480 Audit plugin does not respect QUERY_DML for audit plugin.Alexey Botchkov2018-05-101-4/+25
| | | | | | | | | | | | QUERY_DML_NO_SELECT flag added.
* | | MDEV-15893 Rename VTQ to TRTEugene Kosov2018-05-121-29/+29
| | |