24#include <freetds/convert.h>
25#include <freetds/utils/string.h>
31#include <freetds/pushvis.h>
46 short cs_expose_formats;
56 CS_CLIENTMSG *clientmsg;
62 CS_SERVERMSG *servermsg;
76 CS_INT date_convert_fmt;
77 CS_INT cs_errhandletype;
78 CS_INT cs_diag_msglimit;
83 CS_INT cs_diag_msglimit_client;
84 CS_INT cs_diag_msglimit_server;
85 CS_INT cs_diag_msglimit_total;
92 CS_CSLIBMSG_FUNC _cslibmsg_cb;
93 CS_CLIENTMSG_FUNC _clientmsg_cb;
94 CS_SERVERMSG_FUNC _servermsg_cb;
110 TDS_SMALLINT *indicator;
120 TDSSOCKET *tds_socket;
121 CS_CLIENTMSG_FUNC _clientmsg_cb;
122 CS_SERVERMSG_FUNC _servermsg_cb;
149 CS_INT datalen_value;
150 CS_SMALLINT indicator_value;
158typedef CS_PARAM CSREMOTE_PROC_PARAM;
164 CSREMOTE_PROC_PARAM *param_list;
172typedef CS_PARAM CS_DYNAMIC_PARAM;
179 CS_DYNAMIC_PARAM *param_list;
184#define CS_DYNAMIC_CMD 160
185#define CS_CUR_CMD 161
189#define _CS_RES_NONE -1
190#define _CS_RES_INIT 0
191#define _CS_RES_RESULTSET_EMPTY 1
192#define _CS_RES_RESULTSET_ROWS 2
193#define _CS_RES_STATUS 3
194#define _CS_RES_CMD_DONE 4
195#define _CS_RES_CMD_SUCCEED 5
196#define _CS_RES_END_RESULTS 6
197#define _CS_RES_DESCRIBE_RESULT 7
201#define _CS_COMMAND_IDLE 0
202#define _CS_COMMAND_BUILDING 1
203#define _CS_COMMAND_READY 2
204#define _CS_COMMAND_SENT 3
207#define _CS_CANCEL_NOCANCEL 0
208#define _CS_CANCEL_PENDING 1
213 CS_INT command_state;
214 CS_INT results_state;
223 int curr_result_type;
226 int get_data_bytes_returned;
228 CS_INT send_data_started;
230 CS_PARAM *input_params;
231 CS_INT client_cursor_id;
243#define _CS_ERRHAND_INLINE 1
244#define _CS_ERRHAND_CB 2
256#define _CS_CURS_TYPE_UNACTIONED 0
257#define _CS_CURS_TYPE_REQUESTED 1
258#define _CS_CURS_TYPE_SENT 2
263TDSRET _ct_handle_server_message(
const TDSCONTEXT * ctxptr, TDSSOCKET * tdsptr, TDSMESSAGE * msgptr);
264int _ct_handle_client_message(
const TDSCONTEXT * ctxptr, TDSSOCKET * tdsptr, TDSMESSAGE * msgptr);
265TDS_SERVER_TYPE _ct_get_server_type(TDSSOCKET *tds,
int datatype);
267int _ct_get_client_type(
const TDSCOLUMN *col,
bool describe);
268void _ctclient_msg(CS_CONNECTION * con,
const char *funcname,
int layer,
int origin,
int severity,
int number,
269 const char *fmt, ...);
270CS_INT _ct_diag_clearmsg(CS_CONTEXT * context, CS_INT type);
271void _cs_locale_free(CS_LOCALE *locale);
272CS_LOCALE *_cs_locale_copy(CS_LOCALE *orig);
273int _cs_locale_copy_inplace(CS_LOCALE *new_locale, CS_LOCALE *orig);
275int _cs_convert_not_client(CS_CONTEXT *ctx,
const TDSCOLUMN *curcol, CONV_RESULT *convert_buffer,
unsigned char **p_src);
284#include <freetds/popvis.h>
Main include file for libtds.
struct tds_result_info TDSRESULTINFO
Hold information for any results.
struct tds_dynamic TDSDYNAMIC
Holds information for a dynamic (also called prepared) query.
struct tds_cursor TDSCURSOR
Holds informations about a cursor.
int login_timeout
not used unless positive
Definition ctlib.h:101
int query_timeout
not used unless positive
Definition ctlib.h:102