summaryrefslogtreecommitdiff
path: root/lib/odbc
diff options
context:
space:
mode:
authorLukas Larsson <lukas@erlang.org>2020-11-03 11:04:26 +0100
committerLukas Larsson <lukas@erlang.org>2021-01-07 14:37:28 +0100
commit8c1c3341ad8d8348df70bea2fe48354b7aa86de6 (patch)
tree0ca716456b55b85323b36bd798c408aa4a874cc2 /lib/odbc
parent0f98bab626ecd98447dc23cce63ca9503d34edba (diff)
downloaderlang-8c1c3341ad8d8348df70bea2fe48354b7aa86de6.tar.gz
odbc: Fix compiler warnings
Diffstat (limited to 'lib/odbc')
-rw-r--r--lib/odbc/c_src/odbcserver.c83
1 files changed, 54 insertions, 29 deletions
diff --git a/lib/odbc/c_src/odbcserver.c b/lib/odbc/c_src/odbcserver.c
index ee5dc9cd0a..a6ea54150a 100644
--- a/lib/odbc/c_src/odbcserver.c
+++ b/lib/odbc/c_src/odbcserver.c
@@ -178,7 +178,7 @@ static void encode_column_dyn(db_column column, int column_nr,
db_state *state);
static void encode_data_type(SQLSMALLINT sql_type, SQLINTEGER size,
SQLSMALLINT decimal_digits, db_state *state);
-static Boolean decode_params(db_state *state, byte *buffer, int *index, param_array **params,
+static Boolean decode_params(db_state *state, char *buffer, int *index, param_array **params,
int i, int j, int num_param_values);
/*------------- Erlang port communication functions ----------------------*/
@@ -222,7 +222,7 @@ static SQLLEN* alloc_strlen_indptr(int n, int val);
static void init_driver(int erl_auto_commit_mode, int erl_trace_driver,
db_state *state);
-static void init_param_column(param_array *params, byte *buffer, int *index,
+static void init_param_column(param_array *params, char *buffer, int *index,
int num_param_values, db_state* state);
static void init_param_statement(int cols,
@@ -235,7 +235,7 @@ static void map_dec_num_2_c_column(col_type *type, int precision,
static db_result_msg map_sql_2_c_column(db_column* column, db_state *state);
-static param_array * bind_parameter_arrays(byte *buffer, int *index,
+static param_array * bind_parameter_arrays(char *buffer, int *index,
int cols,
int num_param_values,
db_state *state);
@@ -278,7 +278,7 @@ int main(void)
msg = receive_erlang_port_msg();
- temp = strtok(msg, ";");
+ temp = strtok((char*)msg, ";");
if (temp == NULL)
DO_EXIT(EXIT_STDIN_BODY);
length = strlen(temp);
@@ -509,7 +509,9 @@ static db_result_msg db_connect(byte *args, db_state *state)
diagnos = get_diagnos(SQL_HANDLE_DBC, connection_handle(state), extended_errors(state));
strcat((char *)diagnos.error_msg,
" Connection to database failed.");
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError );
+ msg = encode_error_message((char *)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError );
if(!sql_success(SQLFreeHandle(SQL_HANDLE_DBC,
connection_handle(state))))
@@ -544,7 +546,9 @@ static db_result_msg db_connect(byte *args, db_state *state)
diagnos = get_diagnos(SQL_HANDLE_DBC, connection_handle(state), extended_errors(state));
strcat((char *)diagnos.error_msg, " Set autocommit mode failed.");
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char*)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
if(!sql_success(SQLFreeHandle(SQL_HANDLE_DBC,
connection_handle(state))))
@@ -576,7 +580,9 @@ static db_result_msg db_close_connection(db_state *state)
if (!sql_success(result)) {
diagnos = get_diagnos(SQL_HANDLE_DBC, connection_handle(state), extended_errors(state));
- return encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ return encode_error_message((char *)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
}
if(!sql_success(SQLFreeHandle(SQL_HANDLE_DBC,
@@ -603,7 +609,9 @@ static db_result_msg db_end_tran(byte compleationtype, db_state *state)
if (!sql_success(result)) {
diagnos = get_diagnos(SQL_HANDLE_DBC, connection_handle(state), extended_errors(state));
- return encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ return encode_error_message((char *)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
} else {
return encode_atom_message("ok");
}
@@ -645,7 +653,7 @@ static db_result_msg db_query(byte *sql, db_state *state)
it as we want a nice and clean Erlang API */
if((strcmp((char *)is_error, "error") == 0))
{
- msg = encode_error_message((char *)diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char *)diagnos.error_msg,extended_error(state, diagnos.sqlState), diagnos.nativeError);
clean_state(state);
return msg;
}
@@ -686,7 +694,7 @@ static db_result_msg db_query(byte *sql, db_state *state)
ei_x_free(&(dynamic_buffer(state)));
return msg;
} else {
- msg.buffer = dynamic_buffer(state).buff;
+ msg.buffer = (byte*)dynamic_buffer(state).buff;
msg.length = dynamic_buffer(state).index;
msg.dyn_alloc = TRUE;
return msg;
@@ -722,7 +730,9 @@ static db_result_msg db_select_count(byte *sql, db_state *state)
if(!sql_success(SQLExecDirect(statement_handle(state), (SQLCHAR *)sql, SQL_NTS))) {
diagnos = get_diagnos(SQL_HANDLE_STMT, statement_handle(state), extended_errors(state));
clean_state(state);
- return encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ return encode_error_message((char *)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
}
if(!sql_success(SQLNumResultCols(statement_handle(state),
@@ -810,7 +820,7 @@ static db_result_msg db_select(byte *args, db_state *state)
ei_x_free(&(dynamic_buffer(state)));
return msg;
} else {
- msg.buffer = dynamic_buffer(state).buff;
+ msg.buffer = (byte*)dynamic_buffer(state).buff;
msg.length = dynamic_buffer(state).index;
msg.dyn_alloc = TRUE;
return msg;
@@ -819,9 +829,10 @@ static db_result_msg db_select(byte *args, db_state *state)
/* Description: Handles parameterized queries ex:
INSERT INTO FOO VALUES(?, ?) */
-static db_result_msg db_param_query(byte *buffer, db_state *state)
+static db_result_msg db_param_query(byte *byte_buffer, db_state *state)
{
- byte *sql;
+ char *sql;
+ char *buffer = (char *)byte_buffer;
db_result_msg msg;
SQLLEN num_param_values;
int i, ver = 0,
@@ -847,7 +858,7 @@ static db_result_msg db_param_query(byte *buffer, db_state *state)
ei_get_type(buffer, &index, &erl_type, &size);
- sql = (byte*)safe_malloc((sizeof(byte) * (size + 1)));
+ sql = safe_malloc((sizeof(byte) * (size + 1)));
ei_decode_string(buffer, &index, sql);
ei_decode_long(buffer, &index, &long_num_param_values);
@@ -871,7 +882,9 @@ static db_result_msg db_param_query(byte *buffer, db_state *state)
updates/deletes that affect no rows */
if(!sql_success(result) &&
!(result == SQL_NO_DATA && !strcmp((char *)diagnos.sqlState, INFO))) {
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char*)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
} else {
for (i = 0; i < param_status.params_processed; i++) {
switch (param_status.param_status_array[i]) {
@@ -886,7 +899,9 @@ static db_result_msg db_param_query(byte *buffer, db_state *state)
default:
diagnos =
get_diagnos(SQL_HANDLE_STMT, statement_handle(state), extended_errors(state));
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char*)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
i = param_status.params_processed;
break;
}
@@ -899,7 +914,7 @@ static db_result_msg db_param_query(byte *buffer, db_state *state)
msg = encode_result(state);
}
if(msg.length == 0) {
- msg.buffer = dynamic_buffer(state).buff;
+ msg.buffer = (byte *)dynamic_buffer(state).buff;
msg.length = dynamic_buffer(state).index;
msg.dyn_alloc = TRUE;
} else { /* Error occurred */
@@ -956,7 +971,9 @@ static db_result_msg db_describe_table(byte *sql, db_state *state)
if (!sql_success(SQLPrepare(statement_handle(state), (SQLCHAR *)sql, SQL_NTS))){
diagnos = get_diagnos(SQL_HANDLE_STMT, statement_handle(state), extended_errors(state));
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char *)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
clean_state(state);
return msg;
}
@@ -964,7 +981,9 @@ static db_result_msg db_describe_table(byte *sql, db_state *state)
if(!sql_success(SQLNumResultCols(statement_handle(state),
&num_of_columns))) {
diagnos = get_diagnos(SQL_HANDLE_STMT, statement_handle(state), extended_errors(state));
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char *)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
clean_state(state);
return msg;
}
@@ -992,7 +1011,7 @@ static db_result_msg db_describe_table(byte *sql, db_state *state)
ei_x_encode_empty_list(&dynamic_buffer(state));
clean_state(state);
- msg.buffer = dynamic_buffer(state).buff;
+ msg.buffer = (byte *)dynamic_buffer(state).buff;
msg.length = dynamic_buffer(state).index;
msg.dyn_alloc = TRUE;
return msg;
@@ -1088,7 +1107,9 @@ static db_result_msg encode_result(db_state *state)
if(!sql_success(SQLNumResultCols(statement_handle(state),
&num_of_columns))) {
diagnos = get_diagnos(SQL_HANDLE_STMT, statement_handle(state), extended_errors(state));
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char *)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
clean_state(state);
return msg;
}
@@ -1105,7 +1126,9 @@ static db_result_msg encode_result(db_state *state)
if(!sql_success(SQLRowCount(statement_handle(state), &RowCountPtr))) {
diagnos = get_diagnos(SQL_HANDLE_STMT, statement_handle(state), extended_errors(state));
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char *)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
clean_state(state);
return msg;
}
@@ -1652,7 +1675,7 @@ static void encode_data_type(SQLSMALLINT sql_type, SQLINTEGER size,
}
}
-static Boolean decode_params(db_state *state, byte *buffer, int *index, param_array **params,
+static Boolean decode_params(db_state *state, char *buffer, int *index, param_array **params,
int i, int j, int num_param_values)
{
int erl_type, size;
@@ -1688,7 +1711,7 @@ static Boolean decode_params(db_state *state, byte *buffer, int *index, param_ar
if(erl_type != ERL_STRING_EXT) {
return FALSE;
}
- ei_decode_string(buffer, index, &(param->values.string[param->offset]));
+ ei_decode_string(buffer, index, (char*)&(param->values.string[param->offset]));
param->offset += param->type.len;
}
break;
@@ -2197,7 +2220,7 @@ static void init_driver(int erl_auto_commit_mode, int erl_trace_driver,
DO_EXIT(EXIT_CONNECTION);
}
-static void init_param_column(param_array *params, byte *buffer, int *index,
+static void init_param_column(param_array *params, char *buffer, int *index,
int num_param_values, db_state* state)
{
long user_type, precision, scale, length;
@@ -2509,7 +2532,7 @@ static db_result_msg map_sql_2_c_column(db_column* column, db_state *state)
return msg;
}
-static param_array * bind_parameter_arrays(byte *buffer, int *index,
+static param_array * bind_parameter_arrays(char *buffer, int *index,
int cols, int num_param_values,
db_state *state)
{
@@ -2669,7 +2692,7 @@ static db_result_msg retrive_scrollable_cursor_support_info(db_state *state)
ei_x_encode_atom(&dynamic_buffer(state), "false");
ei_x_encode_atom(&dynamic_buffer(state), "false");
}
- msg.buffer = dynamic_buffer(state).buff;
+ msg.buffer = (byte *)dynamic_buffer(state).buff;
msg.length = dynamic_buffer(state).index;
msg.dyn_alloc = TRUE;
return msg;
@@ -2700,7 +2723,9 @@ static db_result_msg more_result_sets(db_state *state)
diagnos = get_diagnos(SQL_HANDLE_STMT, statement_handle(state), extended_errors(state));
strcat((char *)diagnos.error_msg,
"Failed to create on of the result sets");
- msg = encode_error_message(diagnos.error_msg, extended_error(state, diagnos.sqlState), diagnos.nativeError);
+ msg = encode_error_message((char*)diagnos.error_msg,
+ extended_error(state, diagnos.sqlState),
+ diagnos.nativeError);
return msg;
}
}