JezK
Edit File: a00416.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=11"/> <meta name="generator" content="Doxygen 1.9.4"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>FreeTDS API: include/freetds/tds.h File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/searchdata.js"></script> <script type="text/javascript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr id="projectrow"> <td id="projectalign"> <div id="projectname">FreeTDS API </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.9.4 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ var searchBox = new SearchBox("searchBox", "search",'Search','.html'); /* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */ </script> <div id="main-nav"></div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> </div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f46f2c05841018b6ef8dbd3316ddb41a.html">freetds</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#define-members">Macros</a> | <a href="#typedef-members">Typedefs</a> | <a href="#enum-members">Enumerations</a> | <a href="#func-members">Functions</a> | <a href="#var-members">Variables</a> </div> <div class="headertitle"><div class="title">tds.h File Reference</div></div> </div><!--header--> <div class="contents"> <p>Main include file for libtds. <a href="#details">More...</a></p> <div class="textblock"><code>#include <stdarg.h></code><br /> <code>#include <stdio.h></code><br /> <code>#include <time.h></code><br /> <code>#include <freetds/version.h></code><br /> <code>#include <freetds/sysdep_private.h></code><br /> <code>#include <freetds/thread.h></code><br /> <code>#include <freetds/bool.h></code><br /> <code>#include <freetds/macros.h></code><br /> <code>#include <freetds/utils/string.h></code><br /> <code>#include <freetds/replacements.h></code><br /> <code>#include <freetds/pushvis.h></code><br /> <code>#include <freetds/proto.h></code><br /> <code>#include <freetds/popvis.h></code><br /> </div><div class="textblock"><div class="dynheader"> Include dependency graph for tds.h:</div> <div class="dyncontent"> <div class="center"><!-- SVG 0 --> </div> </div> </div><div class="textblock"><div class="dynheader"> This graph shows which files directly or indirectly include this file:</div> <div class="dyncontent"> <div class="center"><!-- SVG 1 --> </div> </div> </div> <p><a href="a00416_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01106.html">tds_align_struct</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01194.html">tds_authentication</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01142.html">tds_bcpcoldata</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01222.html">tds_bcpinfo</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01130.html">tds_blob</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Information about blobs (e.g. <a href="a01130.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01114.html">tds_capabilities</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01110.html">tds_capability_type</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01150.html">tds_column</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Metadata about columns in regular and compute rows. <a href="a01150.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01146.html">tds_column_funcs</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01090.html">tds_compiletime_settings</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A structure to hold all the compile-time settings. <a href="a01090.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01206.html">tds_connection</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01190.html">tds_context</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01174.html">tds_cursor</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Holds informations about a cursor. <a href="a01174.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01170.html">tds_cursor_status</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01094.html">TDS_DATETIMEALL</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">this structure is not directed connected to a TDS protocol but keeps any DATE/TIME information. <a href="a01094.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01182.html">tds_dynamic</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Holds information for a dynamic (also called prepared) query. <a href="a01182.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01138.html">tds_encoding</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Information relevant to libiconv. <a href="a01138.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01178.html">tds_env</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Current environment as reported by the server. <a href="a01178.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01218.html">tds_freeze</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01122.html">tds_headers</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01126.html">tds_locale</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01118.html">tds_login</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01162.html">tds_message</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01186.html">tds_multiple</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01102.html">tds_option_arg</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01198.html">tds_packet</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01202.html">tds_poll_wakeup</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01158.html">tds_result_info</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Hold information for any results. <a href="a01158.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01210.html">tds_socket</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Information for a server connection. <a href="a01210.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01166.html">tds_upd_col</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01134.html">tds_variant</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Store variant informations. <a href="a01134.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01098.html">tdsdaterec</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Used by tds_datecrack. <a href="a01098.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01214.html">tdsdump_off_item</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:a27076006c763d7677800498e377d09bb"><td class="memItemLeft" align="right" valign="top"><a id="a27076006c763d7677800498e377d09bb" name="a27076006c763d7677800498e377d09bb"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_ascii_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_ASCII) != 0)</td></tr> <tr class="separator:a27076006c763d7677800498e377d09bb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a16be2ee38b0c330b14e661b2984aa001"><td class="memItemLeft" align="right" valign="top"><a id="a16be2ee38b0c330b14e661b2984aa001" name="a16be2ee38b0c330b14e661b2984aa001"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_binary_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_BINARY) != 0)</td></tr> <tr class="separator:a16be2ee38b0c330b14e661b2984aa001"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7079a5484d07acad8f14a2e0e38f7c30"><td class="memItemLeft" align="right" valign="top"><a id="a7079a5484d07acad8f14a2e0e38f7c30" name="a7079a5484d07acad8f14a2e0e38f7c30"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_blob_col</b>(x)   ((x)->column_varint_size > 2)</td></tr> <tr class="separator:a7079a5484d07acad8f14a2e0e38f7c30"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a540d385607ae0a33503b84668ead2dce"><td class="memItemLeft" align="right" valign="top"><a id="a540d385607ae0a33503b84668ead2dce" name="a540d385607ae0a33503b84668ead2dce"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_blob_type</b>(x)   ((x)==SYBTEXT || (x)==SYBIMAGE || (x)==SYBNTEXT)</td></tr> <tr class="separator:a540d385607ae0a33503b84668ead2dce"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9f5a6b04a48255957bf95957f52290af"><td class="memItemLeft" align="right" valign="top"><a id="a9f5a6b04a48255957bf95957f52290af" name="a9f5a6b04a48255957bf95957f52290af"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_char_type</b>(x)   ((tds_type_flags_ms[x] & (TDS_TYPEFLAG_ASCII|TDS_TYPEFLAG_UNICODE)) != 0)</td></tr> <tr class="separator:a9f5a6b04a48255957bf95957f52290af"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac2e0ee7184f3029ca5b91f12c6da362c"><td class="memItemLeft" align="right" valign="top"><a id="ac2e0ee7184f3029ca5b91f12c6da362c" name="ac2e0ee7184f3029ca5b91f12c6da362c"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_collate_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_COLLATE) != 0)</td></tr> <tr class="separator:ac2e0ee7184f3029ca5b91f12c6da362c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4a70a4d36139165f8be99ea6fffb57ce"><td class="memItemLeft" align="right" valign="top"><a id="a4a70a4d36139165f8be99ea6fffb57ce" name="a4a70a4d36139165f8be99ea6fffb57ce"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_datetime_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_DATETIME) != 0)</td></tr> <tr class="memdesc:a4a70a4d36139165f8be99ea6fffb57ce"><td class="mdescLeft"> </td><td class="mdescRight">return true if type is a datetime (but not date or time) <br /></td></tr> <tr class="separator:a4a70a4d36139165f8be99ea6fffb57ce"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa372e2f4beda191dd72830a2df0907ed"><td class="memItemLeft" align="right" valign="top"><a id="aa372e2f4beda191dd72830a2df0907ed" name="aa372e2f4beda191dd72830a2df0907ed"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_end_token</b>(x)   ((x) >= TDS_DONE_TOKEN && (x) <= TDS_DONEINPROC_TOKEN)</td></tr> <tr class="separator:aa372e2f4beda191dd72830a2df0907ed"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a25d0359da355d849d73456258312197a"><td class="memItemLeft" align="right" valign="top"><a id="a25d0359da355d849d73456258312197a" name="a25d0359da355d849d73456258312197a"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_fixed_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_FIXED) != 0)</td></tr> <tr class="separator:a25d0359da355d849d73456258312197a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa7294478d5bc9dd038f3fda5c72fd95e"><td class="memItemLeft" align="right" valign="top"><a id="aa7294478d5bc9dd038f3fda5c72fd95e" name="aa7294478d5bc9dd038f3fda5c72fd95e"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_nullable_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_NULLABLE) != 0)</td></tr> <tr class="separator:aa7294478d5bc9dd038f3fda5c72fd95e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0de558c9ae34e89f6948ff8bdf63966e"><td class="memItemLeft" align="right" valign="top"><a id="a0de558c9ae34e89f6948ff8bdf63966e" name="a0de558c9ae34e89f6948ff8bdf63966e"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_numeric_type</b>(x)   ((x)==SYBNUMERIC || (x)==SYBDECIMAL)</td></tr> <tr class="separator:a0de558c9ae34e89f6948ff8bdf63966e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae5a035768ec16a3ab189e9575569f9aa"><td class="memItemLeft" align="right" valign="top"><a id="ae5a035768ec16a3ab189e9575569f9aa" name="ae5a035768ec16a3ab189e9575569f9aa"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_similar_type</b>(x, y)   (is_char_type(x) && is_char_type(y))</td></tr> <tr class="separator:ae5a035768ec16a3ab189e9575569f9aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1edf17f94336587bccf44fba23e0907e"><td class="memItemLeft" align="right" valign="top"><a id="a1edf17f94336587bccf44fba23e0907e" name="a1edf17f94336587bccf44fba23e0907e"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS42</b>(x)   (x->tds_version==0x402)</td></tr> <tr class="separator:a1edf17f94336587bccf44fba23e0907e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac660a33bd64f09148725382725dbb1d4"><td class="memItemLeft" align="right" valign="top"><a id="ac660a33bd64f09148725382725dbb1d4" name="ac660a33bd64f09148725382725dbb1d4"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS46</b>(x)   (x->tds_version==0x406)</td></tr> <tr class="separator:ac660a33bd64f09148725382725dbb1d4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a450a5e8fb4ec7f5595fe2f164b0e189c"><td class="memItemLeft" align="right" valign="top"><a id="a450a5e8fb4ec7f5595fe2f164b0e189c" name="a450a5e8fb4ec7f5595fe2f164b0e189c"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS50</b>(x)   (x->tds_version==0x500)</td></tr> <tr class="separator:a450a5e8fb4ec7f5595fe2f164b0e189c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a18b0c1991a2c4632a2b70f26b33fbf06"><td class="memItemLeft" align="right" valign="top"><a id="a18b0c1991a2c4632a2b70f26b33fbf06" name="a18b0c1991a2c4632a2b70f26b33fbf06"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS50_PLUS</b>(x)   ((x)->tds_version>=0x500)</td></tr> <tr class="separator:a18b0c1991a2c4632a2b70f26b33fbf06"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa57b877ec00f94850eee3587d055653e"><td class="memItemLeft" align="right" valign="top"><a id="aa57b877ec00f94850eee3587d055653e" name="aa57b877ec00f94850eee3587d055653e"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS70</b>(x)   (x->tds_version==0x700)</td></tr> <tr class="separator:aa57b877ec00f94850eee3587d055653e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab878edb1985cbed5311536df4152faed"><td class="memItemLeft" align="right" valign="top"><a id="ab878edb1985cbed5311536df4152faed" name="ab878edb1985cbed5311536df4152faed"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS71</b>(x)   (x->tds_version==0x701)</td></tr> <tr class="separator:ab878edb1985cbed5311536df4152faed"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a161e24c0aed935c73707997568119f3d"><td class="memItemLeft" align="right" valign="top"><a id="a161e24c0aed935c73707997568119f3d" name="a161e24c0aed935c73707997568119f3d"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS71_PLUS</b>(x)   ((x)->tds_version>=0x701)</td></tr> <tr class="separator:a161e24c0aed935c73707997568119f3d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adb667f7a6092d523bda14e12e4768b8b"><td class="memItemLeft" align="right" valign="top"><a id="adb667f7a6092d523bda14e12e4768b8b" name="adb667f7a6092d523bda14e12e4768b8b"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS72</b>(x)   (x->tds_version==0x702)</td></tr> <tr class="separator:adb667f7a6092d523bda14e12e4768b8b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a74d5fae39962b28fd5934a75de97bf3b"><td class="memItemLeft" align="right" valign="top"><a id="a74d5fae39962b28fd5934a75de97bf3b" name="a74d5fae39962b28fd5934a75de97bf3b"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS72_PLUS</b>(x)   ((x)->tds_version>=0x702)</td></tr> <tr class="separator:a74d5fae39962b28fd5934a75de97bf3b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab5d12549d67ee1cf0ffa24834e638e06"><td class="memItemLeft" align="right" valign="top"><a id="ab5d12549d67ee1cf0ffa24834e638e06" name="ab5d12549d67ee1cf0ffa24834e638e06"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS73</b>(x)   (x->tds_version==0x703)</td></tr> <tr class="separator:ab5d12549d67ee1cf0ffa24834e638e06"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aec12eabe1caba204bedd41c997168733"><td class="memItemLeft" align="right" valign="top"><a id="aec12eabe1caba204bedd41c997168733" name="aec12eabe1caba204bedd41c997168733"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS73_PLUS</b>(x)   ((x)->tds_version>=0x703)</td></tr> <tr class="separator:aec12eabe1caba204bedd41c997168733"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af6114a10faad7125c2857b897d2d706e"><td class="memItemLeft" align="right" valign="top"><a id="af6114a10faad7125c2857b897d2d706e" name="af6114a10faad7125c2857b897d2d706e"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS74_PLUS</b>(x)   ((x)->tds_version>=0x704)</td></tr> <tr class="separator:af6114a10faad7125c2857b897d2d706e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a98778e4a8853885d919307a86806706d"><td class="memItemLeft" align="right" valign="top"><a id="a98778e4a8853885d919307a86806706d" name="a98778e4a8853885d919307a86806706d"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDS7_PLUS</b>(x)   ((x)->tds_version>=0x700)</td></tr> <tr class="separator:a98778e4a8853885d919307a86806706d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9b18a0172853988bfe017f7117158185"><td class="memItemLeft" align="right" valign="top"><a id="a9b18a0172853988bfe017f7117158185" name="a9b18a0172853988bfe017f7117158185"></a> #define </td><td class="memItemRight" valign="bottom"><b>IS_TDSDEAD</b>(x)   (((x) == NULL) || (x)->state == <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33af087b64970a1fb35bbcf1bc6ea7a643d">TDS_DEAD</a>)</td></tr> <tr class="separator:a9b18a0172853988bfe017f7117158185"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a671909a5ed9edf1ee620c679d143f2f9"><td class="memItemLeft" align="right" valign="top"><a id="a671909a5ed9edf1ee620c679d143f2f9" name="a671909a5ed9edf1ee620c679d143f2f9"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_unicode_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_UNICODE) != 0)</td></tr> <tr class="separator:a671909a5ed9edf1ee620c679d143f2f9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2190c342ff4658385c26f8beb6bc6057"><td class="memItemLeft" align="right" valign="top"><a id="a2190c342ff4658385c26f8beb6bc6057" name="a2190c342ff4658385c26f8beb6bc6057"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_variable_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_VARIABLE) != 0)</td></tr> <tr class="separator:a2190c342ff4658385c26f8beb6bc6057"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a95fe1a26a7c8c667ac58aa3e226ad5c5"><td class="memItemLeft" align="right" valign="top"><a id="a95fe1a26a7c8c667ac58aa3e226ad5c5" name="a95fe1a26a7c8c667ac58aa3e226ad5c5"></a> #define </td><td class="memItemRight" valign="bottom"><b>is_variant_inner_type</b>(x)   ((tds_type_flags_ms[x] & TDS_TYPEFLAG_VARIANT) != 0)</td></tr> <tr class="separator:a95fe1a26a7c8c667ac58aa3e226ad5c5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae969642b66c63bcde271b544e1347701"><td class="memItemLeft" align="right" valign="top"><a id="ae969642b66c63bcde271b544e1347701" name="ae969642b66c63bcde271b544e1347701"></a> #define </td><td class="memItemRight" valign="bottom"><b>MAXPRECISION</b>   77</td></tr> <tr class="separator:ae969642b66c63bcde271b544e1347701"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a147b4e0acb9033f8498c55c7355e33f0"><td class="memItemLeft" align="right" valign="top"><a id="a147b4e0acb9033f8498c55c7355e33f0" name="a147b4e0acb9033f8498c55c7355e33f0"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_ALIGN_SIZE</b>   sizeof(<a class="el" href="a01106.html">tds_align_struct</a>)</td></tr> <tr class="separator:a147b4e0acb9033f8498c55c7355e33f0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad659669113501ad92f406b25d6d70432"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ad659669113501ad92f406b25d6d70432">TDS_BYTE_SWAP16</a>(value)</td></tr> <tr class="separator:ad659669113501ad92f406b25d6d70432"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0938069354a4e9076192d6f6bf6a0aff"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a0938069354a4e9076192d6f6bf6a0aff">TDS_BYTE_SWAP32</a>(value)</td></tr> <tr class="separator:a0938069354a4e9076192d6f6bf6a0aff"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a987e54bec017cf5b8ccd961ed717e178"><td class="memItemLeft" align="right" valign="top"><a id="a987e54bec017cf5b8ccd961ed717e178" name="a987e54bec017cf5b8ccd961ed717e178"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_CANCELLED</b>   ((TDSRET)-2)</td></tr> <tr class="separator:a987e54bec017cf5b8ccd961ed717e178"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1c08a758fed595d0da501fe2b2c51ae9"><td class="memItemLeft" align="right" valign="top"><a id="a1c08a758fed595d0da501fe2b2c51ae9" name="a1c08a758fed595d0da501fe2b2c51ae9"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_capability_has_req</b>(conn, cap)    tds_capability_enabled(&conn->capabilities.types[0], cap)</td></tr> <tr class="separator:a1c08a758fed595d0da501fe2b2c51ae9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a98eac18f295fb2ca2e71fe9038fe6fc6"><td class="memItemLeft" align="right" valign="top"><a id="a98eac18f295fb2ca2e71fe9038fe6fc6" name="a98eac18f295fb2ca2e71fe9038fe6fc6"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_capability_has_res</b>(conn, cap)    tds_capability_enabled(&conn->capabilities.types[1], cap)</td></tr> <tr class="separator:a98eac18f295fb2ca2e71fe9038fe6fc6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7c5d144e678cc1a2cb58dd6603c35976"><td class="memItemLeft" align="right" valign="top"><a id="a7c5d144e678cc1a2cb58dd6603c35976" name="a7c5d144e678cc1a2cb58dd6603c35976"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_CMD_DONE</b>   4046</td></tr> <tr class="separator:a7c5d144e678cc1a2cb58dd6603c35976"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5a6a75d0ad420fbc34401d353c67829f"><td class="memItemLeft" align="right" valign="top"><a id="a5a6a75d0ad420fbc34401d353c67829f" name="a5a6a75d0ad420fbc34401d353c67829f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_CMD_FAIL</b>   4048</td></tr> <tr class="separator:a5a6a75d0ad420fbc34401d353c67829f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7b5fda0bc550a00bf06190607257c197"><td class="memItemLeft" align="right" valign="top"><a id="a7b5fda0bc550a00bf06190607257c197" name="a7b5fda0bc550a00bf06190607257c197"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_CMD_SUCCEED</b>   4047</td></tr> <tr class="separator:a7b5fda0bc550a00bf06190607257c197"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a75fcc7a27492246eb957cdb89ec1af15"><td class="memItemLeft" align="right" valign="top"><a id="a75fcc7a27492246eb957cdb89ec1af15" name="a75fcc7a27492246eb957cdb89ec1af15"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_COMPUTE_RESULT</b>   4045</td></tr> <tr class="separator:a75fcc7a27492246eb957cdb89ec1af15"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a479e82672eb40aabc5cf9dbdd05317fa"><td class="memItemLeft" align="right" valign="top"><a id="a479e82672eb40aabc5cf9dbdd05317fa" name="a479e82672eb40aabc5cf9dbdd05317fa"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_COMPUTEFMT_RESULT</b>   4050</td></tr> <tr class="separator:a479e82672eb40aabc5cf9dbdd05317fa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a953e9737e46ce863c7f6434d163053b0"><td class="memItemLeft" align="right" valign="top"><a id="a953e9737e46ce863c7f6434d163053b0" name="a953e9737e46ce863c7f6434d163053b0"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_convert_string_free</b>(original, converted)    do { if (original != converted) free((char*) converted); } while(0)</td></tr> <tr class="separator:a953e9737e46ce863c7f6434d163053b0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac1f3383a2200e99c599498fb4945e734"><td class="memItemLeft" align="right" valign="top"><a id="ac1f3383a2200e99c599498fb4945e734" name="ac1f3383a2200e99c599498fb4945e734"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_ERROR</b>   __FILE__, ((__LINE__ << 4) | 2)</td></tr> <tr class="separator:ac1f3383a2200e99c599498fb4945e734"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afa94a4f0c586daeba8529952940406c5"><td class="memItemLeft" align="right" valign="top"><a id="afa94a4f0c586daeba8529952940406c5" name="afa94a4f0c586daeba8529952940406c5"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_FUNC</b>   __FILE__, ((__LINE__ << 4) | 7)</td></tr> <tr class="separator:afa94a4f0c586daeba8529952940406c5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9b1b1d59522ba5e360a98a29db22bd13"><td class="memItemLeft" align="right" valign="top"><a id="a9b1b1d59522ba5e360a98a29db22bd13" name="a9b1b1d59522ba5e360a98a29db22bd13"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_HEADER</b>   __FILE__, ((__LINE__ << 4) | 10)</td></tr> <tr class="separator:a9b1b1d59522ba5e360a98a29db22bd13"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3950225e64d5ab466aadf4683232cdc8"><td class="memItemLeft" align="right" valign="top"><a id="a3950225e64d5ab466aadf4683232cdc8" name="a3950225e64d5ab466aadf4683232cdc8"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_INFO1</b>   __FILE__, ((__LINE__ << 4) | 5)</td></tr> <tr class="separator:a3950225e64d5ab466aadf4683232cdc8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2cf39620a1869e933651bf70042a5ab7"><td class="memItemLeft" align="right" valign="top"><a id="a2cf39620a1869e933651bf70042a5ab7" name="a2cf39620a1869e933651bf70042a5ab7"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_INFO2</b>   __FILE__, ((__LINE__ << 4) | 6)</td></tr> <tr class="separator:a2cf39620a1869e933651bf70042a5ab7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a071589eabd77134c0e4893ff57307fdc"><td class="memItemLeft" align="right" valign="top"><a id="a071589eabd77134c0e4893ff57307fdc" name="a071589eabd77134c0e4893ff57307fdc"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_LOGIN</b>   __FILE__, ((__LINE__ << 4) | 11)</td></tr> <tr class="separator:a071589eabd77134c0e4893ff57307fdc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afdf75d24d2f7957a8e6862f16283c92f"><td class="memItemLeft" align="right" valign="top"><a id="afdf75d24d2f7957a8e6862f16283c92f" name="afdf75d24d2f7957a8e6862f16283c92f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_NETWORK</b>   __FILE__, ((__LINE__ << 4) | 4)</td></tr> <tr class="separator:afdf75d24d2f7957a8e6862f16283c92f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5642fbfb85eb4b0cdd24f5604ed26fee"><td class="memItemLeft" align="right" valign="top"><a id="a5642fbfb85eb4b0cdd24f5604ed26fee" name="a5642fbfb85eb4b0cdd24f5604ed26fee"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_SEVERE</b>   __FILE__, ((__LINE__ << 4) | 1)</td></tr> <tr class="separator:a5642fbfb85eb4b0cdd24f5604ed26fee"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a40854b0986c3ba6cdba1438e8314a63e"><td class="memItemLeft" align="right" valign="top"><a id="a40854b0986c3ba6cdba1438e8314a63e" name="a40854b0986c3ba6cdba1438e8314a63e"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBG_WARN</b>   __FILE__, ((__LINE__ << 4) | 3)</td></tr> <tr class="separator:a40854b0986c3ba6cdba1438e8314a63e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa65edd657d85f90b1469ffa94eb040af"><td class="memItemLeft" align="right" valign="top"><a id="aa65edd657d85f90b1469ffa94eb040af" name="aa65edd657d85f90b1469ffa94eb040af"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_ALL</b>   0xfff</td></tr> <tr class="separator:aa65edd657d85f90b1469ffa94eb040af"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a13ee65332e29b5fc43a563740fbc956a"><td class="memItemLeft" align="right" valign="top"><a id="a13ee65332e29b5fc43a563740fbc956a" name="a13ee65332e29b5fc43a563740fbc956a"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_ERROR</b>   0x04</td></tr> <tr class="separator:a13ee65332e29b5fc43a563740fbc956a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a94126be42716ed949524e31823a79a4e"><td class="memItemLeft" align="right" valign="top"><a id="a94126be42716ed949524e31823a79a4e" name="a94126be42716ed949524e31823a79a4e"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_FUNC</b>   0x80</td></tr> <tr class="separator:a94126be42716ed949524e31823a79a4e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abb172dc3aebc8166be458abce454bb20"><td class="memItemLeft" align="right" valign="top"><a id="abb172dc3aebc8166be458abce454bb20" name="abb172dc3aebc8166be458abce454bb20"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_HEADER</b>   0x0400</td></tr> <tr class="separator:abb172dc3aebc8166be458abce454bb20"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7ef1ca3e3d9500661963e70bad105c75"><td class="memItemLeft" align="right" valign="top"><a id="a7ef1ca3e3d9500661963e70bad105c75" name="a7ef1ca3e3d9500661963e70bad105c75"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_INFO1</b>   0x20</td></tr> <tr class="separator:a7ef1ca3e3d9500661963e70bad105c75"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad429fb491cacbfb888c753f7ab9048c0"><td class="memItemLeft" align="right" valign="top"><a id="ad429fb491cacbfb888c753f7ab9048c0" name="ad429fb491cacbfb888c753f7ab9048c0"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_INFO2</b>   0x40</td></tr> <tr class="separator:ad429fb491cacbfb888c753f7ab9048c0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adbc9cf9fa9c90b7ae431495ce5ab0453"><td class="memItemLeft" align="right" valign="top"><a id="adbc9cf9fa9c90b7ae431495ce5ab0453" name="adbc9cf9fa9c90b7ae431495ce5ab0453"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_LOGIN</b>   0x0800</td></tr> <tr class="separator:adbc9cf9fa9c90b7ae431495ce5ab0453"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a717da995e67e44dadc1ba60bfa64e98a"><td class="memItemLeft" align="right" valign="top"><a id="a717da995e67e44dadc1ba60bfa64e98a" name="a717da995e67e44dadc1ba60bfa64e98a"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_NETWORK</b>   0x10</td></tr> <tr class="separator:a717da995e67e44dadc1ba60bfa64e98a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab7897999989d65a6dfc64c2dc0ba5ce8"><td class="memItemLeft" align="right" valign="top"><a id="ab7897999989d65a6dfc64c2dc0ba5ce8" name="ab7897999989d65a6dfc64c2dc0ba5ce8"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_PID</b>   0x1000</td></tr> <tr class="separator:ab7897999989d65a6dfc64c2dc0ba5ce8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2236ba61ae448df4608a1486b3135109"><td class="memItemLeft" align="right" valign="top"><a id="a2236ba61ae448df4608a1486b3135109" name="a2236ba61ae448df4608a1486b3135109"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_SEVERE</b>   0x02</td></tr> <tr class="separator:a2236ba61ae448df4608a1486b3135109"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a31375b2e592ddf92e5b34ae5d35430c1"><td class="memItemLeft" align="right" valign="top"><a id="a31375b2e592ddf92e5b34ae5d35430c1" name="a31375b2e592ddf92e5b34ae5d35430c1"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_SOURCE</b>   0x4000</td></tr> <tr class="separator:a31375b2e592ddf92e5b34ae5d35430c1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad4a6b18f8da35c2595cc2af2022fe29f"><td class="memItemLeft" align="right" valign="top"><a id="ad4a6b18f8da35c2595cc2af2022fe29f" name="ad4a6b18f8da35c2595cc2af2022fe29f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_THREAD</b>   0x8000</td></tr> <tr class="separator:ad4a6b18f8da35c2595cc2af2022fe29f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a798592931c00ddce761f1b9b19338d47"><td class="memItemLeft" align="right" valign="top"><a id="a798592931c00ddce761f1b9b19338d47" name="a798592931c00ddce761f1b9b19338d47"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_TIME</b>   0x2000</td></tr> <tr class="separator:a798592931c00ddce761f1b9b19338d47"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af59a0a971b30d24c788c9fad6b62c1d1"><td class="memItemLeft" align="right" valign="top"><a id="af59a0a971b30d24c788c9fad6b62c1d1" name="af59a0a971b30d24c788c9fad6b62c1d1"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DBGFLAG_WARN</b>   0x08</td></tr> <tr class="separator:af59a0a971b30d24c788c9fad6b62c1d1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a47a75fa46b0f98295b0dfce4423508a0"><td class="memItemLeft" align="right" valign="top"><a id="a47a75fa46b0f98295b0dfce4423508a0" name="a47a75fa46b0f98295b0dfce4423508a0"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DEF_BLKSZ</b>   512</td></tr> <tr class="separator:a47a75fa46b0f98295b0dfce4423508a0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af8b5737615d8bb8b40b5a88a46686fac"><td class="memItemLeft" align="right" valign="top"><a id="af8b5737615d8bb8b40b5a88a46686fac" name="af8b5737615d8bb8b40b5a88a46686fac"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DEF_CHARSET</b>   "iso_1"</td></tr> <tr class="separator:af8b5737615d8bb8b40b5a88a46686fac"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae547d6d79fcc81bd73f1da1f1721fe1f"><td class="memItemLeft" align="right" valign="top"><a id="ae547d6d79fcc81bd73f1da1f1721fe1f" name="ae547d6d79fcc81bd73f1da1f1721fe1f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DEF_LANG</b>   "us_english"</td></tr> <tr class="separator:ae547d6d79fcc81bd73f1da1f1721fe1f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a39241b32408fd5657bd563572dba1b14"><td class="memItemLeft" align="right" valign="top"><a id="a39241b32408fd5657bd563572dba1b14" name="a39241b32408fd5657bd563572dba1b14"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DEF_PORT</b>   1433</td></tr> <tr class="separator:a39241b32408fd5657bd563572dba1b14"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3b59abb89427d668014921da4a8e0875"><td class="memItemLeft" align="right" valign="top"><a id="a3b59abb89427d668014921da4a8e0875" name="a3b59abb89427d668014921da4a8e0875"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DEF_SERVER</b>   "SYBASE"</td></tr> <tr class="separator:a3b59abb89427d668014921da4a8e0875"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa6e55a1882eaf5f82fbae34032651be2"><td class="memItemLeft" align="right" valign="top"><a id="aa6e55a1882eaf5f82fbae34032651be2" name="aa6e55a1882eaf5f82fbae34032651be2"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DEFAULT_VERSION</b>   0x000</td></tr> <tr class="separator:aa6e55a1882eaf5f82fbae34032651be2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6f2173e7c2dbd848bc724bba86da894f"><td class="memItemLeft" align="right" valign="top"><a id="a6f2173e7c2dbd848bc724bba86da894f" name="a6f2173e7c2dbd848bc724bba86da894f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DESCRIBE_RESULT</b>   4051</td></tr> <tr class="separator:a6f2173e7c2dbd848bc724bba86da894f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a242ca99262fcaeff437e6a42e83c6649"><td class="memItemLeft" align="right" valign="top"><a id="a242ca99262fcaeff437e6a42e83c6649" name="a242ca99262fcaeff437e6a42e83c6649"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DONE_RESULT</b>   4052</td></tr> <tr class="separator:a242ca99262fcaeff437e6a42e83c6649"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af3889ccafd75d8b807826f25b98fc09a"><td class="memItemLeft" align="right" valign="top"><a id="af3889ccafd75d8b807826f25b98fc09a" name="af3889ccafd75d8b807826f25b98fc09a"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DONEINPROC_RESULT</b>   4054</td></tr> <tr class="separator:af3889ccafd75d8b807826f25b98fc09a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a118049e5966e7039f7723d8e4e3d4f92"><td class="memItemLeft" align="right" valign="top"><a id="a118049e5966e7039f7723d8e4e3d4f92" name="a118049e5966e7039f7723d8e4e3d4f92"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_DONEPROC_RESULT</b>   4053</td></tr> <tr class="separator:a118049e5966e7039f7723d8e4e3d4f92"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6329b94e237b805dadc7d6e2cf2f01fa"><td class="memItemLeft" align="right" valign="top"><a id="a6329b94e237b805dadc7d6e2cf2f01fa" name="a6329b94e237b805dadc7d6e2cf2f01fa"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_END_LEN</b>   while(0); } while(<a class="el" href="a00543.html#ga633f62fb8e5310abfa42c02fba9c6500">tds_freeze_close</a>(current_freeze), 0); } while(0);</td></tr> <tr class="separator:a6329b94e237b805dadc7d6e2cf2f01fa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a00af8531b7139b5c387231a542ed5611"><td class="memItemLeft" align="right" valign="top"><a id="a00af8531b7139b5c387231a542ed5611" name="a00af8531b7139b5c387231a542ed5611"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_FAIL</b>   ((TDSRET)-1)</td></tr> <tr class="separator:a00af8531b7139b5c387231a542ed5611"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a122058fc57306cb5cf766793f02861cb"><td class="memItemLeft" align="right" valign="top"><a id="a122058fc57306cb5cf766793f02861cb" name="a122058fc57306cb5cf766793f02861cb"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_FAILED</b>(rc)   ((rc)<0)</td></tr> <tr class="separator:a122058fc57306cb5cf766793f02861cb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae2a35b916f213c239af21edbde6990ae"><td class="memItemLeft" align="right" valign="top"><a id="ae2a35b916f213c239af21edbde6990ae" name="ae2a35b916f213c239af21edbde6990ae"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_get_ctx</b>(tds)   ((tds)->conn->tds_ctx)</td></tr> <tr class="separator:ae2a35b916f213c239af21edbde6990ae"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4dca1dfe5cddb568ab10945398e95104"><td class="memItemLeft" align="right" valign="top"><a id="a4dca1dfe5cddb568ab10945398e95104" name="a4dca1dfe5cddb568ab10945398e95104"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_get_int</b>(tds)   ((TDS_INT) <a class="el" href="a00543.html#ga9ac121c269e203337a48c5bf8afc48c3">tds_get_uint</a>(tds))</td></tr> <tr class="separator:a4dca1dfe5cddb568ab10945398e95104"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aecf9533c4757c096b014026ff335f2aa"><td class="memItemLeft" align="right" valign="top"><a id="aecf9533c4757c096b014026ff335f2aa" name="aecf9533c4757c096b014026ff335f2aa"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_get_int8</b>(tds)   ((TDS_INT8) <a class="el" href="a00543.html#ga8ab6c87318eaf15ea17a9575763f7809">tds_get_uint8</a>(tds))</td></tr> <tr class="separator:aecf9533c4757c096b014026ff335f2aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1eb9f55bb86919e70ceaa382343ee12c"><td class="memItemLeft" align="right" valign="top"><a id="a1eb9f55bb86919e70ceaa382343ee12c" name="a1eb9f55bb86919e70ceaa382343ee12c"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_get_parent</b>(tds)   ((tds)->parent)</td></tr> <tr class="separator:a1eb9f55bb86919e70ceaa382343ee12c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5f4113d7ff8d3737a64e75b8d7aae03f"><td class="memItemLeft" align="right" valign="top"><a id="a5f4113d7ff8d3737a64e75b8d7aae03f" name="a5f4113d7ff8d3737a64e75b8d7aae03f"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_get_s</b>(tds)   ((tds)->conn->s)</td></tr> <tr class="separator:a5f4113d7ff8d3737a64e75b8d7aae03f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a587b60a5a1b50d275186ff3e41aa27d0"><td class="memItemLeft" align="right" valign="top"><a id="a587b60a5a1b50d275186ff3e41aa27d0" name="a587b60a5a1b50d275186ff3e41aa27d0"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_get_smallint</b>(tds)   ((TDS_SMALLINT) <a class="el" href="a00543.html#gad38aa5b9547817854ccba1fcc7855861">tds_get_usmallint</a>(tds))</td></tr> <tr class="separator:a587b60a5a1b50d275186ff3e41aa27d0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac23cc07f005c0757757ef531f2d5efd4"><td class="memItemLeft" align="right" valign="top"><a id="ac23cc07f005c0757757ef531f2d5efd4" name="ac23cc07f005c0757757ef531f2d5efd4"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_GSSAPI_DELEGATION</b>   "enable gssapi delegation"</td></tr> <tr class="separator:ac23cc07f005c0757757ef531f2d5efd4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a641841d19c741f825d94967699f254a5"><td class="memItemLeft" align="right" valign="top"><a id="a641841d19c741f825d94967699f254a5" name="a641841d19c741f825d94967699f254a5"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_INT_CANCEL</b>   2</td></tr> <tr class="separator:a641841d19c741f825d94967699f254a5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a53543ec1891d73a538d7747a0e522861"><td class="memItemLeft" align="right" valign="top"><a id="a53543ec1891d73a538d7747a0e522861" name="a53543ec1891d73a538d7747a0e522861"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_INT_CONTINUE</b>   1</td></tr> <tr class="separator:a53543ec1891d73a538d7747a0e522861"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0c761fe649b70bc2f918b51545104f20"><td class="memItemLeft" align="right" valign="top"><a id="a0c761fe649b70bc2f918b51545104f20" name="a0c761fe649b70bc2f918b51545104f20"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_INT_TIMEOUT</b>   3</td></tr> <tr class="separator:a0c761fe649b70bc2f918b51545104f20"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a344de1e031df0e1d11a10aa70cc38944"><td class="memItemLeft" align="right" valign="top"><a id="a344de1e031df0e1d11a10aa70cc38944" name="a344de1e031df0e1d11a10aa70cc38944"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_INVALID_TYPE</b>   ((TDS_SERVER_TYPE) 0)</td></tr> <tr class="separator:a344de1e031df0e1d11a10aa70cc38944"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a07e9371c3e72b9e319f4c14e6fc2c20f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a07e9371c3e72b9e319f4c14e6fc2c20f">TDS_IS_MSSQL</a>(x)   (((x)->conn->product_version & 0x80000000u)!=0)</td></tr> <tr class="memdesc:a07e9371c3e72b9e319f4c14e6fc2c20f"><td class="mdescLeft"> </td><td class="mdescRight">Check if product is Microsft SQL Server. <a href="a00416.html#a07e9371c3e72b9e319f4c14e6fc2c20f">More...</a><br /></td></tr> <tr class="separator:a07e9371c3e72b9e319f4c14e6fc2c20f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4840433488d0c66601ff4002a54b41d7"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a4840433488d0c66601ff4002a54b41d7">TDS_IS_SYBASE</a>(x)   (!((x)->conn->product_version & 0x80000000u))</td></tr> <tr class="memdesc:a4840433488d0c66601ff4002a54b41d7"><td class="mdescLeft"> </td><td class="mdescRight">Check if product is Sybase (such as Adaptive Server Enterrprice). <a href="a00416.html#a4840433488d0c66601ff4002a54b41d7">More...</a><br /></td></tr> <tr class="separator:a4840433488d0c66601ff4002a54b41d7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4c5b8e1e1e56bdd1314671f63ac8f533"><td class="memItemLeft" align="right" valign="top"><a id="a4c5b8e1e1e56bdd1314671f63ac8f533" name="a4c5b8e1e1e56bdd1314671f63ac8f533"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_MAJOR</b>(x)   ((x)->tds_version >> 8)</td></tr> <tr class="separator:a4c5b8e1e1e56bdd1314671f63ac8f533"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae2a6a1d1aa0f89755afc396d86720350"><td class="memItemLeft" align="right" valign="top"><a id="ae2a6a1d1aa0f89755afc396d86720350" name="ae2a6a1d1aa0f89755afc396d86720350"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_MAX_CAPABILITY</b>   32</td></tr> <tr class="separator:ae2a6a1d1aa0f89755afc396d86720350"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a739b92ed8455d1976bf071e31b097a5b"><td class="memItemLeft" align="right" valign="top"><a id="a739b92ed8455d1976bf071e31b097a5b" name="a739b92ed8455d1976bf071e31b097a5b"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_MAX_CONN</b>   4096</td></tr> <tr class="separator:a739b92ed8455d1976bf071e31b097a5b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a64445847850c4ae0c18961b0b90264ba"><td class="memItemLeft" align="right" valign="top"><a id="a64445847850c4ae0c18961b0b90264ba" name="a64445847850c4ae0c18961b0b90264ba"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_MAX_DYNID_LEN</b>   30</td></tr> <tr class="separator:a64445847850c4ae0c18961b0b90264ba"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adb50785650a22792f34be80b7d77d3f0"><td class="memItemLeft" align="right" valign="top"><a id="adb50785650a22792f34be80b7d77d3f0" name="adb50785650a22792f34be80b7d77d3f0"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_MAX_LOGIN_STR_SZ</b>   128</td></tr> <tr class="separator:adb50785650a22792f34be80b7d77d3f0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a24afa5b41e3b492defaa2356931a68c1"><td class="memItemLeft" align="right" valign="top"><a id="a24afa5b41e3b492defaa2356931a68c1" name="a24afa5b41e3b492defaa2356931a68c1"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_MINOR</b>(x)   ((x)->tds_version & 0xff)</td></tr> <tr class="separator:a24afa5b41e3b492defaa2356931a68c1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1f5fb9d2184949ed566c8ce308a4e91e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a1f5fb9d2184949ed566c8ce308a4e91e">TDS_MS_VER</a>(maj, min, x)   (0x80000000u|((maj)<<24)|((min)<<16)|(x))</td></tr> <tr class="memdesc:a1f5fb9d2184949ed566c8ce308a4e91e"><td class="mdescLeft"> </td><td class="mdescRight">Calc a version number for mssql. <a href="a00416.html#a1f5fb9d2184949ed566c8ce308a4e91e">More...</a><br /></td></tr> <tr class="separator:a1f5fb9d2184949ed566c8ce308a4e91e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2211236b38ff457ddb8109efd2323be0"><td class="memItemLeft" align="right" valign="top"><a id="a2211236b38ff457ddb8109efd2323be0" name="a2211236b38ff457ddb8109efd2323be0"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_MSG_RESULT</b>   4044</td></tr> <tr class="separator:a2211236b38ff457ddb8109efd2323be0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0b688658476339bf68d94a6e5e95fb0c"><td class="memItemLeft" align="right" valign="top"><a id="a0b688658476339bf68d94a6e5e95fb0c" name="a0b688658476339bf68d94a6e5e95fb0c"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_new</b>(type, n)   ((type *) malloc(sizeof(type) * (n)))</td></tr> <tr class="separator:a0b688658476339bf68d94a6e5e95fb0c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9f41aed57caea8812bff42c8519b6ac2"><td class="memItemLeft" align="right" valign="top"><a id="a9f41aed57caea8812bff42c8519b6ac2" name="a9f41aed57caea8812bff42c8519b6ac2"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_new0</b>(type, n)   ((type *) calloc(n, sizeof(type)))</td></tr> <tr class="separator:a9f41aed57caea8812bff42c8519b6ac2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0c578bc811370ecda246ff7e4a5d7cf6"><td class="memItemLeft" align="right" valign="top"><a id="a0c578bc811370ecda246ff7e4a5d7cf6" name="a0c578bc811370ecda246ff7e4a5d7cf6"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_NO_COUNT</b>   -1</td></tr> <tr class="separator:a0c578bc811370ecda246ff7e4a5d7cf6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a43eca0480c430b05fb3df2bbdabf243b"><td class="memItemLeft" align="right" valign="top"><a id="a43eca0480c430b05fb3df2bbdabf243b" name="a43eca0480c430b05fb3df2bbdabf243b"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_NO_MORE_RESULTS</b>   ((TDSRET)1)</td></tr> <tr class="separator:a43eca0480c430b05fb3df2bbdabf243b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afc9ee909f497e7fa8b0845e9d20067a5"><td class="memItemLeft" align="right" valign="top"><a id="afc9ee909f497e7fa8b0845e9d20067a5" name="afc9ee909f497e7fa8b0845e9d20067a5"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_NULLTERM</b>   -9</td></tr> <tr class="separator:afc9ee909f497e7fa8b0845e9d20067a5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a52c067170c031c0ded707e9258893520"><td class="memItemLeft" align="right" valign="top"><a id="a52c067170c031c0ded707e9258893520" name="a52c067170c031c0ded707e9258893520"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_OTHERS_RESULT</b>   4055</td></tr> <tr class="separator:a52c067170c031c0ded707e9258893520"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a582a3a626e3c27de4bec717882cd302c"><td class="memItemLeft" align="right" valign="top"><a id="a582a3a626e3c27de4bec717882cd302c" name="a582a3a626e3c27de4bec717882cd302c"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_packet_get_data_start</b>(pkt)   0</td></tr> <tr class="separator:a582a3a626e3c27de4bec717882cd302c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a307106755ad3e74e7e513a3b95fcd272"><td class="memItemLeft" align="right" valign="top"><a id="a307106755ad3e74e7e513a3b95fcd272" name="a307106755ad3e74e7e513a3b95fcd272"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_packet_zero_data_start</b>(pkt)   do { } while(0)</td></tr> <tr class="separator:a307106755ad3e74e7e513a3b95fcd272"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7f2337969ed66fbd69d2b80290428801"><td class="memItemLeft" align="right" valign="top"><a id="a7f2337969ed66fbd69d2b80290428801" name="a7f2337969ed66fbd69d2b80290428801"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_PARAM_RESULT</b>   4042</td></tr> <tr class="separator:a7f2337969ed66fbd69d2b80290428801"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a20d70af3770f36620da1c6fa17108999"><td class="memItemLeft" align="right" valign="top"><a id="a20d70af3770f36620da1c6fa17108999" name="a20d70af3770f36620da1c6fa17108999"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_PROPAGATE</b>(rc)    do { TDSRET _tds_ret = (rc); if (TDS_FAILED(_tds_ret)) return _tds_ret; } while(0)</td></tr> <tr class="separator:a20d70af3770f36620da1c6fa17108999"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3deb4bafaea1c46b863b95984ae45457"><td class="memItemLeft" align="right" valign="top"><a id="a3deb4bafaea1c46b863b95984ae45457" name="a3deb4bafaea1c46b863b95984ae45457"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_PUT_BYTE</b>(tds, v)   tds_put_byte((tds), ((unsigned char)(v)))</td></tr> <tr class="separator:a3deb4bafaea1c46b863b95984ae45457"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acd57080e4fb8071dff7f6d9691fafb8d"><td class="memItemLeft" align="right" valign="top"><a id="acd57080e4fb8071dff7f6d9691fafb8d" name="acd57080e4fb8071dff7f6d9691fafb8d"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_PUT_INT</b>(tds, v)   tds_put_int((tds), ((TDS_INT)(v)))</td></tr> <tr class="separator:acd57080e4fb8071dff7f6d9691fafb8d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af2d583cdae08291e60c7420ac6609e8f"><td class="memItemLeft" align="right" valign="top"><a id="af2d583cdae08291e60c7420ac6609e8f" name="af2d583cdae08291e60c7420ac6609e8f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_PUT_SMALLINT</b>(tds, v)   tds_put_smallint((tds), ((TDS_SMALLINT)(v)))</td></tr> <tr class="separator:af2d583cdae08291e60c7420ac6609e8f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adfc186758f4c1856c01746b5436aff74"><td class="memItemLeft" align="right" valign="top"><a id="adfc186758f4c1856c01746b5436aff74" name="adfc186758f4c1856c01746b5436aff74"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_put_tinyint</b>(tds, ti)   tds_put_byte(tds,ti)</td></tr> <tr class="memdesc:adfc186758f4c1856c01746b5436aff74"><td class="mdescLeft"> </td><td class="mdescRight">Output a tinyint value. <br /></td></tr> <tr class="separator:adfc186758f4c1856c01746b5436aff74"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac3997d1ef564fd5cb6e7969a4ebd3e19"><td class="memItemLeft" align="right" valign="top"><a id="ac3997d1ef564fd5cb6e7969a4ebd3e19" name="ac3997d1ef564fd5cb6e7969a4ebd3e19"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_RESIZE</b>(p, n_elem)    <a class="el" href="a00541.html#ga8645f5abc49db03d14b66f72b83a9a4c">tds_realloc</a>((void **) &(p), sizeof(*(p)) * (size_t) (n_elem))</td></tr> <tr class="separator:ac3997d1ef564fd5cb6e7969a4ebd3e19"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa8cb798f4995010652b4bea1fb356a54"><td class="memItemLeft" align="right" valign="top"><a id="aa8cb798f4995010652b4bea1fb356a54" name="aa8cb798f4995010652b4bea1fb356a54"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_ROW_RESULT</b>   4040</td></tr> <tr class="separator:aa8cb798f4995010652b4bea1fb356a54"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1b7905e8a05bef269a1b00225fab96f6"><td class="memItemLeft" align="right" valign="top"><a id="a1b7905e8a05bef269a1b00225fab96f6" name="a1b7905e8a05bef269a1b00225fab96f6"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_ROWFMT_RESULT</b>   4049</td></tr> <tr class="separator:a1b7905e8a05bef269a1b00225fab96f6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2049733937263779a7063689e0d90476"><td class="memItemLeft" align="right" valign="top"><a id="a2049733937263779a7063689e0d90476" name="a2049733937263779a7063689e0d90476"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_set_ctx</b>(tds, val)   do { ((tds)->conn->tds_ctx) = (val); } while(0)</td></tr> <tr class="separator:a2049733937263779a7063689e0d90476"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad540f1ef12384c90274a99e349eb724c"><td class="memItemLeft" align="right" valign="top"><a id="ad540f1ef12384c90274a99e349eb724c" name="ad540f1ef12384c90274a99e349eb724c"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_set_parent</b>(tds, val)   do { ((tds)->parent) = (val); } while(0)</td></tr> <tr class="separator:ad540f1ef12384c90274a99e349eb724c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a980494a2ce978b7b15990539239f05a8"><td class="memItemLeft" align="right" valign="top"><a id="a980494a2ce978b7b15990539239f05a8" name="a980494a2ce978b7b15990539239f05a8"></a> #define </td><td class="memItemRight" valign="bottom"><b>tds_set_s</b>(tds, val)   do { ((tds)->conn->s) = (val); } while(0)</td></tr> <tr class="separator:a980494a2ce978b7b15990539239f05a8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2c216ecb9737c4950941dda7139a2b3f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a2c216ecb9737c4950941dda7139a2b3f">TDS_START_LEN_GENERIC</a>(<a class="el" href="a01210.html">tds_socket</a>, len)</td></tr> <tr class="separator:a2c216ecb9737c4950941dda7139a2b3f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae6ea05e79158f4369651836610ee0ab1"><td class="memItemLeft" align="right" valign="top"><a id="ae6ea05e79158f4369651836610ee0ab1" name="ae6ea05e79158f4369651836610ee0ab1"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_START_LEN_TINYINT</b>(<a class="el" href="a01210.html">tds_socket</a>)   TDS_START_LEN_GENERIC(<a class="el" href="a01210.html">tds_socket</a>, 1)</td></tr> <tr class="separator:ae6ea05e79158f4369651836610ee0ab1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9442e7e7ea084ab046b24eaf75c49703"><td class="memItemLeft" align="right" valign="top"><a id="a9442e7e7ea084ab046b24eaf75c49703" name="a9442e7e7ea084ab046b24eaf75c49703"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_START_LEN_UINT</b>(<a class="el" href="a01210.html">tds_socket</a>)   TDS_START_LEN_GENERIC(<a class="el" href="a01210.html">tds_socket</a>, 4)</td></tr> <tr class="separator:a9442e7e7ea084ab046b24eaf75c49703"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa1243b47a7d95cbeb38ccfda904276b4"><td class="memItemLeft" align="right" valign="top"><a id="aa1243b47a7d95cbeb38ccfda904276b4" name="aa1243b47a7d95cbeb38ccfda904276b4"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_START_LEN_USMALLINT</b>(<a class="el" href="a01210.html">tds_socket</a>)   TDS_START_LEN_GENERIC(<a class="el" href="a01210.html">tds_socket</a>, 2)</td></tr> <tr class="separator:aa1243b47a7d95cbeb38ccfda904276b4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac360d9a6ad47333f1b1bb4bbf83c845c"><td class="memItemLeft" align="right" valign="top"><a id="ac360d9a6ad47333f1b1bb4bbf83c845c" name="ac360d9a6ad47333f1b1bb4bbf83c845c"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STATUS_RESULT</b>   4043</td></tr> <tr class="separator:ac360d9a6ad47333f1b1bb4bbf83c845c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abcfa97598dd0c7fbd360562380281715"><td class="memItemLeft" align="right" valign="top"><a id="abcfa97598dd0c7fbd360562380281715" name="abcfa97598dd0c7fbd360562380281715"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_APPENDMODE</b>   "dump file append"</td></tr> <tr class="separator:abcfa97598dd0c7fbd360562380281715"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7700a767662ce73af27653305faddf22"><td class="memItemLeft" align="right" valign="top"><a id="a7700a767662ce73af27653305faddf22" name="a7700a767662ce73af27653305faddf22"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_ASA_DATABASE</b>   "asa database"</td></tr> <tr class="separator:a7700a767662ce73af27653305faddf22"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a93e29edac3194fdde02f31b966ee9dcc"><td class="memItemLeft" align="right" valign="top"><a id="a93e29edac3194fdde02f31b966ee9dcc" name="a93e29edac3194fdde02f31b966ee9dcc"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_BLKSZ</b>   "initial block size"</td></tr> <tr class="separator:a93e29edac3194fdde02f31b966ee9dcc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae3a1f1b2856ccefe38ee1197ef38bb02"><td class="memItemLeft" align="right" valign="top"><a id="ae3a1f1b2856ccefe38ee1197ef38bb02" name="ae3a1f1b2856ccefe38ee1197ef38bb02"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_CAFILE</b>   "ca file"</td></tr> <tr class="separator:ae3a1f1b2856ccefe38ee1197ef38bb02"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aea950ed81629245c647d10ca70af6d1b"><td class="memItemLeft" align="right" valign="top"><a id="aea950ed81629245c647d10ca70af6d1b" name="aea950ed81629245c647d10ca70af6d1b"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_CHARSET</b>   "charset"</td></tr> <tr class="separator:aea950ed81629245c647d10ca70af6d1b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a34add07976c1e226d8b99ace30de0b7d"><td class="memItemLeft" align="right" valign="top"><a id="a34add07976c1e226d8b99ace30de0b7d" name="a34add07976c1e226d8b99ace30de0b7d"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_CHECKSSLHOSTNAME</b>   "check certificate hostname"</td></tr> <tr class="separator:a34add07976c1e226d8b99ace30de0b7d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1f74ce24b5380258244113576c5cd86f"><td class="memItemLeft" align="right" valign="top"><a id="a1f74ce24b5380258244113576c5cd86f" name="a1f74ce24b5380258244113576c5cd86f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_CLCHARSET</b>   "client charset"</td></tr> <tr class="separator:a1f74ce24b5380258244113576c5cd86f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab8d74c32ae06c48f459b30a19334f102"><td class="memItemLeft" align="right" valign="top"><a id="ab8d74c32ae06c48f459b30a19334f102" name="ab8d74c32ae06c48f459b30a19334f102"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_CONNTIMEOUT</b>   "connect timeout"</td></tr> <tr class="separator:ab8d74c32ae06c48f459b30a19334f102"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a583f4ce706884352939376fcfd9d2bf2"><td class="memItemLeft" align="right" valign="top"><a id="a583f4ce706884352939376fcfd9d2bf2" name="a583f4ce706884352939376fcfd9d2bf2"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_CRLFILE</b>   "crl file"</td></tr> <tr class="separator:a583f4ce706884352939376fcfd9d2bf2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa5b929d89382f622bf1fd26290d59050"><td class="memItemLeft" align="right" valign="top"><a id="aa5b929d89382f622bf1fd26290d59050" name="aa5b929d89382f622bf1fd26290d59050"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_DATABASE</b>   "database"</td></tr> <tr class="separator:aa5b929d89382f622bf1fd26290d59050"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7d7db9c8e47c8ea204f33def8c4e5a27"><td class="memItemLeft" align="right" valign="top"><a id="a7d7db9c8e47c8ea204f33def8c4e5a27" name="a7d7db9c8e47c8ea204f33def8c4e5a27"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_DATEFMT</b>   "date format"</td></tr> <tr class="separator:a7d7db9c8e47c8ea204f33def8c4e5a27"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad8369e8df825a8cb4261e56ed4399589"><td class="memItemLeft" align="right" valign="top"><a id="ad8369e8df825a8cb4261e56ed4399589" name="ad8369e8df825a8cb4261e56ed4399589"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_DBFILENAME</b>   "database filename"</td></tr> <tr class="separator:ad8369e8df825a8cb4261e56ed4399589"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa3739de7586147e92d21d3479d42c8f3"><td class="memItemLeft" align="right" valign="top"><a id="aa3739de7586147e92d21d3479d42c8f3" name="aa3739de7586147e92d21d3479d42c8f3"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_DEBUGFLAGS</b>   "debug flags"</td></tr> <tr class="separator:aa3739de7586147e92d21d3479d42c8f3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5c3c0cad26eafe64fd8c30649a9763ab"><td class="memItemLeft" align="right" valign="top"><a id="a5c3c0cad26eafe64fd8c30649a9763ab" name="a5c3c0cad26eafe64fd8c30649a9763ab"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_DEBUGLVL</b>   "debug level"</td></tr> <tr class="separator:a5c3c0cad26eafe64fd8c30649a9763ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a05c023e4488ac46cd9ef208effb859b2"><td class="memItemLeft" align="right" valign="top"><a id="a05c023e4488ac46cd9ef208effb859b2" name="a05c023e4488ac46cd9ef208effb859b2"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_DUMPFILE</b>   "dump file"</td></tr> <tr class="separator:a05c023e4488ac46cd9ef208effb859b2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa27de630f0984e9047e31b76a6fdc77f"><td class="memItemLeft" align="right" valign="top"><a id="aa27de630f0984e9047e31b76a6fdc77f" name="aa27de630f0984e9047e31b76a6fdc77f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_EMUL_LE</b>   "emulate little endian"</td></tr> <tr class="separator:aa27de630f0984e9047e31b76a6fdc77f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a52457558b964bef65174c7cbea77936e"><td class="memItemLeft" align="right" valign="top"><a id="a52457558b964bef65174c7cbea77936e" name="a52457558b964bef65174c7cbea77936e"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_ENABLE_TLS_V1</b>   "enable tls v1"</td></tr> <tr class="separator:a52457558b964bef65174c7cbea77936e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa530b59187d6f3e05027bf53108f05ec"><td class="memItemLeft" align="right" valign="top"><a id="aa530b59187d6f3e05027bf53108f05ec" name="aa530b59187d6f3e05027bf53108f05ec"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_ENCRYPTION</b>   "encryption"</td></tr> <tr class="separator:aa530b59187d6f3e05027bf53108f05ec"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9fa73966ccb40be77c1fea12300fe49c"><td class="memItemLeft" align="right" valign="top"><a id="a9fa73966ccb40be77c1fea12300fe49c" name="a9fa73966ccb40be77c1fea12300fe49c"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_ENCRYPTION_OFF</b>   "off"</td></tr> <tr class="separator:a9fa73966ccb40be77c1fea12300fe49c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a82081b0e0537f1c4c7c53f6a0163154a"><td class="memItemLeft" align="right" valign="top"><a id="a82081b0e0537f1c4c7c53f6a0163154a" name="a82081b0e0537f1c4c7c53f6a0163154a"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_ENCRYPTION_REQUEST</b>   "request"</td></tr> <tr class="separator:a82081b0e0537f1c4c7c53f6a0163154a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af623137ea8cf23605f71e2b4bc2b4a2f"><td class="memItemLeft" align="right" valign="top"><a id="af623137ea8cf23605f71e2b4bc2b4a2f" name="af623137ea8cf23605f71e2b4bc2b4a2f"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_ENCRYPTION_REQUIRE</b>   "require"</td></tr> <tr class="separator:af623137ea8cf23605f71e2b4bc2b4a2f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af9220391a3faae667ca62f22e9a151b2"><td class="memItemLeft" align="right" valign="top"><a id="af9220391a3faae667ca62f22e9a151b2" name="af9220391a3faae667ca62f22e9a151b2"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_HOST</b>   "host"</td></tr> <tr class="separator:af9220391a3faae667ca62f22e9a151b2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aebf9204d41c329ca6bc49a5f9b285dbb"><td class="memItemLeft" align="right" valign="top"><a id="aebf9204d41c329ca6bc49a5f9b285dbb" name="aebf9204d41c329ca6bc49a5f9b285dbb"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_HOSTNAME</b>   "hostname"</td></tr> <tr class="separator:aebf9204d41c329ca6bc49a5f9b285dbb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2158230ba441661cddc00625e70ba211"><td class="memItemLeft" align="right" valign="top"><a id="a2158230ba441661cddc00625e70ba211" name="a2158230ba441661cddc00625e70ba211"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_INSTANCE</b>   "instance"</td></tr> <tr class="separator:a2158230ba441661cddc00625e70ba211"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad32c29053c019c7005ee79d9bb595691"><td class="memItemLeft" align="right" valign="top"><a id="ad32c29053c019c7005ee79d9bb595691" name="ad32c29053c019c7005ee79d9bb595691"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_LANGUAGE</b>   "language"</td></tr> <tr class="separator:ad32c29053c019c7005ee79d9bb595691"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3a5c77ce41e9c18151e5cc6c4430aafa"><td class="memItemLeft" align="right" valign="top"><a id="a3a5c77ce41e9c18151e5cc6c4430aafa" name="a3a5c77ce41e9c18151e5cc6c4430aafa"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_MUTUAL_AUTHENTICATION</b>   "mutual authentication"</td></tr> <tr class="separator:a3a5c77ce41e9c18151e5cc6c4430aafa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1218126356315dc750194dfd1dc358e8"><td class="memItemLeft" align="right" valign="top"><a id="a1218126356315dc750194dfd1dc358e8" name="a1218126356315dc750194dfd1dc358e8"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_PORT</b>   "port"</td></tr> <tr class="separator:a1218126356315dc750194dfd1dc358e8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aeded382a99bbbfa803c456f1023a88a9"><td class="memItemLeft" align="right" valign="top"><a id="aeded382a99bbbfa803c456f1023a88a9" name="aeded382a99bbbfa803c456f1023a88a9"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_QUERY_TIMEOUT</b>   "query timeout"</td></tr> <tr class="separator:aeded382a99bbbfa803c456f1023a88a9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0d447413670932c2e9b83a82ef8953a6"><td class="memItemLeft" align="right" valign="top"><a id="a0d447413670932c2e9b83a82ef8953a6" name="a0d447413670932c2e9b83a82ef8953a6"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_READONLY_INTENT</b>   "read-only intent"</td></tr> <tr class="separator:a0d447413670932c2e9b83a82ef8953a6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad82162bb6bea720732d1b6b69f28e574"><td class="memItemLeft" align="right" valign="top"><a id="ad82162bb6bea720732d1b6b69f28e574" name="ad82162bb6bea720732d1b6b69f28e574"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_REALM</b>   "realm"</td></tr> <tr class="separator:ad82162bb6bea720732d1b6b69f28e574"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aeddc492cd70022c039cbd4251e7271ab"><td class="memItemLeft" align="right" valign="top"><a id="aeddc492cd70022c039cbd4251e7271ab" name="aeddc492cd70022c039cbd4251e7271ab"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_SPN</b>   "spn"</td></tr> <tr class="separator:aeddc492cd70022c039cbd4251e7271ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa72fc36121071b7a09cdc38b1f53e102"><td class="memItemLeft" align="right" valign="top"><a id="aa72fc36121071b7a09cdc38b1f53e102" name="aa72fc36121071b7a09cdc38b1f53e102"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_SWAPDT</b>   "swap broken dates"</td></tr> <tr class="separator:aa72fc36121071b7a09cdc38b1f53e102"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac350364276b872f2e0a65f2586dbdaee"><td class="memItemLeft" align="right" valign="top"><a id="ac350364276b872f2e0a65f2586dbdaee" name="ac350364276b872f2e0a65f2586dbdaee"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_TEXTSZ</b>   "text size"</td></tr> <tr class="separator:ac350364276b872f2e0a65f2586dbdaee"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abf041f4e05fbdb44fcb79c54f51d73bf"><td class="memItemLeft" align="right" valign="top"><a id="abf041f4e05fbdb44fcb79c54f51d73bf" name="abf041f4e05fbdb44fcb79c54f51d73bf"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_TIMEOUT</b>   "timeout"</td></tr> <tr class="separator:abf041f4e05fbdb44fcb79c54f51d73bf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afcae5d928df0eea0224bb70d9d9f93ff"><td class="memItemLeft" align="right" valign="top"><a id="afcae5d928df0eea0224bb70d9d9f93ff" name="afcae5d928df0eea0224bb70d9d9f93ff"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_USE_UTF_16</b>   "use utf-16"</td></tr> <tr class="separator:afcae5d928df0eea0224bb70d9d9f93ff"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa976afca676ef39bec67321d42796c10"><td class="memItemLeft" align="right" valign="top"><a id="aa976afca676ef39bec67321d42796c10" name="aa976afca676ef39bec67321d42796c10"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_USELANMAN</b>   "use lanman"</td></tr> <tr class="separator:aa976afca676ef39bec67321d42796c10"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abd3628deff94a56a96f573b6916782b1"><td class="memItemLeft" align="right" valign="top"><a id="abd3628deff94a56a96f573b6916782b1" name="abd3628deff94a56a96f573b6916782b1"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_USENTLMV2</b>   "use ntlmv2"</td></tr> <tr class="separator:abd3628deff94a56a96f573b6916782b1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a201efd92293365f790e7af5e3e692eba"><td class="memItemLeft" align="right" valign="top"><a id="a201efd92293365f790e7af5e3e692eba" name="a201efd92293365f790e7af5e3e692eba"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_STR_VERSION</b>   "tds version"</td></tr> <tr class="separator:a201efd92293365f790e7af5e3e692eba"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad98d3d681286b3fbea3fa1c84410d995"><td class="memItemLeft" align="right" valign="top"><a id="ad98d3d681286b3fbea3fa1c84410d995" name="ad98d3d681286b3fbea3fa1c84410d995"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_SUCCEED</b>(rc)   ((rc)>=0)</td></tr> <tr class="separator:ad98d3d681286b3fbea3fa1c84410d995"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac2ba2ef5f363e35b580b1137c7b80efa"><td class="memItemLeft" align="right" valign="top"><a id="ac2ba2ef5f363e35b580b1137c7b80efa" name="ac2ba2ef5f363e35b580b1137c7b80efa"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_SUCCESS</b>   ((TDSRET)0)</td></tr> <tr class="separator:ac2ba2ef5f363e35b580b1137c7b80efa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aca53a637849948c4b7a07f69e40c685c"><td class="memItemLeft" align="right" valign="top"><a id="aca53a637849948c4b7a07f69e40c685c" name="aca53a637849948c4b7a07f69e40c685c"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_SYB_VER</b>(maj, min, x)   (((maj)<<24)|((min)<<16)|(x)<<8)</td></tr> <tr class="memdesc:aca53a637849948c4b7a07f69e40c685c"><td class="mdescLeft"> </td><td class="mdescRight">Calc a version number for Sybase. <br /></td></tr> <tr class="separator:aca53a637849948c4b7a07f69e40c685c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a076e34be1622687850f3e4dd2594fffd"><td class="memItemLeft" align="right" valign="top"><a id="a076e34be1622687850f3e4dd2594fffd" name="a076e34be1622687850f3e4dd2594fffd"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDS_TOKEN_FLAG</b>(flag)   TDS_RETURN_##flag = (1 << (TDS_TOKEN_RES_##flag*2)), TDS_STOPAT_##flag = (2 << (TDS_TOKEN_RES_##flag*2))</td></tr> <tr class="separator:a076e34be1622687850f3e4dd2594fffd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a973b01f85ffa86989ea245b07dec0d7d"><td class="memItemLeft" align="right" valign="top"><a id="a973b01f85ffa86989ea245b07dec0d7d" name="a973b01f85ffa86989ea245b07dec0d7d"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDSDUMP_BUF_FAST</b>   if (TDS_UNLIKELY(<a class="el" href="a00416.html#a4766b1a553077cb3257d36b9ac28f5b5">tds_write_dump</a>)) <a class="el" href="a00416.html#a79449d2f35a8acc8ed0585044f75524d">tdsdump_dump_buf</a></td></tr> <tr class="separator:a973b01f85ffa86989ea245b07dec0d7d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a87e78474eef5ca64b301c50e73796d48"><td class="memItemLeft" align="right" valign="top"><a id="a87e78474eef5ca64b301c50e73796d48" name="a87e78474eef5ca64b301c50e73796d48"></a> #define </td><td class="memItemRight" valign="bottom"><b>tdsdump_dump_buf</b>   TDSDUMP_BUF_FAST</td></tr> <tr class="separator:a87e78474eef5ca64b301c50e73796d48"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a298de2ebc55d7847d95eeeb7a734f97e"><td class="memItemLeft" align="right" valign="top"><a id="a298de2ebc55d7847d95eeeb7a734f97e" name="a298de2ebc55d7847d95eeeb7a734f97e"></a> #define </td><td class="memItemRight" valign="bottom"><b>tdsdump_log</b>   TDSDUMP_LOG_FAST</td></tr> <tr class="separator:a298de2ebc55d7847d95eeeb7a734f97e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae65d9f24b6e08c1bc70adb08e8a12192"><td class="memItemLeft" align="right" valign="top"><a id="ae65d9f24b6e08c1bc70adb08e8a12192" name="ae65d9f24b6e08c1bc70adb08e8a12192"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDSDUMP_LOG_FAST</b>   if (TDS_UNLIKELY(<a class="el" href="a00416.html#a4766b1a553077cb3257d36b9ac28f5b5">tds_write_dump</a>)) <a class="el" href="a00416.html#ab45c291105027e69836002e1dd586141">tdsdump_log</a></td></tr> <tr class="separator:ae65d9f24b6e08c1bc70adb08e8a12192"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a321c0b02db17f84cf21e963d427e271a"><td class="memItemLeft" align="right" valign="top"><a id="a321c0b02db17f84cf21e963d427e271a" name="a321c0b02db17f84cf21e963d427e271a"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDSSELREAD</b>   POLLIN</td></tr> <tr class="separator:a321c0b02db17f84cf21e963d427e271a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a76a8d1043458cc8a669d3d347e0ffff4"><td class="memItemLeft" align="right" valign="top"><a id="a76a8d1043458cc8a669d3d347e0ffff4" name="a76a8d1043458cc8a669d3d347e0ffff4"></a> #define </td><td class="memItemRight" valign="bottom"><b>TDSSELWRITE</b>   POLLOUT</td></tr> <tr class="separator:a76a8d1043458cc8a669d3d347e0ffff4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8354e997d71babfea90640a4641c2f48"><td class="memItemLeft" align="right" valign="top"><a id="a8354e997d71babfea90640a4641c2f48" name="a8354e997d71babfea90640a4641c2f48"></a> #define </td><td class="memItemRight" valign="bottom"><b>TLS_STR_OPENSSL_CIPHERS</b>   "openssl ciphers"</td></tr> <tr class="separator:a8354e997d71babfea90640a4641c2f48"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a> Typedefs</h2></td></tr> <tr class="memitem:a1714ca33460bf77093ccb11c7982b0bc"><td class="memItemLeft" align="right" valign="top"><a id="a1714ca33460bf77093ccb11c7982b0bc" name="a1714ca33460bf77093ccb11c7982b0bc"></a> typedef struct <a class="el" href="a01142.html">tds_bcpcoldata</a> </td><td class="memItemRight" valign="bottom"><b>BCPCOLDATA</b></td></tr> <tr class="separator:a1714ca33460bf77093ccb11c7982b0bc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abbbcc28b48746d1b28bee204a8614cc1"><td class="memItemLeft" align="right" valign="top"><a id="abbbcc28b48746d1b28bee204a8614cc1" name="abbbcc28b48746d1b28bee204a8614cc1"></a> typedef int(* </td><td class="memItemRight" valign="bottom"><b>err_handler_t</b>) (const <a class="el" href="a01190.html">TDSCONTEXT</a> *, <a class="el" href="a01210.html">TDSSOCKET</a> *, <a class="el" href="a01162.html">TDSMESSAGE</a> *)</td></tr> <tr class="separator:abbbcc28b48746d1b28bee204a8614cc1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9ee6af530d8abdd4d50fbe8c4d864fc4"><td class="memItemLeft" align="right" valign="top"><a id="a9ee6af530d8abdd4d50fbe8c4d864fc4" name="a9ee6af530d8abdd4d50fbe8c4d864fc4"></a> typedef TDSRET(* </td><td class="memItemRight" valign="bottom"><b>tds_bcp_get_col_data</b>) (<a class="el" href="a01222.html">TDSBCPINFO</a> *bulk, <a class="el" href="a01150.html">TDSCOLUMN</a> *bcpcol, int offset)</td></tr> <tr class="separator:a9ee6af530d8abdd4d50fbe8c4d864fc4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5a1f35102802aea58b86b4b9ba1a51ec"><td class="memItemLeft" align="right" valign="top"><a id="a5a1f35102802aea58b86b4b9ba1a51ec" name="a5a1f35102802aea58b86b4b9ba1a51ec"></a> typedef void(* </td><td class="memItemRight" valign="bottom"><b>tds_bcp_null_error</b>) (<a class="el" href="a01222.html">TDSBCPINFO</a> *bulk, int index, int offset)</td></tr> <tr class="separator:a5a1f35102802aea58b86b4b9ba1a51ec"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4725afc2edf4f4f53825f870ddba3938"><td class="memItemLeft" align="right" valign="top"><a id="a4725afc2edf4f4f53825f870ddba3938" name="a4725afc2edf4f4f53825f870ddba3938"></a> typedef struct <a class="el" href="a01114.html">tds_capabilities</a> </td><td class="memItemRight" valign="bottom"><b>TDS_CAPABILITIES</b></td></tr> <tr class="separator:a4725afc2edf4f4f53825f870ddba3938"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a146d67961524f2ea959afb53ea7b3e71"><td class="memItemLeft" align="right" valign="top"><a id="a146d67961524f2ea959afb53ea7b3e71" name="a146d67961524f2ea959afb53ea7b3e71"></a> typedef struct <a class="el" href="a01110.html">tds_capability_type</a> </td><td class="memItemRight" valign="bottom"><b>TDS_CAPABILITY_TYPE</b></td></tr> <tr class="separator:a146d67961524f2ea959afb53ea7b3e71"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa20fd438351adfaea82f59e73a0ec2e2"><td class="memItemLeft" align="right" valign="top"><a id="aa20fd438351adfaea82f59e73a0ec2e2" name="aa20fd438351adfaea82f59e73a0ec2e2"></a> typedef char </td><td class="memItemRight" valign="bottom"><b>TDS_CHAR</b></td></tr> <tr class="separator:aa20fd438351adfaea82f59e73a0ec2e2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1de034b895312fc0cfae0e28f8921a47"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a01090.html">tds_compiletime_settings</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a1de034b895312fc0cfae0e28f8921a47">TDS_COMPILETIME_SETTINGS</a></td></tr> <tr class="memdesc:a1de034b895312fc0cfae0e28f8921a47"><td class="mdescLeft"> </td><td class="mdescRight">A structure to hold all the compile-time settings. <a href="a00416.html#a1de034b895312fc0cfae0e28f8921a47">More...</a><br /></td></tr> <tr class="separator:a1de034b895312fc0cfae0e28f8921a47"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac8f025fcb6c2252e4139afe9799a9f64"><td class="memItemLeft" align="right" valign="top"><a id="ac8f025fcb6c2252e4139afe9799a9f64" name="ac8f025fcb6c2252e4139afe9799a9f64"></a> typedef enum tds_cursor_fetch </td><td class="memItemRight" valign="bottom"><b>TDS_CURSOR_FETCH</b></td></tr> <tr class="separator:ac8f025fcb6c2252e4139afe9799a9f64"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1a1603adc5e22fcdde162290f1818ac0"><td class="memItemLeft" align="right" valign="top"><a id="a1a1603adc5e22fcdde162290f1818ac0" name="a1a1603adc5e22fcdde162290f1818ac0"></a> typedef enum tds_cursor_operation </td><td class="memItemRight" valign="bottom"><b>TDS_CURSOR_OPERATION</b></td></tr> <tr class="separator:a1a1603adc5e22fcdde162290f1818ac0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5d97aaee83acb4e20d5511ed68d99655"><td class="memItemLeft" align="right" valign="top"><a id="a5d97aaee83acb4e20d5511ed68d99655" name="a5d97aaee83acb4e20d5511ed68d99655"></a> typedef struct <a class="el" href="a01170.html">tds_cursor_status</a> </td><td class="memItemRight" valign="bottom"><b>TDS_CURSOR_STATUS</b></td></tr> <tr class="separator:a5d97aaee83acb4e20d5511ed68d99655"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae21e9f12e8ee5219228ee6b6a41dec66"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a01138.html">tds_encoding</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ae21e9f12e8ee5219228ee6b6a41dec66">TDS_ENCODING</a></td></tr> <tr class="memdesc:ae21e9f12e8ee5219228ee6b6a41dec66"><td class="mdescLeft"> </td><td class="mdescRight">Information relevant to libiconv. <a href="a00416.html#ae21e9f12e8ee5219228ee6b6a41dec66">More...</a><br /></td></tr> <tr class="separator:ae21e9f12e8ee5219228ee6b6a41dec66"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afd23f71df16af406ceccf2621e197dfe"><td class="memItemLeft" align="right" valign="top"><a id="afd23f71df16af406ceccf2621e197dfe" name="afd23f71df16af406ceccf2621e197dfe"></a> typedef enum tds_encryption_level </td><td class="memItemRight" valign="bottom"><b>TDS_ENCRYPTION_LEVEL</b></td></tr> <tr class="separator:afd23f71df16af406ceccf2621e197dfe"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5e23b0f3c8651181274e416b897067aa"><td class="memItemLeft" align="right" valign="top"><a id="a5e23b0f3c8651181274e416b897067aa" name="a5e23b0f3c8651181274e416b897067aa"></a> typedef tds_sysdep_real64_type </td><td class="memItemRight" valign="bottom"><b>TDS_FLOAT</b></td></tr> <tr class="separator:a5e23b0f3c8651181274e416b897067aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aee6f981718e1bc31b4af82e02a27ebb0"><td class="memItemLeft" align="right" valign="top"><a id="aee6f981718e1bc31b4af82e02a27ebb0" name="aee6f981718e1bc31b4af82e02a27ebb0"></a> typedef int </td><td class="memItemRight" valign="bottom"><b>tds_func_check</b>(const <a class="el" href="a01150.html">TDSCOLUMN</a> *col)</td></tr> <tr class="separator:aee6f981718e1bc31b4af82e02a27ebb0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0357616060c540e7c311d036a7372a2a"><td class="memItemLeft" align="right" valign="top"><a id="a0357616060c540e7c311d036a7372a2a" name="a0357616060c540e7c311d036a7372a2a"></a> typedef TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_func_get_data</b>(<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01150.html">TDSCOLUMN</a> *col)</td></tr> <tr class="separator:a0357616060c540e7c311d036a7372a2a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abaa6cb7903c2940d6f17582900ace63f"><td class="memItemLeft" align="right" valign="top"><a id="abaa6cb7903c2940d6f17582900ace63f" name="abaa6cb7903c2940d6f17582900ace63f"></a> typedef TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_func_get_info</b>(<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01150.html">TDSCOLUMN</a> *col)</td></tr> <tr class="separator:abaa6cb7903c2940d6f17582900ace63f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad2ec5f836885f3514518f20bdc5dee14"><td class="memItemLeft" align="right" valign="top"><a id="ad2ec5f836885f3514518f20bdc5dee14" name="ad2ec5f836885f3514518f20bdc5dee14"></a> typedef TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_func_put_data</b>(<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01150.html">TDSCOLUMN</a> *col, int bcp7)</td></tr> <tr class="separator:ad2ec5f836885f3514518f20bdc5dee14"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a09d4795f20684ca8ebe35d1df4a504b4"><td class="memItemLeft" align="right" valign="top"><a id="a09d4795f20684ca8ebe35d1df4a504b4" name="a09d4795f20684ca8ebe35d1df4a504b4"></a> typedef TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_func_put_info</b>(<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01150.html">TDSCOLUMN</a> *col)</td></tr> <tr class="separator:a09d4795f20684ca8ebe35d1df4a504b4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ade7eeb97242bb669f06ffc896bee42ad"><td class="memItemLeft" align="right" valign="top"><a id="ade7eeb97242bb669f06ffc896bee42ad" name="ade7eeb97242bb669f06ffc896bee42ad"></a> typedef TDS_INT </td><td class="memItemRight" valign="bottom"><b>tds_func_row_len</b>(<a class="el" href="a01150.html">TDSCOLUMN</a> *col)</td></tr> <tr class="separator:ade7eeb97242bb669f06ffc896bee42ad"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aff454d2de6d61e835739a72e961a3bf0"><td class="memItemLeft" align="right" valign="top"><a id="aff454d2de6d61e835739a72e961a3bf0" name="aff454d2de6d61e835739a72e961a3bf0"></a> typedef int32_t </td><td class="memItemRight" valign="bottom"><b>TDS_INT</b></td></tr> <tr class="separator:aff454d2de6d61e835739a72e961a3bf0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a45c385292812282c0324e48b6e4549f6"><td class="memItemLeft" align="right" valign="top"><a id="a45c385292812282c0324e48b6e4549f6" name="a45c385292812282c0324e48b6e4549f6"></a> typedef int64_t </td><td class="memItemRight" valign="bottom"><b>TDS_INT8</b></td></tr> <tr class="separator:a45c385292812282c0324e48b6e4549f6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a77d61a153e81ed4eb32277fccfc736c6"><td class="memItemLeft" align="right" valign="top"><a id="a77d61a153e81ed4eb32277fccfc736c6" name="a77d61a153e81ed4eb32277fccfc736c6"></a> typedef intptr_t </td><td class="memItemRight" valign="bottom"><b>TDS_INTPTR</b></td></tr> <tr class="separator:a77d61a153e81ed4eb32277fccfc736c6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aefa205848c05d3f552822df83f940b83"><td class="memItemLeft" align="right" valign="top"><a id="aefa205848c05d3f552822df83f940b83" name="aefa205848c05d3f552822df83f940b83"></a> typedef enum tds_operations </td><td class="memItemRight" valign="bottom"><b>TDS_OPERATION</b></td></tr> <tr class="separator:aefa205848c05d3f552822df83f940b83"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a708fc0a30db138d1c7c6922ac30ba681"><td class="memItemLeft" align="right" valign="top"><a id="a708fc0a30db138d1c7c6922ac30ba681" name="a708fc0a30db138d1c7c6922ac30ba681"></a> typedef union <a class="el" href="a01102.html">tds_option_arg</a> </td><td class="memItemRight" valign="bottom"><b>TDS_OPTION_ARG</b></td></tr> <tr class="separator:a708fc0a30db138d1c7c6922ac30ba681"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7d867a706db75711c7ddbdc2f0521af6"><td class="memItemLeft" align="right" valign="top"><a id="a7d867a706db75711c7ddbdc2f0521af6" name="a7d867a706db75711c7ddbdc2f0521af6"></a> typedef tds_sysdep_real32_type </td><td class="memItemRight" valign="bottom"><b>TDS_REAL</b></td></tr> <tr class="separator:a7d867a706db75711c7ddbdc2f0521af6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa57f02240b88c2f4da5a32f9dab61596"><td class="memItemLeft" align="right" valign="top"><a id="aa57f02240b88c2f4da5a32f9dab61596" name="aa57f02240b88c2f4da5a32f9dab61596"></a> typedef int16_t </td><td class="memItemRight" valign="bottom"><b>TDS_SMALLINT</b></td></tr> <tr class="separator:aa57f02240b88c2f4da5a32f9dab61596"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac0d502ab90609c39fe7713fe0dfbefad"><td class="memItemLeft" align="right" valign="top"><a id="ac0d502ab90609c39fe7713fe0dfbefad" name="ac0d502ab90609c39fe7713fe0dfbefad"></a> typedef enum <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33">tds_states</a> </td><td class="memItemRight" valign="bottom"><b>TDS_STATE</b></td></tr> <tr class="memdesc:ac0d502ab90609c39fe7713fe0dfbefad"><td class="mdescLeft"> </td><td class="mdescRight">values for tds->state <br /></td></tr> <tr class="separator:ac0d502ab90609c39fe7713fe0dfbefad"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7306e998d52046d14ab311c30d46c5bf"><td class="memItemLeft" align="right" valign="top"><a id="a7306e998d52046d14ab311c30d46c5bf" name="a7306e998d52046d14ab311c30d46c5bf"></a> typedef uint8_t </td><td class="memItemRight" valign="bottom"><b>TDS_TINYINT</b></td></tr> <tr class="separator:a7306e998d52046d14ab311c30d46c5bf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a088dec7aa3a29a979361f4b71b4488f8"><td class="memItemLeft" align="right" valign="top"><a id="a088dec7aa3a29a979361f4b71b4488f8" name="a088dec7aa3a29a979361f4b71b4488f8"></a> typedef uint8_t </td><td class="memItemRight" valign="bottom"><b>TDS_UCHAR</b></td></tr> <tr class="separator:a088dec7aa3a29a979361f4b71b4488f8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9a3b7410c35c9ce72a230f2a587b0da4"><td class="memItemLeft" align="right" valign="top"><a id="a9a3b7410c35c9ce72a230f2a587b0da4" name="a9a3b7410c35c9ce72a230f2a587b0da4"></a> typedef uint32_t </td><td class="memItemRight" valign="bottom"><b>TDS_UINT</b></td></tr> <tr class="separator:a9a3b7410c35c9ce72a230f2a587b0da4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a43e65fe6213b81b6690464949cf4e383"><td class="memItemLeft" align="right" valign="top"><a id="a43e65fe6213b81b6690464949cf4e383" name="a43e65fe6213b81b6690464949cf4e383"></a> typedef uint64_t </td><td class="memItemRight" valign="bottom"><b>TDS_UINT8</b></td></tr> <tr class="separator:a43e65fe6213b81b6690464949cf4e383"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7c55e271c2e58de92f6c68f82d1069b1"><td class="memItemLeft" align="right" valign="top"><a id="a7c55e271c2e58de92f6c68f82d1069b1" name="a7c55e271c2e58de92f6c68f82d1069b1"></a> typedef uintptr_t </td><td class="memItemRight" valign="bottom"><b>TDS_UINTPTR</b></td></tr> <tr class="separator:a7c55e271c2e58de92f6c68f82d1069b1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1daaf826e9482bd62054989ede678358"><td class="memItemLeft" align="right" valign="top"><a id="a1daaf826e9482bd62054989ede678358" name="a1daaf826e9482bd62054989ede678358"></a> typedef uint16_t </td><td class="memItemRight" valign="bottom"><b>TDS_USMALLINT</b></td></tr> <tr class="separator:a1daaf826e9482bd62054989ede678358"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ace0938ed2225feb7e3db331612360022"><td class="memItemLeft" align="right" valign="top"><a id="ace0938ed2225feb7e3db331612360022" name="ace0938ed2225feb7e3db331612360022"></a> typedef struct <a class="el" href="a01194.html">tds_authentication</a> </td><td class="memItemRight" valign="bottom"><b>TDSAUTHENTICATION</b></td></tr> <tr class="separator:ace0938ed2225feb7e3db331612360022"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a667a074dc42c90f1315ce86e78f390be"><td class="memItemLeft" align="right" valign="top"><a id="a667a074dc42c90f1315ce86e78f390be" name="a667a074dc42c90f1315ce86e78f390be"></a> typedef struct <a class="el" href="a01222.html">tds_bcpinfo</a> </td><td class="memItemRight" valign="bottom"><b>TDSBCPINFO</b></td></tr> <tr class="separator:a667a074dc42c90f1315ce86e78f390be"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a47b154752431b2379988dbfdff394577"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a01130.html">tds_blob</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a47b154752431b2379988dbfdff394577">TDSBLOB</a></td></tr> <tr class="memdesc:a47b154752431b2379988dbfdff394577"><td class="mdescLeft"> </td><td class="mdescRight">Information about blobs (e.g. <a href="a00416.html#a47b154752431b2379988dbfdff394577">More...</a><br /></td></tr> <tr class="separator:a47b154752431b2379988dbfdff394577"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6afe75ef30dfce1866e8f737db4ad574"><td class="memItemLeft" align="right" valign="top"><a id="a6afe75ef30dfce1866e8f737db4ad574" name="a6afe75ef30dfce1866e8f737db4ad574"></a> typedef struct <a class="el" href="a01150.html">tds_column</a> </td><td class="memItemRight" valign="bottom"><b>TDSCOLUMN</b></td></tr> <tr class="separator:a6afe75ef30dfce1866e8f737db4ad574"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae37bfdde0120c3aa1a4b7b2e0af57c39"><td class="memItemLeft" align="right" valign="top"><a id="ae37bfdde0120c3aa1a4b7b2e0af57c39" name="ae37bfdde0120c3aa1a4b7b2e0af57c39"></a> typedef struct <a class="el" href="a01146.html">tds_column_funcs</a> </td><td class="memItemRight" valign="bottom"><b>TDSCOLUMNFUNCS</b></td></tr> <tr class="separator:ae37bfdde0120c3aa1a4b7b2e0af57c39"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa5400257cdcb7924f7006026775af0e3"><td class="memItemLeft" align="right" valign="top"><a id="aa5400257cdcb7924f7006026775af0e3" name="aa5400257cdcb7924f7006026775af0e3"></a> typedef struct <a class="el" href="a01158.html">tds_result_info</a> </td><td class="memItemRight" valign="bottom"><b>TDSCOMPUTEINFO</b></td></tr> <tr class="separator:aa5400257cdcb7924f7006026775af0e3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6768f320590dd9f6fcd5349b47ae9876"><td class="memItemLeft" align="right" valign="top"><a id="a6768f320590dd9f6fcd5349b47ae9876" name="a6768f320590dd9f6fcd5349b47ae9876"></a> typedef void(* </td><td class="memItemRight" valign="bottom"><b>TDSCONFPARSE</b>) (const char *option, const char *value, void *param)</td></tr> <tr class="separator:a6768f320590dd9f6fcd5349b47ae9876"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab7b6bd830d5c6da8dd8a21c35a38c6bc"><td class="memItemLeft" align="right" valign="top"><a id="ab7b6bd830d5c6da8dd8a21c35a38c6bc" name="ab7b6bd830d5c6da8dd8a21c35a38c6bc"></a> typedef struct <a class="el" href="a01206.html">tds_connection</a> </td><td class="memItemRight" valign="bottom"><b>TDSCONNECTION</b></td></tr> <tr class="separator:ab7b6bd830d5c6da8dd8a21c35a38c6bc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa7e1e12667599c1270e1fceae3683419"><td class="memItemLeft" align="right" valign="top"><a id="aa7e1e12667599c1270e1fceae3683419" name="aa7e1e12667599c1270e1fceae3683419"></a> typedef struct <a class="el" href="a01190.html">tds_context</a> </td><td class="memItemRight" valign="bottom"><b>TDSCONTEXT</b></td></tr> <tr class="separator:aa7e1e12667599c1270e1fceae3683419"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afe061eb245f3006d93940a20415692a7"><td class="memItemLeft" align="right" valign="top"><a id="afe061eb245f3006d93940a20415692a7" name="afe061eb245f3006d93940a20415692a7"></a> typedef struct <a class="el" href="a01174.html">tds_cursor</a> </td><td class="memItemRight" valign="bottom"><b>TDSCURSOR</b></td></tr> <tr class="memdesc:afe061eb245f3006d93940a20415692a7"><td class="mdescLeft"> </td><td class="mdescRight">Holds informations about a cursor. <br /></td></tr> <tr class="separator:afe061eb245f3006d93940a20415692a7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3b40b4faf314267146c2005e56eebe7b"><td class="memItemLeft" align="right" valign="top"><a id="a3b40b4faf314267146c2005e56eebe7b" name="a3b40b4faf314267146c2005e56eebe7b"></a> typedef struct <a class="el" href="a01098.html">tdsdaterec</a> </td><td class="memItemRight" valign="bottom"><b>TDSDATEREC</b></td></tr> <tr class="memdesc:a3b40b4faf314267146c2005e56eebe7b"><td class="mdescLeft"> </td><td class="mdescRight">Used by tds_datecrack. <br /></td></tr> <tr class="separator:a3b40b4faf314267146c2005e56eebe7b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a87f67fba7cd41634bcb62cdbfeb24159"><td class="memItemLeft" align="right" valign="top"><a id="a87f67fba7cd41634bcb62cdbfeb24159" name="a87f67fba7cd41634bcb62cdbfeb24159"></a> typedef struct <a class="el" href="a01214.html">tdsdump_off_item</a> </td><td class="memItemRight" valign="bottom"><b>TDSDUMP_OFF_ITEM</b></td></tr> <tr class="separator:a87f67fba7cd41634bcb62cdbfeb24159"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a856d78b7438fef3d6e6c0a8e4566d978"><td class="memItemLeft" align="right" valign="top"><a id="a856d78b7438fef3d6e6c0a8e4566d978" name="a856d78b7438fef3d6e6c0a8e4566d978"></a> typedef struct <a class="el" href="a01182.html">tds_dynamic</a> </td><td class="memItemRight" valign="bottom"><b>TDSDYNAMIC</b></td></tr> <tr class="memdesc:a856d78b7438fef3d6e6c0a8e4566d978"><td class="mdescLeft"> </td><td class="mdescRight">Holds information for a dynamic (also called prepared) query. <br /></td></tr> <tr class="separator:a856d78b7438fef3d6e6c0a8e4566d978"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a42c559939ed16a39c0318a6f543c576e"><td class="memItemLeft" align="right" valign="top"><a id="a42c559939ed16a39c0318a6f543c576e" name="a42c559939ed16a39c0318a6f543c576e"></a> typedef struct <a class="el" href="a01178.html">tds_env</a> </td><td class="memItemRight" valign="bottom"><b>TDSENV</b></td></tr> <tr class="memdesc:a42c559939ed16a39c0318a6f543c576e"><td class="mdescLeft"> </td><td class="mdescRight">Current environment as reported by the server. <br /></td></tr> <tr class="separator:a42c559939ed16a39c0318a6f543c576e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a611fb952b4475b8680d28451884f88d2"><td class="memItemLeft" align="right" valign="top"><a id="a611fb952b4475b8680d28451884f88d2" name="a611fb952b4475b8680d28451884f88d2"></a> typedef struct <a class="el" href="a01218.html">tds_freeze</a> </td><td class="memItemRight" valign="bottom"><b>TDSFREEZE</b></td></tr> <tr class="separator:a611fb952b4475b8680d28451884f88d2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3980c13edf5fb943c067a924128ddee1"><td class="memItemLeft" align="right" valign="top"><a id="a3980c13edf5fb943c067a924128ddee1" name="a3980c13edf5fb943c067a924128ddee1"></a> typedef struct <a class="el" href="a01122.html">tds_headers</a> </td><td class="memItemRight" valign="bottom"><b>TDSHEADERS</b></td></tr> <tr class="separator:a3980c13edf5fb943c067a924128ddee1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1cd4c03efc8672b6518ed6646cb00b9c"><td class="memItemLeft" align="right" valign="top"><a id="a1cd4c03efc8672b6518ed6646cb00b9c" name="a1cd4c03efc8672b6518ed6646cb00b9c"></a> typedef struct <a class="el" href="a00958.html">tdsiconvinfo</a> </td><td class="memItemRight" valign="bottom"><b>TDSICONV</b></td></tr> <tr class="separator:a1cd4c03efc8672b6518ed6646cb00b9c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5a2831b1d9eb8855f29076c3357887df"><td class="memItemLeft" align="right" valign="top"><a id="a5a2831b1d9eb8855f29076c3357887df" name="a5a2831b1d9eb8855f29076c3357887df"></a> typedef struct <a class="el" href="a01126.html">tds_locale</a> </td><td class="memItemRight" valign="bottom"><b>TDSLOCALE</b></td></tr> <tr class="separator:a5a2831b1d9eb8855f29076c3357887df"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9d825a86068bd15b5d271d57453e8885"><td class="memItemLeft" align="right" valign="top"><a id="a9d825a86068bd15b5d271d57453e8885" name="a9d825a86068bd15b5d271d57453e8885"></a> typedef struct <a class="el" href="a01118.html">tds_login</a> </td><td class="memItemRight" valign="bottom"><b>TDSLOGIN</b></td></tr> <tr class="separator:a9d825a86068bd15b5d271d57453e8885"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2a6606ee5e897a1aeb7d20217b9c0d1d"><td class="memItemLeft" align="right" valign="top"><a id="a2a6606ee5e897a1aeb7d20217b9c0d1d" name="a2a6606ee5e897a1aeb7d20217b9c0d1d"></a> typedef struct <a class="el" href="a01162.html">tds_message</a> </td><td class="memItemRight" valign="bottom"><b>TDSMESSAGE</b></td></tr> <tr class="separator:a2a6606ee5e897a1aeb7d20217b9c0d1d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5da722ed8d95a7dded2f8518f9367379"><td class="memItemLeft" align="right" valign="top"><a id="a5da722ed8d95a7dded2f8518f9367379" name="a5da722ed8d95a7dded2f8518f9367379"></a> typedef struct <a class="el" href="a01186.html">tds_multiple</a> </td><td class="memItemRight" valign="bottom"><b>TDSMULTIPLE</b></td></tr> <tr class="separator:a5da722ed8d95a7dded2f8518f9367379"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9340ff7bdc711628bef0c4dc63bf50cb"><td class="memItemLeft" align="right" valign="top"><a id="a9340ff7bdc711628bef0c4dc63bf50cb" name="a9340ff7bdc711628bef0c4dc63bf50cb"></a> typedef struct <a class="el" href="a01198.html">tds_packet</a> </td><td class="memItemRight" valign="bottom"><b>TDSPACKET</b></td></tr> <tr class="separator:a9340ff7bdc711628bef0c4dc63bf50cb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6156bbdba009c5525ebafcd93ad141e1"><td class="memItemLeft" align="right" valign="top"><a id="a6156bbdba009c5525ebafcd93ad141e1" name="a6156bbdba009c5525ebafcd93ad141e1"></a> typedef <a class="el" href="a00416.html#a1efbb2f3844cb2ea89af03721ac67277">TDSRESULTINFO</a> </td><td class="memItemRight" valign="bottom"><b>TDSPARAMINFO</b></td></tr> <tr class="separator:a6156bbdba009c5525ebafcd93ad141e1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a63e1461678103ebcb403317d2994211f"><td class="memItemLeft" align="right" valign="top"><a id="a63e1461678103ebcb403317d2994211f" name="a63e1461678103ebcb403317d2994211f"></a> typedef struct <a class="el" href="a01202.html">tds_poll_wakeup</a> </td><td class="memItemRight" valign="bottom"><b>TDSPOLLWAKEUP</b></td></tr> <tr class="separator:a63e1461678103ebcb403317d2994211f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1efbb2f3844cb2ea89af03721ac67277"><td class="memItemLeft" align="right" valign="top"><a id="a1efbb2f3844cb2ea89af03721ac67277" name="a1efbb2f3844cb2ea89af03721ac67277"></a> typedef struct <a class="el" href="a01158.html">tds_result_info</a> </td><td class="memItemRight" valign="bottom"><b>TDSRESULTINFO</b></td></tr> <tr class="memdesc:a1efbb2f3844cb2ea89af03721ac67277"><td class="mdescLeft"> </td><td class="mdescRight">Hold information for any results. <br /></td></tr> <tr class="separator:a1efbb2f3844cb2ea89af03721ac67277"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abc1931b5e0e14d53ed4d0e13dd2ce36c"><td class="memItemLeft" align="right" valign="top"><a id="abc1931b5e0e14d53ed4d0e13dd2ce36c" name="abc1931b5e0e14d53ed4d0e13dd2ce36c"></a> typedef int </td><td class="memItemRight" valign="bottom"><b>TDSRET</b></td></tr> <tr class="separator:abc1931b5e0e14d53ed4d0e13dd2ce36c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abe4fb353916b7cb77e917b0201aa5b95"><td class="memItemLeft" align="right" valign="top"><a id="abe4fb353916b7cb77e917b0201aa5b95" name="abe4fb353916b7cb77e917b0201aa5b95"></a> typedef struct <a class="el" href="a01210.html">tds_socket</a> </td><td class="memItemRight" valign="bottom"><b>TDSSOCKET</b></td></tr> <tr class="separator:abe4fb353916b7cb77e917b0201aa5b95"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9d093baf04b6bfa31c2cd9c4f3807d50"><td class="memItemLeft" align="right" valign="top"><a id="a9d093baf04b6bfa31c2cd9c4f3807d50" name="a9d093baf04b6bfa31c2cd9c4f3807d50"></a> typedef struct <a class="el" href="a01166.html">tds_upd_col</a> </td><td class="memItemRight" valign="bottom"><b>TDSUPDCOL</b></td></tr> <tr class="separator:a9d093baf04b6bfa31c2cd9c4f3807d50"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a25488abe3449d4cdaaa97587d34f9174"><td class="memItemLeft" align="right" valign="top"><a id="a25488abe3449d4cdaaa97587d34f9174" name="a25488abe3449d4cdaaa97587d34f9174"></a> typedef struct <a class="el" href="a01134.html">tds_variant</a> </td><td class="memItemRight" valign="bottom"><b>TDSVARIANT</b></td></tr> <tr class="memdesc:a25488abe3449d4cdaaa97587d34f9174"><td class="mdescLeft"> </td><td class="mdescRight">Store variant informations. <br /></td></tr> <tr class="separator:a25488abe3449d4cdaaa97587d34f9174"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a> Enumerations</h2></td></tr> <tr class="memitem:a0944a4353780132eeab7b06e3e42291d"><td class="memItemLeft" align="right" valign="top"><a id="a0944a4353780132eeab7b06e3e42291d" name="a0944a4353780132eeab7b06e3e42291d"></a>enum  </td><td class="memItemRight" valign="bottom">{ <br />   <b>TDS_CUR_ISTAT_UNUSED</b> = 0x00 , <b>TDS_CUR_ISTAT_DECLARED</b> = 0x01 , <b>TDS_CUR_ISTAT_OPEN</b> = 0x02 , <b>TDS_CUR_ISTAT_CLOSED</b> = 0x04 , <br />   <b>TDS_CUR_ISTAT_RDONLY</b> = 0x08 , <b>TDS_CUR_ISTAT_UPDATABLE</b> = 0x10 , <b>TDS_CUR_ISTAT_ROWCNT</b> = 0x20 , <b>TDS_CUR_ISTAT_DEALLOC</b> = 0x40 <br /> }</td></tr> <tr class="separator:a0944a4353780132eeab7b06e3e42291d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4790f45dcc812c1b00184a2edccdddf5"><td class="memItemLeft" align="right" valign="top"><a id="a4790f45dcc812c1b00184a2edccdddf5" name="a4790f45dcc812c1b00184a2edccdddf5"></a>enum  </td><td class="memItemRight" valign="bottom">{ <br />   <b>TDS_TYPEFLAG_INVALID</b> = 0 , <b>TDS_TYPEFLAG_NULLABLE</b> = 1 , <b>TDS_TYPEFLAG_FIXED</b> = 2 , <b>TDS_TYPEFLAG_VARIABLE</b> = 4 , <br />   <b>TDS_TYPEFLAG_COLLATE</b> = 8 , <b>TDS_TYPEFLAG_ASCII</b> = 16 , <b>TDS_TYPEFLAG_UNICODE</b> = 32 , <b>TDS_TYPEFLAG_BINARY</b> = 64 , <br />   <b>TDS_TYPEFLAG_DATETIME</b> = 128 , <b>TDS_TYPEFLAG_NUMERIC</b> = 256 , <b>TDS_TYPEFLAG_VARIANT</b> = 512 <br /> }</td></tr> <tr class="separator:a4790f45dcc812c1b00184a2edccdddf5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad5c5c8cb776334af4b0ebf7a0d740cb2"><td class="memItemLeft" align="right" valign="top"><a id="ad5c5c8cb776334af4b0ebf7a0d740cb2" name="ad5c5c8cb776334af4b0ebf7a0d740cb2"></a>enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ad5c5c8cb776334af4b0ebf7a0d740cb2">tds_bcp_directions</a> { <b>TDS_BCP_IN</b> = 1 , <b>TDS_BCP_OUT</b> = 2 , <b>TDS_BCP_QUERYOUT</b> = 3 }</td></tr> <tr class="memdesc:ad5c5c8cb776334af4b0ebf7a0d740cb2"><td class="mdescLeft"> </td><td class="mdescRight">bcp direction <br /></td></tr> <tr class="separator:ad5c5c8cb776334af4b0ebf7a0d740cb2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a757c19dcf130b02911ecfdcc341e4878"><td class="memItemLeft" align="right" valign="top"><a id="a757c19dcf130b02911ecfdcc341e4878" name="a757c19dcf130b02911ecfdcc341e4878"></a>enum  </td><td class="memItemRight" valign="bottom"><b>tds_cursor_fetch</b> { <br />   <b>TDS_CURSOR_FETCH_NEXT</b> = 1 , <b>TDS_CURSOR_FETCH_PREV</b> , <b>TDS_CURSOR_FETCH_FIRST</b> , <b>TDS_CURSOR_FETCH_LAST</b> , <br />   <b>TDS_CURSOR_FETCH_ABSOLUTE</b> , <b>TDS_CURSOR_FETCH_RELATIVE</b> <br /> }</td></tr> <tr class="separator:a757c19dcf130b02911ecfdcc341e4878"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2fbe89ece12df5a3d0583c19512da749"><td class="memItemLeft" align="right" valign="top"><a id="a2fbe89ece12df5a3d0583c19512da749" name="a2fbe89ece12df5a3d0583c19512da749"></a>enum  </td><td class="memItemRight" valign="bottom"><b>tds_cursor_operation</b> { <b>TDS_CURSOR_POSITION</b> = 0 , <b>TDS_CURSOR_UPDATE</b> = 1 , <b>TDS_CURSOR_DELETE</b> = 2 , <b>TDS_CURSOR_INSERT</b> = 4 }</td></tr> <tr class="separator:a2fbe89ece12df5a3d0583c19512da749"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a798d3c326ced82cff9dd9115032a05f5"><td class="memItemLeft" align="right" valign="top"><a id="a798d3c326ced82cff9dd9115032a05f5" name="a798d3c326ced82cff9dd9115032a05f5"></a>enum  </td><td class="memItemRight" valign="bottom"><b>TDS_CURSOR_STATE</b> { <b>TDS_CURSOR_STATE_UNACTIONED</b> = 0 , <b>TDS_CURSOR_STATE_REQUESTED</b> = 1 , <b>TDS_CURSOR_STATE_SENT</b> = 2 , <b>TDS_CURSOR_STATE_ACTIONED</b> = 3 }</td></tr> <tr class="separator:a798d3c326ced82cff9dd9115032a05f5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abd0d5e12d656bc21db4e4c0a016ef26b"><td class="memItemLeft" align="right" valign="top"><a id="abd0d5e12d656bc21db4e4c0a016ef26b" name="abd0d5e12d656bc21db4e4c0a016ef26b"></a>enum  </td><td class="memItemRight" valign="bottom"><b>tds_encryption_level</b> { <b>TDS_ENCRYPTION_DEFAULT</b> , <b>TDS_ENCRYPTION_OFF</b> , <b>TDS_ENCRYPTION_REQUEST</b> , <b>TDS_ENCRYPTION_REQUIRE</b> }</td></tr> <tr class="separator:abd0d5e12d656bc21db4e4c0a016ef26b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa8d8044be84bcde003f28ec25a77519c"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519c">tds_end</a> { <br />   <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519ca7ed9046db24ad78bb94c2b12d6e11f46">TDS_DONE_FINAL</a> = 0x00 , <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519ca688b8bf555ce6ae72f3e047177bfc966">TDS_DONE_MORE_RESULTS</a> = 0x01 , <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519caa9d79a3b62e3321332223ac3d1a5b18d">TDS_DONE_ERROR</a> = 0x02 , <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519cac79a30d1a0bac125e77d87f5d87bc2b2">TDS_DONE_INXACT</a> = 0x04 , <br />   <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519cae170f368306f421d507c6f08e4d48d9a">TDS_DONE_PROC</a> = 0x08 , <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519caf17d0c6591e318014c806a10c2f0270b">TDS_DONE_COUNT</a> = 0x10 , <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519ca202254cfd6784404cf1aa22bc7147c86">TDS_DONE_CANCELLED</a> = 0x20 , <b>TDS_DONE_EVENT</b> = 0x40 , <br />   <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519ca7bfe89d6f8fc309eae412ad0a503e34c">TDS_DONE_SRVERROR</a> = 0x100 , <b>TDS_DONE_NO_TRAN</b> = 0 , <b>TDS_DONE_TRAN_SUCCEED</b> = 1 , <b>TDS_DONE_TRAN_PROGRESS</b> = 2 , <br />   <b>TDS_DONE_STMT_ABORT</b> = 3 , <b>TDS_DONE_TRAN_ABORT</b> = 4 <br /> }</td></tr> <tr class="memdesc:aa8d8044be84bcde003f28ec25a77519c"><td class="mdescLeft"> </td><td class="mdescRight">Flags returned in TDS_DONE token. <a href="a00416.html#aa8d8044be84bcde003f28ec25a77519c">More...</a><br /></td></tr> <tr class="separator:aa8d8044be84bcde003f28ec25a77519c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2934c03710b8e8c445da0bef24401bb6"><td class="memItemLeft" align="right" valign="top"><a id="a2934c03710b8e8c445da0bef24401bb6" name="a2934c03710b8e8c445da0bef24401bb6"></a>enum  </td><td class="memItemRight" valign="bottom"><b>TDS_ICONV_ENTRY</b> { <b>client2ucs2</b> , <b>client2server_chardata</b> , <b>initial_char_conv_count</b> }</td></tr> <tr class="separator:a2934c03710b8e8c445da0bef24401bb6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad52f20cb9a01e39d9f4011367bae0e7b"><td class="memItemLeft" align="right" valign="top"><a id="ad52f20cb9a01e39d9f4011367bae0e7b" name="ad52f20cb9a01e39d9f4011367bae0e7b"></a>enum  </td><td class="memItemRight" valign="bottom"><b>TDS_MULTIPLE_TYPE</b> { <b>TDS_MULTIPLE_QUERY</b> , <b>TDS_MULTIPLE_EXECUTE</b> , <b>TDS_MULTIPLE_RPC</b> }</td></tr> <tr class="separator:ad52f20cb9a01e39d9f4011367bae0e7b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a14de9efce02e80b439846d981fb50abc"><td class="memItemLeft" align="right" valign="top"><a id="a14de9efce02e80b439846d981fb50abc" name="a14de9efce02e80b439846d981fb50abc"></a>enum  </td><td class="memItemRight" valign="bottom"><b>tds_operations</b> { <br />   <b>TDS_OP_NONE</b> = 0 , <b>TDS_OP_CURSOR</b> = TDS_SP_CURSOR , <b>TDS_OP_CURSOROPEN</b> = TDS_SP_CURSOROPEN , <b>TDS_OP_CURSORPREPARE</b> = TDS_SP_CURSORPREPARE , <br />   <b>TDS_OP_CURSOREXECUTE</b> = TDS_SP_CURSOREXECUTE , <b>TDS_OP_CURSORPREPEXEC</b> = TDS_SP_CURSORPREPEXEC , <b>TDS_OP_CURSORUNPREPARE</b> = TDS_SP_CURSORUNPREPARE , <b>TDS_OP_CURSORFETCH</b> = TDS_SP_CURSORFETCH , <br />   <b>TDS_OP_CURSOROPTION</b> = TDS_SP_CURSOROPTION , <b>TDS_OP_CURSORCLOSE</b> = TDS_SP_CURSORCLOSE , <b>TDS_OP_EXECUTESQL</b> = TDS_SP_EXECUTESQL , <b>TDS_OP_PREPARE</b> = TDS_SP_PREPARE , <br />   <b>TDS_OP_EXECUTE</b> = TDS_SP_EXECUTE , <b>TDS_OP_PREPEXEC</b> = TDS_SP_PREPEXEC , <b>TDS_OP_PREPEXECRPC</b> = TDS_SP_PREPEXECRPC , <b>TDS_OP_UNPREPARE</b> = TDS_SP_UNPREPARE , <br />   <b>TDS_OP_DYN_DEALLOC</b> = 100 <br /> }</td></tr> <tr class="separator:a14de9efce02e80b439846d981fb50abc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a87cdae58f91ebe9229206bf0628f8e33"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33">tds_states</a> { <br />   <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33ad1586abc1f75b7f3d640b994afe310e9">TDS_IDLE</a> , <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33a4a4fcc1840bee1e09521f08a0184d025">TDS_WRITING</a> , <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33a2bad5be30bd85edc9495dae3d199d2c1">TDS_SENDING</a> , <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33a00f6d5ac5560f2f44661e599241849a8">TDS_PENDING</a> , <br />   <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33a36ddbc8f326d6b297009a8fafd958529">TDS_READING</a> , <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33af087b64970a1fb35bbcf1bc6ea7a643d">TDS_DEAD</a> <br /> }</td></tr> <tr class="memdesc:a87cdae58f91ebe9229206bf0628f8e33"><td class="mdescLeft"> </td><td class="mdescRight">values for tds->state <a href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33">More...</a><br /></td></tr> <tr class="separator:a87cdae58f91ebe9229206bf0628f8e33"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a21bda995f430fa4018448b0130a7eefb"><td class="memItemLeft" align="right" valign="top"><a id="a21bda995f430fa4018448b0130a7eefb" name="a21bda995f430fa4018448b0130a7eefb"></a>enum  </td><td class="memItemRight" valign="bottom"><b>tds_token_flags</b> { <br />   <b>TDS_HANDLE_ALL</b> = 0 , <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <br />   <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <br />   <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <b>TDS_TOKEN_FLAG</b> =(OTHERS) , <b>TDS_TOKEN_RESULTS</b> = TDS_RETURN_ROWFMT|TDS_RETURN_COMPUTEFMT|TDS_RETURN_DONE|TDS_STOPAT_ROW|TDS_STOPAT_COMPUTE|TDS_RETURN_PROC , <br />   <b>TDS_TOKEN_TRAILING</b> = TDS_STOPAT_ROWFMT|TDS_STOPAT_COMPUTEFMT|TDS_STOPAT_ROW|TDS_STOPAT_COMPUTE|TDS_STOPAT_MSG|TDS_STOPAT_OTHERS <br /> }</td></tr> <tr class="separator:a21bda995f430fa4018448b0130a7eefb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae594fe2c8d987b53c6234e16584c2135"><td class="memItemLeft" align="right" valign="top"><a id="ae594fe2c8d987b53c6234e16584c2135" name="ae594fe2c8d987b53c6234e16584c2135"></a>enum  </td><td class="memItemRight" valign="bottom"><b>tds_token_results</b> { <br />   <b>TDS_TOKEN_RES_OTHERS</b> , <b>TDS_TOKEN_RES_ROWFMT</b> , <b>TDS_TOKEN_RES_COMPUTEFMT</b> , <b>TDS_TOKEN_RES_PARAMFMT</b> , <br />   <b>TDS_TOKEN_RES_DONE</b> , <b>TDS_TOKEN_RES_ROW</b> , <b>TDS_TOKEN_RES_COMPUTE</b> , <b>TDS_TOKEN_RES_PROC</b> , <br />   <b>TDS_TOKEN_RES_MSG</b> , <b>TDS_TOKEN_RES_ENV</b> <br /> }</td></tr> <tr class="separator:ae594fe2c8d987b53c6234e16584c2135"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8a16e3e6aa9bfea83753fa2a9371f284"><td class="memItemLeft" align="right" valign="top"><a id="a8a16e3e6aa9bfea83753fa2a9371f284" name="a8a16e3e6aa9bfea83753fa2a9371f284"></a>enum  </td><td class="memItemRight" valign="bottom"><b>TDSERRNO</b> { <br />   <b>TDSEOK</b> = TDS_SUCCESS , <b>TDSEVERDOWN</b> = 100 , <b>TDSEINPROGRESS</b> , <b>TDSEICONVIU</b> = 2400 , <br />   <b>TDSEICONVAVAIL</b> = 2401 , <b>TDSEICONVO</b> = 2402 , <b>TDSEICONVI</b> = 2403 , <b>TDSEICONV2BIG</b> = 2404 , <br />   <b>TDSEPORTINSTANCE</b> = 2500 , <b>TDSESYNC</b> = 20001 , <b>TDSEFCON</b> = 20002 , <b>TDSETIME</b> = 20003 , <br />   <b>TDSEREAD</b> = 20004 , <b>TDSEWRIT</b> = 20006 , <b>TDSESOCK</b> = 20008 , <b>TDSECONN</b> = 20009 , <br />   <b>TDSEMEM</b> = 20010 , <b>TDSEINTF</b> = 20012 , <b>TDSEUHST</b> = 20013 , <b>TDSEPWD</b> = 20014 , <br />   <b>TDSESEOF</b> = 20017 , <b>TDSERPND</b> = 20019 , <b>TDSEBTOK</b> = 20020 , <b>TDSEOOB</b> = 20022 , <br />   <b>TDSECLOS</b> = 20056 , <b>TDSEUSCT</b> = 20058 , <b>TDSEUTDS</b> = 20146 , <b>TDSEEUNR</b> = 20185 , <br />   <b>TDSECAP</b> = 20203 , <b>TDSENEG</b> = 20210 , <b>TDSEUMSG</b> = 20212 , <b>TDSECAPTYP</b> = 20213 , <br />   <b>TDSECONF</b> = 20214 , <b>TDSEBPROBADTYP</b> = 20250 , <b>TDSECLOSEIN</b> = 20292 <br /> }</td></tr> <tr class="separator:a8a16e3e6aa9bfea83753fa2a9371f284"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:a5aa722e11ce2bfee894bdc6e854ce278"><td class="memItemLeft" align="right" valign="top"><a id="a5aa722e11ce2bfee894bdc6e854ce278" name="a5aa722e11ce2bfee894bdc6e854ce278"></a> static bool </td><td class="memItemRight" valign="bottom"><b>is_tds_type_valid</b> (int type)</td></tr> <tr class="separator:a5aa722e11ce2bfee894bdc6e854ce278"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab3b9ec24e3b7df633fa46d8c50000d28"><td class="memItemLeft" align="right" valign="top"><a id="ab3b9ec24e3b7df633fa46d8c50000d28" name="ab3b9ec24e3b7df633fa46d8c50000d28"></a> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds5_gss_send</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:ab3b9ec24e3b7df633fa46d8c50000d28"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gadd400eba2de9bfa27a6a8185b65dcf70"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01194.html">TDSAUTHENTICATION</a> * </td><td class="memItemRight" valign="bottom"><b>tds5_negotiate_get_auth</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:gadd400eba2de9bfa27a6a8185b65dcf70"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aedb7a05dec7683d55b47178dbf4e7228"><td class="memItemLeft" align="right" valign="top"><a id="aedb7a05dec7683d55b47178dbf4e7228" name="aedb7a05dec7683d55b47178dbf4e7228"></a> static void </td><td class="memItemRight" valign="bottom"><b>tds5_negotiate_set_msg_type</b> (<a class="el" href="a01194.html">TDSAUTHENTICATION</a> *tds_auth, unsigned msg_type)</td></tr> <tr class="separator:aedb7a05dec7683d55b47178dbf4e7228"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7712e1b22e076862c064582a37f06f2b"><td class="memItemLeft" align="right" valign="top"><a id="a7712e1b22e076862c064582a37f06f2b" name="a7712e1b22e076862c064582a37f06f2b"></a> int </td><td class="memItemRight" valign="bottom"><b>tds5_send_optioncmd</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, TDS_OPTION_CMD tds_command, TDS_OPTION tds_option, <a class="el" href="a01102.html">TDS_OPTION_ARG</a> *tds_argument, TDS_INT *tds_argsize)</td></tr> <tr class="separator:a7712e1b22e076862c064582a37f06f2b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga08877c101704bebe4fa57e0849dc272d"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga08877c101704bebe4fa57e0849dc272d">tds71_submit_prepexec</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *query, const char *id, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> **dyn_out, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params)</td></tr> <tr class="memdesc:ga08877c101704bebe4fa57e0849dc272d"><td class="mdescLeft"> </td><td class="mdescRight">Creates a temporary stored procedure in the server and execute it. <a href="a00542.html#ga08877c101704bebe4fa57e0849dc272d">More...</a><br /></td></tr> <tr class="separator:ga08877c101704bebe4fa57e0849dc272d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac23c12ccb3e8599f10f305e993e216f6"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#gac23c12ccb3e8599f10f305e993e216f6">tds7_get_instance_port</a> (struct addrinfo *addr, const char *instance)</td></tr> <tr class="memdesc:gac23c12ccb3e8599f10f305e993e216f6"><td class="mdescLeft"> </td><td class="mdescRight">Get port of given instance. <a href="a00543.html#gac23c12ccb3e8599f10f305e993e216f6">More...</a><br /></td></tr> <tr class="separator:gac23c12ccb3e8599f10f305e993e216f6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga954dcc3b0332fa9448d9edf59c0fe439"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga954dcc3b0332fa9448d9edf59c0fe439">tds7_get_instance_ports</a> (FILE *output, struct addrinfo *addr)</td></tr> <tr class="memdesc:ga954dcc3b0332fa9448d9edf59c0fe439"><td class="mdescLeft"> </td><td class="mdescRight">Get port of all instances. <a href="a00543.html#ga954dcc3b0332fa9448d9edf59c0fe439">More...</a><br /></td></tr> <tr class="separator:ga954dcc3b0332fa9448d9edf59c0fe439"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1db9b785009f6c3d81dcdc92fd3fed99"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds7_srv_charset_changed</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, TDS_UCHAR collate[5])</td></tr> <tr class="separator:ga1db9b785009f6c3d81dcdc92fd3fed99"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8b92d587854724b15029a965c30bb1dd"><td class="memItemLeft" align="right" valign="top"> const char * </td><td class="memItemRight" valign="bottom"><b>tds_addrinfo2str</b> (struct addrinfo *addr, char *name, int namemax)</td></tr> <tr class="separator:ga8b92d587854724b15029a965c30bb1dd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4aafa9e8c6a30bb57e715db04e8abacb"><td class="memItemLeft" align="right" valign="top"><a id="a4aafa9e8c6a30bb57e715db04e8abacb" name="a4aafa9e8c6a30bb57e715db04e8abacb"></a> <a class="el" href="a01210.html">TDSSOCKET</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_additional_socket</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn)</td></tr> <tr class="separator:a4aafa9e8c6a30bb57e715db04e8abacb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga01933a949833cac5bd287e9bdc601942"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01142.html">BCPCOLDATA</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_bcp_column_data</b> (unsigned int column_size)</td></tr> <tr class="separator:ga01933a949833cac5bd287e9bdc601942"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad0691bd00b3969bd284825795b4ca537"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01222.html">TDSBCPINFO</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_bcpinfo</b> (void)</td></tr> <tr class="separator:gad0691bd00b3969bd284825795b4ca537"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga78565676d7d1766c6eda9624a331f405"><td class="memItemLeft" align="right" valign="top"> char * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_client_sqlstate</b> (int msgno)</td></tr> <tr class="separator:ga78565676d7d1766c6eda9624a331f405"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8b18e5aa2f9f4cbafad31c2ccbf71327"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01158.html">TDSCOMPUTEINFO</a> ** </td><td class="memItemRight" valign="bottom"><b>tds_alloc_compute_results</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, TDS_USMALLINT num_cols, TDS_USMALLINT by_cols)</td></tr> <tr class="separator:ga8b18e5aa2f9f4cbafad31c2ccbf71327"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga05551834cc559869a180a18dd5d2d655"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_alloc_compute_row</b> (<a class="el" href="a01158.html">TDSCOMPUTEINFO</a> *res_info)</td></tr> <tr class="separator:ga05551834cc559869a180a18dd5d2d655"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1441a9787b31a97bc3ff290b04ce501a"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01190.html">TDSCONTEXT</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_context</b> (void *parent)</td></tr> <tr class="separator:ga1441a9787b31a97bc3ff290b04ce501a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga34e003db01a9fa0a8df0f6a9c68d10e3"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_cursor</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *name, TDS_INT namelen, const char *query, TDS_INT querylen)</td></tr> <tr class="separator:ga34e003db01a9fa0a8df0f6a9c68d10e3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga69559de43b47f4a9e2eecc7a56527444"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00541.html#ga69559de43b47f4a9e2eecc7a56527444">tds_alloc_dynamic</a> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, const char *id)</td></tr> <tr class="memdesc:ga69559de43b47f4a9e2eecc7a56527444"><td class="mdescLeft"> </td><td class="mdescRight">Allocate a dynamic statement. <a href="a00541.html#ga69559de43b47f4a9e2eecc7a56527444">More...</a><br /></td></tr> <tr class="separator:ga69559de43b47f4a9e2eecc7a56527444"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gafb042cedd3fd60f8e7dd65164166ece4"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01126.html">TDSLOCALE</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_locale</b> (void)</td></tr> <tr class="separator:gafb042cedd3fd60f8e7dd65164166ece4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaea5b386933560f96022355d370d2081b"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01118.html">TDSLOGIN</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_login</b> (int use_environment)</td></tr> <tr class="separator:gaea5b386933560f96022355d370d2081b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga63ff41fd7ed0cfcc64a2b84605588bc0"><td class="memItemLeft" align="right" valign="top"> char * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_lookup_sqlstate</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, int msgno)</td></tr> <tr class="separator:ga63ff41fd7ed0cfcc64a2b84605588bc0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab3b77daf737b2a2bcef029038bd49419"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01198.html">TDSPACKET</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_packet</b> (void *buf, unsigned len)</td></tr> <tr class="separator:gab3b77daf737b2a2bcef029038bd49419"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4bbf9a6b6d514fc62ae67f548d54d78a"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00541.html#ga4bbf9a6b6d514fc62ae67f548d54d78a">tds_alloc_param_data</a> (<a class="el" href="a01150.html">TDSCOLUMN</a> *curparam)</td></tr> <tr class="memdesc:ga4bbf9a6b6d514fc62ae67f548d54d78a"><td class="mdescLeft"> </td><td class="mdescRight">Allocate data for a parameter. <a href="a00541.html#ga4bbf9a6b6d514fc62ae67f548d54d78a">More...</a><br /></td></tr> <tr class="separator:ga4bbf9a6b6d514fc62ae67f548d54d78a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga314c65c067570dc1ef3e58bbfc4eb763"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a01158.html">TDSPARAMINFO</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00541.html#ga314c65c067570dc1ef3e58bbfc4eb763">tds_alloc_param_result</a> (<a class="el" href="a01158.html">TDSPARAMINFO</a> *old_param)</td></tr> <tr class="memdesc:ga314c65c067570dc1ef3e58bbfc4eb763"><td class="mdescLeft"> </td><td class="mdescRight">Adds a output parameter to TDSPARAMINFO. <a href="a00541.html#ga314c65c067570dc1ef3e58bbfc4eb763">More...</a><br /></td></tr> <tr class="separator:ga314c65c067570dc1ef3e58bbfc4eb763"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf8bc4a976ed6bc6c3f61b20877a81963"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a00416.html#a1efbb2f3844cb2ea89af03721ac67277">TDSRESULTINFO</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_results</b> (TDS_USMALLINT num_cols)</td></tr> <tr class="separator:gaf8bc4a976ed6bc6c3f61b20877a81963"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1224fb9277112dc2ce12531d2b73b145"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_alloc_row</b> (<a class="el" href="a00416.html#a1efbb2f3844cb2ea89af03721ac67277">TDSRESULTINFO</a> *res_info)</td></tr> <tr class="memdesc:ga1224fb9277112dc2ce12531d2b73b145"><td class="mdescLeft"> </td><td class="mdescRight">Allocate space for row store return NULL on out of memory. <br /></td></tr> <tr class="separator:ga1224fb9277112dc2ce12531d2b73b145"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7718f605bb093fc319dbd1895729e954"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01210.html">TDSSOCKET</a> * </td><td class="memItemRight" valign="bottom"><b>tds_alloc_socket</b> (<a class="el" href="a01190.html">TDSCONTEXT</a> *context, unsigned int bufsize)</td></tr> <tr class="separator:ga7718f605bb093fc319dbd1895729e954"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ade7df2db455b61edc83819ad60edb339"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ade7df2db455b61edc83819ad60edb339">tds_bcp_done</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, int *rows_copied)</td></tr> <tr class="memdesc:ade7df2db455b61edc83819ad60edb339"><td class="mdescLeft"> </td><td class="mdescRight">Tell we finished sending BCP data to server. <a href="a00416.html#ade7df2db455b61edc83819ad60edb339">More...</a><br /></td></tr> <tr class="separator:ade7df2db455b61edc83819ad60edb339"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8184311543c685f2ee0bcccfb725ca02"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a8184311543c685f2ee0bcccfb725ca02">tds_bcp_fread</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00958.html">TDSICONV</a> *conv, FILE *stream, const char *terminator, size_t term_len, char **outbuf, size_t *outbytes)</td></tr> <tr class="memdesc:a8184311543c685f2ee0bcccfb725ca02"><td class="mdescLeft"> </td><td class="mdescRight">Read a data file, passing the data through iconv(). <a href="a00416.html#a8184311543c685f2ee0bcccfb725ca02">More...</a><br /></td></tr> <tr class="separator:a8184311543c685f2ee0bcccfb725ca02"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac6610c72bd31bad5378f760fa9b12d66"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ac6610c72bd31bad5378f760fa9b12d66">tds_bcp_init</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01222.html">TDSBCPINFO</a> *bcpinfo)</td></tr> <tr class="memdesc:ac6610c72bd31bad5378f760fa9b12d66"><td class="mdescLeft"> </td><td class="mdescRight">Initialize BCP information. <a href="a00416.html#ac6610c72bd31bad5378f760fa9b12d66">More...</a><br /></td></tr> <tr class="separator:ac6610c72bd31bad5378f760fa9b12d66"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad9e44450025cbcee1ad81d7e5a2cc099"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ad9e44450025cbcee1ad81d7e5a2cc099">tds_bcp_send_record</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01222.html">TDSBCPINFO</a> *bcpinfo, tds_bcp_get_col_data get_col_data, tds_bcp_null_error null_error, int offset)</td></tr> <tr class="memdesc:ad9e44450025cbcee1ad81d7e5a2cc099"><td class="mdescLeft"> </td><td class="mdescRight">Send one row of data to server. <a href="a00416.html#ad9e44450025cbcee1ad81d7e5a2cc099">More...</a><br /></td></tr> <tr class="separator:ad9e44450025cbcee1ad81d7e5a2cc099"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8208eef2a3974ae1f0cf3c8c8ab011ce"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a8208eef2a3974ae1f0cf3c8c8ab011ce">tds_bcp_start</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01222.html">TDSBCPINFO</a> *bcpinfo)</td></tr> <tr class="memdesc:a8208eef2a3974ae1f0cf3c8c8ab011ce"><td class="mdescLeft"> </td><td class="mdescRight">Start sending BCP data to server. <a href="a00416.html#a8208eef2a3974ae1f0cf3c8c8ab011ce">More...</a><br /></td></tr> <tr class="separator:a8208eef2a3974ae1f0cf3c8c8ab011ce"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5eec23828b0610c58de248c4edb53879"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a5eec23828b0610c58de248c4edb53879">tds_bcp_start_copy_in</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01222.html">TDSBCPINFO</a> *bcpinfo)</td></tr> <tr class="memdesc:a5eec23828b0610c58de248c4edb53879"><td class="mdescLeft"> </td><td class="mdescRight">Start bulk copy to server. <a href="a00416.html#a5eec23828b0610c58de248c4edb53879">More...</a><br /></td></tr> <tr class="separator:a5eec23828b0610c58de248c4edb53879"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2c2a727a11339b6bfbccda0f99f56f58"><td class="memItemLeft" align="right" valign="top"><a id="a2c2a727a11339b6bfbccda0f99f56f58" name="a2c2a727a11339b6bfbccda0f99f56f58"></a> static bool </td><td class="memItemRight" valign="bottom"><b>tds_capability_enabled</b> (const <a class="el" href="a01110.html">TDS_CAPABILITY_TYPE</a> *cap, unsigned cap_num)</td></tr> <tr class="separator:a2c2a727a11339b6bfbccda0f99f56f58"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3e3f76009fce5ceedb2f42bb2c9aed2e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga3e3f76009fce5ceedb2f42bb2c9aed2e">tds_close_socket</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga3e3f76009fce5ceedb2f42bb2c9aed2e"><td class="mdescLeft"> </td><td class="mdescRight">Close current socket. <a href="a00543.html#ga3e3f76009fce5ceedb2f42bb2c9aed2e">More...</a><br /></td></tr> <tr class="separator:ga3e3f76009fce5ceedb2f42bb2c9aed2e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa3e087e2df44398cbb4741584d2b4f8e"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_config_boolean</b> (const char *option, const char *value, <a class="el" href="a01118.html">TDSLOGIN</a> *login)</td></tr> <tr class="separator:gaa3e087e2df44398cbb4741584d2b4f8e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga05c73c963f4d8904869c739c556c58a2"><td class="memItemLeft" align="right" valign="top">TDS_USMALLINT * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#ga05c73c963f4d8904869c739c556c58a2">tds_config_verstr</a> (const char *tdsver, <a class="el" href="a01118.html">TDSLOGIN</a> *login)</td></tr> <tr class="memdesc:ga05c73c963f4d8904869c739c556c58a2"><td class="mdescLeft"> </td><td class="mdescRight">Set TDS version from given string. <a href="a00538.html#ga05c73c963f4d8904869c739c556c58a2">More...</a><br /></td></tr> <tr class="separator:ga05c73c963f4d8904869c739c556c58a2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a60ff077fb19ddc91ead939305be9a3bc"><td class="memItemLeft" align="right" valign="top"><a id="a60ff077fb19ddc91ead939305be9a3bc" name="a60ff077fb19ddc91ead939305be9a3bc"></a> int </td><td class="memItemRight" valign="bottom"><b>tds_connect_and_login</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01118.html">TDSLOGIN</a> *login)</td></tr> <tr class="separator:a60ff077fb19ddc91ead939305be9a3bc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf48e52482db1642114e721e71850fa27"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_connection_close</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn)</td></tr> <tr class="separator:gaf48e52482db1642114e721e71850fa27"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga36debbaba89377b8b81ae9bd84602b17"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_connection_read</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, unsigned char *buf, int buflen)</td></tr> <tr class="separator:ga36debbaba89377b8b81ae9bd84602b17"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga55f3f63be38671dba897117a02ef09f0"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_connection_write</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const unsigned char *buf, int buflen, int final)</td></tr> <tr class="separator:ga55f3f63be38671dba897117a02ef09f0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad5b76c688898b86984d09628f030d01c"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#gad5b76c688898b86984d09628f030d01c">tds_convert_string</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00958.html">TDSICONV</a> *char_conv, const char *s, int len, size_t *out_len)</td></tr> <tr class="memdesc:gad5b76c688898b86984d09628f030d01c"><td class="mdescLeft"> </td><td class="mdescRight">Convert a string in an allocated buffer. <a href="a00542.html#gad5b76c688898b86984d09628f030d01c">More...</a><br /></td></tr> <tr class="separator:gad5b76c688898b86984d09628f030d01c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8d92cfa6a40dd7b619935cb8e7cc167b"><td class="memItemLeft" align="right" valign="top"><a id="a8d92cfa6a40dd7b619935cb8e7cc167b" name="a8d92cfa6a40dd7b619935cb8e7cc167b"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_convert_string_free</b> (const char *original, const char *converted)</td></tr> <tr class="separator:a8d92cfa6a40dd7b619935cb8e7cc167b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaaa7b4d37bf796019e72f25c6e7fe7bea"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#gaaa7b4d37bf796019e72f25c6e7fe7bea">tds_count_placeholders</a> (const char *query)</td></tr> <tr class="memdesc:gaaa7b4d37bf796019e72f25c6e7fe7bea"><td class="mdescLeft"> </td><td class="mdescRight">Count the number of placeholders ('?') in a query. <a href="a00542.html#gaaa7b4d37bf796019e72f25c6e7fe7bea">More...</a><br /></td></tr> <tr class="separator:gaaa7b4d37bf796019e72f25c6e7fe7bea"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gada22769a0a8593608044b99e8e7aecba"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_close</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor)</td></tr> <tr class="separator:gada22769a0a8593608044b99e8e7aecba"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab25de0567ac096e8f8e88490eeddf562"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_dealloc</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor)</td></tr> <tr class="memdesc:gab25de0567ac096e8f8e88490eeddf562"><td class="mdescLeft"> </td><td class="mdescRight">Send a deallocation request to server. <br /></td></tr> <tr class="separator:gab25de0567ac096e8f8e88490eeddf562"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9745bd1ae8a4677e77c48ec6678da7bb"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_cursor_deallocated</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor)</td></tr> <tr class="separator:ga9745bd1ae8a4677e77c48ec6678da7bb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga84615c3327f785292c101e2088028d4f"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_declare</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params, int *send)</td></tr> <tr class="separator:ga84615c3327f785292c101e2088028d4f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac3f61db17041349b0d898e6fdfb3b6fc"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_fetch</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor, TDS_CURSOR_FETCH fetch_type, TDS_INT i_row)</td></tr> <tr class="separator:gac3f61db17041349b0d898e6fdfb3b6fc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2a4992ce82e3f3dee59beee8f7d175fc"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_get_cursor_info</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor, TDS_UINT *row_number, TDS_UINT *row_count)</td></tr> <tr class="separator:ga2a4992ce82e3f3dee59beee8f7d175fc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf1b4372d890c0ab08afd2f4707a10d93"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_open</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params, int *send)</td></tr> <tr class="separator:gaf1b4372d890c0ab08afd2f4707a10d93"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad717a70ff656a72ba819daab79c33bdb"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_setname</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor)</td></tr> <tr class="separator:gad717a70ff656a72ba819daab79c33bdb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad0c04b7b170ef4c8de5a5fb9526cd031"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_setrows</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor, int *send)</td></tr> <tr class="separator:gad0c04b7b170ef4c8de5a5fb9526cd031"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae6c9d512bccc537638d60f987fd5a876"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_cursor_update</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor, TDS_CURSOR_OPERATION op, TDS_INT i_row, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params)</td></tr> <tr class="separator:gae6c9d512bccc537638d60f987fd5a876"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga883855e6e3793de6684b21db39c756c4"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00539.html#ga883855e6e3793de6684b21db39c756c4">tds_datecrack</a> (TDS_INT datetype, const void *di, <a class="el" href="a00416.html#a3b40b4faf314267146c2005e56eebe7b">TDSDATEREC</a> *dr)</td></tr> <tr class="memdesc:ga883855e6e3793de6684b21db39c756c4"><td class="mdescLeft"> </td><td class="mdescRight">Convert from db date format to a structured date format. <a href="a00539.html#ga883855e6e3793de6684b21db39c756c4">More...</a><br /></td></tr> <tr class="separator:ga883855e6e3793de6684b21db39c756c4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga57bd0fabe5bcdeb3ef091259b3a7c1fc"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga57bd0fabe5bcdeb3ef091259b3a7c1fc">tds_deferred_cursor_dealloc</a> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, <a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> *cursor)</td></tr> <tr class="memdesc:ga57bd0fabe5bcdeb3ef091259b3a7c1fc"><td class="mdescLeft"> </td><td class="mdescRight">Deallocate cursor on idle. <a href="a00542.html#ga57bd0fabe5bcdeb3ef091259b3a7c1fc">More...</a><br /></td></tr> <tr class="separator:ga57bd0fabe5bcdeb3ef091259b3a7c1fc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9f80fdf732b084aef7de7a323261aa61"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga9f80fdf732b084aef7de7a323261aa61">tds_deferred_unprepare</a> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> *dyn)</td></tr> <tr class="memdesc:ga9f80fdf732b084aef7de7a323261aa61"><td class="mdescLeft"> </td><td class="mdescRight">Unprepare dynamic on idle. <a href="a00542.html#ga9f80fdf732b084aef7de7a323261aa61">More...</a><br /></td></tr> <tr class="separator:ga9f80fdf732b084aef7de7a323261aa61"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gadeb33bf36c71d2acb8c655e8e226ca33"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_deinit_bcpinfo</b> (<a class="el" href="a01222.html">TDSBCPINFO</a> *bcpinfo)</td></tr> <tr class="separator:gadeb33bf36c71d2acb8c655e8e226ca33"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1d60bf443e274797b1d1a9e7418ab962"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_detach_results</b> (<a class="el" href="a00416.html#a1efbb2f3844cb2ea89af03721ac67277">TDSRESULTINFO</a> *info)</td></tr> <tr class="memdesc:ga1d60bf443e274797b1d1a9e7418ab962"><td class="mdescLeft"> </td><td class="mdescRight">Detach result info from it current socket. <br /></td></tr> <tr class="separator:ga1d60bf443e274797b1d1a9e7418ab962"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga328b6111fc8b1342924161a6f031d0db"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_disconnect</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:ga328b6111fc8b1342924161a6f031d0db"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga017c427e9599c031be5c555cb32abe2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00545.html#gafddddf5bd7ad223cadee3d3bdc899954">DSTR</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga017c427e9599c031be5c555cb32abe2c">tds_dstr_get</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00545.html#gafddddf5bd7ad223cadee3d3bdc899954">DSTR</a> *s, size_t len)</td></tr> <tr class="memdesc:ga017c427e9599c031be5c555cb32abe2c"><td class="mdescLeft"> </td><td class="mdescRight">Reads a string from wire and put in a DSTR. <a href="a00543.html#ga017c427e9599c031be5c555cb32abe2c">More...</a><br /></td></tr> <tr class="separator:ga017c427e9599c031be5c555cb32abe2c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac208dfc9708803e15a3a1fcc631f37f2"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_dynamic_deallocated</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> *dyn)</td></tr> <tr class="separator:gac208dfc9708803e15a3a1fcc631f37f2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga440f0f469afad1eac4c008979873ccdd"><td class="memItemLeft" align="right" valign="top"> size_t </td><td class="memItemRight" valign="bottom"><b>tds_fix_column_size</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01150.html">TDSCOLUMN</a> *curcol)</td></tr> <tr class="memdesc:ga440f0f469afad1eac4c008979873ccdd"><td class="mdescLeft"> </td><td class="mdescRight">Get column size for wire. <br /></td></tr> <tr class="separator:ga440f0f469afad1eac4c008979873ccdd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gacee4f06ba749b10ee9f2e5bb1c4a8910"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#gacee4f06ba749b10ee9f2e5bb1c4a8910">tds_fix_login</a> (<a class="el" href="a01118.html">TDSLOGIN</a> *login)</td></tr> <tr class="memdesc:gacee4f06ba749b10ee9f2e5bb1c4a8910"><td class="mdescLeft"> </td><td class="mdescRight">Fix configuration after reading it. <a href="a00538.html#gacee4f06ba749b10ee9f2e5bb1c4a8910">More...</a><br /></td></tr> <tr class="separator:gacee4f06ba749b10ee9f2e5bb1c4a8910"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga5feb53554e8917a81bbbc332163a61fb"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga5feb53554e8917a81bbbc332163a61fb">tds_flush_packet</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga5feb53554e8917a81bbbc332163a61fb"><td class="mdescLeft"> </td><td class="mdescRight">Flush packet to server. <a href="a00543.html#ga5feb53554e8917a81bbbc332163a61fb">More...</a><br /></td></tr> <tr class="separator:ga5feb53554e8917a81bbbc332163a61fb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8d9feb841c35d1d6cef4563778082cec"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_all_results</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:ga8d9feb841c35d1d6cef4563778082cec"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga08d525b2e939e860ad3f7c024ddbac17"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_bcp_column_data</b> (<a class="el" href="a01142.html">BCPCOLDATA</a> *coldata)</td></tr> <tr class="separator:ga08d525b2e939e860ad3f7c024ddbac17"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac712ccb35d6f7be77b1421d859697fa2"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_bcpinfo</b> (<a class="el" href="a01222.html">TDSBCPINFO</a> *bcpinfo)</td></tr> <tr class="separator:gac712ccb35d6f7be77b1421d859697fa2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga96e58df914233f14c06dd5ddcae61c1e"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_context</b> (<a class="el" href="a01190.html">TDSCONTEXT</a> *locale)</td></tr> <tr class="separator:ga96e58df914233f14c06dd5ddcae61c1e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gabdc5fee73b22345c02ab894e49ad7f95"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00541.html#gabdc5fee73b22345c02ab894e49ad7f95">tds_free_input_params</a> (<a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> *dyn)</td></tr> <tr class="memdesc:gabdc5fee73b22345c02ab894e49ad7f95"><td class="mdescLeft"> </td><td class="mdescRight">Frees all allocated input parameters of a dynamic statement. <a href="a00541.html#gabdc5fee73b22345c02ab894e49ad7f95">More...</a><br /></td></tr> <tr class="separator:gabdc5fee73b22345c02ab894e49ad7f95"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gacbf7aa586828a445f0aa4a03939df99c"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_locale</b> (<a class="el" href="a01126.html">TDSLOCALE</a> *locale)</td></tr> <tr class="separator:gacbf7aa586828a445f0aa4a03939df99c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac92bb6c3c7467bba3a8255e0ee7dffc0"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_login</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *login)</td></tr> <tr class="separator:gac92bb6c3c7467bba3a8255e0ee7dffc0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gacb11b12b4a7be12aa60979b3d6f2548c"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_msg</b> (<a class="el" href="a01162.html">TDSMESSAGE</a> *message)</td></tr> <tr class="separator:gacb11b12b4a7be12aa60979b3d6f2548c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaec5e673d8e82babf6149715cfa2e0c8f"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_packets</b> (<a class="el" href="a01198.html">TDSPACKET</a> *packet)</td></tr> <tr class="separator:gaec5e673d8e82babf6149715cfa2e0c8f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga66cd6e3c5089ced9415a8a0e258d205a"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_param_result</b> (<a class="el" href="a01158.html">TDSPARAMINFO</a> *param_info)</td></tr> <tr class="memdesc:ga66cd6e3c5089ced9415a8a0e258d205a"><td class="mdescLeft"> </td><td class="mdescRight">Delete latest parameter. <br /></td></tr> <tr class="separator:ga66cd6e3c5089ced9415a8a0e258d205a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6589548b0fe303cb816a0c136a992b04"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_param_results</b> (<a class="el" href="a01158.html">TDSPARAMINFO</a> *param_info)</td></tr> <tr class="separator:ga6589548b0fe303cb816a0c136a992b04"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf3268b18aa9df3475cdc48012bf7ddea"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_results</b> (<a class="el" href="a00416.html#a1efbb2f3844cb2ea89af03721ac67277">TDSRESULTINFO</a> *res_info)</td></tr> <tr class="separator:gaf3268b18aa9df3475cdc48012bf7ddea"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa92e13cfc04c6c243fa42282d5da7cce"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_row</b> (<a class="el" href="a00416.html#a1efbb2f3844cb2ea89af03721ac67277">TDSRESULTINFO</a> *res_info, unsigned char *row)</td></tr> <tr class="separator:gaa92e13cfc04c6c243fa42282d5da7cce"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gafe4c00cab901638857e7df9e515adb09"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_free_socket</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:gafe4c00cab901638857e7df9e515adb09"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6b2b012b999bd0a4f159fabc8d11a5bf"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga6b2b012b999bd0a4f159fabc8d11a5bf">tds_freeze</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01218.html">TDSFREEZE</a> *freeze, unsigned size_len)</td></tr> <tr class="memdesc:ga6b2b012b999bd0a4f159fabc8d11a5bf"><td class="mdescLeft"> </td><td class="mdescRight">Stop writing to server and cache every packet not sending them to server. <a href="a00543.html#ga6b2b012b999bd0a4f159fabc8d11a5bf">More...</a><br /></td></tr> <tr class="separator:ga6b2b012b999bd0a4f159fabc8d11a5bf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7274d9c5dc75c58bb7d1f1c29e03a73e"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga7274d9c5dc75c58bb7d1f1c29e03a73e">tds_freeze_abort</a> (<a class="el" href="a01218.html">TDSFREEZE</a> *freeze)</td></tr> <tr class="memdesc:ga7274d9c5dc75c58bb7d1f1c29e03a73e"><td class="mdescLeft"> </td><td class="mdescRight">Discard all data written after the freeze. <a href="a00543.html#ga7274d9c5dc75c58bb7d1f1c29e03a73e">More...</a><br /></td></tr> <tr class="separator:ga7274d9c5dc75c58bb7d1f1c29e03a73e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga633f62fb8e5310abfa42c02fba9c6500"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga633f62fb8e5310abfa42c02fba9c6500">tds_freeze_close</a> (<a class="el" href="a01218.html">TDSFREEZE</a> *freeze)</td></tr> <tr class="memdesc:ga633f62fb8e5310abfa42c02fba9c6500"><td class="mdescLeft"> </td><td class="mdescRight">Stop keeping data for this specific freeze. <a href="a00543.html#ga633f62fb8e5310abfa42c02fba9c6500">More...</a><br /></td></tr> <tr class="separator:ga633f62fb8e5310abfa42c02fba9c6500"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2660b893ae2bf36fe1b63b354e748bad"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga2660b893ae2bf36fe1b63b354e748bad">tds_freeze_close_len</a> (<a class="el" href="a01218.html">TDSFREEZE</a> *freeze, int32_t size)</td></tr> <tr class="memdesc:ga2660b893ae2bf36fe1b63b354e748bad"><td class="mdescLeft"> </td><td class="mdescRight">Stop keeping data for this specific freeze. <a href="a00543.html#ga2660b893ae2bf36fe1b63b354e748bad">More...</a><br /></td></tr> <tr class="separator:ga2660b893ae2bf36fe1b63b354e748bad"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga528cc96da09c11bc2930daae64e33e83"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga528cc96da09c11bc2930daae64e33e83">tds_freeze_written</a> (<a class="el" href="a01218.html">TDSFREEZE</a> *freeze)</td></tr> <tr class="memdesc:ga528cc96da09c11bc2930daae64e33e83"><td class="mdescLeft"> </td><td class="mdescRight">Compute how many bytes has been written from freeze. <a href="a00543.html#ga528cc96da09c11bc2930daae64e33e83">More...</a><br /></td></tr> <tr class="separator:ga528cc96da09c11bc2930daae64e33e83"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0cb72d3f6943795c39db1fa692be0a58"><td class="memItemLeft" align="right" valign="top">unsigned char </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga0cb72d3f6943795c39db1fa692be0a58">tds_get_byte</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga0cb72d3f6943795c39db1fa692be0a58"><td class="mdescLeft"> </td><td class="mdescRight">Return a single byte from the input buffer. <a href="a00543.html#ga0cb72d3f6943795c39db1fa692be0a58">More...</a><br /></td></tr> <tr class="separator:ga0cb72d3f6943795c39db1fa692be0a58"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8822e7316aabf89bc3cf1b1300d2a28e"><td class="memItemLeft" align="right" valign="top"><a id="a8822e7316aabf89bc3cf1b1300d2a28e" name="a8822e7316aabf89bc3cf1b1300d2a28e"></a> TDS_SERVER_TYPE </td><td class="memItemRight" valign="bottom"><b>tds_get_cardinal_type</b> (TDS_SERVER_TYPE datatype, int usertype)</td></tr> <tr class="separator:a8822e7316aabf89bc3cf1b1300d2a28e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8d214089b6e97fc0da5e0be09f216d73"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga8d214089b6e97fc0da5e0be09f216d73">tds_get_char_data</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, char *dest, size_t wire_size, <a class="el" href="a01150.html">TDSCOLUMN</a> *curcol)</td></tr> <tr class="memdesc:ga8d214089b6e97fc0da5e0be09f216d73"><td class="mdescLeft"> </td><td class="mdescRight">Fetch character data the wire. <a href="a00543.html#ga8d214089b6e97fc0da5e0be09f216d73">More...</a><br /></td></tr> <tr class="separator:ga8d214089b6e97fc0da5e0be09f216d73"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga50d62edeb2a432e2dc668263f3f958ff"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga50d62edeb2a432e2dc668263f3f958ff">tds_get_column_declaration</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01150.html">TDSCOLUMN</a> *curcol, char *out)</td></tr> <tr class="memdesc:ga50d62edeb2a432e2dc668263f3f958ff"><td class="mdescLeft"> </td><td class="mdescRight">Return declaration for column (like "varchar(20)"). <a href="a00542.html#ga50d62edeb2a432e2dc668263f3f958ff">More...</a><br /></td></tr> <tr class="separator:ga50d62edeb2a432e2dc668263f3f958ff"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0c00a50e074cec7fbb0a1de826a4a46b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00416.html#a1de034b895312fc0cfae0e28f8921a47">TDS_COMPILETIME_SETTINGS</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#ga0c00a50e074cec7fbb0a1de826a4a46b">tds_get_compiletime_settings</a> (void)</td></tr> <tr class="memdesc:ga0c00a50e074cec7fbb0a1de826a4a46b"><td class="mdescLeft"> </td><td class="mdescRight">Return a structure capturing the compile-time settings provided to the configure script. <a href="a00538.html#ga0c00a50e074cec7fbb0a1de826a4a46b">More...</a><br /></td></tr> <tr class="separator:ga0c00a50e074cec7fbb0a1de826a4a46b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0383d5dcb629582266a442f0f0dbd13a"><td class="memItemLeft" align="right" valign="top">TDS_SERVER_TYPE </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a0383d5dcb629582266a442f0f0dbd13a">tds_get_conversion_type</a> (TDS_SERVER_TYPE srctype, int colsize)</td></tr> <tr class="memdesc:a0383d5dcb629582266a442f0f0dbd13a"><td class="mdescLeft"> </td><td class="mdescRight">Return type suitable for conversions (convert all nullable types to fixed type) <a href="a00416.html#a0383d5dcb629582266a442f0f0dbd13a">More...</a><br /></td></tr> <tr class="separator:a0383d5dcb629582266a442f0f0dbd13a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga69275bf4fa96a7bf23fd445638a6e9aa"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#ga69275bf4fa96a7bf23fd445638a6e9aa">tds_get_home_file</a> (const char *file)</td></tr> <tr class="memdesc:ga69275bf4fa96a7bf23fd445638a6e9aa"><td class="mdescLeft"> </td><td class="mdescRight">Return filename from HOME directory. <a href="a00538.html#ga69275bf4fa96a7bf23fd445638a6e9aa">More...</a><br /></td></tr> <tr class="separator:ga69275bf4fa96a7bf23fd445638a6e9aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a41390fa6e1083ba84fb523797e6b5275"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a01126.html">TDSLOCALE</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a41390fa6e1083ba84fb523797e6b5275">tds_get_locale</a> (void)</td></tr> <tr class="memdesc:a41390fa6e1083ba84fb523797e6b5275"><td class="mdescLeft"> </td><td class="mdescRight">Get locale information. <a href="a00416.html#a41390fa6e1083ba84fb523797e6b5275">More...</a><br /></td></tr> <tr class="separator:a41390fa6e1083ba84fb523797e6b5275"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae777dd57e8d1bb40349d7d7d8434fddf"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#gae777dd57e8d1bb40349d7d7d8434fddf">tds_get_n</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, void *dest, size_t n)</td></tr> <tr class="memdesc:gae777dd57e8d1bb40349d7d7d8434fddf"><td class="mdescLeft"> </td><td class="mdescRight">Get N bytes from the buffer and return them in the already allocated space <br /> given to us. <a href="a00543.html#gae777dd57e8d1bb40349d7d7d8434fddf">More...</a><br /></td></tr> <tr class="separator:gae777dd57e8d1bb40349d7d7d8434fddf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4c070147d189dede5e08a2dc66852678"><td class="memItemLeft" align="right" valign="top"><a id="a4c070147d189dede5e08a2dc66852678" name="a4c070147d189dede5e08a2dc66852678"></a> int </td><td class="memItemRight" valign="bottom"><b>tds_get_size_by_type</b> (TDS_SERVER_TYPE servertype)</td></tr> <tr class="memdesc:a4c070147d189dede5e08a2dc66852678"><td class="mdescLeft"> </td><td class="mdescRight">Return the number of bytes needed by specified type. <br /></td></tr> <tr class="separator:a4c070147d189dede5e08a2dc66852678"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga90f080e6e9448feac15dee1370d66802"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga90f080e6e9448feac15dee1370d66802">tds_get_string</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, size_t string_len, char *dest, size_t dest_size)</td></tr> <tr class="memdesc:ga90f080e6e9448feac15dee1370d66802"><td class="mdescLeft"> </td><td class="mdescRight">Fetch a string from the wire. <a href="a00543.html#ga90f080e6e9448feac15dee1370d66802">More...</a><br /></td></tr> <tr class="separator:ga90f080e6e9448feac15dee1370d66802"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga995b82e53aeac5bede01ef16e9aeaa65"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00544.html#ga995b82e53aeac5bede01ef16e9aeaa65">tds_get_token_size</a> (int marker)</td></tr> <tr class="memdesc:ga995b82e53aeac5bede01ef16e9aeaa65"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="a00544.html#ga995b82e53aeac5bede01ef16e9aeaa65" title="tds_get_token_size() returns the size of a fixed length token used by tds_process_cancel() to determi...">tds_get_token_size()</a> returns the size of a fixed length token used by <a class="el" href="a00544.html#gaf233e79967f82f4e0dd4d11524917a34">tds_process_cancel()</a> to determine how to read past a token <a href="a00544.html#ga995b82e53aeac5bede01ef16e9aeaa65">More...</a><br /></td></tr> <tr class="separator:ga995b82e53aeac5bede01ef16e9aeaa65"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9ac121c269e203337a48c5bf8afc48c3"><td class="memItemLeft" align="right" valign="top">TDS_UINT </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga9ac121c269e203337a48c5bf8afc48c3">tds_get_uint</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga9ac121c269e203337a48c5bf8afc48c3"><td class="mdescLeft"> </td><td class="mdescRight">Get an int32 from the server. <a href="a00543.html#ga9ac121c269e203337a48c5bf8afc48c3">More...</a><br /></td></tr> <tr class="separator:ga9ac121c269e203337a48c5bf8afc48c3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8ab6c87318eaf15ea17a9575763f7809"><td class="memItemLeft" align="right" valign="top">TDS_UINT8 </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga8ab6c87318eaf15ea17a9575763f7809">tds_get_uint8</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga8ab6c87318eaf15ea17a9575763f7809"><td class="mdescLeft"> </td><td class="mdescRight">Get an uint64 from the server. <a href="a00543.html#ga8ab6c87318eaf15ea17a9575763f7809">More...</a><br /></td></tr> <tr class="separator:ga8ab6c87318eaf15ea17a9575763f7809"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad38aa5b9547817854ccba1fcc7855861"><td class="memItemLeft" align="right" valign="top"> TDS_USMALLINT </td><td class="memItemRight" valign="bottom"><b>tds_get_usmallint</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:gad38aa5b9547817854ccba1fcc7855861"><td class="mdescLeft"> </td><td class="mdescRight">Get an int16 from the server. <br /></td></tr> <tr class="separator:gad38aa5b9547817854ccba1fcc7855861"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a68855f1251759a6b7338635306ab0041"><td class="memItemLeft" align="right" valign="top"><a id="a68855f1251759a6b7338635306ab0041" name="a68855f1251759a6b7338635306ab0041"></a> int </td><td class="memItemRight" valign="bottom"><b>tds_get_varint_size</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, int datatype)</td></tr> <tr class="memdesc:a68855f1251759a6b7338635306ab0041"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="a00416.html#a68855f1251759a6b7338635306ab0041" title="tds_get_varint_size() returns the size of a variable length integer returned in a result string">tds_get_varint_size()</a> returns the size of a variable length integer returned in a result string <br /></td></tr> <tr class="separator:a68855f1251759a6b7338635306ab0041"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aec3fc9d381c4e9b788a76906ede8c789"><td class="memItemLeft" align="right" valign="top"><a id="aec3fc9d381c4e9b788a76906ede8c789" name="aec3fc9d381c4e9b788a76906ede8c789"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_getmac</b> (TDS_SYS_SOCKET s, unsigned char mac[6])</td></tr> <tr class="separator:aec3fc9d381c4e9b788a76906ede8c789"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5d4942a7e2cc45158ce1856a22a127c1"><td class="memItemLeft" align="right" valign="top"><a id="a5d4942a7e2cc45158ce1856a22a127c1" name="a5d4942a7e2cc45158ce1856a22a127c1"></a> unsigned int </td><td class="memItemRight" valign="bottom"><b>tds_gettime_ms</b> (void)</td></tr> <tr class="separator:a5d4942a7e2cc45158ce1856a22a127c1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6f2ae00407f59fb1ab280fa44a56295e"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_goodread</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, unsigned char *buf, int buflen)</td></tr> <tr class="memdesc:ga6f2ae00407f59fb1ab280fa44a56295e"><td class="mdescLeft"> </td><td class="mdescRight">Loops until we have received some characters return -1 on failure. <br /></td></tr> <tr class="separator:ga6f2ae00407f59fb1ab280fa44a56295e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2734407109c834c5dda7ff8a45c71230"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga2734407109c834c5dda7ff8a45c71230">tds_goodwrite</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const unsigned char *buffer, size_t buflen)</td></tr> <tr class="separator:ga2734407109c834c5dda7ff8a45c71230"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a022e55830bfd874fda5ad545641ef403"><td class="memItemLeft" align="right" valign="top"><a id="a022e55830bfd874fda5ad545641ef403" name="a022e55830bfd874fda5ad545641ef403"></a> <a class="el" href="a01194.html">TDSAUTHENTICATION</a> * </td><td class="memItemRight" valign="bottom"><b>tds_gss_get_auth</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:a022e55830bfd874fda5ad545641ef403"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a026957dbbd994b48b571a63405f427cd"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a026957dbbd994b48b571a63405f427cd">tds_iconv_alloc</a> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn)</td></tr> <tr class="memdesc:a026957dbbd994b48b571a63405f427cd"><td class="mdescLeft"> </td><td class="mdescRight">Allocate iconv stuff. <a href="a00416.html#a026957dbbd994b48b571a63405f427cd">More...</a><br /></td></tr> <tr class="separator:a026957dbbd994b48b571a63405f427cd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga443693697445c37abcd4b7103b1c47ac"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_iconv_close</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn)</td></tr> <tr class="separator:ga443693697445c37abcd4b7103b1c47ac"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad161ada50068b9a8a05786cce7b3dc1d"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_iconv_free</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn)</td></tr> <tr class="separator:gad161ada50068b9a8a05786cce7b3dc1d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9d433c15ab3738aa2a477a416330f49f"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a00958.html">TDSICONV</a> * </td><td class="memItemRight" valign="bottom"><b>tds_iconv_from_collate</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, TDS_UCHAR collate[5])</td></tr> <tr class="memdesc:ga9d433c15ab3738aa2a477a416330f49f"><td class="mdescLeft"> </td><td class="mdescRight">Get iconv information from a LCID (to support different column encoding under MSSQL2K) <br /></td></tr> <tr class="separator:ga9d433c15ab3738aa2a477a416330f49f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1e4275b3494b59d8b6c642955bb72106"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_iconv_open</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, const char *charset, int use_utf16)</td></tr> <tr class="separator:ga1e4275b3494b59d8b6c642955bb72106"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4f7b22f681e7160ac03dfe8d2ae8bd39"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a01118.html">TDSLOGIN</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00541.html#ga4f7b22f681e7160ac03dfe8d2ae8bd39">tds_init_login</a> (<a class="el" href="a01118.html">TDSLOGIN</a> *login, <a class="el" href="a01126.html">TDSLOCALE</a> *locale)</td></tr> <tr class="memdesc:ga4f7b22f681e7160ac03dfe8d2ae8bd39"><td class="mdescLeft"> </td><td class="mdescRight">Initialize login structure with locale information and other stuff for connection. <a href="a00541.html#ga4f7b22f681e7160ac03dfe8d2ae8bd39">More...</a><br /></td></tr> <tr class="separator:ga4f7b22f681e7160ac03dfe8d2ae8bd39"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad909967e04a0929c511e9d78527221b8"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_init_write_buf</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:gad909967e04a0929c511e9d78527221b8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4a45cadd06ae1b886459dcc1f8e482c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00544.html#ga4a45cadd06ae1b886459dcc1f8e482c6">tds_lookup_dynamic</a> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, const char *id)</td></tr> <tr class="memdesc:ga4a45cadd06ae1b886459dcc1f8e482c6"><td class="mdescLeft"> </td><td class="mdescRight">Finds a dynamic given string id. <a href="a00544.html#ga4a45cadd06ae1b886459dcc1f8e482c6">More...</a><br /></td></tr> <tr class="separator:ga4a45cadd06ae1b886459dcc1f8e482c6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3945f760ceb97e8854e18589d6f0d241"><td class="memItemLeft" align="right" valign="top">struct addrinfo * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#ga3945f760ceb97e8854e18589d6f0d241">tds_lookup_host</a> (const char *servername)</td></tr> <tr class="memdesc:ga3945f760ceb97e8854e18589d6f0d241"><td class="mdescLeft"> </td><td class="mdescRight">Get the IP address for a hostname. <a href="a00538.html#ga3945f760ceb97e8854e18589d6f0d241">More...</a><br /></td></tr> <tr class="separator:ga3945f760ceb97e8854e18589d6f0d241"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga15536d5f0812e156705ed168f5b56b35"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_lookup_host_set</b> (const char *servername, struct addrinfo **addr)</td></tr> <tr class="separator:ga15536d5f0812e156705ed168f5b56b35"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aca5c8ca022dafbde1524d9940278d05c"><td class="memItemLeft" align="right" valign="top"><a id="aca5c8ca022dafbde1524d9940278d05c" name="aca5c8ca022dafbde1524d9940278d05c"></a> char * </td><td class="memItemRight" valign="bottom"><b>tds_money_to_string</b> (const <a class="el" href="a01026.html">TDS_MONEY</a> *money, char *s, bool use_2_digits)</td></tr> <tr class="separator:aca5c8ca022dafbde1524d9940278d05c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae6a4ebe045344eee6562d5feab8d0db3"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_multiple_done</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01186.html">TDSMULTIPLE</a> *multiple)</td></tr> <tr class="separator:gae6a4ebe045344eee6562d5feab8d0db3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gade7a80a63c654b1df4e4cdb534b869b6"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_multiple_execute</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01186.html">TDSMULTIPLE</a> *multiple, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> *dyn)</td></tr> <tr class="separator:gade7a80a63c654b1df4e4cdb534b869b6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gadf810ffc809e9589d1eae14da09dd13f"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_multiple_init</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01186.html">TDSMULTIPLE</a> *multiple, TDS_MULTIPLE_TYPE type, <a class="el" href="a01122.html">TDSHEADERS</a> *head)</td></tr> <tr class="separator:gadf810ffc809e9589d1eae14da09dd13f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2831db8f158c9bd31dfac08f63adffa5"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_multiple_query</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01186.html">TDSMULTIPLE</a> *multiple, const char *query, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params)</td></tr> <tr class="separator:ga2831db8f158c9bd31dfac08f63adffa5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga05ac7bab753d19b6ba1ffc7505d8fcd0"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga05ac7bab753d19b6ba1ffc7505d8fcd0">tds_needs_unprepare</a> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> *dyn)</td></tr> <tr class="memdesc:ga05ac7bab753d19b6ba1ffc7505d8fcd0"><td class="mdescLeft"> </td><td class="mdescRight">Check if dynamic request must be unprepared. <a href="a00542.html#ga05ac7bab753d19b6ba1ffc7505d8fcd0">More...</a><br /></td></tr> <tr class="separator:ga05ac7bab753d19b6ba1ffc7505d8fcd0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8f3b00c34af2484eccb169e60a37dc36"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga8f3b00c34af2484eccb169e60a37dc36">tds_next_placeholder</a> (const char *start)</td></tr> <tr class="memdesc:ga8f3b00c34af2484eccb169e60a37dc36"><td class="mdescLeft"> </td><td class="mdescRight">Get position of next placeholder. <a href="a00542.html#ga8f3b00c34af2484eccb169e60a37dc36">More...</a><br /></td></tr> <tr class="separator:ga8f3b00c34af2484eccb169e60a37dc36"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac0f33825721aa985805d21540a254b87"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a01194.html">TDSAUTHENTICATION</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00537.html#gac0f33825721aa985805d21540a254b87">tds_ntlm_get_auth</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:gac0f33825721aa985805d21540a254b87"><td class="mdescLeft"> </td><td class="mdescRight">Build a NTLMSPP packet to send to server. <a href="a00537.html#gac0f33825721aa985805d21540a254b87">More...</a><br /></td></tr> <tr class="separator:gac0f33825721aa985805d21540a254b87"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ace8a1fabace3a870d33d575faf0139b1"><td class="memItemLeft" align="right" valign="top"><a id="ace8a1fabace3a870d33d575faf0139b1" name="ace8a1fabace3a870d33d575faf0139b1"></a> TDS_INT </td><td class="memItemRight" valign="bottom"><b>tds_numeric_change_prec_scale</b> (<a class="el" href="a01018.html">TDS_NUMERIC</a> *numeric, unsigned char new_prec, unsigned char new_scale)</td></tr> <tr class="separator:ace8a1fabace3a870d33d575faf0139b1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a622da936832b0337742da956be123719"><td class="memItemLeft" align="right" valign="top">TDS_INT </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a622da936832b0337742da956be123719">tds_numeric_to_string</a> (const <a class="el" href="a01018.html">TDS_NUMERIC</a> *numeric, char *s)</td></tr> <tr class="separator:a622da936832b0337742da956be123719"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf805811ba08749b5bbe537366f23c2fb"><td class="memItemLeft" align="right" valign="top"> TDSERRNO </td><td class="memItemRight" valign="bottom"><b>tds_open_socket</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, struct addrinfo *ipaddr, unsigned int port, int timeout, int *p_oserr)</td></tr> <tr class="separator:gaf805811ba08749b5bbe537366f23c2fb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa786931199373e617afbf7198e251ce8"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_parse_boolean</b> (const char *value, int default_value)</td></tr> <tr class="separator:gaa786931199373e617afbf7198e251ce8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3e63911fa1b576b353452295be13765a"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_parse_conf_section</b> (const char *option, const char *value, void *param)</td></tr> <tr class="separator:ga3e63911fa1b576b353452295be13765a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga221e98a9c8be96ec6c8547891e1b53af"><td class="memItemLeft" align="right" valign="top">unsigned char </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga221e98a9c8be96ec6c8547891e1b53af">tds_peek</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga221e98a9c8be96ec6c8547891e1b53af"><td class="mdescLeft"> </td><td class="mdescRight">Reads a byte from the TDS stream without removing it. <a href="a00543.html#ga221e98a9c8be96ec6c8547891e1b53af">More...</a><br /></td></tr> <tr class="separator:ga221e98a9c8be96ec6c8547891e1b53af"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf233e79967f82f4e0dd4d11524917a34"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00544.html#gaf233e79967f82f4e0dd4d11524917a34">tds_process_cancel</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:gaf233e79967f82f4e0dd4d11524917a34"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga93945b42d45ee28ae1296b35a1c1e9bb"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00544.html#ga93945b42d45ee28ae1296b35a1c1e9bb">tds_process_login_tokens</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga93945b42d45ee28ae1296b35a1c1e9bb"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="a00544.html#ga93945b42d45ee28ae1296b35a1c1e9bb" title="tds_process_login_tokens() is called after sending the login packet to the server.">tds_process_login_tokens()</a> is called after sending the login packet to the server. <a href="a00544.html#ga93945b42d45ee28ae1296b35a1c1e9bb">More...</a><br /></td></tr> <tr class="separator:ga93945b42d45ee28ae1296b35a1c1e9bb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaeeb1562044786ea17bea361ed83e6946"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00544.html#gaeeb1562044786ea17bea361ed83e6946">tds_process_simple_query</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:gaeeb1562044786ea17bea361ed83e6946"><td class="mdescLeft"> </td><td class="mdescRight">Process results for simple query as "SET TEXTSIZE" or "USE dbname" If the statement returns results, beware they are discarded. <a href="a00544.html#gaeeb1562044786ea17bea361ed83e6946">More...</a><br /></td></tr> <tr class="separator:gaeeb1562044786ea17bea361ed83e6946"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gabfc9de1d1fe718818caf63a4be4035a6"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00544.html#gabfc9de1d1fe718818caf63a4be4035a6">tds_process_tokens</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, TDS_INT *result_type, int *done_flags, unsigned flag)</td></tr> <tr class="memdesc:gabfc9de1d1fe718818caf63a4be4035a6"><td class="mdescLeft"> </td><td class="mdescRight">process all streams. <a href="a00544.html#gabfc9de1d1fe718818caf63a4be4035a6">More...</a><br /></td></tr> <tr class="separator:gabfc9de1d1fe718818caf63a4be4035a6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga307f949194204f71f1a7e574424048b1"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00544.html#ga307f949194204f71f1a7e574424048b1">tds_prtype</a> (int token)</td></tr> <tr class="memdesc:ga307f949194204f71f1a7e574424048b1"><td class="mdescLeft"> </td><td class="mdescRight">Returns string representation of the given type. <a href="a00544.html#ga307f949194204f71f1a7e574424048b1">More...</a><br /></td></tr> <tr class="separator:ga307f949194204f71f1a7e574424048b1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af5d363c19c904f41f3ed29e32d7f403e"><td class="memItemLeft" align="right" valign="top"><a id="af5d363c19c904f41f3ed29e32d7f403e" name="af5d363c19c904f41f3ed29e32d7f403e"></a> char * </td><td class="memItemRight" valign="bottom"><b>tds_prwsaerror</b> (int erc)</td></tr> <tr class="separator:af5d363c19c904f41f3ed29e32d7f403e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a85b0edef232a1488a89998290e985186"><td class="memItemLeft" align="right" valign="top"><a id="a85b0edef232a1488a89998290e985186" name="a85b0edef232a1488a89998290e985186"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_prwsaerror_free</b> (char *s)</td></tr> <tr class="separator:a85b0edef232a1488a89998290e985186"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga71f4c47764001c9e2f9c89e35710a798"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_put_buf</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const unsigned char *buf, int dsize, int ssize)</td></tr> <tr class="separator:ga71f4c47764001c9e2f9c89e35710a798"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaee5d7789a3019c91cb71b2777340c3f0"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_put_byte</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, unsigned char c)</td></tr> <tr class="separator:gaee5d7789a3019c91cb71b2777340c3f0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa449ce88d3e797f5abfaba89ac1b73f4"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_put_cancel</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:gaa449ce88d3e797f5abfaba89ac1b73f4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaefcc2a4e3166c255f19b8d938fcf7963"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_put_int</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, TDS_INT i)</td></tr> <tr class="separator:gaefcc2a4e3166c255f19b8d938fcf7963"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4b7e7fa90c88e41dbad92583020d39d0"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_put_int8</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, TDS_INT8 i)</td></tr> <tr class="separator:ga4b7e7fa90c88e41dbad92583020d39d0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga79393daf59e5c39be91d4f609bd4d0b9"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_put_n</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const void *buf, size_t n)</td></tr> <tr class="separator:ga79393daf59e5c39be91d4f609bd4d0b9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaeda567ed45de44b0814c9f6cc0ef05fc"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_put_smallint</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, TDS_SMALLINT si)</td></tr> <tr class="separator:gaeda567ed45de44b0814c9f6cc0ef05fc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1fcaf8d488cc1390f106ce3ad0bf37b4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga1fcaf8d488cc1390f106ce3ad0bf37b4">tds_put_string</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *buf, int len)</td></tr> <tr class="memdesc:ga1fcaf8d488cc1390f106ce3ad0bf37b4"><td class="mdescLeft"> </td><td class="mdescRight">Output a string to wire automatic translate string to unicode if needed. <a href="a00543.html#ga1fcaf8d488cc1390f106ce3ad0bf37b4">More...</a><br /></td></tr> <tr class="separator:ga1fcaf8d488cc1390f106ce3ad0bf37b4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8d8f2f1c91635ee95f30722208ae3043"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga8d8f2f1c91635ee95f30722208ae3043">tds_quote_id</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, char *buffer, const char *id, int idlen)</td></tr> <tr class="memdesc:ga8d8f2f1c91635ee95f30722208ae3043"><td class="mdescLeft"> </td><td class="mdescRight">Quote an id. <a href="a00542.html#ga8d8f2f1c91635ee95f30722208ae3043">More...</a><br /></td></tr> <tr class="separator:ga8d8f2f1c91635ee95f30722208ae3043"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga691e8752f4f84ed51b7f4d1447cb3d25"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga691e8752f4f84ed51b7f4d1447cb3d25">tds_quote_id_rpc</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, char *buffer, const char *id, int idlen)</td></tr> <tr class="memdesc:ga691e8752f4f84ed51b7f4d1447cb3d25"><td class="mdescLeft"> </td><td class="mdescRight">Quote an id for a RPC call. <a href="a00542.html#ga691e8752f4f84ed51b7f4d1447cb3d25">More...</a><br /></td></tr> <tr class="separator:ga691e8752f4f84ed51b7f4d1447cb3d25"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga737b9fb9971fb425af5c722415ef0eac"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga737b9fb9971fb425af5c722415ef0eac">tds_quote_string</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, char *buffer, const char *str, int len)</td></tr> <tr class="memdesc:ga737b9fb9971fb425af5c722415ef0eac"><td class="mdescLeft"> </td><td class="mdescRight">Quote a string. <a href="a00542.html#ga737b9fb9971fb425af5c722415ef0eac">More...</a><br /></td></tr> <tr class="separator:ga737b9fb9971fb425af5c722415ef0eac"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae28687ff2c4c15adc79c9276e2f09715"><td class="memItemLeft" align="right" valign="top"><a id="ae28687ff2c4c15adc79c9276e2f09715" name="ae28687ff2c4c15adc79c9276e2f09715"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_random_buffer</b> (unsigned char *out, int len)</td></tr> <tr class="separator:ae28687ff2c4c15adc79c9276e2f09715"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4799b423b5d982dbc8f31b7738255eef"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#ga4799b423b5d982dbc8f31b7738255eef">tds_read_conf_file</a> (<a class="el" href="a01118.html">TDSLOGIN</a> *login, const char *server)</td></tr> <tr class="memdesc:ga4799b423b5d982dbc8f31b7738255eef"><td class="mdescLeft"> </td><td class="mdescRight">Read configuration info for given server return 0 on error. <a href="a00538.html#ga4799b423b5d982dbc8f31b7738255eef">More...</a><br /></td></tr> <tr class="separator:ga4799b423b5d982dbc8f31b7738255eef"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga44fdbe16827097d947f900d96003de98"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#ga44fdbe16827097d947f900d96003de98">tds_read_conf_section</a> (FILE *in, const char *section, TDSCONFPARSE tds_conf_parse, void *parse_param)</td></tr> <tr class="memdesc:ga44fdbe16827097d947f900d96003de98"><td class="mdescLeft"> </td><td class="mdescRight">Read a section of configuration file (INI style file) <a href="a00538.html#ga44fdbe16827097d947f900d96003de98">More...</a><br /></td></tr> <tr class="separator:ga44fdbe16827097d947f900d96003de98"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9ff2436ea56ddcdecf984acf46ce4b90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a01118.html">TDSLOGIN</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#ga9ff2436ea56ddcdecf984acf46ce4b90">tds_read_config_info</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01118.html">TDSLOGIN</a> *login, <a class="el" href="a01126.html">TDSLOCALE</a> *locale)</td></tr> <tr class="memdesc:ga9ff2436ea56ddcdecf984acf46ce4b90"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="a00538.html#ga9ff2436ea56ddcdecf984acf46ce4b90" title="tds_read_config_info() will fill the tds connection structure based on configuration information gath...">tds_read_config_info()</a> will fill the tds connection structure based on configuration information gathered in the following order: 1) Program specified in TDSLOGIN structure 2) The environment variables TDSVER, TDSDUMP, TDSPORT, TDSQUERY, TDSHOST 3) A config file with the following search order: a) a readable file specified by environment variable FREETDSCONF b) a readable file in ~/.freetds.conf c) a readable file in $prefix/etc/freetds.conf 3) ~/.interfaces if exists 4) $SYBASE/interfaces if exists 5) TDS_DEF_* default values <a href="a00538.html#ga9ff2436ea56ddcdecf984acf46ce4b90">More...</a><br /></td></tr> <tr class="separator:ga9ff2436ea56ddcdecf984acf46ce4b90"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga410619783bdf2bb60b0f27a5578e0e07"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga410619783bdf2bb60b0f27a5578e0e07">tds_read_packet</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga410619783bdf2bb60b0f27a5578e0e07"><td class="mdescLeft"> </td><td class="mdescRight">Read in one 'packet' from the server. <a href="a00543.html#ga410619783bdf2bb60b0f27a5578e0e07">More...</a><br /></td></tr> <tr class="separator:ga410619783bdf2bb60b0f27a5578e0e07"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8645f5abc49db03d14b66f72b83a9a4c"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00541.html#ga8645f5abc49db03d14b66f72b83a9a4c">tds_realloc</a> (void **pp, size_t new_size)</td></tr> <tr class="memdesc:ga8645f5abc49db03d14b66f72b83a9a4c"><td class="mdescLeft"> </td><td class="mdescRight">Reallocate a pointer and update it if success. <a href="a00541.html#ga8645f5abc49db03d14b66f72b83a9a4c">More...</a><br /></td></tr> <tr class="separator:ga8645f5abc49db03d14b66f72b83a9a4c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga85bf906194a312de8f567c5925720e57"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01198.html">TDSPACKET</a> * </td><td class="memItemRight" valign="bottom"><b>tds_realloc_packet</b> (<a class="el" href="a01198.html">TDSPACKET</a> *packet, unsigned len)</td></tr> <tr class="separator:ga85bf906194a312de8f567c5925720e57"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9795ab111eaa43e1c3cae4657f175273"><td class="memItemLeft" align="right" valign="top"> <a class="el" href="a01210.html">TDSSOCKET</a> * </td><td class="memItemRight" valign="bottom"><b>tds_realloc_socket</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, size_t bufsize)</td></tr> <tr class="separator:ga9795ab111eaa43e1c3cae4657f175273"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a41933a74f4ae3402b5dabe6f325dc04c"><td class="memItemLeft" align="right" valign="top"><a id="a41933a74f4ae3402b5dabe6f325dc04c" name="a41933a74f4ae3402b5dabe6f325dc04c"></a> static void </td><td class="memItemRight" valign="bottom"><b>tds_release_cur_dyn</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="separator:a41933a74f4ae3402b5dabe6f325dc04c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga96f647da25ad4b920a177766f41e21aa"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_release_cursor</b> (<a class="el" href="a00416.html#afe061eb245f3006d93940a20415692a7">TDSCURSOR</a> **pcursor)</td></tr> <tr class="separator:ga96f647da25ad4b920a177766f41e21aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gabf2fdb0def5388508602ee7dd2f49506"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00541.html#gabf2fdb0def5388508602ee7dd2f49506">tds_release_dynamic</a> (<a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> **dyn)</td></tr> <tr class="memdesc:gabf2fdb0def5388508602ee7dd2f49506"><td class="mdescLeft"> </td><td class="mdescRight">Frees dynamic statement. <a href="a00541.html#gabf2fdb0def5388508602ee7dd2f49506">More...</a><br /></td></tr> <tr class="separator:gabf2fdb0def5388508602ee7dd2f49506"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad7aae89e32444ab30852fee056231403"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#gad7aae89e32444ab30852fee056231403">tds_select</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, unsigned tds_sel, int timeout_seconds)</td></tr> <tr class="memdesc:gad7aae89e32444ab30852fee056231403"><td class="mdescLeft"> </td><td class="mdescRight">Select on a socket until it's available or the timeout expires. <a href="a00543.html#gad7aae89e32444ab30852fee056231403">More...</a><br /></td></tr> <tr class="separator:gad7aae89e32444ab30852fee056231403"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga11338742dc30fd0c2711f58eb830316f"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga11338742dc30fd0c2711f58eb830316f">tds_send_cancel</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga11338742dc30fd0c2711f58eb830316f"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="a00542.html#ga11338742dc30fd0c2711f58eb830316f" title="tds_send_cancel() sends an empty packet (8 byte header only) tds_process_cancel should be called dire...">tds_send_cancel()</a> sends an empty packet (8 byte header only) tds_process_cancel should be called directly after this. <a href="a00542.html#ga11338742dc30fd0c2711f58eb830316f">More...</a><br /></td></tr> <tr class="separator:ga11338742dc30fd0c2711f58eb830316f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8902733cd9db8b0987e463b4e980a10c"><td class="memItemLeft" align="right" valign="top"><a id="a8902733cd9db8b0987e463b4e980a10c" name="a8902733cd9db8b0987e463b4e980a10c"></a> bool </td><td class="memItemRight" valign="bottom"><b>tds_set_app</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, const char *application) TDS_WUR</td></tr> <tr class="separator:a8902733cd9db8b0987e463b4e980a10c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3dd2f131fb261b3dc25ed3cf1070beac"><td class="memItemLeft" align="right" valign="top"><a id="a3dd2f131fb261b3dc25ed3cf1070beac" name="a3dd2f131fb261b3dc25ed3cf1070beac"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_set_bulk</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, bool enabled)</td></tr> <tr class="separator:a3dd2f131fb261b3dc25ed3cf1070beac"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae1342782a8c2497e3d6245a794c6f2be"><td class="memItemLeft" align="right" valign="top"><a id="ae1342782a8c2497e3d6245a794c6f2be" name="ae1342782a8c2497e3d6245a794c6f2be"></a> bool </td><td class="memItemRight" valign="bottom"><b>tds_set_client_charset</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, const char *charset) TDS_WUR</td></tr> <tr class="separator:ae1342782a8c2497e3d6245a794c6f2be"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a31604382d8b77257aad203f409155a29"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a31604382d8b77257aad203f409155a29">tds_set_column_type</a> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, <a class="el" href="a01150.html">TDSCOLUMN</a> *curcol, TDS_SERVER_TYPE type)</td></tr> <tr class="memdesc:a31604382d8b77257aad203f409155a29"><td class="mdescLeft"> </td><td class="mdescRight">Set type of column initializing all dependency. <a href="a00416.html#a31604382d8b77257aad203f409155a29">More...</a><br /></td></tr> <tr class="separator:a31604382d8b77257aad203f409155a29"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae8b7db85af16701fc0604eb117cbd4e4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#gae8b7db85af16701fc0604eb117cbd4e4">tds_set_cur_dyn</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> *dyn)</td></tr> <tr class="memdesc:gae8b7db85af16701fc0604eb117cbd4e4"><td class="mdescLeft"> </td><td class="mdescRight">Set current dynamic. <a href="a00542.html#gae8b7db85af16701fc0604eb117cbd4e4">More...</a><br /></td></tr> <tr class="separator:gae8b7db85af16701fc0604eb117cbd4e4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8ba1929d901b7b8c9b758c603142d357"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_set_current_results</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#a1efbb2f3844cb2ea89af03721ac67277">TDSRESULTINFO</a> *info)</td></tr> <tr class="separator:ga8ba1929d901b7b8c9b758c603142d357"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7aec7e922854cd4934deee04906a3de4"><td class="memItemLeft" align="right" valign="top"><a id="a7aec7e922854cd4934deee04906a3de4" name="a7aec7e922854cd4934deee04906a3de4"></a> static void </td><td class="memItemRight" valign="bottom"><b>tds_set_current_send_packet</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a01198.html">TDSPACKET</a> *pkt)</td></tr> <tr class="separator:a7aec7e922854cd4934deee04906a3de4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a85175425af6db2ba974909a3a5f70701"><td class="memItemLeft" align="right" valign="top"><a id="a85175425af6db2ba974909a3a5f70701" name="a85175425af6db2ba974909a3a5f70701"></a> bool </td><td class="memItemRight" valign="bottom"><b>tds_set_host</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, const char *hostname) TDS_WUR</td></tr> <tr class="separator:a85175425af6db2ba974909a3a5f70701"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga57cea6e376d7c2d28b811a5b0053210c"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00538.html#ga57cea6e376d7c2d28b811a5b0053210c">tds_set_interfaces_file_loc</a> (const char *interfloc)</td></tr> <tr class="memdesc:ga57cea6e376d7c2d28b811a5b0053210c"><td class="mdescLeft"> </td><td class="mdescRight">Set the full name of interface file. <a href="a00538.html#ga57cea6e376d7c2d28b811a5b0053210c">More...</a><br /></td></tr> <tr class="separator:ga57cea6e376d7c2d28b811a5b0053210c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af31e8500ed6f37a70112180245ae0443"><td class="memItemLeft" align="right" valign="top"><a id="af31e8500ed6f37a70112180245ae0443" name="af31e8500ed6f37a70112180245ae0443"></a> bool </td><td class="memItemRight" valign="bottom"><b>tds_set_language</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, const char *language) TDS_WUR</td></tr> <tr class="separator:af31e8500ed6f37a70112180245ae0443"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a802ec7ba4e3b150781c703c572b48a0b"><td class="memItemLeft" align="right" valign="top"><a id="a802ec7ba4e3b150781c703c572b48a0b" name="a802ec7ba4e3b150781c703c572b48a0b"></a> bool </td><td class="memItemRight" valign="bottom"><b>tds_set_library</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, const char *library) TDS_WUR</td></tr> <tr class="separator:a802ec7ba4e3b150781c703c572b48a0b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6ca7d1c14ca8b9bb880376417c992b5f"><td class="memItemLeft" align="right" valign="top"><a id="a6ca7d1c14ca8b9bb880376417c992b5f" name="a6ca7d1c14ca8b9bb880376417c992b5f"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_set_packet</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, int packet_size)</td></tr> <tr class="separator:a6ca7d1c14ca8b9bb880376417c992b5f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a86768d86059c5addf9a3f89edb1ef44e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a86768d86059c5addf9a3f89edb1ef44e">tds_set_param_type</a> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, <a class="el" href="a01150.html">TDSCOLUMN</a> *curcol, TDS_SERVER_TYPE type)</td></tr> <tr class="memdesc:a86768d86059c5addf9a3f89edb1ef44e"><td class="mdescLeft"> </td><td class="mdescRight">Set type of column initializing all dependency. <a href="a00416.html#a86768d86059c5addf9a3f89edb1ef44e">More...</a><br /></td></tr> <tr class="separator:a86768d86059c5addf9a3f89edb1ef44e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adb7521cdfbed98f1f45bdfa30f54be88"><td class="memItemLeft" align="right" valign="top"><a id="adb7521cdfbed98f1f45bdfa30f54be88" name="adb7521cdfbed98f1f45bdfa30f54be88"></a> bool </td><td class="memItemRight" valign="bottom"><b>tds_set_passwd</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, const char *password) TDS_WUR</td></tr> <tr class="separator:adb7521cdfbed98f1f45bdfa30f54be88"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a92e7fcf6529ebbbe955160708ad18e9a"><td class="memItemLeft" align="right" valign="top"><a id="a92e7fcf6529ebbbe955160708ad18e9a" name="a92e7fcf6529ebbbe955160708ad18e9a"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_set_port</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, int port)</td></tr> <tr class="separator:a92e7fcf6529ebbbe955160708ad18e9a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3ab8874994a0776acdaff797afdb710a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a3ab8874994a0776acdaff797afdb710a">tds_set_server</a> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, const char *server) TDS_WUR</td></tr> <tr class="memdesc:a3ab8874994a0776acdaff797afdb710a"><td class="mdescLeft"> </td><td class="mdescRight">Set the servername in a TDSLOGIN structure. <a href="a00416.html#a3ab8874994a0776acdaff797afdb710a">More...</a><br /></td></tr> <tr class="separator:a3ab8874994a0776acdaff797afdb710a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a16db200d2281f76fe46fc1cbe37ca9df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00416.html#ac0d502ab90609c39fe7713fe0dfbefad">TDS_STATE</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a16db200d2281f76fe46fc1cbe37ca9df">tds_set_state</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#ac0d502ab90609c39fe7713fe0dfbefad">TDS_STATE</a> state)</td></tr> <tr class="memdesc:a16db200d2281f76fe46fc1cbe37ca9df"><td class="mdescLeft"> </td><td class="mdescRight">Set state of TDS connection, with logging and checking. <a href="a00416.html#a16db200d2281f76fe46fc1cbe37ca9df">More...</a><br /></td></tr> <tr class="separator:a16db200d2281f76fe46fc1cbe37ca9df"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad004246e22dc16a6704317844faf727e"><td class="memItemLeft" align="right" valign="top"><a id="ad004246e22dc16a6704317844faf727e" name="ad004246e22dc16a6704317844faf727e"></a> bool </td><td class="memItemRight" valign="bottom"><b>tds_set_user</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, const char *username) TDS_WUR</td></tr> <tr class="separator:ad004246e22dc16a6704317844faf727e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a96215394f444667cfd2f81e5c696efca"><td class="memItemLeft" align="right" valign="top"><a id="a96215394f444667cfd2f81e5c696efca" name="a96215394f444667cfd2f81e5c696efca"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_set_version</b> (<a class="el" href="a01118.html">TDSLOGIN</a> *<a class="el" href="a01118.html">tds_login</a>, TDS_TINYINT major_ver, TDS_TINYINT minor_ver)</td></tr> <tr class="separator:a96215394f444667cfd2f81e5c696efca"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gacf0a4f2a1c2166588f4d232eda737cf5"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#gacf0a4f2a1c2166588f4d232eda737cf5">tds_skip_comment</a> (const char *s)</td></tr> <tr class="memdesc:gacf0a4f2a1c2166588f4d232eda737cf5"><td class="mdescLeft"> </td><td class="mdescRight">Skip a comment in a query. <a href="a00542.html#gacf0a4f2a1c2166588f4d232eda737cf5">More...</a><br /></td></tr> <tr class="separator:gacf0a4f2a1c2166588f4d232eda737cf5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0856776b63a475de7cd3fb62b1af2411"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga0856776b63a475de7cd3fb62b1af2411">tds_skip_quoted</a> (const char *s)</td></tr> <tr class="memdesc:ga0856776b63a475de7cd3fb62b1af2411"><td class="mdescLeft"> </td><td class="mdescRight">Skip quoting string (like 'sfsf', "dflkdj" or [dfkjd]) <a href="a00542.html#ga0856776b63a475de7cd3fb62b1af2411">More...</a><br /></td></tr> <tr class="separator:ga0856776b63a475de7cd3fb62b1af2411"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa3d928726b3f0b53ec235be4b2ab1081"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_socket_flush</b> (TDS_SYS_SOCKET sock)</td></tr> <tr class="separator:gaa3d928726b3f0b53ec235be4b2ab1081"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2a7429ff031f77023d1bf31339a266db"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#ga2a7429ff031f77023d1bf31339a266db">tds_socket_set_nonblocking</a> (TDS_SYS_SOCKET sock)</td></tr> <tr class="memdesc:ga2a7429ff031f77023d1bf31339a266db"><td class="mdescLeft"> </td><td class="mdescRight">Set socket to non-blocking. <a href="a00543.html#ga2a7429ff031f77023d1bf31339a266db">More...</a><br /></td></tr> <tr class="separator:ga2a7429ff031f77023d1bf31339a266db"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga5252425e5f0ba60e3e10a0e26b88e254"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_srv_charset_changed</b> (<a class="el" href="a01206.html">TDSCONNECTION</a> *conn, const char *charset)</td></tr> <tr class="separator:ga5252425e5f0ba60e3e10a0e26b88e254"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0da385231bfa3dc49377e1fb2bea2c07"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga0da385231bfa3dc49377e1fb2bea2c07">tds_start_query</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, unsigned char packet_type)</td></tr> <tr class="memdesc:ga0da385231bfa3dc49377e1fb2bea2c07"><td class="mdescLeft"> </td><td class="mdescRight">Start query packet of a given type. <a href="a00542.html#ga0da385231bfa3dc49377e1fb2bea2c07">More...</a><br /></td></tr> <tr class="separator:ga0da385231bfa3dc49377e1fb2bea2c07"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0e1370e1c1f7ae1b2e0c304960c39161"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a0e1370e1c1f7ae1b2e0c304960c39161">tds_strndup</a> (const void *s, TDS_INTPTR len)</td></tr> <tr class="memdesc:a0e1370e1c1f7ae1b2e0c304960c39161"><td class="mdescLeft"> </td><td class="mdescRight">Copy a string of length len to a new allocated buffer This function does not read more than len bytes Please note that some system implementation of strndup do not assure they don't read past len bytes as they use still strlen to check length to copy limiting after strlen to size passed String returned is NUL terminated. <a href="a00416.html#a0e1370e1c1f7ae1b2e0c304960c39161">More...</a><br /></td></tr> <tr class="separator:a0e1370e1c1f7ae1b2e0c304960c39161"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7bf3670d3d6dabed469b9eb117298079"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga7bf3670d3d6dabed469b9eb117298079">tds_submit_begin_tran</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ga7bf3670d3d6dabed469b9eb117298079"><td class="mdescLeft"> </td><td class="mdescRight">Send a rollback request. <a href="a00542.html#ga7bf3670d3d6dabed469b9eb117298079">More...</a><br /></td></tr> <tr class="separator:ga7bf3670d3d6dabed469b9eb117298079"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga530538c4c975524cf0b771a550fc94a3"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga530538c4c975524cf0b771a550fc94a3">tds_submit_commit</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, int cont)</td></tr> <tr class="memdesc:ga530538c4c975524cf0b771a550fc94a3"><td class="mdescLeft"> </td><td class="mdescRight">Send a commit request. <a href="a00542.html#ga530538c4c975524cf0b771a550fc94a3">More...</a><br /></td></tr> <tr class="separator:ga530538c4c975524cf0b771a550fc94a3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae603aed795a4c5bb26ab159a11256996"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#gae603aed795a4c5bb26ab159a11256996">tds_submit_execdirect</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *query, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params, <a class="el" href="a01122.html">TDSHEADERS</a> *head)</td></tr> <tr class="memdesc:gae603aed795a4c5bb26ab159a11256996"><td class="mdescLeft"> </td><td class="mdescRight">Submit a prepared query with parameters. <a href="a00542.html#gae603aed795a4c5bb26ab159a11256996">More...</a><br /></td></tr> <tr class="separator:gae603aed795a4c5bb26ab159a11256996"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3e7b4793c6f799fbc6c174f673bb5b32"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga3e7b4793c6f799fbc6c174f673bb5b32">tds_submit_execute</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> *dyn)</td></tr> <tr class="memdesc:ga3e7b4793c6f799fbc6c174f673bb5b32"><td class="mdescLeft"> </td><td class="mdescRight">Sends a previously prepared dynamic statement to the server. <a href="a00542.html#ga3e7b4793c6f799fbc6c174f673bb5b32">More...</a><br /></td></tr> <tr class="separator:ga3e7b4793c6f799fbc6c174f673bb5b32"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf0da49585d39e99780a004ee2ca23479"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#gaf0da49585d39e99780a004ee2ca23479">tds_submit_optioncmd</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, TDS_OPTION_CMD command, TDS_OPTION option, <a class="el" href="a01102.html">TDS_OPTION_ARG</a> *param, TDS_INT param_size)</td></tr> <tr class="memdesc:gaf0da49585d39e99780a004ee2ca23479"><td class="mdescLeft"> </td><td class="mdescRight">Send option commands to server. <a href="a00542.html#gaf0da49585d39e99780a004ee2ca23479">More...</a><br /></td></tr> <tr class="separator:gaf0da49585d39e99780a004ee2ca23479"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga74eb08c3a1c85be8ac9db428842c8b9d"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga74eb08c3a1c85be8ac9db428842c8b9d">tds_submit_prepare</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *query, const char *id, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> **dyn_out, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params)</td></tr> <tr class="memdesc:ga74eb08c3a1c85be8ac9db428842c8b9d"><td class="mdescLeft"> </td><td class="mdescRight">Creates a temporary stored procedure in the server. <a href="a00542.html#ga74eb08c3a1c85be8ac9db428842c8b9d">More...</a><br /></td></tr> <tr class="separator:ga74eb08c3a1c85be8ac9db428842c8b9d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga5a29ae7f99d089dc3cea85ec6ee5f3ab"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga5a29ae7f99d089dc3cea85ec6ee5f3ab">tds_submit_query</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *query)</td></tr> <tr class="memdesc:ga5a29ae7f99d089dc3cea85ec6ee5f3ab"><td class="mdescLeft"> </td><td class="mdescRight">Sends a language string to the database server for processing. <a href="a00542.html#ga5a29ae7f99d089dc3cea85ec6ee5f3ab">More...</a><br /></td></tr> <tr class="separator:ga5a29ae7f99d089dc3cea85ec6ee5f3ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga95e0fccedc459a4404f496eec74a369a"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga95e0fccedc459a4404f496eec74a369a">tds_submit_query_params</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *query, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params, <a class="el" href="a01122.html">TDSHEADERS</a> *head)</td></tr> <tr class="memdesc:ga95e0fccedc459a4404f496eec74a369a"><td class="mdescLeft"> </td><td class="mdescRight">Sends a language string to the database server for processing. <a href="a00542.html#ga95e0fccedc459a4404f496eec74a369a">More...</a><br /></td></tr> <tr class="separator:ga95e0fccedc459a4404f496eec74a369a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad695defcbf663b0023851a198206a772"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#gad695defcbf663b0023851a198206a772">tds_submit_queryf</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *queryf,...)</td></tr> <tr class="memdesc:gad695defcbf663b0023851a198206a772"><td class="mdescLeft"> </td><td class="mdescRight">Format and submit a query. <a href="a00542.html#gad695defcbf663b0023851a198206a772">More...</a><br /></td></tr> <tr class="separator:gad695defcbf663b0023851a198206a772"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9c1cdcc388506a2ca3c0aaee8c461ba6"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga9c1cdcc388506a2ca3c0aaee8c461ba6">tds_submit_rollback</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, int cont)</td></tr> <tr class="memdesc:ga9c1cdcc388506a2ca3c0aaee8c461ba6"><td class="mdescLeft"> </td><td class="mdescRight">Send a rollback request. <a href="a00542.html#ga9c1cdcc388506a2ca3c0aaee8c461ba6">More...</a><br /></td></tr> <tr class="separator:ga9c1cdcc388506a2ca3c0aaee8c461ba6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga5f071b94ad7889690762dc85646c74ab"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#ga5f071b94ad7889690762dc85646c74ab">tds_submit_rpc</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *rpc_name, <a class="el" href="a01158.html">TDSPARAMINFO</a> *params, <a class="el" href="a01122.html">TDSHEADERS</a> *head)</td></tr> <tr class="memdesc:ga5f071b94ad7889690762dc85646c74ab"><td class="mdescLeft"> </td><td class="mdescRight">Calls a RPC from server. <a href="a00542.html#ga5f071b94ad7889690762dc85646c74ab">More...</a><br /></td></tr> <tr class="separator:ga5f071b94ad7889690762dc85646c74ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf573d8d4d2660c8c27770573fca05ff5"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00542.html#gaf573d8d4d2660c8c27770573fca05ff5">tds_submit_unprepare</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, <a class="el" href="a00416.html#a856d78b7438fef3d6e6c0a8e4566d978">TDSDYNAMIC</a> *dyn)</td></tr> <tr class="memdesc:gaf573d8d4d2660c8c27770573fca05ff5"><td class="mdescLeft"> </td><td class="mdescRight">Send a unprepare request for a prepared query. <a href="a00542.html#gaf573d8d4d2660c8c27770573fca05ff5">More...</a><br /></td></tr> <tr class="separator:gaf573d8d4d2660c8c27770573fca05ff5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af4d2a9a7aa4e7b92b05f37949ae5515d"><td class="memItemLeft" align="right" valign="top"><a id="af4d2a9a7aa4e7b92b05f37949ae5515d" name="af4d2a9a7aa4e7b92b05f37949ae5515d"></a> void </td><td class="memItemRight" valign="bottom"><b>tds_swap_bytes</b> (void *buf, int bytes)</td></tr> <tr class="separator:af4d2a9a7aa4e7b92b05f37949ae5515d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad70d59fb317d098b0c9fd29dd77131a8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00543.html#gad70d59fb317d098b0c9fd29dd77131a8">tds_unget_byte</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:gad70d59fb317d098b0c9fd29dd77131a8"><td class="mdescLeft"> </td><td class="mdescRight">Unget will always work as long as you don't call it twice in a row. <a href="a00543.html#gad70d59fb317d098b0c9fd29dd77131a8">More...</a><br /></td></tr> <tr class="separator:gad70d59fb317d098b0c9fd29dd77131a8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad85ba6a90544c479dd471329a904b35c"><td class="memItemLeft" align="right" valign="top"><a id="ad85ba6a90544c479dd471329a904b35c" name="ad85ba6a90544c479dd471329a904b35c"></a> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_vstrbuild</b> (char *buffer, int buflen, int *resultlen, const char *text, int textlen, const char *formats, int formatlen, va_list ap)</td></tr> <tr class="separator:ad85ba6a90544c479dd471329a904b35c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4d3c01404a49d438e186bf76e5aa3d72"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_wakeup_close</b> (<a class="el" href="a01202.html">TDSPOLLWAKEUP</a> *wakeup)</td></tr> <tr class="separator:ga4d3c01404a49d438e186bf76e5aa3d72"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aee35d977803d785bf24a78049ffaafb4"><td class="memItemLeft" align="right" valign="top"><a id="aee35d977803d785bf24a78049ffaafb4" name="aee35d977803d785bf24a78049ffaafb4"></a> static TDS_SYS_SOCKET </td><td class="memItemRight" valign="bottom"><b>tds_wakeup_get_fd</b> (const <a class="el" href="a01202.html">TDSPOLLWAKEUP</a> *wakeup)</td></tr> <tr class="separator:aee35d977803d785bf24a78049ffaafb4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga604300fba84677fe037dc0d41c7f16be"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><b>tds_wakeup_init</b> (<a class="el" href="a01202.html">TDSPOLLWAKEUP</a> *wakeup)</td></tr> <tr class="separator:ga604300fba84677fe037dc0d41c7f16be"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga04585addd44bb56a3513df536cb708e5"><td class="memItemLeft" align="right" valign="top"> void </td><td class="memItemRight" valign="bottom"><b>tds_wakeup_send</b> (<a class="el" href="a01202.html">TDSPOLLWAKEUP</a> *wakeup, char cancel)</td></tr> <tr class="separator:ga04585addd44bb56a3513df536cb708e5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga5cee0591b01c0ea1700ddfcdad4edf46"><td class="memItemLeft" align="right" valign="top"> TDSRET </td><td class="memItemRight" valign="bottom"><b>tds_write_packet</b> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, unsigned char final)</td></tr> <tr class="separator:ga5cee0591b01c0ea1700ddfcdad4edf46"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab68dead99a2ebec55895a10cd3db5202"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ab68dead99a2ebec55895a10cd3db5202">tds_writetext_continue</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const TDS_UCHAR *text, TDS_UINT size)</td></tr> <tr class="memdesc:ab68dead99a2ebec55895a10cd3db5202"><td class="mdescLeft"> </td><td class="mdescRight">Send some data in the writetext request started by tds_writetext_start. <a href="a00416.html#ab68dead99a2ebec55895a10cd3db5202">More...</a><br /></td></tr> <tr class="separator:ab68dead99a2ebec55895a10cd3db5202"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac1e460551f1188620ea478238864ac4b"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ac1e460551f1188620ea478238864ac4b">tds_writetext_end</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds)</td></tr> <tr class="memdesc:ac1e460551f1188620ea478238864ac4b"><td class="mdescLeft"> </td><td class="mdescRight">Finish sending writetext data. <a href="a00416.html#ac1e460551f1188620ea478238864ac4b">More...</a><br /></td></tr> <tr class="separator:ac1e460551f1188620ea478238864ac4b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7711612cc544a7da2c7aa212b870acb2"><td class="memItemLeft" align="right" valign="top">TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a7711612cc544a7da2c7aa212b870acb2">tds_writetext_start</a> (<a class="el" href="a01210.html">TDSSOCKET</a> *tds, const char *objname, const char *textptr, const char *timestamp, int with_log, TDS_UINT size)</td></tr> <tr class="memdesc:a7711612cc544a7da2c7aa212b870acb2"><td class="mdescLeft"> </td><td class="mdescRight">Start writing writetext request. <a href="a00416.html#a7711612cc544a7da2c7aa212b870acb2">More...</a><br /></td></tr> <tr class="separator:a7711612cc544a7da2c7aa212b870acb2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2f00fc0907d3bb04ce0eeb9738e08d0c"><td class="memItemLeft" align="right" valign="top"><a id="a2f00fc0907d3bb04ce0eeb9738e08d0c" name="a2f00fc0907d3bb04ce0eeb9738e08d0c"></a> void </td><td class="memItemRight" valign="bottom"><b>tdsdump_close</b> (void)</td></tr> <tr class="memdesc:a2f00fc0907d3bb04ce0eeb9738e08d0c"><td class="mdescLeft"> </td><td class="mdescRight">Close the TDS dump log file. <br /></td></tr> <tr class="separator:a2f00fc0907d3bb04ce0eeb9738e08d0c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aaee3fe5c514ce5570c9548de9b16e0d9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#aaee3fe5c514ce5570c9548de9b16e0d9">tdsdump_col</a> (const <a class="el" href="a01150.html">TDSCOLUMN</a> *col)</td></tr> <tr class="memdesc:aaee3fe5c514ce5570c9548de9b16e0d9"><td class="mdescLeft"> </td><td class="mdescRight">Write a column value to the debug log. <a href="a00416.html#aaee3fe5c514ce5570c9548de9b16e0d9">More...</a><br /></td></tr> <tr class="separator:aaee3fe5c514ce5570c9548de9b16e0d9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a79449d2f35a8acc8ed0585044f75524d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a79449d2f35a8acc8ed0585044f75524d">tdsdump_dump_buf</a> (const char *file, unsigned int level_line, const char *msg, const void *buf, size_t length)</td></tr> <tr class="memdesc:a79449d2f35a8acc8ed0585044f75524d"><td class="mdescLeft"> </td><td class="mdescRight">Dump the contents of data into the log file in a human readable format. <a href="a00416.html#a79449d2f35a8acc8ed0585044f75524d">More...</a><br /></td></tr> <tr class="separator:a79449d2f35a8acc8ed0585044f75524d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac04e951f1496434b94a52c6d2585a1d3"><td class="memItemLeft" align="right" valign="top"><a id="ac04e951f1496434b94a52c6d2585a1d3" name="ac04e951f1496434b94a52c6d2585a1d3"></a> int </td><td class="memItemRight" valign="bottom"><b>tdsdump_isopen</b> (void)</td></tr> <tr class="separator:ac04e951f1496434b94a52c6d2585a1d3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab45c291105027e69836002e1dd586141"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ab45c291105027e69836002e1dd586141">tdsdump_log</a> (const char *file, unsigned int level_line, const char *fmt,...)</td></tr> <tr class="memdesc:ab45c291105027e69836002e1dd586141"><td class="mdescLeft"> </td><td class="mdescRight">Write a message to the debug log. <a href="a00416.html#ab45c291105027e69836002e1dd586141">More...</a><br /></td></tr> <tr class="separator:ab45c291105027e69836002e1dd586141"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae3e5e04822595c54f86db66d9e40b93a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ae3e5e04822595c54f86db66d9e40b93a">tdsdump_off</a> (<a class="el" href="a01214.html">TDSDUMP_OFF_ITEM</a> *off_item)</td></tr> <tr class="memdesc:ae3e5e04822595c54f86db66d9e40b93a"><td class="mdescLeft"> </td><td class="mdescRight">Temporarily turn off logging for current thread. <a href="a00416.html#ae3e5e04822595c54f86db66d9e40b93a">More...</a><br /></td></tr> <tr class="separator:ae3e5e04822595c54f86db66d9e40b93a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae5f50062ebebe46b951e5308cb2f5d7e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#ae5f50062ebebe46b951e5308cb2f5d7e">tdsdump_on</a> (<a class="el" href="a01214.html">TDSDUMP_OFF_ITEM</a> *off_item)</td></tr> <tr class="memdesc:ae5f50062ebebe46b951e5308cb2f5d7e"><td class="mdescLeft"> </td><td class="mdescRight">Turn logging back on for current thread. <a href="a00416.html#ae5f50062ebebe46b951e5308cb2f5d7e">More...</a><br /></td></tr> <tr class="separator:ae5f50062ebebe46b951e5308cb2f5d7e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a24471508ddfde7cc0f8577801e70c42f"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a24471508ddfde7cc0f8577801e70c42f">tdsdump_open</a> (const char *filename)</td></tr> <tr class="memdesc:a24471508ddfde7cc0f8577801e70c42f"><td class="mdescLeft"> </td><td class="mdescRight">Create and truncate a human readable dump file for the TDS traffic. <a href="a00416.html#a24471508ddfde7cc0f8577801e70c42f">More...</a><br /></td></tr> <tr class="separator:a24471508ddfde7cc0f8577801e70c42f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abf18b98efef6ce2dc0b97d658a3a1918"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#abf18b98efef6ce2dc0b97d658a3a1918">tdserror</a> (const <a class="el" href="a01190.html">TDSCONTEXT</a> *tds_ctx, <a class="el" href="a01210.html">TDSSOCKET</a> *tds, int msgno, int errnum)</td></tr> <tr class="memdesc:abf18b98efef6ce2dc0b97d658a3a1918"><td class="mdescLeft"> </td><td class="mdescRight">Call the client library's error handler (for library-generated errors only) <a href="a00416.html#abf18b98efef6ce2dc0b97d658a3a1918">More...</a><br /></td></tr> <tr class="separator:abf18b98efef6ce2dc0b97d658a3a1918"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a> Variables</h2></td></tr> <tr class="memitem:a3f863616d5cbedafe503e501d6405f38"><td class="memItemLeft" align="right" valign="top"><a id="a3f863616d5cbedafe503e501d6405f38" name="a3f863616d5cbedafe503e501d6405f38"></a> const char </td><td class="memItemRight" valign="bottom"><b>STD_DATETIME_FMT</b> []</td></tr> <tr class="separator:a3f863616d5cbedafe503e501d6405f38"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a81654c66df711ef24076358958f8e0e8"><td class="memItemLeft" align="right" valign="top"><a id="a81654c66df711ef24076358958f8e0e8" name="a81654c66df711ef24076358958f8e0e8"></a> int </td><td class="memItemRight" valign="bottom"><b>tds_debug_flags</b></td></tr> <tr class="separator:a81654c66df711ef24076358958f8e0e8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1df5fe612d97e9a11d04067eb176c538"><td class="memItemLeft" align="right" valign="top"><a id="a1df5fe612d97e9a11d04067eb176c538" name="a1df5fe612d97e9a11d04067eb176c538"></a> int </td><td class="memItemRight" valign="bottom"><b>tds_g_append_mode</b></td></tr> <tr class="separator:a1df5fe612d97e9a11d04067eb176c538"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaebc521679d49515cfbbdf8d7a6086ea9"><td class="memItemLeft" align="right" valign="top"> const char </td><td class="memItemRight" valign="bottom"><b>tds_hex_digits</b> []</td></tr> <tr class="separator:gaebc521679d49515cfbbdf8d7a6086ea9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4da9eedb6322f7dfca89d5d89be7b374"><td class="memItemLeft" align="right" valign="top">const int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00416.html#a4da9eedb6322f7dfca89d5d89be7b374">tds_numeric_bytes_per_prec</a> []</td></tr> <tr class="memdesc:a4da9eedb6322f7dfca89d5d89be7b374"><td class="mdescLeft"> </td><td class="mdescRight">The following little table is indexed by precision and will tell us the number of bytes required to store the specified precision. <a href="a00416.html#a4da9eedb6322f7dfca89d5d89be7b374">More...</a><br /></td></tr> <tr class="separator:a4da9eedb6322f7dfca89d5d89be7b374"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a600125ad5c70f2c5b8659d3b8bd33ed3"><td class="memItemLeft" align="right" valign="top"><a id="a600125ad5c70f2c5b8659d3b8bd33ed3" name="a600125ad5c70f2c5b8659d3b8bd33ed3"></a> const uint16_t </td><td class="memItemRight" valign="bottom"><b>tds_type_flags_ms</b> [256]</td></tr> <tr class="separator:a600125ad5c70f2c5b8659d3b8bd33ed3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4766b1a553077cb3257d36b9ac28f5b5"><td class="memItemLeft" align="right" valign="top"><a id="a4766b1a553077cb3257d36b9ac28f5b5" name="a4766b1a553077cb3257d36b9ac28f5b5"></a> int </td><td class="memItemRight" valign="bottom"><b>tds_write_dump</b></td></tr> <tr class="memdesc:a4766b1a553077cb3257d36b9ac28f5b5"><td class="mdescLeft"> </td><td class="mdescRight">Tell if TDS debug logging is turned on or off. <br /></td></tr> <tr class="separator:a4766b1a553077cb3257d36b9ac28f5b5"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p >Main include file for libtds. </p> </div><h2 class="groupheader">Macro Definition Documentation</h2> <a id="ad659669113501ad92f406b25d6d70432" name="ad659669113501ad92f406b25d6d70432"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad659669113501ad92f406b25d6d70432">◆ </a></span>TDS_BYTE_SWAP16</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define TDS_BYTE_SWAP16</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">value</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line"> (((((uint16_t)value)<<8) & 0xFF00u) | \</div> <div class="line"> ((((uint16_t)value)>>8) & 0x00FFu))</div> </div><!-- fragment --> </div> </div> <a id="a0938069354a4e9076192d6f6bf6a0aff" name="a0938069354a4e9076192d6f6bf6a0aff"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0938069354a4e9076192d6f6bf6a0aff">◆ </a></span>TDS_BYTE_SWAP32</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define TDS_BYTE_SWAP32</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">value</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line"> (((((uint32_t)value)<<24) & 0xFF000000u)| \</div> <div class="line"> ((((uint32_t)value)<< 8) & 0x00FF0000u)| \</div> <div class="line"> ((((uint32_t)value)>> 8) & 0x0000FF00u)| \</div> <div class="line"> ((((uint32_t)value)>>24) & 0x000000FFu))</div> </div><!-- fragment --> </div> </div> <a id="a07e9371c3e72b9e319f4c14e6fc2c20f" name="a07e9371c3e72b9e319f4c14e6fc2c20f"></a> <h2 class="memtitle"><span class="permalink"><a href="#a07e9371c3e72b9e319f4c14e6fc2c20f">◆ </a></span>TDS_IS_MSSQL</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define TDS_IS_MSSQL</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">x</td><td>)</td> <td>   (((x)->conn->product_version & 0x80000000u)!=0)</td> </tr> </table> </div><div class="memdoc"> <p>Check if product is Microsft SQL Server. </p> <p >x should be a TDSSOCKET*. </p> </div> </div> <a id="a4840433488d0c66601ff4002a54b41d7" name="a4840433488d0c66601ff4002a54b41d7"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4840433488d0c66601ff4002a54b41d7">◆ </a></span>TDS_IS_SYBASE</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define TDS_IS_SYBASE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">x</td><td>)</td> <td>   (!((x)->conn->product_version & 0x80000000u))</td> </tr> </table> </div><div class="memdoc"> <p>Check if product is Sybase (such as Adaptive Server Enterrprice). </p> <p >x should be a TDSSOCKET*. </p> </div> </div> <a id="a1f5fb9d2184949ed566c8ce308a4e91e" name="a1f5fb9d2184949ed566c8ce308a4e91e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1f5fb9d2184949ed566c8ce308a4e91e">◆ </a></span>TDS_MS_VER</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define TDS_MS_VER</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">maj, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">min, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">x </td> </tr> <tr> <td></td> <td>)</td> <td></td><td>   (0x80000000u|((maj)<<24)|((min)<<16)|(x))</td> </tr> </table> </div><div class="memdoc"> <p>Calc a version number for mssql. </p> <p >Use with <a class="el" href="a00416.html#a1f5fb9d2184949ed566c8ce308a4e91e" title="Calc a version number for mssql.">TDS_MS_VER(7,0,842)</a>. For test for a range of version you can use check like if (tds->product_version >= <a class="el" href="a00416.html#a1f5fb9d2184949ed566c8ce308a4e91e" title="Calc a version number for mssql.">TDS_MS_VER(7,0,0)</a> && tds->product_version < <a class="el" href="a00416.html#a1f5fb9d2184949ed566c8ce308a4e91e" title="Calc a version number for mssql.">TDS_MS_VER(8,0,0)</a>) </p> </div> </div> <a id="a2c216ecb9737c4950941dda7139a2b3f" name="a2c216ecb9737c4950941dda7139a2b3f"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2c216ecb9737c4950941dda7139a2b3f">◆ </a></span>TDS_START_LEN_GENERIC</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define TDS_START_LEN_GENERIC</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><a class="el" href="a01210.html">tds_socket</a>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">len </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <b>Value:</b><div class="fragment"><div class="line"> <span class="keywordflow">do</span> { \</div> <div class="line"> TDSFREEZE current_freeze[1]; \</div> <div class="line"> tds_freeze((<a class="code hl_struct" href="a01210.html">tds_socket</a>), current_freeze, (len)); <span class="keywordflow">do</span> { <span class="keywordflow">do</span></div> <div class="ttc" id="aa01210_html"><div class="ttname"><a href="a01210.html">tds_socket</a></div><div class="ttdoc">Information for a server connection.</div><div class="ttdef"><b>Definition:</b> tds.h:1163</div></div> </div><!-- fragment --> </div> </div> <h2 class="groupheader">Typedef Documentation</h2> <a id="a1de034b895312fc0cfae0e28f8921a47" name="a1de034b895312fc0cfae0e28f8921a47"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1de034b895312fc0cfae0e28f8921a47">◆ </a></span>TDS_COMPILETIME_SETTINGS</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="a01090.html">tds_compiletime_settings</a> <a class="el" href="a00416.html#a1de034b895312fc0cfae0e28f8921a47">TDS_COMPILETIME_SETTINGS</a></td> </tr> </table> </div><div class="memdoc"> <p>A structure to hold all the compile-time settings. </p> <p >This structure is returned by tds_get_compiletime_settings </p> </div> </div> <a id="ae21e9f12e8ee5219228ee6b6a41dec66" name="ae21e9f12e8ee5219228ee6b6a41dec66"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae21e9f12e8ee5219228ee6b6a41dec66">◆ </a></span>TDS_ENCODING</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="a01138.html">tds_encoding</a> <a class="el" href="a00416.html#ae21e9f12e8ee5219228ee6b6a41dec66">TDS_ENCODING</a></td> </tr> </table> </div><div class="memdoc"> <p>Information relevant to libiconv. </p> <p >The name is an iconv name, not the same as found in master..syslanguages. </p> </div> </div> <a id="a47b154752431b2379988dbfdff394577" name="a47b154752431b2379988dbfdff394577"></a> <h2 class="memtitle"><span class="permalink"><a href="#a47b154752431b2379988dbfdff394577">◆ </a></span>TDSBLOB</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="a01130.html">tds_blob</a> <a class="el" href="a00416.html#a47b154752431b2379988dbfdff394577">TDSBLOB</a></td> </tr> </table> </div><div class="memdoc"> <p>Information about blobs (e.g. </p> <p >text or image). current_row contains this structure. </p> </div> </div> <h2 class="groupheader">Enumeration Type Documentation</h2> <a id="aa8d8044be84bcde003f28ec25a77519c" name="aa8d8044be84bcde003f28ec25a77519c"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa8d8044be84bcde003f28ec25a77519c">◆ </a></span>tds_end</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="a00416.html#aa8d8044be84bcde003f28ec25a77519c">tds_end</a></td> </tr> </table> </div><div class="memdoc"> <p>Flags returned in TDS_DONE token. </p> <table class="fieldtable"> <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aa8d8044be84bcde003f28ec25a77519ca7ed9046db24ad78bb94c2b12d6e11f46" name="aa8d8044be84bcde003f28ec25a77519ca7ed9046db24ad78bb94c2b12d6e11f46"></a>TDS_DONE_FINAL </td><td class="fielddoc"><p >final result set, command completed successfully. </p> </td></tr> <tr><td class="fieldname"><a id="aa8d8044be84bcde003f28ec25a77519ca688b8bf555ce6ae72f3e047177bfc966" name="aa8d8044be84bcde003f28ec25a77519ca688b8bf555ce6ae72f3e047177bfc966"></a>TDS_DONE_MORE_RESULTS </td><td class="fielddoc"><p >more results follow </p> </td></tr> <tr><td class="fieldname"><a id="aa8d8044be84bcde003f28ec25a77519caa9d79a3b62e3321332223ac3d1a5b18d" name="aa8d8044be84bcde003f28ec25a77519caa9d79a3b62e3321332223ac3d1a5b18d"></a>TDS_DONE_ERROR </td><td class="fielddoc"><p >error occurred </p> </td></tr> <tr><td class="fieldname"><a id="aa8d8044be84bcde003f28ec25a77519cac79a30d1a0bac125e77d87f5d87bc2b2" name="aa8d8044be84bcde003f28ec25a77519cac79a30d1a0bac125e77d87f5d87bc2b2"></a>TDS_DONE_INXACT </td><td class="fielddoc"><p >transaction in progress </p> </td></tr> <tr><td class="fieldname"><a id="aa8d8044be84bcde003f28ec25a77519cae170f368306f421d507c6f08e4d48d9a" name="aa8d8044be84bcde003f28ec25a77519cae170f368306f421d507c6f08e4d48d9a"></a>TDS_DONE_PROC </td><td class="fielddoc"><p >results are from a stored procedure </p> </td></tr> <tr><td class="fieldname"><a id="aa8d8044be84bcde003f28ec25a77519caf17d0c6591e318014c806a10c2f0270b" name="aa8d8044be84bcde003f28ec25a77519caf17d0c6591e318014c806a10c2f0270b"></a>TDS_DONE_COUNT </td><td class="fielddoc"><p >count field in packet is valid </p> </td></tr> <tr><td class="fieldname"><a id="aa8d8044be84bcde003f28ec25a77519ca202254cfd6784404cf1aa22bc7147c86" name="aa8d8044be84bcde003f28ec25a77519ca202254cfd6784404cf1aa22bc7147c86"></a>TDS_DONE_CANCELLED </td><td class="fielddoc"><p >acknowledging an attention command (usually a cancel) </p> </td></tr> <tr><td class="fieldname"><a id="aa8d8044be84bcde003f28ec25a77519ca7bfe89d6f8fc309eae412ad0a503e34c" name="aa8d8044be84bcde003f28ec25a77519ca7bfe89d6f8fc309eae412ad0a503e34c"></a>TDS_DONE_SRVERROR </td><td class="fielddoc"><p >SQL server server error. </p> </td></tr> </table> </div> </div> <a id="a87cdae58f91ebe9229206bf0628f8e33" name="a87cdae58f91ebe9229206bf0628f8e33"></a> <h2 class="memtitle"><span class="permalink"><a href="#a87cdae58f91ebe9229206bf0628f8e33">◆ </a></span>tds_states</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="a00416.html#a87cdae58f91ebe9229206bf0628f8e33">tds_states</a></td> </tr> </table> </div><div class="memdoc"> <p>values for tds->state </p> <table class="fieldtable"> <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a87cdae58f91ebe9229206bf0628f8e33ad1586abc1f75b7f3d640b994afe310e9" name="a87cdae58f91ebe9229206bf0628f8e33ad1586abc1f75b7f3d640b994afe310e9"></a>TDS_IDLE </td><td class="fielddoc"><p >no data expected </p> </td></tr> <tr><td class="fieldname"><a id="a87cdae58f91ebe9229206bf0628f8e33a4a4fcc1840bee1e09521f08a0184d025" name="a87cdae58f91ebe9229206bf0628f8e33a4a4fcc1840bee1e09521f08a0184d025"></a>TDS_WRITING </td><td class="fielddoc"><p >client is writing data </p> </td></tr> <tr><td class="fieldname"><a id="a87cdae58f91ebe9229206bf0628f8e33a2bad5be30bd85edc9495dae3d199d2c1" name="a87cdae58f91ebe9229206bf0628f8e33a2bad5be30bd85edc9495dae3d199d2c1"></a>TDS_SENDING </td><td class="fielddoc"><p >client would send data </p> </td></tr> <tr><td class="fieldname"><a id="a87cdae58f91ebe9229206bf0628f8e33a00f6d5ac5560f2f44661e599241849a8" name="a87cdae58f91ebe9229206bf0628f8e33a00f6d5ac5560f2f44661e599241849a8"></a>TDS_PENDING </td><td class="fielddoc"><p >cilent is waiting for data </p> </td></tr> <tr><td class="fieldname"><a id="a87cdae58f91ebe9229206bf0628f8e33a36ddbc8f326d6b297009a8fafd958529" name="a87cdae58f91ebe9229206bf0628f8e33a36ddbc8f326d6b297009a8fafd958529"></a>TDS_READING </td><td class="fielddoc"><p >client is reading data </p> </td></tr> <tr><td class="fieldname"><a id="a87cdae58f91ebe9229206bf0628f8e33af087b64970a1fb35bbcf1bc6ea7a643d" name="a87cdae58f91ebe9229206bf0628f8e33af087b64970a1fb35bbcf1bc6ea7a643d"></a>TDS_DEAD </td><td class="fielddoc"><p >no connection </p> </td></tr> </table> </div> </div> <h2 class="groupheader">Function Documentation</h2> <a id="ade7df2db455b61edc83819ad60edb339" name="ade7df2db455b61edc83819ad60edb339"></a> <h2 class="memtitle"><span class="permalink"><a href="#ade7df2db455b61edc83819ad60edb339">◆ </a></span>tds_bcp_done()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_bcp_done </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int * </td> <td class="paramname"><em>rows_copied</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Tell we finished sending BCP data to server. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramdir"></td><td class="paramname">tds</td><td>A pointer to the TDSSOCKET structure managing a client/server operation. </td></tr> <tr><td class="paramdir">[out]</td><td class="paramname">rows_copied</td><td>number of rows copied to server </td></tr> </table> </dd> </dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 2 --> </div> </div> </div> </div> <a id="a8184311543c685f2ee0bcccfb725ca02" name="a8184311543c685f2ee0bcccfb725ca02"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8184311543c685f2ee0bcccfb725ca02">◆ </a></span>tds_bcp_fread()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_bcp_fread </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00958.html">TDSICONV</a> * </td> <td class="paramname"><em>char_conv</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">FILE * </td> <td class="paramname"><em>stream</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>terminator</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>term_len</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char ** </td> <td class="paramname"><em>outbuf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t * </td> <td class="paramname"><em>outbytes</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Read a data file, passing the data through iconv(). </p> <dl class="retval"><dt>Return values</dt><dd> <table class="retval"> <tr><td class="paramname">TDS_SUCCESS</td><td>success </td></tr> <tr><td class="paramname">TDS_FAIL</td><td>error reading the column </td></tr> <tr><td class="paramname">TDS_NO_MORE_RESULTS</td><td>end of file detected </td></tr> </table> </dd> </dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 3 --> </div> </div> </div> </div> <a id="ac6610c72bd31bad5378f760fa9b12d66" name="ac6610c72bd31bad5378f760fa9b12d66"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac6610c72bd31bad5378f760fa9b12d66">◆ </a></span>tds_bcp_init()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_bcp_init </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01222.html">TDSBCPINFO</a> * </td> <td class="paramname"><em>bcpinfo</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Initialize BCP information. </p> <p >Query structure of the table to server. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>A pointer to the TDSSOCKET structure managing a client/server operation. </td></tr> <tr><td class="paramname">bcpinfo</td><td>BCP information to initialize. Structure should be allocate and table name and direction should be already set. </td></tr> </table> </dd> </dl> </div> </div> <a id="ad9e44450025cbcee1ad81d7e5a2cc099" name="ad9e44450025cbcee1ad81d7e5a2cc099"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad9e44450025cbcee1ad81d7e5a2cc099">◆ </a></span>tds_bcp_send_record()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_bcp_send_record </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01222.html">TDSBCPINFO</a> * </td> <td class="paramname"><em>bcpinfo</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">tds_bcp_get_col_data </td> <td class="paramname"><em>get_col_data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">tds_bcp_null_error </td> <td class="paramname"><em>null_error</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>offset</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Send one row of data to server. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>A pointer to the TDSSOCKET structure managing a client/server operation. </td></tr> <tr><td class="paramname">bcpinfo</td><td>BCP information </td></tr> <tr><td class="paramname">get_col_data</td><td>function to call to retrieve data to be sent </td></tr> <tr><td class="paramname">ignored</td><td>function to call if we try to send NULL if not allowed (not used) </td></tr> <tr><td class="paramname">offset</td><td>passed to get_col_data and null_error to specify the row to get </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>TDS_SUCCESS or TDS_FAIL. </dd></dl> </div> </div> <a id="a8208eef2a3974ae1f0cf3c8c8ab011ce" name="a8208eef2a3974ae1f0cf3c8c8ab011ce"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8208eef2a3974ae1f0cf3c8c8ab011ce">◆ </a></span>tds_bcp_start()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_bcp_start </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01222.html">TDSBCPINFO</a> * </td> <td class="paramname"><em>bcpinfo</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Start sending BCP data to server. </p> <p >Initialize stream to accept data. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>A pointer to the TDSSOCKET structure managing a client/server operation. </td></tr> <tr><td class="paramname">bcpinfo</td><td>BCP information already prepared </td></tr> </table> </dd> </dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 4 --> </div> </div> </div> </div> <a id="a5eec23828b0610c58de248c4edb53879" name="a5eec23828b0610c58de248c4edb53879"></a> <h2 class="memtitle"><span class="permalink"><a href="#a5eec23828b0610c58de248c4edb53879">◆ </a></span>tds_bcp_start_copy_in()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_bcp_start_copy_in </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01222.html">TDSBCPINFO</a> * </td> <td class="paramname"><em>bcpinfo</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Start bulk copy to server. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>A pointer to the TDSSOCKET structure managing a client/server operation. </td></tr> <tr><td class="paramname">bcpinfo</td><td>BCP information already prepared </td></tr> </table> </dd> </dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 5 --> </div> </div> </div> </div> <a id="a0383d5dcb629582266a442f0f0dbd13a" name="a0383d5dcb629582266a442f0f0dbd13a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0383d5dcb629582266a442f0f0dbd13a">◆ </a></span>tds_get_conversion_type()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDS_SERVER_TYPE tds_get_conversion_type </td> <td>(</td> <td class="paramtype">TDS_SERVER_TYPE </td> <td class="paramname"><em>srctype</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>colsize</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Return type suitable for conversions (convert all nullable types to fixed type) </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">srctype</td><td>type to convert </td></tr> <tr><td class="paramname">colsize</td><td>size of type </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>type for conversion </dd></dl> <div class="dynheader"> Here is the caller graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 6 --> </div> </div> </div> </div> <a id="a41390fa6e1083ba84fb523797e6b5275" name="a41390fa6e1083ba84fb523797e6b5275"></a> <h2 class="memtitle"><span class="permalink"><a href="#a41390fa6e1083ba84fb523797e6b5275">◆ </a></span>tds_get_locale()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a01126.html">TDSLOCALE</a> * tds_get_locale </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Get locale information. </p> <dl class="section return"><dt>Returns</dt><dd>allocated structure with all information or NULL if error </dd></dl> </div> </div> <a id="a026957dbbd994b48b571a63405f427cd" name="a026957dbbd994b48b571a63405f427cd"></a> <h2 class="memtitle"><span class="permalink"><a href="#a026957dbbd994b48b571a63405f427cd">◆ </a></span>tds_iconv_alloc()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int tds_iconv_alloc </td> <td>(</td> <td class="paramtype"><a class="el" href="a01206.html">TDSCONNECTION</a> * </td> <td class="paramname"><em>conn</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Allocate iconv stuff. </p> <dl class="section return"><dt>Returns</dt><dd>0 for success </dd></dl> </div> </div> <a id="a622da936832b0337742da956be123719" name="a622da936832b0337742da956be123719"></a> <h2 class="memtitle"><span class="permalink"><a href="#a622da936832b0337742da956be123719">◆ </a></span>tds_numeric_to_string()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDS_INT tds_numeric_to_string </td> <td>(</td> <td class="paramtype">const <a class="el" href="a01018.html">TDS_NUMERIC</a> * </td> <td class="paramname"><em>numeric</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char * </td> <td class="paramname"><em>s</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd><0 if error </dd></dl> </div> </div> <a id="a31604382d8b77257aad203f409155a29" name="a31604382d8b77257aad203f409155a29"></a> <h2 class="memtitle"><span class="permalink"><a href="#a31604382d8b77257aad203f409155a29">◆ </a></span>tds_set_column_type()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void tds_set_column_type </td> <td>(</td> <td class="paramtype"><a class="el" href="a01206.html">TDSCONNECTION</a> * </td> <td class="paramname"><em>conn</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01150.html">TDSCOLUMN</a> * </td> <td class="paramname"><em>curcol</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">TDS_SERVER_TYPE </td> <td class="paramname"><em>type</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set type of column initializing all dependency. </p> <p >column_usertype should already be set. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">curcol</td><td>column to set </td></tr> <tr><td class="paramname">type</td><td>type to set </td></tr> </table> </dd> </dl> </div> </div> <a id="a86768d86059c5addf9a3f89edb1ef44e" name="a86768d86059c5addf9a3f89edb1ef44e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a86768d86059c5addf9a3f89edb1ef44e">◆ </a></span>tds_set_param_type()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void tds_set_param_type </td> <td>(</td> <td class="paramtype"><a class="el" href="a01206.html">TDSCONNECTION</a> * </td> <td class="paramname"><em>conn</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01150.html">TDSCOLUMN</a> * </td> <td class="paramname"><em>curcol</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">TDS_SERVER_TYPE </td> <td class="paramname"><em>type</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set type of column initializing all dependency. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>state information for the socket and the TDS protocol </td></tr> <tr><td class="paramname">curcol</td><td>column to set </td></tr> <tr><td class="paramname">type</td><td>type to set </td></tr> </table> </dd> </dl> </div> </div> <a id="a3ab8874994a0776acdaff797afdb710a" name="a3ab8874994a0776acdaff797afdb710a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a3ab8874994a0776acdaff797afdb710a">◆ </a></span>tds_set_server()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool tds_set_server </td> <td>(</td> <td class="paramtype"><a class="el" href="a01118.html">TDSLOGIN</a> * </td> <td class="paramname"><em>tds_login</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>server</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the servername in a TDSLOGIN structure. </p> <p >Normally copies <em>server</em> into <em><a class="el" href="a01118.html">tds_login</a></em>. If <em>server</em> does not point to a plausible name, the environment variables TDSQUERY and DSQUERY are used, in that order. If they don't exist, the "default default" servername is "SYBASE" (although the utility of that choice is a bit murky). <br /> </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname"><a class="el" href="a01118.html">tds_login</a></td><td>points to a TDSLOGIN structure </td></tr> <tr><td class="paramname">server</td><td>the servername, or NULL, or a zero-length string </td></tr> </table> </dd> </dl> <dl class="todo"><dt><b><a class="el" href="a00524.html#_todo000018">Todo:</a></b></dt><dd>open the log file earlier, so these messages can be seen. <br /> </dd></dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 7 --> </div> </div> </div> </div> <a id="a16db200d2281f76fe46fc1cbe37ca9df" name="a16db200d2281f76fe46fc1cbe37ca9df"></a> <h2 class="memtitle"><span class="permalink"><a href="#a16db200d2281f76fe46fc1cbe37ca9df">◆ </a></span>tds_set_state()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00416.html#ac0d502ab90609c39fe7713fe0dfbefad">TDS_STATE</a> tds_set_state </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00416.html#ac0d502ab90609c39fe7713fe0dfbefad">TDS_STATE</a> </td> <td class="paramname"><em>state</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set state of TDS connection, with logging and checking. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>state information for the socket and the TDS protocol </td></tr> <tr><td class="paramname">state</td><td>the new state of the connection, cf. TDS_STATE. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the new state, which might not be <em>state</em>. </dd></dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 8 --> </div> </div> <div class="dynheader"> Here is the caller graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 9 --> </div> </div> </div> </div> <a id="a0e1370e1c1f7ae1b2e0c304960c39161" name="a0e1370e1c1f7ae1b2e0c304960c39161"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0e1370e1c1f7ae1b2e0c304960c39161">◆ </a></span>tds_strndup()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">char * tds_strndup </td> <td>(</td> <td class="paramtype">const void * </td> <td class="paramname"><em>s</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">TDS_INTPTR </td> <td class="paramname"><em>len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Copy a string of length len to a new allocated buffer This function does not read more than len bytes Please note that some system implementation of strndup do not assure they don't read past len bytes as they use still strlen to check length to copy limiting after strlen to size passed String returned is NUL terminated. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">s</td><td>string to copy from </td></tr> <tr><td class="paramname">len</td><td>length to copy</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>string copied or NULL if errors </dd></dl> </div> </div> <a id="ab68dead99a2ebec55895a10cd3db5202" name="ab68dead99a2ebec55895a10cd3db5202"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab68dead99a2ebec55895a10cd3db5202">◆ </a></span>tds_writetext_continue()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_writetext_continue </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const TDS_UCHAR * </td> <td class="paramname"><em>text</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">TDS_UINT </td> <td class="paramname"><em>size</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Send some data in the writetext request started by tds_writetext_start. </p> <p >You should write in total (with multiple calls to this function) all bytes declared calling tds_writetext_start. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>A pointer to the TDSSOCKET structure managing a client/server operation. </td></tr> <tr><td class="paramname">text</td><td>data to write </td></tr> <tr><td class="paramname">size</td><td>data size in bytes </td></tr> </table> </dd> </dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 10 --> </div> </div> </div> </div> <a id="ac1e460551f1188620ea478238864ac4b" name="ac1e460551f1188620ea478238864ac4b"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac1e460551f1188620ea478238864ac4b">◆ </a></span>tds_writetext_end()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_writetext_end </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Finish sending writetext data. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>A pointer to the TDSSOCKET structure managing a client/server operation. </td></tr> </table> </dd> </dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 11 --> </div> </div> </div> </div> <a id="a7711612cc544a7da2c7aa212b870acb2" name="a7711612cc544a7da2c7aa212b870acb2"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7711612cc544a7da2c7aa212b870acb2">◆ </a></span>tds_writetext_start()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">TDSRET tds_writetext_start </td> <td>(</td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>objname</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>textptr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>timestamp</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>with_log</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">TDS_UINT </td> <td class="paramname"><em>size</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Start writing writetext request. </p> <p >This request start a bulk session. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds</td><td>A pointer to the TDSSOCKET structure managing a client/server operation. </td></tr> <tr><td class="paramname">objname</td><td>table name </td></tr> <tr><td class="paramname">textptr</td><td>TEXTPTR (see sql documentation) </td></tr> <tr><td class="paramname">timestamp</td><td>data timestamp </td></tr> <tr><td class="paramname">with_log</td><td>is log is enabled during insert </td></tr> <tr><td class="paramname">size</td><td>bytes to be inserted </td></tr> </table> </dd> </dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 12 --> </div> </div> </div> </div> <a id="aaee3fe5c514ce5570c9548de9b16e0d9" name="aaee3fe5c514ce5570c9548de9b16e0d9"></a> <h2 class="memtitle"><span class="permalink"><a href="#aaee3fe5c514ce5570c9548de9b16e0d9">◆ </a></span>tdsdump_col()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void tdsdump_col </td> <td>(</td> <td class="paramtype">const <a class="el" href="a01150.html">TDSCOLUMN</a> * </td> <td class="paramname"><em>col</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Write a column value to the debug log. </p> <p ><br /> </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">col</td><td>column to dump </td></tr> </table> </dd> </dl> </div> </div> <a id="a79449d2f35a8acc8ed0585044f75524d" name="a79449d2f35a8acc8ed0585044f75524d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a79449d2f35a8acc8ed0585044f75524d">◆ </a></span>tdsdump_dump_buf()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void tdsdump_dump_buf </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>file</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>level_line</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>msg</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const void * </td> <td class="paramname"><em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>length</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Dump the contents of data into the log file in a human readable format. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">file</td><td>source file name </td></tr> <tr><td class="paramname">level_line</td><td>line and level combined. This and file are automatically computed by TDS_DBG_* macros. </td></tr> <tr><td class="paramname">msg</td><td>message to print before dump </td></tr> <tr><td class="paramname">buf</td><td>buffer to dump </td></tr> <tr><td class="paramname">length</td><td>number of bytes in the buffer </td></tr> </table> </dd> </dl> </div> </div> <a id="ab45c291105027e69836002e1dd586141" name="ab45c291105027e69836002e1dd586141"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab45c291105027e69836002e1dd586141">◆ </a></span>tdsdump_log()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void tdsdump_log </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>file</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>level_line</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>fmt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname"><em>...</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Write a message to the debug log. </p> <p ><br /> </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">file</td><td>name of the log file </td></tr> <tr><td class="paramname">level_line</td><td>kind of detail to be included </td></tr> <tr><td class="paramname">fmt</td><td>printf-like format string </td></tr> </table> </dd> </dl> </div> </div> <a id="ae3e5e04822595c54f86db66d9e40b93a" name="ae3e5e04822595c54f86db66d9e40b93a"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae3e5e04822595c54f86db66d9e40b93a">◆ </a></span>tdsdump_off()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void tdsdump_off </td> <td>(</td> <td class="paramtype"><a class="el" href="a01214.html">TDSDUMP_OFF_ITEM</a> * </td> <td class="paramname"><em>off_item</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Temporarily turn off logging for current thread. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">off_item</td><td>List item to be used by the function. The item will be initialized by the function. It's retained till is removed with tdsdump_on so it must be kept alive. </td></tr> </table> </dd> </dl> </div> </div> <a id="ae5f50062ebebe46b951e5308cb2f5d7e" name="ae5f50062ebebe46b951e5308cb2f5d7e"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae5f50062ebebe46b951e5308cb2f5d7e">◆ </a></span>tdsdump_on()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void tdsdump_on </td> <td>(</td> <td class="paramtype"><a class="el" href="a01214.html">TDSDUMP_OFF_ITEM</a> * </td> <td class="paramname"><em>off_item</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Turn logging back on for current thread. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">off_item</td><td>List item to remove from global list. Previously used by <a class="el" href="a00416.html#ae3e5e04822595c54f86db66d9e40b93a" title="Temporarily turn off logging for current thread.">tdsdump_off()</a>. </td></tr> </table> </dd> </dl> </div> </div> <a id="a24471508ddfde7cc0f8577801e70c42f" name="a24471508ddfde7cc0f8577801e70c42f"></a> <h2 class="memtitle"><span class="permalink"><a href="#a24471508ddfde7cc0f8577801e70c42f">◆ </a></span>tdsdump_open()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int tdsdump_open </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>filename</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Create and truncate a human readable dump file for the TDS traffic. </p> <p >The name of the file is specified by the filename parameter. If that is given as NULL or an empty string, any existing log file will be closed.</p> <dl class="section return"><dt>Returns</dt><dd>true if the file was opened, false if it couldn't be opened. </dd></dl> <div class="dynheader"> Here is the caller graph for this function:</div> <div class="dyncontent"> <div class="center"><!-- SVG 13 --> </div> </div> </div> </div> <a id="abf18b98efef6ce2dc0b97d658a3a1918" name="abf18b98efef6ce2dc0b97d658a3a1918"></a> <h2 class="memtitle"><span class="permalink"><a href="#abf18b98efef6ce2dc0b97d658a3a1918">◆ </a></span>tdserror()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int tdserror </td> <td>(</td> <td class="paramtype">const <a class="el" href="a01190.html">TDSCONTEXT</a> * </td> <td class="paramname"><em>tds_ctx</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01210.html">TDSSOCKET</a> * </td> <td class="paramname"><em>tds</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>msgno</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>errnum</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Call the client library's error handler (for library-generated errors only) </p> <p >The client library error handler may return: TDS_INT_CANCEL – Return TDS_FAIL to the calling function. For TDSETIME, closes the connection first. TDS_INT_CONTINUE – For TDSETIME only, retry the network read/write operation. Else invalid. TDS_INT_TIMEOUT – For TDSETIME only, send a TDSCANCEL packet. Else invalid.</p> <p >These are Sybase semantics, but they serve all purposes. <br /> The application tells the library to quit, fail, retry, or attempt to cancel. In the event of a network timeout, a failed operation necessarily means the connection becomes unusable, because no cancellation dialog was concluded with the server. <br /> </p> <p >It is the client library's duty to call the error handler installed by the application, if any, and to interpret the installed handler's return code. It may return to this function one of the above codes only. This function will not check the return code because there's nothing that can be done here except abort. It is merely passed to the calling function, which will (we hope) DTRT. <br /> </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">tds_ctx</td><td>points to a TDSCONTEXT structure </td></tr> <tr><td class="paramname">tds</td><td>the connection structure, may be NULL if not connected </td></tr> <tr><td class="paramname">msgno</td><td>an enumerated libtds msgno, cf. <a class="el" href="a00416.html" title="Main include file for libtds.">tds.h</a> </td></tr> <tr><td class="paramname">errnum</td><td>the OS errno, if it matters, else zero</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>client library function's return code </dd></dl> </div> </div> <h2 class="groupheader">Variable Documentation</h2> <a id="a4da9eedb6322f7dfca89d5d89be7b374" name="a4da9eedb6322f7dfca89d5d89be7b374"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4da9eedb6322f7dfca89d5d89be7b374">◆ </a></span>tds_numeric_bytes_per_prec</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const int tds_numeric_bytes_per_prec[]</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">extern</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>The following little table is indexed by precision and will tell us the number of bytes required to store the specified precision. </p> <p >The following little table is indexed by precision and will tell us the number of bytes required to store the specified precision.</p> <p >Support precision up to 77 digits </p> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </small></address> </body> </html>