Skip to content

Commit

Permalink
PostgreSQL driver: Fix incompatible pointer-to-integer types
Browse files Browse the repository at this point in the history
These result in out-of-bounds stack writes on 64-bit architectures
(caller has 4 bytes, callee writes 8 bytes), and seem to have gone
unnoticed on little-endian architectures (although big-endian
architectures must be broken).

This change is required to avoid a build failure with GCC 14.
  • Loading branch information
fweimer-rh committed Jan 29, 2024
1 parent 9b31cd2 commit 45f501e
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions Drivers/Postgre7.1/info.c
Expand Up @@ -1779,14 +1779,14 @@ char *table_name;
char index_name[MAX_INFO_STRING];
short fields_vector[8];
char isunique[10], isclustered[10];
SDWORD index_name_len, fields_vector_len;
SQLLEN index_name_len, fields_vector_len;
TupleNode *row;
int i;
HSTMT hcol_stmt;
StatementClass *col_stmt, *indx_stmt;
char column_name[MAX_INFO_STRING], relhasrules[MAX_INFO_STRING];
char **column_names = 0;
Int4 column_name_len;
SQLLEN column_name_len;
int total_columns = 0;
char error = TRUE;
ConnInfo *ci;
Expand Down Expand Up @@ -2136,7 +2136,7 @@ HSTMT htbl_stmt;
StatementClass *tbl_stmt;
char tables_query[STD_STATEMENT_LEN];
char attname[MAX_INFO_STRING];
SDWORD attname_len;
SQLLEN attname_len;
char pktab[MAX_TABLE_LEN + 1];
Int2 result_cols;

Expand Down

0 comments on commit 45f501e

Please sign in to comment.