34 lines
1.5 KiB
Diff
34 lines
1.5 KiB
Diff
|
--- freeradius-server-2.1.3.orig/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/sql_unixodbc.c 2008-12-05 11:37:56.000000000 -0500
|
||
|
+++ freeradius-server-2.1.3/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/sql_unixodbc.c 2009-02-24 09:51:23.000000000 -0500
|
||
|
@@ -166,7 +166,8 @@
|
||
|
*************************************************************************/
|
||
|
static int sql_select_query(SQLSOCK *sqlsocket, SQL_CONFIG *config, char *querystr) {
|
||
|
rlm_sql_unixodbc_sock *unixodbc_sock = sqlsocket->conn;
|
||
|
- SQLINTEGER column, len;
|
||
|
+ SQLINTEGER column;
|
||
|
+ SQLLEN len;
|
||
|
int numfields;
|
||
|
int state;
|
||
|
|
||
|
@@ -184,7 +185,7 @@
|
||
|
|
||
|
for(column=1; column<=numfields; column++) {
|
||
|
SQLColAttributes(unixodbc_sock->stmt_handle,((SQLUSMALLINT) column),SQL_COLUMN_LENGTH,NULL,0,NULL,&len);
|
||
|
- unixodbc_sock->row[column-1] = (SQLCHAR*)rad_malloc((int)++len);
|
||
|
+ unixodbc_sock->row[column-1] = (char*)rad_malloc((int)++len);
|
||
|
SQLBindCol(unixodbc_sock->stmt_handle, column, SQL_C_CHAR, (SQLCHAR *)unixodbc_sock->row[column-1], len, NULL);
|
||
|
}
|
||
|
return 0;
|
||
|
@@ -440,9 +441,9 @@
|
||
|
static int sql_affected_rows(SQLSOCK *sqlsocket, SQL_CONFIG *config) {
|
||
|
rlm_sql_unixodbc_sock *unixodbc_sock = sqlsocket->conn;
|
||
|
long err_handle;
|
||
|
- int affected_rows;
|
||
|
+ SQLLEN affected_rows;
|
||
|
|
||
|
- err_handle = SQLRowCount(unixodbc_sock->stmt_handle, (SQLINTEGER *)&affected_rows);
|
||
|
+ err_handle = SQLRowCount(unixodbc_sock->stmt_handle, &affected_rows);
|
||
|
if (sql_state(err_handle, sqlsocket, config))
|
||
|
return -1;
|
||
|
|