Skip to Content.
Sympa Menu

freetds - RE: [freetds] Testing charset

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "ZIGLIO Frediano" <Frediano.Ziglio AT vodafoneomnitel.it>
  • To: "FreeTDS Development Group" <freetds AT lists.ibiblio.org>
  • Subject: RE: [freetds] Testing charset
  • Date: Fri, 9 May 2003 11:58:29 +0200

> >
> > Fully agree. However current implementation never use
> > TDSLOGININFO->client_charset. There are two method to build
> > TDSCONNECTINFO:
> > 1:
> > a- allocate connect
> > b- fill values (sometime reading freetds.conf with its
> client charset)
> > c- call tds_fix_connect
> > (used in odbc, do not involve TDSLOGININFO so no problem)
> > 2:
> > a- allocate connect (we pass locale to overwrite server
> > charset, and we
> > initialize client_charset)
> > b- get values from freetds.conf
> > c- replacing with TDSLOGININFO info
> > d- call tds_fix_connect
> >
> > However 2c found always a value (or from default or from
> freetds.conf)
> > so it never replace it!!!
>
> Ugh. The mere existence of a function called "tds_fix_connect" is
> symptomatic of a problem, if you ask me. Every time I look at this, I
> think: We need to separate reading freetds.conf from connecting to the
> server. Before we start connecting to the server, we should
> *know* the
> options we're going to use. All the juggling of default,
> environment, and
> freetds.conf should be done in advance.
>
> > Perhaps we should initialize TDSCONNECTINFO->client_charset
> > to empty and
> > set it to default on tds_fix_connect ?? This should fix the
> problem...
>
> Eventually, as you know, I'd like to replace our config-file
> parser with my
> nvp library. In the meantime, you probably have the best
> knowledge of how
> to fix the "2c" problem.
>

Mmm.... your comment say

/* don't overwrite freetds.conf client charset with one derived from
the environment. */

However login information came from code, not from environment, so I think
it's better to handle this field like others (if a program want to everride
configuration it just can). Perhaps what's wrong is setting charset in our
tests...

tds_fix_connect currently override connect information with information from
environment. This is needed by odbc cause ODBC must separate TDSCONNECTINFO
allocation, reading of configuration (sometime unused) and environment
settings...

freddy77




Archive powered by MHonArc 2.6.24.

Top of Page