Re: [gnome-db] MySQL provider doesn't honor authorization outside DNS





2008/10/13 Nicola Fontana <ntd entidi it>
On Mon, 13 Oct 2008 18:33:57 +0200
"Vivien Malerba" <vmalerba gmail com> wrote:

> 2008/10/13 Vivien Malerba <vmalerba gmail com>
>
> >
> >
> > 2008/10/13 Nicola Fontana <ntd entidi it>
> >
> >> Sorry to bother again: this one took me some time.
> >>
> >> After updating to libgda-3.99.5 I was unable to connect to my
> >> old DSN, any attempt was failing with no useful informations:
> >>
> >> $ gda-test-connection-4.0 -s tachet
> >> ** (gda-test-connection-4.0:7130): WARNING **: Can't open
> >> connection to DSN tachet: No description
> >>
> >> After diving into the sources I found the MySQL provider takes
> >> user/password only from the DNS string. In my old config file I
> >> used <entry name="Username" ...> and <entry name="Password" ...>
> >> so moving them into <entry name="DSN" ...> solved this issue.
> >>
> >> As a collateral effect, the auth_string parameter in
> >> gda_connection_open_from_dsn is not honored (tested). I don't
> >> know if this is expected, but there's some inconsistency between
> >> documentation and implementation.
> >
> >
> > I'll check that ASAP, thanks!
> >
> >
> Can you check with rev #3239 of SVN trunk to see if it's OK now?

gda-test-connection-4.0 -U ... -P ...: success
gda_connection_open_from_dsn with auth_string: success
<entry name="{Username,Password}" .../>: success
<entry name="DSN" value="...USER=...PASSWORD=.../>: failed

This is normal, the keyword is USERNAME, not USER.
 

<entry name="DSN" value="...USERNAME=...PASSWORD=.../>: success 

I reported the failed "USER=..." DSN because before it worked.

Then I should also make it work for compatibility. I'll that ASAP.
 

Anyway, for sake of consistency, I personally prefer to specify
USERNAME everywhere.

Yes.
 


I think mysql_specs_dsn.xml.in too should be updated, as it is
lacking both username and password elements.

No, the DSN spec is not supposed to contain any username or password elements, which should be in the autentication specs, which is directly specified in the libmain.c file of each provider (if none then the authentication defaults to USERNAME/PASSWORD)

Regards,

Vivien



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]