diff --git a/src/interfaces/odbc/connection.c b/src/interfaces/odbc/connection.c index 04de1c8e25d91b30c9bcde7c56465c7136ea8181..35a5e87711bc32778bb4d2835ba4db8814f32534 100644 --- a/src/interfaces/odbc/connection.c +++ b/src/interfaces/odbc/connection.c @@ -645,10 +645,11 @@ CC_connect(ConnectionClass *self, char password_req, char *salt_para) ci->drivers.ksqo, ci->drivers.unique_index, ci->drivers.use_declarefetch); - qlog(" text_as_longvarchar=%d, unknowns_as_longvarchar=%d, bools_as_char=%d\n", + qlog(" text_as_longvarchar=%d, unknowns_as_longvarchar=%d, bools_as_char=%d NAMEDATALEN=%d\n", ci->drivers.text_as_longvarchar, ci->drivers.unknowns_as_longvarchar, - ci->drivers.bools_as_char); + ci->drivers.bools_as_char, + MAX_TABLE_LEN); #ifdef MULTIBYTE encoding = check_client_encoding(ci->conn_settings); @@ -728,7 +729,7 @@ another_version_retry: SOCK_put_int(sock, htonl(4 + sizeof(StartupPacket6_2)), 4); sp62.authtype = htonl(NO_AUTHENTICATION); strncpy(sp62.database, ci->database, PATH_SIZE); - strncpy(sp62.user, ci->username, NAMEDATALEN); + strncpy(sp62.user, ci->username, USRNAMEDATALEN); SOCK_put_n_char(sock, (char *) &sp62, sizeof(StartupPacket6_2)); SOCK_flush_output(sock); } diff --git a/src/interfaces/odbc/connection.h b/src/interfaces/odbc/connection.h index 5a26c29d781e87528175dc7b2aa5076dc7bfda35..133b4920c007870146f2bbeba4d9589658e82237 100644 --- a/src/interfaces/odbc/connection.h +++ b/src/interfaces/odbc/connection.h @@ -94,7 +94,7 @@ typedef enum #define NO_AUTHENTICATION 7 #define PATH_SIZE 64 #define ARGV_SIZE 64 -#define NAMEDATALEN 16 +#define USRNAMEDATALEN 16 typedef unsigned int ProtocolVersion; @@ -120,7 +120,7 @@ typedef struct _StartupPacket6_2 { unsigned int authtype; char database[PATH_SIZE]; - char user[NAMEDATALEN]; + char user[USRNAMEDATALEN]; char options[ARGV_SIZE]; char execfile[ARGV_SIZE]; char tty[PATH_SIZE]; diff --git a/src/interfaces/odbc/psqlodbc.h b/src/interfaces/odbc/psqlodbc.h index 431f6a4922f02763660964e5976e54ea37b5bf64..fae864bd4d104a737841ba2110ee4b512564ff3f 100644 --- a/src/interfaces/odbc/psqlodbc.h +++ b/src/interfaces/odbc/psqlodbc.h @@ -5,7 +5,7 @@ * * Comments: See "notice.txt" for copyright and license information. * - * $Id: psqlodbc.h,v 1.68 2002/06/28 02:44:15 inoue Exp $ + * $Id: psqlodbc.h,v 1.69 2002/07/11 01:52:46 inoue Exp $ * */ @@ -27,6 +27,10 @@ #define ODBCVER 0x0250 #endif /* ODBCVER_REP */ +#ifndef NAMEDATALEN +#define NAMEDATALEN 32 +#endif /* NAMEDATALEN */ + #if defined(WIN32) || defined(WITH_UNIXODBC) || defined(WITH_IODBC) #include <sql.h> @@ -124,9 +128,9 @@ typedef UInt4 Oid; #define BYTELEN 8 #define VARHDRSZ sizeof(Int4) -#define MAX_SCHEMA_LEN 32 -#define MAX_TABLE_LEN 32 -#define MAX_COLUMN_LEN 32 +#define MAX_SCHEMA_LEN NAMEDATALEN +#define MAX_TABLE_LEN NAMEDATALEN +#define MAX_COLUMN_LEN NAMEDATALEN #define MAX_CURSOR_LEN 32 /* Registry length limits */ @@ -239,7 +243,7 @@ void logs_on_off(int cnopen, int, int); #define TEXT_FIELD_SIZE 8190 /* size of text fields * (not including null * term) */ -#define NAME_FIELD_SIZE 32 /* size of name fields */ +#define NAME_FIELD_SIZE NAMEDATALEN /* size of name fields */ #define MAX_VARCHAR_SIZE 254 /* maximum size of a varchar (not * including null term) */