d5ec357731
Fix binlogrouter SSL creation
...
The SSLContext could get invalid parameters as the router unconditionally
added all the parameters.
2019-05-24 15:33:17 +03:00
3af66f3309
MXS-2483: Take SSLProvider into use
...
Servers and listeners now have a SSLProvider member variable that is used
for all SSL related tasks.
2019-05-24 15:33:17 +03:00
8a4b58d52c
MXS-2483: Move SSL configuration into SSLConfig
...
This way the configuration information can be accessed without the
SSLContext.
2019-05-24 15:33:17 +03:00
bed28db3fd
Merge branch '2.3' into develop
2019-05-24 13:55:47 +03:00
a1697e2aa6
MXS-2479 PAMBackendAuth is more tolerant of extra messages.
...
The authenticator can now receive additional questions from the server even
after the original password-query.
2019-05-24 11:31:55 +03:00
5b55864b06
MXS-2483: Store listener SSLContext in unique_ptr
...
Also removed some unnecessary checks for session->listener: The Session
constructor takes the listener as an argument.
2019-05-24 10:05:43 +03:00
bc500d2565
MXS-2483: Store server SSLContext in unique_ptr
2019-05-24 10:05:42 +03:00
3b8e28392e
MXS-2483: Make server SSL private
...
The old server_ssl member is now renamed and private. The ssl_context and
set_ssl_context methods provide access to it.
2019-05-24 10:05:42 +03:00
7eff7f8e9e
Remove unused function in mysql_common.cc
2019-05-24 10:05:15 +03:00
397fc97d07
Only count actual failures as auth failures
...
If the authentication process fails due to an inability to start a
session, it should not be counted towards the number of failed
authentication attempts.
2019-05-24 10:05:15 +03:00
bd8aa64547
MXS-2479 Accept additional messages in PAM authenticator
...
Plugins may send additional messages during authentication. These messages
often contain notifications such as password expiration dates. Both the client
and backend side authenticators now handle such messages. The messages are not
sent to the user, only the log. The requirement that only "Password: " is queried
still stands.
2019-05-23 14:14:25 +03:00
f8688a7285
Merge branch '2.3' into develop
2019-05-22 15:57:46 +03:00
17fa1ce616
Fix galeramon regression
...
The comparisons were done wrong: strcasecmp returns 0 for equal strings.
2019-05-22 10:02:48 +03:00
e545e2ac5c
Merge branch '2.3' into develop
2019-05-22 10:02:27 +03:00
8317fec745
MXS-2496: Check for ALL PRIVILEGES grant
...
If a user has ALL PRIVILEGES as a global privilege, it overshadows the
SHOW DATABASES grant.
2019-05-22 09:56:35 +03:00
7893c120a9
MXS-2477 Change schemarouter ignore_databases parameters to ignore_tables
...
With the table level sharding parameter is used to ignore tables not
databases.
2019-05-21 13:48:17 +03:00
b294acf276
MXS-2496: Fix SHOW DATABASES grant check
...
The code expected that the grant was given to the actual user, not a role.
2019-05-21 13:43:51 +03:00
0c19d1ea03
Fix debug assertion in mysql_backend
...
The backend read function used a NULL GWBUF with gwbuf_length.
2019-05-21 13:15:20 +03:00
d0153f6ce3
clustrixmonitor: Add missing include
2019-05-21 12:50:10 +03:00
cf46004bd8
Make the servers-array in Monitor private
...
This prevents derived classes from modifying the array directly,
which would be unsafe.
2019-05-21 10:58:24 +03:00
76399200f4
Fix assertion on client SSL read
...
When SSL is enabled, the protocol seems to get zero byte reads which
result in a null GWBUF being passed to gwbuf_length.
2019-05-20 15:46:52 +03:00
e5a49a2f7b
MXS-2483: Take SSLContext into use in binlogrouter
2019-05-20 15:45:19 +03:00
82add11e86
MXS-2483: Take SSLContext into use
...
SSLContext is now used everywhere except the binlogrouter which still
allocates the contexts itself. Fixing the binlogrouter's misuse of
internal structures is a rather large undertaking and for this reason the
SSLContext will be taken into use there in a separate commit.
2019-05-20 15:45:18 +03:00
1197bd40db
MXS-2483: Move unwanted SSL code to mysql_client.cc
...
The code was only used by mysql_client.cc and should therefore be located
in it.
2019-05-20 15:45:18 +03:00
cab336ed89
MXS-2483: Rename SSL_LISTENER to mxs::SSLContext
2019-05-20 15:45:18 +03:00
650230455a
MXS-2169 Allow unsafe failover when 'enforce_simple_topology' is on
...
If gtid of master is unknown (as is typical when master is down when MaxScale
starts) the domain id is guessed from the slaves instead. This is usually
safe.
2019-05-20 10:43:54 +03:00
0f714e9ad4
MXS-2495 Cleanup GWBUF interface
...
All GWBUF macros that address a single link in a chain are now
simple wrappers for equivalent gwbuf_link-functions.
Next step is to drop the macros and replace their use with calls
to the functions.
2019-05-20 09:57:37 +03:00
d1affba34d
MXS-2480 Add log message about opened SQLite database
2019-05-20 09:11:58 +03:00
004e8e638f
MXS-2480 Fix creating of the in memory sqlite3 databases in PAMAuth
...
SQLITE_OPEN_URI flag was missing causing the databases to be created in
disk instead of in memory. Also added info level log message from created
database in clustrixmonitor.
2019-05-20 09:11:58 +03:00
5828061321
Merge branch '2.3' into develop
2019-05-17 14:39:30 +03:00
96a477ec89
MXS-2490: Send error to client on unknown PS handle
...
If a client requests an unknown binary protocol prepared statement handle,
a custom error shows the actual ID used instead of the "empty" ID of 0
that the backend sends.
2019-05-17 14:13:44 +03:00
f94355770f
Merge branch '2.2' into 2.3
2019-05-17 14:10:28 +03:00
4ee30f5c52
MXS-2169 Allow a downed server to be selected as topology master
...
This is required for the case when MaxScale is started when the master is
already down.
2019-05-17 13:46:33 +03:00
d2f3e56d0a
MXS-2169 Add 'enforce_simple_topology'-setting
...
Does not add any functionality yet.
2019-05-17 13:46:33 +03:00
c801789ff3
Cleanup monitor running state
2019-05-17 13:34:48 +03:00
08b4c26652
Monitor types and fields cleanup
...
Moves some enums to class enums. Moves some free functions to class methods.
2019-05-17 13:34:48 +03:00
bf63698991
MXS-2464: Bring back the runtime query queue check
...
The code that checked that only non-empty queries are stored in the query
queue was left out when the query queue fix was backported to 2.3. Since
MXS-2464 is caused by a still unknown bug, the runtime check should help
figure out in which cases the problem occurs.
2019-05-17 13:03:03 +03:00
2cd4da32a7
MXS-2494: Fix user loading queries for MariaDB 10.1+
...
The queries now properly check for the plugin.
2019-05-16 10:41:04 +03:00
0ee985758e
Fix test_binlogrouter
...
The MySQL... -> MariaDB.. name change required some modifications.
2019-05-14 15:23:08 +03:00
5b3dbdbf16
Fix test_cacheoptions and test_dbfwfilter
...
Due to listener changes we cannot just keep on creating new
listeners with the same port over and over again.
Easiest to simply use a different port each time.
2019-05-14 15:01:15 +03:00
4ed8726ccf
Fix merge bug
2019-05-14 14:01:16 +03:00
17d3beba3b
MXS-2385 Fix the problem with the USE command and tpmfilter
...
Trying to get the type mask of the QWBUF caused debug assertion in the query
classifier when using some commands. Now type mask is checked only when the
buffer contains MXS_COM_QUERY command.
2019-05-14 13:40:37 +03:00
c09617cd82
Merge branch '2.3' into develop
2019-05-14 12:33:50 +03:00
22a9e20f1f
MXS-1957 Change the default authenticators to MariaDB aliases
...
Using MySQLAuth or MySQLBackendAuth causes warning to be logged.
2019-05-13 15:35:09 +03:00
50fef6f361
MXS-1957 Add MariaDBAuth alias
2019-05-13 15:35:09 +03:00
9810c5fa69
MXS-1957 Add MariaDBBackendAuth alias
2019-05-13 15:35:09 +03:00
476dc80bc9
Move settings shared between MariaDBMonitor and MariaDBServer to container
...
Removes the need to communicate these settings via call parameters.
2019-05-10 14:48:41 +03:00
d10c7a4140
Rearrange MariaDB-Monitor settings variables
...
Moves some of the settings to a dedicated container to separate them
from other fields.
2019-05-10 14:48:41 +03:00
a9b1e3a442
Move some Monitor fields to private and protected
...
None of the fields should be publicly writable and some should not even
be writable from derived classes.
2019-05-10 14:48:41 +03:00
a3bb61486d
Move server_set_status and server_clear_status to monitor
...
The operation goes through monitor code so should be in the according file.
2019-05-10 14:37:35 +03:00