[CONPY-1] MrdbConnection: support all connection parameters Created: 2018-07-17  Updated: 2018-07-17

Status: Open
Project: MariaDB Connector/Python
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major
Reporter: Georg Richter Assignee: Georg Richter
Resolution: Unresolved Votes: 2
Labels: None


 Description   

The connect function currently only supports a couple of connection parameters:

static char *dsn_keys[]= {
    "dsn", "host", "user", "password", "database", "port", "socket",
    "connect_timeout", "read_timeout", "write_timeout",
    "local_infile", "compress", "init_command",
    "default_file", "default_group",
    "ssl_key", "ssl_ca", "ssl_cert", "ssl_crl",
    "ssl_cipher", "ssl_capath", "ssl_crlpath",
    "ssl_verify_cert", "ssl",
    "client_flags"
  };

The list of supported connection parameters is defined in C/C:

struct st_default_options mariadb_defaults[] =
{
  {MARIADB_OPT_PORT, MARIADB_OPTION_INT,"port"},
  {MARIADB_OPT_UNIXSOCKET, MARIADB_OPTION_STR, "socket"},
  {MYSQL_OPT_COMPRESS, MARIADB_OPTION_BOOL, "compress"},
  {MARIADB_OPT_PASSWORD, MARIADB_OPTION_STR, "password"},
  {MYSQL_OPT_NAMED_PIPE, MARIADB_OPTION_BOOL, "pipe"},
  {MYSQL_OPT_CONNECT_TIMEOUT, MARIADB_OPTION_INT, "timeout"},
  {MARIADB_OPT_USER, MARIADB_OPTION_STR, "user"},
  {MYSQL_INIT_COMMAND, MARIADB_OPTION_STR, "init-command"},
  {MARIADB_OPT_HOST, MARIADB_OPTION_STR, "host"},
  {MARIADB_OPT_SCHEMA, MARIADB_OPTION_STR, "database"},
  {MARIADB_OPT_DEBUG, MARIADB_OPTION_STR, "debug"},
  {MARIADB_OPT_FOUND_ROWS, MARIADB_OPTION_NONE, "return-found-rows"},
  {MYSQL_OPT_SSL_KEY, MARIADB_OPTION_STR, "ssl-key"},
  {MYSQL_OPT_SSL_CERT, MARIADB_OPTION_STR,"ssl-cert"},
  {MYSQL_OPT_SSL_CA, MARIADB_OPTION_STR,"ssl-ca"},
  {MYSQL_OPT_SSL_CAPATH, MARIADB_OPTION_STR,"ssl-capath"},
  {MYSQL_OPT_SSL_VERIFY_SERVER_CERT, MARIADB_OPTION_BOOL,"ssl-verify-server-cert"},
  {MYSQL_SET_CHARSET_DIR, MARIADB_OPTION_STR, "character-sets-dir"},
  {MYSQL_SET_CHARSET_NAME, MARIADB_OPTION_STR, "default-character-set"},
  {MARIADB_OPT_INTERACTIVE, MARIADB_OPTION_NONE, "interactive-timeout"},
  {MYSQL_OPT_CONNECT_TIMEOUT, MARIADB_OPTION_INT, "connect-timeout"},
  {MYSQL_OPT_LOCAL_INFILE, MARIADB_OPTION_BOOL, "local-infile"},
  {0, 0 ,"disable-local-infile",},
  {MYSQL_OPT_SSL_CIPHER, MARIADB_OPTION_STR, "ssl-cipher"},
  {MYSQL_OPT_MAX_ALLOWED_PACKET, MARIADB_OPTION_SIZET, "max-allowed-packet"},
  {MYSQL_OPT_NET_BUFFER_LENGTH, MARIADB_OPTION_SIZET, "net-buffer-length"},
  {MYSQL_OPT_PROTOCOL, MARIADB_OPTION_INT, "protocol"},
  {MYSQL_SHARED_MEMORY_BASE_NAME, MARIADB_OPTION_STR,"shared-memory-base-name"},
  {MARIADB_OPT_MULTI_RESULTS, MARIADB_OPTION_NONE, "multi-results"},
  {MARIADB_OPT_MULTI_STATEMENTS, MARIADB_OPTION_STR, "multi-statements"},
  {MARIADB_OPT_MULTI_STATEMENTS, MARIADB_OPTION_STR, "multi-queries"},
  {MYSQL_SECURE_AUTH, MARIADB_OPTION_BOOL, "secure-auth"},
  {MYSQL_REPORT_DATA_TRUNCATION, MARIADB_OPTION_BOOL, "report-data-truncation"},
  {MYSQL_OPT_RECONNECT, MARIADB_OPTION_BOOL, "reconnect"},
  {MYSQL_PLUGIN_DIR, MARIADB_OPTION_STR, "plugin-dir"},
  {MYSQL_DEFAULT_AUTH, MARIADB_OPTION_STR, "default-auth"},
  {MARIADB_OPT_SSL_FP, MARIADB_OPTION_STR, "ssl-fp"},
  {MARIADB_OPT_SSL_FP_LIST, MARIADB_OPTION_STR, "ssl-fp-list"},
  {MARIADB_OPT_SSL_FP_LIST, MARIADB_OPTION_STR, "ssl-fplist"},
  {MARIADB_OPT_TLS_PASSPHRASE, MARIADB_OPTION_STR, "ssl-passphrase"},
  {MARIADB_OPT_TLS_VERSION, MARIADB_OPTION_STR, "tls_version"},
  {MYSQL_OPT_BIND, MARIADB_OPTION_STR, "bind-address"},
  {0, 0, NULL}
};


Generated at Thu Feb 08 03:29:30 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.