PGSQL ODBC driver crash in CC_get_current_schema

From: Frank van der Aa - Vanboxtel BV <fvdaa(at)vanboxtel(dot)nl>
To: pgsql-odbc(at)postgresql(dot)org
Subject: PGSQL ODBC driver crash in CC_get_current_schema
Date: 2015-04-08 08:50:54
Message-ID: 5524EBEE.2090603@vanboxtel.nl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Hi,

we are using the PostgreSQL 9.2.4 with ODBC driver 09.03.0400.

We experience a driver crash when, for some reason (e.g. insufficient
permissions), there is no schema set.

This happens because the strdup in the CC_get_current_schema function in
connection.c is executed while the 'select current_schema()' query
returned NULL.

We have created a patch to workaround the strdup when the result of
QR_get_value_backend_text is NULL:

# diff connection.c.orig connection.c
4073c4073,4081
< conn->current_schema =
strdup(QR_get_value_backend_text(res, 0, 0));
---
> {
> const char* value =
QR_get_value_backend_text(res, 0, 0);
>
> if (value == NULL)
> conn->current_schema = NULL;
> else
> conn->current_schema = strdup(value);
>
> }

We have tested this patch in our environment and didn't experience any
problems. However, we don't oversee the entire code, but expect this not
to give any more problems.

Would you be able to include this patch in the next release of the ODBC
driver? Feel free to contact in case of any questions.

--
Met vriendelijke groeten / Kind regards,

Frank van der Aa

Vanboxtel BV

T +31 (0) 492 327 333
F +31 (0) 492 324 326
E fvdaa(at)vanboxtel(dot)nl <mailto:fvdaa(at)vanboxtel(dot)nl>
I www.vanboxtel.nl <http://www.vanboxtel.nl/>

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Heikki Linnakangas 2015-04-09 18:56:08 Re: PGSQL ODBC driver crash in CC_get_current_schema
Previous Message Adrian Klaver 2015-04-06 19:58:57 Re: PostgreSQL drivers support for Accessing HAWQ Data.