Rename FILTER_DEF to MXS_FILTER_DEF

Provide functions that allows the actual definition of MXS_FILTER_DEF
to be made private.
This commit is contained in:
Johan Wikman
2017-01-13 14:30:11 +02:00
parent affec5e388
commit 265e5c0593
14 changed files with 101 additions and 241 deletions

View File

@ -91,7 +91,7 @@ bool cache_command_show(const MODULECMD_ARG* pArgs)
DCB* pDcb = pArgs->argv[0].value.dcb;
ss_dassert(pDcb);
const FILTER_DEF* pFilterDef = pArgs->argv[1].value.filter;
const MXS_FILTER_DEF* pFilterDef = pArgs->argv[1].value.filter;
ss_dassert(pFilterDef);
if (strcmp(pFilterDef->module, "cache") == 0)

View File

@ -683,7 +683,7 @@ TIMERANGE* split_reverse_time(TIMERANGE* tr)
bool dbfw_reload_rules(const MODULECMD_ARG *argv)
{
bool rval = true;
FILTER_DEF *filter = argv->argv[0].value.filter;
MXS_FILTER_DEF *filter = argv->argv[0].value.filter;
FW_INSTANCE *inst = (FW_INSTANCE*)filter->filter;
if (modulecmd_arg_is_present(argv, 1))
@ -748,7 +748,7 @@ bool dbfw_reload_rules(const MODULECMD_ARG *argv)
bool dbfw_show_rules(const MODULECMD_ARG *argv)
{
DCB *dcb = argv->argv[0].value.dcb;
FILTER_DEF *filter = argv->argv[1].value.filter;
MXS_FILTER_DEF *filter = argv->argv[1].value.filter;
FW_INSTANCE *inst = (FW_INSTANCE*)filter->filter;
dcb_printf(dcb, "Rule, Type, Times Matched\n");

View File

@ -41,7 +41,7 @@ bool masking_command_reload(const MODULECMD_ARG* pArgs)
DCB* pDcb = pArgs->argv[0].value.dcb;
ss_dassert(pDcb);
const FILTER_DEF* pFilterDef = pArgs->argv[1].value.filter;
const MXS_FILTER_DEF* pFilterDef = pArgs->argv[1].value.filter;
ss_dassert(pFilterDef);
if (strcmp(pFilterDef->module, "masking") == 0)

View File

@ -1,167 +0,0 @@
#include <getopt.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>
#include <mysql.h>
using namespace std;
namespace
{
void print_usage_and_exit(ostream& out, const char* zName)
{
out << "usage: " << zName << "[-h host] [-P port] [-u user] [-p password] -s statement" << endl;
exit(EXIT_FAILURE);
}
int test_prepared(MYSQL* pMysql, const char* zStatement)
{
int rc = EXIT_FAILURE;
MYSQL_STMT* pStmt = mysql_stmt_init(pMysql);
if (pStmt)
{
if (mysql_stmt_prepare(pStmt, zStatement, strlen(zStatement)) == 0)
{
if (mysql_stmt_execute(pStmt) == 0)
{
int nColumns = mysql_stmt_field_count(pStmt);
cout << "Columns: " << nColumns << endl;
typedef char Buffer[256];
Buffer buffers[nColumns];
MYSQL_BIND bind[nColumns];
unsigned long lengths[nColumns];
my_bool nulls[nColumns];
for (int i = 0; i < nColumns; ++i)
{
memset(&bind[i], 0, sizeof(MYSQL_BIND));
bind[i].buffer_type = MYSQL_TYPE_STRING;
bind[i].buffer = buffers[i];
bind[i].buffer_length = 256;
bind[i].length = &lengths[i];
bind[i].is_null = &nulls[i];
}
if (mysql_stmt_bind_result(pStmt, bind) == 0)
{
while (mysql_stmt_fetch(pStmt) == 0)
{
for (int j = 0; j < nColumns; ++j)
{
if (nulls[j])
{
cout << "NULL";
}
else
{
cout.write(buffers[j], lengths[j]);
}
if (j < nColumns - 1)
{
cout << ", ";
}
}
cout << endl;
}
}
else
{
cerr << "error (mysql_stmt_bind_result): " << mysql_stmt_error(pStmt) << endl;
}
}
else
{
cerr << "error (mysql_stmt_execute): " << mysql_stmt_error(pStmt) << endl;
}
}
else
{
cerr << "error (mysql_stmt_prepare): " << mysql_stmt_error(pStmt) << endl;
}
mysql_stmt_close(pStmt);
}
else
{
cerr << "error (mysql_stmt_init): " << mysql_error(pMysql) << endl;
}
return rc;
}
}
int main(int argc, char* argv[])
{
int rc = EXIT_FAILURE;
const char* zHost = "127.0.0.1";
int port = 3306;
const char* zUser = getenv("USER");
const char* zPassword = NULL;
const char* zStatement = NULL;
int opt;
while ((opt = getopt(argc, argv, "h:P:u:p:s:")) != -1)
{
switch (opt)
{
case 'h':
zHost = optarg;
break;
case 'p':
zPassword = optarg;
break;
case 'u':
zUser = optarg;
break;
case 'P':
port = atoi(optarg);
break;
case 's':
zStatement = optarg;
break;
default:
print_usage_and_exit(cerr, argv[0]);
}
}
if (!zStatement)
{
print_usage_and_exit(cerr, argv[0]);
}
MYSQL* pMysql = mysql_init(NULL);
if (pMysql)
{
if (mysql_real_connect(pMysql, zHost, zUser, zPassword, NULL, port, NULL, 0))
{
rc = test_prepared(pMysql, zStatement);
}
else
{
cerr << "error: " << mysql_error(pMysql) << endl;
}
mysql_close(pMysql);
pMysql = NULL;
}
else
{
cerr << "error: " << mysql_error(NULL) << endl;
}
return rc;
}

View File

@ -1524,7 +1524,7 @@ convert_arg(char *arg, int arg_type)
break;
case ARG_TYPE_FILTER:
rval = (unsigned long)filter_find(arg);
rval = (unsigned long)filter_def_find(arg);
break;
case ARG_TYPE_NUMERIC: