TheAlgorithms-C/dd/d2f/udp__server_8c__incl.svg

266 lines
11 KiB
XML
Raw Permalink Normal View History

<?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 9.0.0 (20230911.1827)
-->
<!-- Title: client_server/udp_server.c Pages: 1 -->
<!--zoomable 83 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040"><set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/></use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040"><set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/></use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="arrowUp" transform="translate(30 24)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowRight" transform="rotate(90) translate(36 -43)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowDown" transform="rotate(180) translate(-30 -48)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowLeft" transform="rotate(270) translate(-36 17)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040"><set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/></use>
</g>
</defs>
<script type="application/ecmascript">
var viewWidth = 657;
var viewHeight = 83;
var sectionId = 'dynsection-0';
</script>
<script type="application/ecmascript" xlink:href="../../svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>client_server/udp_server.c</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="Server side implementation of UDP client&#45;server model.">
<polygon fill="#999999" stroke="#666666" points="416.88,-74.5 286.88,-74.5 286.88,-55.25 416.88,-55.25 416.88,-74.5"/>
<text text-anchor="middle" x="351.88" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">client_server/udp_server.c</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="61.75,-19.25 0,-19.25 0,0 61.75,0 61.75,-19.25"/>
<text text-anchor="middle" x="30.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">arpa/inet.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M288.09,-54.77C233.59,-46.75 152.82,-34.33 73.09,-19.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="73.81,-16.15 63.34,-17.76 72.53,-23.03 73.81,-16.15"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="128,-19.25 79.75,-19.25 79.75,0 128,0 128,-19.25"/>
<text text-anchor="middle" x="103.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">netdb.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge2_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M304.75,-54.81C263.48,-46.71 201.63,-34.19 139.19,-19.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="140.36,-16.38 129.82,-17.51 138.76,-23.2 140.36,-16.38"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="209.88,-19.25 145.88,-19.25 145.88,0 209.88,0 209.88,-19.25"/>
<text text-anchor="middle" x="177.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">netinet/in.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge3_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M322.36,-54.84C293.74,-46.08 250.09,-32.73 218.26,-22.98"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="219.57,-19.73 208.98,-20.15 217.52,-26.42 219.57,-19.73"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="300,-19.25 227.75,-19.25 227.75,0 300,0 300,-19.25"/>
<text text-anchor="middle" x="263.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">sys/socket.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge4_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M336.95,-54.84C323.67,-46.81 304.01,-34.91 288.42,-25.48"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="290.54,-22.67 280.17,-20.49 286.91,-28.66 290.54,-22.67"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="385.38,-19.25 318.38,-19.25 318.38,0 385.38,0 385.38,-19.25"/>
<text text-anchor="middle" x="351.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">sys/types.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node6 -->
<g id="edge5_Node000001_Node000006" class="edge">
<title>Node1&#45;&gt;Node6</title>
<g id="a_edge5_Node000001_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M351.88,-55.08C351.88,-48.57 351.88,-39.42 351.88,-31.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="355.38,-31.12 351.88,-21.12 348.38,-31.12 355.38,-31.12"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="454.12,-19.25 403.62,-19.25 403.62,0 454.12,0 454.12,-19.25"/>
<text text-anchor="middle" x="428.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">unistd.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node7 -->
<g id="edge6_Node000001_Node000007" class="edge">
<title>Node1&#45;&gt;Node7</title>
<g id="a_edge6_Node000001_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M364.94,-54.84C376.33,-46.96 393.1,-35.36 406.61,-26.02"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="408.27,-29.13 414.5,-20.56 404.29,-23.37 408.27,-29.13"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="517.5,-19.25 472.25,-19.25 472.25,0 517.5,0 517.5,-19.25"/>
<text text-anchor="middle" x="494.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">stdio.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node8 -->
<g id="edge7_Node000001_Node000008" class="edge">
<title>Node1&#45;&gt;Node8</title>
<g id="a_edge7_Node000001_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M376.13,-54.84C399.56,-46.12 435.24,-32.83 461.37,-23.1"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="462.35,-26.47 470.5,-19.7 459.91,-19.91 462.35,-26.47"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="582.62,-19.25 535.12,-19.25 535.12,0 582.62,0 582.62,-19.25"/>
<text text-anchor="middle" x="558.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">stdlib.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node9 -->
<g id="edge8_Node000001_Node000009" class="edge">
<title>Node1&#45;&gt;Node9</title>
<g id="a_edge8_Node000001_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M388.11,-54.79C421.17,-46.46 471.68,-33.66 523.66,-20.07"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="524.52,-23.46 533.31,-17.54 522.75,-16.69 524.52,-23.46"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="649,-19.25 600.75,-19.25 600.75,0 649,0 649,-19.25"/>
<text text-anchor="middle" x="624.88" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">string.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node10 -->
<g id="edge9_Node000001_Node000010" class="edge">
<title>Node1&#45;&gt;Node10</title>
<g id="a_edge9_Node000001_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M406.91,-54.8C453.23,-46.9 521.44,-34.66 589.5,-19.66"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="589.94,-23.15 598.94,-17.56 588.42,-16.31 589.94,-23.15"/>
</a>
</g>
</g>
</g>
</svg>
<g id="navigator" transform="translate(0 0)" fill="#404254">
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
<use id="arrowup" xlink:href="#arrowUp" x="0" y="0" onmousedown="handlePan(0,-1)"/>
<use id="arrowright" xlink:href="#arrowRight" x="0" y="0" onmousedown="handlePan(1,0)"/>
<use id="arrowdown" xlink:href="#arrowDown" x="0" y="0" onmousedown="handlePan(0,1)"/>
<use id="arrowleft" xlink:href="#arrowLeft" x="0" y="0" onmousedown="handlePan(-1,0)"/>
</g>
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
<g id="arrow_out" transform="scale(0.3 0.3)">
<a xlink:href="udp__server_8c__incl_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>