Current File : //usr/local/apps/share/doc/freetds/reference/a00378_ga2c99ec565452279e9a382451d89642eb_cgraph.svg |
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.38.0 (20140413.2041)
-->
<!-- Title: tdsdbopen Pages: 1 -->
<svg width="1084pt" height="870pt"
viewBox="0.00 0.00 1084.00 870.25" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 866.251)">
<title>tdsdbopen</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-866.251 1080,-866.251 1080,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node"><title>Node1</title>
<polygon fill="#bfbfbf" stroke="black" points="0,-353.751 0,-372.751 66,-372.751 66,-353.751 0,-353.751"/>
<text text-anchor="middle" x="33" y="-360.751" font-family="Helvetica,sans-Serif" font-size="10.00">tdsdbopen</text>
</g>
<!-- Node2 -->
<g id="node2" class="node"><title>Node2</title>
<g id="a_node2"><a xlink:href="a00217.html#a24471508ddfde7cc0f8577801e70c42f" target="_top" xlink:title="Create and truncate a human readable dump file for the TDS traffic. ">
<polygon fill="white" stroke="black" points="511.5,-120.751 511.5,-139.751 597.5,-139.751 597.5,-120.751 511.5,-120.751"/>
<text text-anchor="middle" x="554.5" y="-127.751" font-family="Helvetica,sans-Serif" font-size="10.00">tdsdump_open</text>
</a>
</g>
</g>
<!-- Node1->Node2 -->
<g id="edge1" class="edge"><title>Node1->Node2</title>
<path fill="none" stroke="midnightblue" d="M37.5082,-353.66C50.9094,-318.604 102.61,-196.978 191,-149.251 290.039,-95.7737 427.324,-107.666 501.287,-119.746"/>
<polygon fill="midnightblue" stroke="midnightblue" points="500.847,-123.221 511.292,-121.445 502.019,-116.32 500.847,-123.221"/>
</g>
<!-- Node3 -->
<g id="node3" class="node"><title>Node3</title>
<g id="a_node3"><a xlink:href="a00217.html#ab45c291105027e69836002e1dd586141" target="_top" xlink:title="Write a message to the debug log. ">
<polygon fill="white" stroke="black" points="866.5,-234.751 866.5,-253.751 943.5,-253.751 943.5,-234.751 866.5,-234.751"/>
<text text-anchor="middle" x="905" y="-241.751" font-family="Helvetica,sans-Serif" font-size="10.00">tdsdump_log</text>
</a>
</g>
</g>
<!-- Node1->Node3 -->
<g id="edge3" class="edge"><title>Node1->Node3</title>
<path fill="none" stroke="midnightblue" d="M35.0945,-353.475C40.3579,-308.014 64.3693,-117.619 102,-73.2509 144.658,-22.9563 173.051,-16.2509 239,-16.2509 239,-16.2509 239,-16.2509 555.5,-16.2509 674.828,-16.2509 727.298,32.024 823,-39.2509 883.726,-84.4767 898.969,-182.252 902.76,-224.33"/>
<polygon fill="midnightblue" stroke="midnightblue" points="899.28,-224.716 903.541,-234.416 906.259,-224.176 899.28,-224.716"/>
</g>
<!-- Node4 -->
<g id="node4" class="node"><title>Node4</title>
<g id="a_node4"><a xlink:href="a00378.html#ga302a4ce6559b81808e3be51615cd1b67" target="_top" xlink:title="Call client-installed error handler. ">
<polygon fill="white" stroke="black" points="526,-576.751 526,-595.751 583,-595.751 583,-576.751 526,-576.751"/>
<text text-anchor="middle" x="554.5" y="-583.751" font-family="Helvetica,sans-Serif" font-size="10.00">dbperror</text>
</a>
</g>
</g>
<!-- Node1->Node4 -->
<g id="edge4" class="edge"><title>Node1->Node4</title>
<path fill="none" stroke="midnightblue" d="M53.073,-372.848C113.867,-403.214 308.948,-498.925 477,-562.251 489.642,-567.015 503.694,-571.616 516.269,-575.493"/>
<polygon fill="midnightblue" stroke="midnightblue" points="515.398,-578.886 525.983,-578.437 517.428,-572.187 515.398,-578.886"/>
</g>
<!-- Node6 -->
<g id="node6" class="node"><title>Node6</title>
<g id="a_node6"><a xlink:href="a00389.html#ga3340b488ed37845018e34572450e64c6" target="_top" xlink:title="Returns a C version (NUL terminated string) of dstr. ">
<polygon fill="white" stroke="black" points="706.5,-690.751 706.5,-709.751 784.5,-709.751 784.5,-690.751 706.5,-690.751"/>
<text text-anchor="middle" x="745.5" y="-697.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_dstr_cstr</text>
</a>
</g>
</g>
<!-- Node1->Node6 -->
<g id="edge55" class="edge"><title>Node1->Node6</title>
<path fill="none" stroke="midnightblue" d="M35.6099,-372.861C44.7796,-424.039 95.1849,-662.251 239,-662.251 239,-662.251 239,-662.251 384,-662.251 494.545,-662.251 522.275,-667.81 632,-681.251 653.179,-683.845 676.454,-687.62 696.311,-691.123"/>
<polygon fill="midnightblue" stroke="midnightblue" points="695.894,-694.604 706.354,-692.923 697.128,-687.714 695.894,-694.604"/>
</g>
<!-- Node7 -->
<g id="node7" class="node"><title>Node7</title>
<g id="a_node7"><a xlink:href="a00217.html#a3ab8874994a0776acdaff797afdb710a" target="_top" xlink:title="Set the servername in a TDSLOGIN structure. ">
<polygon fill="white" stroke="black" points="702,-728.751 702,-747.751 789,-747.751 789,-728.751 702,-728.751"/>
<text text-anchor="middle" x="745.5" y="-735.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_set_server</text>
</a>
</g>
</g>
<!-- Node1->Node7 -->
<g id="edge8" class="edge"><title>Node1->Node7</title>
<path fill="none" stroke="midnightblue" d="M34.5538,-372.897C38.4835,-431.594 67.2335,-738.251 239,-738.251 239,-738.251 239,-738.251 384,-738.251 493.239,-738.251 621.098,-738.251 691.407,-738.251"/>
<polygon fill="midnightblue" stroke="midnightblue" points="691.77,-741.751 701.77,-738.251 691.77,-734.751 691.77,-741.751"/>
</g>
<!-- Node10 -->
<g id="node10" class="node"><title>Node10</title>
<g id="a_node10"><a xlink:href="a00383.html#ga9af192306186ddf39e09be0fd4ad8aaf" target="_top" xlink:title="tds_read_config_info() will fill the tds connection structure based on configuration information gath...">
<polygon fill="white" stroke="black" points="325,-424.751 325,-443.751 441,-443.751 441,-424.751 325,-424.751"/>
<text text-anchor="middle" x="383" y="-431.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_read_config_info</text>
</a>
</g>
</g>
<!-- Node1->Node10 -->
<g id="edge12" class="edge"><title>Node1->Node10</title>
<path fill="none" stroke="midnightblue" d="M66.1152,-369.803C125.094,-381.836 251.366,-407.599 325.152,-422.653"/>
<polygon fill="midnightblue" stroke="midnightblue" points="324.705,-426.133 335.203,-424.703 326.104,-419.275 324.705,-426.133"/>
</g>
<!-- Node22 -->
<g id="node22" class="node"><title>Node22</title>
<g id="a_node22"><a xlink:href="a00383.html#gacee4f06ba749b10ee9f2e5bb1c4a8910" target="_top" xlink:title="Fix configuration after reading it. ">
<polygon fill="white" stroke="black" points="516.5,-234.751 516.5,-253.751 592.5,-253.751 592.5,-234.751 516.5,-234.751"/>
<text text-anchor="middle" x="554.5" y="-241.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_fix_login</text>
</a>
</g>
</g>
<!-- Node1->Node22 -->
<g id="edge54" class="edge"><title>Node1->Node22</title>
<path fill="none" stroke="midnightblue" d="M66.105,-355.897C154.63,-335.619 402.516,-278.836 506.575,-255"/>
<polygon fill="midnightblue" stroke="midnightblue" points="507.514,-258.375 516.48,-252.731 505.951,-251.552 507.514,-258.375"/>
</g>
<!-- Node24 -->
<g id="node24" class="node"><title>Node24</title>
<g id="a_node24"><a xlink:href="a00372.html#gaef740b394b44eb33925c2718f7b30d69" target="_top" xlink:title="Close a connection to the server and free associated resources. ">
<polygon fill="white" stroke="black" points="102,-82.7509 102,-101.751 155,-101.751 155,-82.7509 102,-82.7509"/>
<text text-anchor="middle" x="128.5" y="-89.7509" font-family="Helvetica,sans-Serif" font-size="10.00">dbclose</text>
</a>
</g>
</g>
<!-- Node1->Node24 -->
<g id="edge45" class="edge"><title>Node1->Node24</title>
<path fill="none" stroke="midnightblue" d="M34.7862,-353.556C37.9666,-318.916 52.1982,-198.925 102,-116.251 103.529,-113.712 105.401,-111.27 107.429,-108.98"/>
<polygon fill="midnightblue" stroke="midnightblue" points="109.99,-111.37 114.657,-101.858 105.077,-106.384 109.99,-111.37"/>
</g>
<!-- Node2->Node3 -->
<g id="edge2" class="edge"><title>Node2->Node3</title>
<path fill="none" stroke="midnightblue" d="M597.919,-124.891C652.936,-119.916 750.436,-117.962 823,-154.251 854.793,-170.151 879.927,-204.315 893.327,-225.677"/>
<polygon fill="midnightblue" stroke="midnightblue" points="890.476,-227.726 898.64,-234.479 896.469,-224.109 890.476,-227.726"/>
</g>
<!-- Node4->Node3 -->
<g id="edge5" class="edge"><title>Node4->Node3</title>
<path fill="none" stroke="midnightblue" d="M569.882,-576.645C585.696,-565.834 611.57,-547.402 632,-529.251 649.392,-513.799 649.151,-504.887 668,-491.251 729.695,-446.618 769.277,-472.215 823,-418.251 867.76,-373.291 890.745,-298.962 899.586,-263.818"/>
<polygon fill="midnightblue" stroke="midnightblue" points="903.043,-264.412 901.97,-253.871 896.236,-262.781 903.043,-264.412"/>
</g>
<!-- Node5 -->
<g id="node5" class="node"><title>Node5</title>
<g id="a_node5"><a xlink:href="a00389.html#gae6d3d12bd1f5f0c56df934a377c245d3" target="_top" xlink:title="test if string is empty ">
<polygon fill="white" stroke="black" points="697,-652.751 697,-671.751 794,-671.751 794,-652.751 697,-652.751"/>
<text text-anchor="middle" x="745.5" y="-659.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_dstr_isempty</text>
</a>
</g>
</g>
<!-- Node4->Node5 -->
<g id="edge6" class="edge"><title>Node4->Node5</title>
<path fill="none" stroke="midnightblue" d="M583.347,-592.425C598.284,-596.361 616.71,-602.242 632,-610.251 649.956,-619.656 650.044,-628.845 668,-638.251 676.331,-642.615 685.592,-646.347 694.714,-649.477"/>
<polygon fill="midnightblue" stroke="midnightblue" points="693.914,-652.896 704.505,-652.638 696.064,-646.235 693.914,-652.896"/>
</g>
<!-- Node4->Node6 -->
<g id="edge7" class="edge"><title>Node4->Node6</title>
<path fill="none" stroke="midnightblue" d="M583.186,-589.542C598.98,-592.642 618.298,-598.645 632,-610.251 658.997,-633.118 640.323,-659.212 668,-681.251 676.109,-687.708 686.117,-692.008 696.191,-694.861"/>
<polygon fill="midnightblue" stroke="midnightblue" points="695.678,-698.337 706.218,-697.259 697.306,-691.529 695.678,-698.337"/>
</g>
<!-- Node7->Node3 -->
<g id="edge9" class="edge"><title>Node7->Node3</title>
<path fill="none" stroke="midnightblue" d="M789.315,-736.561C801.817,-733.934 814.413,-728.829 823,-719.251 862.82,-674.839 848.714,-512.007 859,-453.251 871.296,-383.009 890.481,-300.483 899.29,-263.674"/>
<polygon fill="midnightblue" stroke="midnightblue" points="902.733,-264.323 901.671,-253.782 895.928,-262.685 902.733,-264.323"/>
</g>
<!-- Node8 -->
<g id="node8" class="node"><title>Node8</title>
<g id="a_node8"><a xlink:href="a00389.html#gad96366d9fa93bfc283cef1299fbe97ab" target="_top" xlink:title="copy a string from another ">
<polygon fill="white" stroke="black" points="863.5,-671.751 863.5,-690.751 946.5,-690.751 946.5,-671.751 863.5,-671.751"/>
<text text-anchor="middle" x="905" y="-678.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_dstr_copy</text>
</a>
</g>
</g>
<!-- Node7->Node8 -->
<g id="edge10" class="edge"><title>Node7->Node8</title>
<path fill="none" stroke="midnightblue" d="M789.025,-729.252C800.207,-726.463 812.167,-723.096 823,-719.251 841.547,-712.668 861.577,-703.293 877.078,-695.502"/>
<polygon fill="midnightblue" stroke="midnightblue" points="878.78,-698.563 886.091,-690.895 875.594,-692.33 878.78,-698.563"/>
</g>
<!-- Node9 -->
<g id="node9" class="node"><title>Node9</title>
<g id="a_node9"><a xlink:href="a00389.html#ga656718f240d7403f986ae887d84a6ca1" target="_top" xlink:title="Set string to a given buffer of characters. ">
<polygon fill="white" stroke="black" points="987,-804.751 987,-823.751 1076,-823.751 1076,-804.751 987,-804.751"/>
<text text-anchor="middle" x="1031.5" y="-811.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_dstr_copyn</text>
</a>
</g>
</g>
<!-- Node8->Node9 -->
<g id="edge11" class="edge"><title>Node8->Node9</title>
<path fill="none" stroke="midnightblue" d="M914.954,-690.816C935.76,-713.042 987.616,-768.439 1014.21,-796.848"/>
<polygon fill="midnightblue" stroke="midnightblue" points="1011.9,-799.505 1021.29,-804.414 1017.01,-794.721 1011.9,-799.505"/>
</g>
<!-- Node10->Node2 -->
<g id="edge17" class="edge"><title>Node10->Node2</title>
<path fill="none" stroke="midnightblue" d="M385.654,-424.331C391.957,-388.93 417.201,-266.69 477,-187.251 490.073,-169.884 509.848,-155.343 526.017,-145.295"/>
<polygon fill="midnightblue" stroke="midnightblue" points="528.248,-148.039 535.043,-139.91 524.662,-142.028 528.248,-148.039"/>
</g>
<!-- Node10->Node3 -->
<g id="edge18" class="edge"><title>Node10->Node3</title>
<path fill="none" stroke="midnightblue" d="M390.42,-424.673C403.965,-405.267 437.491,-361.285 477,-339.251 614.505,-262.564 669.354,-297.623 823,-263.251 833.792,-260.837 845.374,-258.167 856.308,-255.611"/>
<polygon fill="midnightblue" stroke="midnightblue" points="857.191,-258.999 866.126,-253.306 855.59,-252.184 857.191,-258.999"/>
</g>
<!-- Node10->Node5 -->
<g id="edge44" class="edge"><title>Node10->Node5</title>
<path fill="none" stroke="midnightblue" d="M390.455,-443.768C404.064,-463.06 437.702,-506.843 477,-529.251 538.616,-564.385 576.447,-523.151 632,-567.251 659.71,-589.249 641.003,-615.384 668,-638.251 673.696,-643.075 680.362,-646.932 687.342,-650.014"/>
<polygon fill="midnightblue" stroke="midnightblue" points="686.405,-653.404 696.994,-653.755 688.935,-646.877 686.405,-653.404"/>
</g>
<!-- Node10->Node6 -->
<g id="edge19" class="edge"><title>Node10->Node6</title>
<path fill="none" stroke="midnightblue" d="M386.436,-444.131C394.198,-473.485 421.182,-560.879 477,-605.251 532.963,-649.738 569.478,-613.583 632,-648.251 650.982,-658.776 648.876,-670.984 668,-681.251 676.68,-685.911 686.528,-689.453 696.201,-692.136"/>
<polygon fill="midnightblue" stroke="midnightblue" points="695.61,-695.596 706.161,-694.633 697.312,-688.807 695.61,-695.596"/>
</g>
<!-- Node11 -->
<g id="node11" class="node"><title>Node11</title>
<g id="a_node11"><a xlink:href="a00386.html#ga2ef389ac3b0cddec76bf8f1c0951bc9c" target="_top" xlink:title="Initialize login structure with locale information and other stuff for connection. ">
<polygon fill="white" stroke="black" points="515,-462.751 515,-481.751 594,-481.751 594,-462.751 515,-462.751"/>
<text text-anchor="middle" x="554.5" y="-469.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_init_login</text>
</a>
</g>
</g>
<!-- Node10->Node11 -->
<g id="edge13" class="edge"><title>Node10->Node11</title>
<path fill="none" stroke="midnightblue" d="M426.772,-443.84C450.562,-449.173 480.256,-455.831 504.92,-461.36"/>
<polygon fill="midnightblue" stroke="midnightblue" points="504.276,-464.802 514.799,-463.575 505.807,-457.972 504.276,-464.802"/>
</g>
<!-- Node13 -->
<g id="node13" class="node"><title>Node13</title>
<g id="a_node13"><a xlink:href="a00383.html#ga0a63cb612f245fd85e56cfea98ff8f3b" target="_top" xlink:title="Read configuration info for given server return 0 on error. ">
<polygon fill="white" stroke="black" points="502.5,-348.751 502.5,-367.751 606.5,-367.751 606.5,-348.751 502.5,-348.751"/>
<text text-anchor="middle" x="554.5" y="-355.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_read_conf_file</text>
</a>
</g>
</g>
<!-- Node10->Node13 -->
<g id="edge20" class="edge"><title>Node10->Node13</title>
<path fill="none" stroke="midnightblue" d="M405.467,-424.625C435.142,-411.32 488.866,-387.231 522.784,-372.023"/>
<polygon fill="midnightblue" stroke="midnightblue" points="524.514,-375.083 532.207,-367.798 521.65,-368.696 524.514,-375.083"/>
</g>
<!-- Node15 -->
<g id="node15" class="node"><title>Node15</title>
<g id="a_node15"><a xlink:href="a00383.html#gaa9670914093b354e7a123b10ba877813" target="_top" xlink:title="Check the server name to find port info first Warning: connection-> & login-> are all modified when n...">
<polygon fill="white" stroke="black" points="477,-690.751 477,-709.751 632,-709.751 632,-690.751 477,-690.751"/>
<text text-anchor="middle" x="554.5" y="-697.751" font-family="Helvetica,sans-Serif" font-size="10.00">parse_server_name_for_port</text>
</a>
</g>
</g>
<!-- Node10->Node15 -->
<g id="edge23" class="edge"><title>Node10->Node15</title>
<path fill="none" stroke="midnightblue" d="M386.695,-444.035C395.57,-475.002 426.252,-572.69 477,-638.251 491.48,-656.957 512.657,-673.556 529.061,-684.859"/>
<polygon fill="midnightblue" stroke="midnightblue" points="527.352,-687.927 537.61,-690.574 531.242,-682.107 527.352,-687.927"/>
</g>
<!-- Node16 -->
<g id="node16" class="node"><title>Node16</title>
<g id="a_node16"><a xlink:href="a00389.html#ga4e6d9fa6f9b9551a5a3390e10a5322e6" target="_top" xlink:title="Duplicate a string from another dynamic string. ">
<polygon fill="white" stroke="black" points="866,-842.751 866,-861.751 944,-861.751 944,-842.751 866,-842.751"/>
<text text-anchor="middle" x="905" y="-849.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_dstr_dup</text>
</a>
</g>
</g>
<!-- Node10->Node16 -->
<g id="edge27" class="edge"><title>Node10->Node16</title>
<path fill="none" stroke="midnightblue" d="M384.462,-443.948C386.833,-483.313 400.717,-633.162 477,-719.251 575.817,-830.771 766.427,-849.832 855.682,-852.386"/>
<polygon fill="midnightblue" stroke="midnightblue" points="855.718,-855.888 865.795,-852.617 855.878,-848.89 855.718,-855.888"/>
</g>
<!-- Node17 -->
<g id="node17" class="node"><title>Node17</title>
<g id="a_node17"><a xlink:href="a00383.html#ga6631af35ee817f93827c62bbda41674a" target="_top" xlink:title="Try to find the IP number and port for a (possibly) logical server name. ">
<polygon fill="white" stroke="black" points="499,-424.751 499,-443.751 610,-443.751 610,-424.751 499,-424.751"/>
<text text-anchor="middle" x="554.5" y="-431.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_read_interfaces</text>
</a>
</g>
</g>
<!-- Node10->Node17 -->
<g id="edge29" class="edge"><title>Node10->Node17</title>
<path fill="none" stroke="midnightblue" d="M441.385,-434.251C456.59,-434.251 473.112,-434.251 488.682,-434.251"/>
<polygon fill="midnightblue" stroke="midnightblue" points="488.753,-437.751 498.753,-434.251 488.753,-430.751 488.753,-437.751"/>
</g>
<!-- Node20 -->
<g id="node20" class="node"><title>Node20</title>
<g id="a_node20"><a xlink:href="a00217.html#abf18b98efef6ce2dc0b97d658a3a1918" target="_top" xlink:title="Call the client library's error handler (for library-generated errors only) ">
<polygon fill="white" stroke="black" points="527.5,-196.751 527.5,-215.751 581.5,-215.751 581.5,-196.751 527.5,-196.751"/>
<text text-anchor="middle" x="554.5" y="-203.751" font-family="Helvetica,sans-Serif" font-size="10.00">tdserror</text>
</a>
</g>
</g>
<!-- Node10->Node20 -->
<g id="edge38" class="edge"><title>Node10->Node20</title>
<path fill="none" stroke="midnightblue" d="M385.288,-424.575C390.25,-391.265 411.266,-280.369 477,-225.251 488.114,-215.932 503.137,-211.073 516.928,-208.578"/>
<polygon fill="midnightblue" stroke="midnightblue" points="517.755,-211.994 527.149,-207.096 516.75,-205.067 517.755,-211.994"/>
</g>
<!-- Node10->Node22 -->
<g id="edge42" class="edge"><title>Node10->Node22</title>
<path fill="none" stroke="midnightblue" d="M386.595,-424.74C394.799,-396.468 422.892,-312.191 477,-268.251 485.434,-261.402 495.837,-256.498 506.224,-252.99"/>
<polygon fill="midnightblue" stroke="midnightblue" points="507.532,-256.252 516.113,-250.037 505.529,-249.545 507.532,-256.252"/>
</g>
<!-- Node23 -->
<g id="node23" class="node"><title>Node23</title>
<g id="a_node23"><a xlink:href="a00217.html#a2f00fc0907d3bb04ce0eeb9738e08d0c" target="_top" xlink:title="Close the TDS dump log file. ">
<polygon fill="white" stroke="black" points="511,-500.751 511,-519.751 598,-519.751 598,-500.751 511,-500.751"/>
<text text-anchor="middle" x="554.5" y="-507.751" font-family="Helvetica,sans-Serif" font-size="10.00">tdsdump_close</text>
</a>
</g>
</g>
<!-- Node10->Node23 -->
<g id="edge43" class="edge"><title>Node10->Node23</title>
<path fill="none" stroke="midnightblue" d="M396.859,-443.914C414.198,-456.513 446.433,-478.448 477,-491.251 484.538,-494.408 492.722,-497.126 500.84,-499.438"/>
<polygon fill="midnightblue" stroke="midnightblue" points="500.099,-502.863 510.663,-502.06 501.903,-496.1 500.099,-502.863"/>
</g>
<!-- Node11->Node5 -->
<g id="edge16" class="edge"><title>Node11->Node5</title>
<path fill="none" stroke="midnightblue" d="M594.151,-473.801C607.722,-476.242 622.049,-481.268 632,-491.251 679.485,-538.891 621.979,-589.195 668,-638.251 673.424,-644.033 680.221,-648.43 687.511,-651.772"/>
<polygon fill="midnightblue" stroke="midnightblue" points="686.356,-655.078 696.944,-655.466 688.909,-648.56 686.356,-655.078"/>
</g>
<!-- Node11->Node8 -->
<g id="edge15" class="edge"><title>Node11->Node8</title>
<path fill="none" stroke="midnightblue" d="M594.199,-474.23C607.616,-476.736 621.827,-481.694 632,-491.251 670.725,-527.631 629.22,-568.93 668,-605.251 719.769,-653.737 756.12,-619.628 823,-643.251 841.557,-649.806 861.587,-659.181 877.086,-666.978"/>
<polygon fill="midnightblue" stroke="midnightblue" points="875.601,-670.15 886.097,-671.59 878.79,-663.919 875.601,-670.15"/>
</g>
<!-- Node12 -->
<g id="node12" class="node"><title>Node12</title>
<g id="a_node12"><a xlink:href="a00385.html#ga6561d1dba1a04c168431b16ec17d7e4c" target="_top" xlink:title="Determine canonical iconv character set name. ">
<polygon fill="white" stroke="red" points="668,-576.751 668,-595.751 823,-595.751 823,-576.751 668,-576.751"/>
<text text-anchor="middle" x="745.5" y="-583.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_canonical_charset_name</text>
</a>
</g>
</g>
<!-- Node11->Node12 -->
<g id="edge14" class="edge"><title>Node11->Node12</title>
<path fill="none" stroke="midnightblue" d="M594.175,-475.322C607.28,-477.962 621.295,-482.726 632,-491.251 659.677,-513.29 641.003,-539.384 668,-562.251 672.879,-566.384 678.471,-569.806 684.362,-572.64"/>
<polygon fill="midnightblue" stroke="midnightblue" points="683.232,-575.962 693.806,-576.626 685.954,-569.513 683.232,-575.962"/>
</g>
<!-- Node13->Node3 -->
<g id="edge21" class="edge"><title>Node13->Node3</title>
<path fill="none" stroke="midnightblue" d="M605.937,-348.703C672.089,-335.813 784.293,-312.581 823,-296.251 845.138,-286.911 867.959,-271.66 883.714,-260.083"/>
<polygon fill="midnightblue" stroke="midnightblue" points="886.227,-262.572 892.114,-253.764 882.019,-256.978 886.227,-262.572"/>
</g>
<!-- Node14 -->
<g id="node14" class="node"><title>Node14</title>
<g id="a_node14"><a xlink:href="a00383.html#gaf49eca946d1b2457e189de7207e3670c" target="_top" xlink:title="Return filename from HOME directory. ">
<polygon fill="white" stroke="red" points="693.5,-348.751 693.5,-367.751 797.5,-367.751 797.5,-348.751 693.5,-348.751"/>
<text text-anchor="middle" x="745.5" y="-355.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_get_home_file</text>
</a>
</g>
</g>
<!-- Node13->Node14 -->
<g id="edge22" class="edge"><title>Node13->Node14</title>
<path fill="none" stroke="midnightblue" d="M606.646,-358.251C630.283,-358.251 658.54,-358.251 683.299,-358.251"/>
<polygon fill="midnightblue" stroke="midnightblue" points="683.313,-361.751 693.313,-358.251 683.313,-354.751 683.313,-361.751"/>
</g>
<!-- Node15->Node6 -->
<g id="edge24" class="edge"><title>Node15->Node6</title>
<path fill="none" stroke="midnightblue" d="M632.101,-700.251C653.785,-700.251 676.774,-700.251 696.274,-700.251"/>
<polygon fill="midnightblue" stroke="midnightblue" points="696.421,-703.751 706.421,-700.251 696.421,-696.751 696.421,-703.751"/>
</g>
<!-- Node15->Node8 -->
<g id="edge25" class="edge"><title>Node15->Node8</title>
<path fill="none" stroke="midnightblue" d="M569.223,-709.918C589.622,-723.634 629.667,-748.094 668,-757.251 735.004,-773.257 758.943,-782.597 823,-757.251 852.432,-745.605 877.421,-717.65 891.565,-699.086"/>
<polygon fill="midnightblue" stroke="midnightblue" points="894.52,-700.975 897.61,-690.841 888.875,-696.837 894.52,-700.975"/>
</g>
<!-- Node15->Node9 -->
<g id="edge26" class="edge"><title>Node15->Node9</title>
<path fill="none" stroke="midnightblue" d="M565.336,-709.751C583.743,-726.871 625.399,-762.574 668,-778.251 772.231,-816.607 904.045,-819.28 976.55,-817.177"/>
<polygon fill="midnightblue" stroke="midnightblue" points="976.928,-820.667 986.806,-816.836 976.695,-813.67 976.928,-820.667"/>
</g>
<!-- Node16->Node9 -->
<g id="edge28" class="edge"><title>Node16->Node9</title>
<path fill="none" stroke="midnightblue" d="M937.417,-842.662C953.193,-837.847 972.505,-831.952 989.441,-826.783"/>
<polygon fill="midnightblue" stroke="midnightblue" points="990.551,-830.104 999.093,-823.837 988.507,-823.409 990.551,-830.104"/>
</g>
<!-- Node17->Node3 -->
<g id="edge30" class="edge"><title>Node17->Node3</title>
<path fill="none" stroke="midnightblue" d="M610.231,-434.894C668.122,-432.956 759.673,-422.161 823,-377.251 863.46,-348.558 887.53,-292.68 897.922,-263.32"/>
<polygon fill="midnightblue" stroke="midnightblue" points="901.252,-264.397 901.136,-253.803 894.62,-262.157 901.252,-264.397"/>
</g>
<!-- Node17->Node8 -->
<g id="edge37" class="edge"><title>Node17->Node8</title>
<path fill="none" stroke="midnightblue" d="M610.19,-441.463C618.068,-444.244 625.646,-448.05 632,-453.251 660.922,-476.924 639.042,-505.621 668,-529.251 722.955,-574.094 764.329,-527.393 823,-567.251 858.479,-591.353 883.564,-636.478 895.705,-662.134"/>
<polygon fill="midnightblue" stroke="midnightblue" points="892.651,-663.872 899.98,-671.523 899.022,-660.972 892.651,-663.872"/>
</g>
<!-- Node17->Node14 -->
<g id="edge35" class="edge"><title>Node17->Node14</title>
<path fill="none" stroke="midnightblue" d="M574.287,-424.657C596.367,-413.597 634.278,-395.272 668,-382.251 678.538,-378.182 690.083,-374.281 700.937,-370.85"/>
<polygon fill="midnightblue" stroke="midnightblue" points="702.144,-374.14 710.663,-367.84 700.075,-367.453 702.144,-374.14"/>
</g>
<!-- Node18 -->
<g id="node18" class="node"><title>Node18</title>
<g id="a_node18"><a xlink:href="a00383.html#gaca20b6e5f5a5ac1727126712dd39564b" target="_top" xlink:title="Open and read the file 'file' searching for a logical server by the name of 'host'. ">
<polygon fill="white" stroke="red" points="687.5,-500.751 687.5,-519.751 803.5,-519.751 803.5,-500.751 687.5,-500.751"/>
<text text-anchor="middle" x="745.5" y="-507.751" font-family="Helvetica,sans-Serif" font-size="10.00">search_interface_file</text>
</a>
</g>
</g>
<!-- Node17->Node18 -->
<g id="edge31" class="edge"><title>Node17->Node18</title>
<path fill="none" stroke="midnightblue" d="M601.319,-443.842C611.55,-446.476 622.252,-449.624 632,-453.251 663.243,-464.876 697.115,-482.834 719.438,-495.481"/>
<polygon fill="midnightblue" stroke="midnightblue" points="717.842,-498.6 728.257,-500.542 721.326,-492.529 717.842,-498.6"/>
</g>
<!-- Node19 -->
<g id="node19" class="node"><title>Node19</title>
<g id="a_node19"><a xlink:href="a00383.html#ga45281d1cb2ac649db65d80bb3ff06b66" target="_top" xlink:title="Given a portname lookup the port. ">
<polygon fill="white" stroke="red" points="859,-462.751 859,-481.751 951,-481.751 951,-462.751 859,-462.751"/>
<text text-anchor="middle" x="905" y="-469.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_lookup_port</text>
</a>
</g>
</g>
<!-- Node17->Node19 -->
<g id="edge36" class="edge"><title>Node17->Node19</title>
<path fill="none" stroke="midnightblue" d="M610.336,-440.23C675.475,-447.333 783.51,-459.113 848.805,-466.233"/>
<polygon fill="midnightblue" stroke="midnightblue" points="848.584,-469.729 858.904,-467.334 849.343,-462.77 848.584,-469.729"/>
</g>
<!-- Node18->Node3 -->
<g id="edge32" class="edge"><title>Node18->Node3</title>
<path fill="none" stroke="midnightblue" d="M799.924,-500.689C808.431,-497.254 816.542,-492.588 823,-486.251 886.555,-423.892 900.243,-310.301 903.191,-264.347"/>
<polygon fill="midnightblue" stroke="midnightblue" points="906.695,-264.365 903.733,-254.193 899.705,-263.992 906.695,-264.365"/>
</g>
<!-- Node18->Node8 -->
<g id="edge33" class="edge"><title>Node18->Node8</title>
<path fill="none" stroke="midnightblue" d="M796.227,-519.79C805.797,-523.231 815.242,-527.906 823,-534.251 864.966,-568.577 888.718,-630.659 898.563,-662.017"/>
<polygon fill="midnightblue" stroke="midnightblue" points="895.251,-663.157 901.473,-671.732 901.957,-661.148 895.251,-663.157"/>
</g>
<!-- Node18->Node19 -->
<g id="edge34" class="edge"><title>Node18->Node19</title>
<path fill="none" stroke="midnightblue" d="M786.244,-500.662C807.028,-495.647 832.661,-489.463 854.699,-484.146"/>
<polygon fill="midnightblue" stroke="midnightblue" points="855.642,-487.519 864.542,-481.771 854,-480.714 855.642,-487.519"/>
</g>
<!-- Node20->Node3 -->
<g id="edge39" class="edge"><title>Node20->Node3</title>
<path fill="none" stroke="midnightblue" d="M581.853,-206.732C630.001,-207.918 735.312,-211.939 823,-225.251 834.708,-227.028 847.224,-229.616 858.83,-232.312"/>
<polygon fill="midnightblue" stroke="midnightblue" points="858.212,-235.763 868.752,-234.693 859.845,-228.956 858.212,-235.763"/>
</g>
<!-- Node21 -->
<g id="node21" class="node"><title>Node21</title>
<g id="a_node21"><a xlink:href="a00387.html#ga11338742dc30fd0c2711f58eb830316f" target="_top" xlink:title="tds_send_cancel() sends an empty packet (8 byte header only) tds_process_cancel should be called dire...">
<polygon fill="white" stroke="red" points="697,-234.751 697,-253.751 794,-253.751 794,-234.751 697,-234.751"/>
<text text-anchor="middle" x="745.5" y="-241.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_send_cancel</text>
</a>
</g>
</g>
<!-- Node20->Node21 -->
<g id="edge40" class="edge"><title>Node20->Node21</title>
<path fill="none" stroke="midnightblue" d="M581.78,-211.535C608.828,-216.973 651.844,-225.622 686.856,-232.661"/>
<polygon fill="midnightblue" stroke="midnightblue" points="686.474,-236.154 696.967,-234.694 687.854,-229.292 686.474,-236.154"/>
</g>
<!-- Node21->Node3 -->
<g id="edge41" class="edge"><title>Node21->Node3</title>
<path fill="none" stroke="midnightblue" d="M794.183,-244.251C813.83,-244.251 836.549,-244.251 856.208,-244.251"/>
<polygon fill="midnightblue" stroke="midnightblue" points="856.475,-247.751 866.475,-244.251 856.475,-240.751 856.475,-247.751"/>
</g>
<!-- Node24->Node3 -->
<g id="edge46" class="edge"><title>Node24->Node3</title>
<path fill="none" stroke="midnightblue" d="M155.236,-83.0379C166.139,-79.4663 179.061,-75.6637 191,-73.2509 274.618,-56.3534 296.692,-54.2509 382,-54.2509 382,-54.2509 382,-54.2509 555.5,-54.2509 675.085,-54.2509 724.731,-15.1046 823,-83.2509 871.954,-117.199 892.895,-189.705 900.413,-224.638"/>
<polygon fill="midnightblue" stroke="midnightblue" points="897.005,-225.445 902.4,-234.563 903.869,-224.07 897.005,-225.445"/>
</g>
<!-- Node25 -->
<g id="node25" class="node"><title>Node25</title>
<g id="a_node25"><a xlink:href="a00388.html#ga3e3f76009fce5ceedb2f42bb2c9aed2e" target="_top" xlink:title="Close current socket. ">
<polygon fill="white" stroke="black" points="191,-158.751 191,-177.751 289,-177.751 289,-158.751 191,-158.751"/>
<text text-anchor="middle" x="240" y="-165.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_close_socket</text>
</a>
</g>
</g>
<!-- Node24->Node25 -->
<g id="edge47" class="edge"><title>Node24->Node25</title>
<path fill="none" stroke="midnightblue" d="M143.368,-101.876C161.88,-114.725 194.88,-137.629 216.856,-152.881"/>
<polygon fill="midnightblue" stroke="midnightblue" points="215.034,-155.877 225.244,-158.704 219.025,-150.126 215.034,-155.877"/>
</g>
<!-- Node27 -->
<g id="node27" class="node"><title>Node27</title>
<g id="a_node27"><a xlink:href="a00372.html#ga0fcfcf6846442dac9dd5584d270ec72a" target="_top" xlink:title="Erase the command buffer, in case DBNOAUTOFREE was set with dbsetopt(). ">
<polygon fill="white" stroke="black" points="210,-82.7509 210,-101.751 270,-101.751 270,-82.7509 210,-82.7509"/>
<text text-anchor="middle" x="240" y="-89.7509" font-family="Helvetica,sans-Serif" font-size="10.00">dbfreebuf</text>
</a>
</g>
</g>
<!-- Node24->Node27 -->
<g id="edge52" class="edge"><title>Node24->Node27</title>
<path fill="none" stroke="midnightblue" d="M155.173,-92.2509C168.296,-92.2509 184.56,-92.2509 199.259,-92.2509"/>
<polygon fill="midnightblue" stroke="midnightblue" points="199.619,-95.751 209.619,-92.2509 199.619,-88.751 199.619,-95.751"/>
</g>
<!-- Node25->Node20 -->
<g id="edge51" class="edge"><title>Node25->Node20</title>
<path fill="none" stroke="midnightblue" d="M278.003,-177.791C292.564,-181.237 309.483,-184.863 325,-187.251 392.384,-197.621 471.88,-202.62 517.121,-204.793"/>
<polygon fill="midnightblue" stroke="midnightblue" points="517.167,-208.298 527.317,-205.262 517.488,-201.306 517.167,-208.298"/>
</g>
<!-- Node26 -->
<g id="node26" class="node"><title>Node26</title>
<g id="a_node26"><a xlink:href="a00217.html#a16db200d2281f76fe46fc1cbe37ca9df" target="_top" xlink:title="Set state of TDS connection, with logging and checking. ">
<polygon fill="white" stroke="black" points="343,-158.751 343,-177.751 423,-177.751 423,-158.751 343,-158.751"/>
<text text-anchor="middle" x="383" y="-165.751" font-family="Helvetica,sans-Serif" font-size="10.00">tds_set_state</text>
</a>
</g>
</g>
<!-- Node25->Node26 -->
<g id="edge48" class="edge"><title>Node25->Node26</title>
<path fill="none" stroke="midnightblue" d="M289.13,-168.251C303.253,-168.251 318.713,-168.251 332.896,-168.251"/>
<polygon fill="midnightblue" stroke="midnightblue" points="332.961,-171.751 342.961,-168.251 332.961,-164.751 332.961,-171.751"/>
</g>
<!-- Node26->Node3 -->
<g id="edge49" class="edge"><title>Node26->Node3</title>
<path fill="none" stroke="midnightblue" d="M423.276,-167.134C501.068,-165.919 679.612,-168.121 823,-207.251 842.268,-212.509 862.717,-221.883 878.248,-229.879"/>
<polygon fill="midnightblue" stroke="midnightblue" points="876.752,-233.048 887.228,-234.631 880.026,-226.86 876.752,-233.048"/>
</g>
<!-- Node26->Node20 -->
<g id="edge50" class="edge"><title>Node26->Node20</title>
<path fill="none" stroke="midnightblue" d="M423.313,-177.064C451.67,-183.422 489.662,-191.939 517.282,-198.131"/>
<polygon fill="midnightblue" stroke="midnightblue" points="516.794,-201.609 527.318,-200.381 518.325,-194.778 516.794,-201.609"/>
</g>
<!-- Node27->Node3 -->
<g id="edge53" class="edge"><title>Node27->Node3</title>
<path fill="none" stroke="midnightblue" d="M270.057,-90.1836C374.197,-83.2901 727.599,-64.4893 823,-119.251 863.767,-142.652 887.48,-195.845 897.802,-224.722"/>
<polygon fill="midnightblue" stroke="midnightblue" points="894.587,-226.139 901.111,-234.487 901.216,-223.892 894.587,-226.139"/>
</g>
</g>
</svg>