Changeset: da89b337cdf5 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/da89b337cdf5 Modified Files: clients/odbc/driver/SQLConnect.c Branch: odbc-tls Log Message:
Make sure the right settings are in the right place at the right time diffs (48 lines): diff --git a/clients/odbc/driver/SQLConnect.c b/clients/odbc/driver/SQLConnect.c --- a/clients/odbc/driver/SQLConnect.c +++ b/clients/odbc/driver/SQLConnect.c @@ -52,7 +52,7 @@ const struct attr_setting attr_settings[ { "PWD", "Password", MP_PASSWORD }, { "DATABASE", "Database", MP_DATABASE }, { "PORT", "Port", MP_PORT }, - { "HOST", "Host", MP_HOST }, + { "HOST", "Server", MP_HOST }, { "SOCK", "Unix Socket", MP_SOCK }, { "TLS", "Encrypt", MP_TLS, .suggest_values = SUGGEST_BOOLEAN }, { "CERT", "Server Certificate", MP_CERT }, @@ -496,6 +496,12 @@ end: SQLRETURN MNDBConnectSettings(ODBCDbc *dbc, const char *dsn, msettings *settings) { + msettings *clone = msettings_clone(settings); + if (clone == NULL) { + addDbcError(dbc, "HY001", NULL, 0); + return SQL_ERROR; + } + Mapi mid = mapi_settings(settings); if (mid) { mapi_setAutocommit(mid, dbc->sql_attr_autocommit == SQL_AUTOCOMMIT_ON); @@ -512,14 +518,19 @@ MNDBConnectSettings(ODBCDbc *dbc, const free(dbc->dsn); dbc->dsn = dsn ? strdup(dsn) : NULL; - dbc->Connected = true; - dbc->mapToLongVarchar = msetting_long(settings, MP_MAPTOLONGVARCHAR); - if (dbc->mid) mapi_destroy(dbc->mid); dbc->mid = mid; + msettings_destroy(dbc->settings); + dbc->settings = clone; + + dbc->mapToLongVarchar = msetting_long(settings, MP_MAPTOLONGVARCHAR); + + dbc->Connected = true; + get_serverinfo(dbc); + /* set timeout after we're connected */ mapi_timeout(dbc->mid, dbc->sql_attr_connection_timeout * 1000); _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org