Re: segfault in SQLSpecialColumns when table name is null string - Mailing list pgsql-odbc

From Lionel Elie Mamane
Subject Re: segfault in SQLSpecialColumns when table name is null string
Date
Msg-id 20120710142707.GB26793@capsaicin.mamane.lu
Whole thread Raw
In response to segfault in SQLSpecialColumns when table name is null string  (Terrence Enger <tenger@iseries-guru.com>)
Responses Re: segfault in SQLSpecialColumns when table name is null string
List pgsql-odbc
On Tue, Jul 10, 2012 at 08:22:52AM -0400, Terrence Enger wrote:

> Working with PostgreSQL version 8.4.12-0ubuntu11.04 and with ODBC
> driver versions 1:08.03.0200-1.2 (supplied with ubuntu-natty (11.04))
> and pgsqlodbc-09.01.0100 (built locally), I have managed to provoke a
> segfault by calling SQLSpecialColumns with a null string for the table
> name.  This call is, of course, a strange thing to do, and I cannot
> imagine any good result.  Still, a segfault seems a disproportionate
> punishment for doing something silly.

Also, the ultimate reason for this "strange thing" is that

 SQLColAttribute( (SQLHANDLE) 0x1ec7850,
                  (SQLUSMALLINT) 1,
                  (SQLUSMALLINT) 15,
                  (SQLPOINTER) 0x1eb2640,
                  128,
                  (SQLSMALLINT *) 0x7fffffff97de,
                  NULL);

where 15 == SQL_DESC_TABLE_NAME == SQL_COLUMN_TABLE_NAME
returns (writes at 0x1eb2640) an empty string for this query:

 SELECT "Num" "Numero", "data" FROM "foo"."Table1"

Similarly, so do the similar calls with SQL_DESC_CATALOG_NAME and
SQL_DESC_SCHEMA_NAME.

By contrast, they do return good information for query

 SELECT "Num" AS "Numero", "data" FROM "foo"."Table1"

That is also a bug in the ODBC driver and should IMHO be fixed.

--
Lionel

pgsql-odbc by date:

Previous
From: Terrence Enger
Date:
Subject: segfault in SQLSpecialColumns when table name is null string
Next
From: Hiroshi Inoue
Date:
Subject: Re: segfault in SQLSpecialColumns when table name is null string