MXS-862: Add client side GSSAPI authenticator

Initial implementation of the client side GSSAPI authenticator. The
current version successfully authenticates clients using the same style as
the MariaDB GSSAPI plugin does. Currently, it is not possible to acutally
use the plugin as the backend server would require the matchig GSSAPI
plugin.

Also added skeleton code for the backend GSSAPI authenticator. It only
implements the required entry points and sends the client auth packet to
the backend.
This commit is contained in:
Markus Makela
2016-10-04 12:31:53 +03:00
parent dfeb5c46c9
commit d87f15b7f6
5 changed files with 557 additions and 0 deletions

View File

@ -0,0 +1,35 @@
/*
* Copyright (c) 2016 MariaDB Corporation Ab
*
* Use of this software is governed by the Business Source License included
* in the LICENSE.TXT file and at www.mariadb.com/bsl.
*
* Change Date: 2019-07-01
*
* On the date above, in accordance with the Business Source License, use
* of this software will be governed by version 2 or later of the General
* Public License.
*/
#include "gssapi_auth.h"
#include <maxscale/alloc.h>
void* gssapi_auth_alloc()
{
gssapi_auth_t* rval = MXS_MALLOC(sizeof(gssapi_auth_t));
if (rval)
{
rval->state = GSSAPI_AUTH_INIT;
}
return rval;
}
void gssapi_auth_free(void *data)
{
if (data)
{
MXS_FREE(data);
}
}