Re: Re: unixODBC again :-(

From: Nick Gorham <nick(at)lurcher(dot)org>
To: peter_e(at)gmx(dot)net
Cc: pgman(at)candle(dot)pha(dot)pa(dot)us, pgsql-hackers(at)postgreSQL(dot)org, pgsql-odbc(at)postgreSQL(dot)org
Subject: Re: Re: unixODBC again :-(
Date: 2001-01-24 18:53:42
Message-ID: 3A6F24B5.2CAADF4A@lurcher.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-odbc

peter_e(at)gmx(dot)net wrote:

> Bruce Momjian writes:
>
> > > 1. Add options to use unixODBC in the configure.in file, the mainly consists of finding the root of the unixODBC install prefix, and adding
> > > -I /unixODBC/path/include and -L /unixODBC/path/lib to the driver build
>
> --with-includes, --with-libraries

If it works then fine, other drivers use a --with-unixODBC to enable any other changes that are needed.

> > > 2. Change the way the driver gets config info, to be the same as when built under windows. link with -lodbcinst and it provides
> > > SQLGetPrivateProfileString. the code that calls this works as long as the correct define is set.
>
> I don't understand this. The driver gets the config info just fine; why
> add another way?

Well because the driver does not know where to get the config info from, libodbcinst.so in unixODBC provides SQLGetPrivateProfileString, the
location of user and system ini files are defined by this lib, if it doesn't do this you may have the situation where the driver manager gets
information from one ini file and the driver from a different one.

> > > 3. Stop calling ODBC functions in the driver, this is simple but messy, the problem being the call (say) in SQLAllocStmt that calls
> > > SQLAllocHandle in the driver, ends up calling the SQLAllocHandle in the driver manager.
>
> This is fixed using magic linker options on ELF platforms. I don't recall
> how the patch tried to address this, but a better solution is probably
> necessary.

If there is a better way, please let me know, I would love to have a better solution.

> > > There are a couple of other changes I have made, that you may want
> > to add, I added the code to allow encrypted passwords (taken from the
> > pg > lib), as crypt is avaiable on unix.
>
> Why not.
>
> > Add the option to detect a
> > server name of localhost, and open the unix domain socket,
>
> I don't think so. localhost is a valid host name.

Ok, but don't you think it is worth having some way to get it to use UNIX domain sockets instead of TCP ones, for instance if postmaster isn't
started with a -i ?

> We have a general approach to non-standard socket names now.

Great, thats a non problem then, what do you do ?

--
Nick Gorham
When I die, I want to go like my grandfather did, gently while sleeping,
and not like his passangers, screaming in a panic, looking for the
inflatable raft. -- Seen on ./

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Brett W. McCoy 2001-01-24 18:57:19 Re: MySQL has transactions
Previous Message Lamar Owen 2001-01-24 18:50:10 Re: (one more time) Patches with vacuum fixes available .

Browse pgsql-odbc by date

  From Date Subject
Next Message Peter Eisentraut 2001-01-24 20:20:51 Re: Re: unixODBC again :-(
Previous Message Bruce Momjian 2001-01-24 18:47:49 Re: [INTERFACES] ODBC gives pq_recvbuf: unexpected EOF on client connection