Lists: | pgsql-odbc |
---|
From: | "Rick Hair" <rhair(at)bowmansystems(dot)com> |
---|---|
To: | <pgsql-odbc(at)postgresql(dot)org> |
Subject: | Username and password from DSN being overwritten (fix included) |
Date: | 2006-10-16 22:56:24 |
Message-ID: | 005301c6f176$4e4111c0$1103000a@RickHair |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-odbc |
Hi all,
I ran into a problem recently trying to use the latest CVS version of the
ODBC driver with Business Objects XI Release 2. The username and password
specified for a connection in the ODBC setup panel were being ignored by the
driver. I discovered that after some recent changes to the make_string()
function in misc.c, the DSN defaults were always being overwritten by
whatever username and password were passed to PGAPI_Connect(), even if they
were empty strings.
Below is a (very small) patch to connection.c to work around the issue.
Thanks,
Rick Hair
*** psqlodbc.old/connection.c 2006-10-13 08:13:31.000000000 -0500
--- psqlodbc.new/connection.c 2006-10-16 17:09:31.000000000 -0500
***************
*** 127,134 ****
* override values from DSN info with UID and authStr(pwd) This only
* occurs if the values are actually there.
*/
! make_string(szUID, cbUID, ci->username, sizeof(ci->username));
! make_string(szAuthStr, cbAuthStr, ci->password, sizeof(ci->password));
/* fill in any defaults */
getDSNdefaults(ci);
--- 127,136 ----
* override values from DSN info with UID and authStr(pwd) This only
* occurs if the values are actually there.
*/
! if (cbUID > 0)
! make_string(szUID, cbUID, ci->username, sizeof(ci->username));
! if (cbAuthStr > 0)
! make_string(szAuthStr, cbAuthStr, ci->password,
sizeof(ci->password));
/* fill in any defaults */
getDSNdefaults(ci);
From: | Hiroshi Inoue <inoue(at)tpf(dot)co(dot)jp> |
---|---|
To: | Rick Hair <rhair(at)bowmansystems(dot)com> |
Cc: | pgsql-odbc(at)postgresql(dot)org |
Subject: | Re: Username and password from DSN being overwritten (fix |
Date: | 2006-10-17 16:13:45 |
Message-ID: | 45350139.4080408@tpf.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-odbc |
Rick Hair wrote:
> Hi all,
>
> I ran into a problem recently trying to use the latest CVS version of the
> ODBC driver with Business Objects XI Release 2. The username and password
> specified for a connection in the ODBC setup panel were being ignored by the
> driver. I discovered that after some recent changes to the make_string()
> function in misc.c, the DSN defaults were always being overwritten by
> whatever username and password were passed to PGAPI_Connect(), even if they
> were empty strings.
>
> Below is a (very small) patch to connection.c to work around the issue.
>
> ! if (cbUID > 0)
>
> ! make_string(szUID, cbUID, ci->username, sizeof(ci->username));
>
> ! if (cbAuthStr > 0)
>
> ! make_string(szAuthStr, cbAuthStr, ci->password,
> sizeof(ci->password));
>
The above patch seems to be wrong because cbUID(cvAuthStr) can be SQL_NTS.
OK I would take care of this case.
Please try the snapshot dll at
http://www.geocities.jp/inocchichichi/psqlodbc/index.html
.
regards,
Hiroshi Inoue
From: | rhair(at)bowmansystems(dot)com |
---|---|
To: | pgsql-odbc(at)postgresql(dot)org |
Subject: | Re: Username and password from DSN being overwritten (fix |
Date: | 2006-10-19 13:30:16 |
Message-ID: | 1161264616.511206.309370@m73g2000cwd.googlegroups.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-odbc |
That did the trick; Business Objects seems to be working fine with the
new snapshot.
Thanks,
Rick Hair
Hiroshi Inoue wrote:
>
> The above patch seems to be wrong because cbUID(cvAuthStr) can be SQL_NTS.
> OK I would take care of this case.
> Please try the snapshot dll at
> http://www.geocities.jp/inocchichichi/psqlodbc/index.html
> .
>
> regards,
> Hiroshi Inoue
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: In versions below 8.0, the planner will ignore your desire to
> choose an index scan if your joining column's datatypes do not
> match