{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.iteBzl7U/b1/adasockets_1.12-8_amd64.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.iteBzl7U/b2/adasockets_1.12-8_amd64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,4 +1,4 @@\n \n c3b4326ce5c2916bf2d4b452f176686b 50604 debug optional libadasockets10-dbgsym_1.12-8_amd64.deb\n 6f694ec7056ae91fd99d9ff17ab6f9b9 29296 libs optional libadasockets10_1.12-8_amd64.deb\n- c3ab4472c08dcf80636442c8ba2fff31 329180 libdevel optional libadasockets12-dev_1.12-8_amd64.deb\n+ b874119ca4d8b782765115453295de86 328800 libdevel optional libadasockets12-dev_1.12-8_amd64.deb\n"}, {"source1": "libadasockets12-dev_1.12-8_amd64.deb", "source2": "libadasockets12-dev_1.12-8_amd64.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2023-05-10 20:09:30.000000 debian-binary\n--rw-r--r-- 0 0 0 1856 2023-05-10 20:09:30.000000 control.tar.xz\n--rw-r--r-- 0 0 0 327132 2023-05-10 20:09:30.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 1852 2023-05-10 20:09:30.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 326756 2023-05-10 20:09:30.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -37,27 +37,27 @@\n -rw-r--r-- 0 root (0) root (0) 3766 2023-05-10 20:09:30.000000 ./usr/share/ada/adainclude/adasockets/sockets-utils.ads\n -rw-r--r-- 0 root (0) root (0) 23300 2023-05-10 20:09:30.000000 ./usr/share/ada/adainclude/adasockets/sockets.adb\n -rw-r--r-- 0 root (0) root (0) 10598 2023-05-10 20:09:30.000000 ./usr/share/ada/adainclude/adasockets/sockets.ads\n drwxr-xr-x 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/share/doc/\n drwxr-xr-x 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/share/doc/libadasockets12-dev/\n -rw-r--r-- 0 root (0) root (0) 768 2023-05-10 20:07:02.000000 ./usr/share/doc/libadasockets12-dev/README.Debian\n -rw-r--r-- 0 root (0) root (0) 1940 2020-06-18 13:33:07.000000 ./usr/share/doc/libadasockets12-dev/README.md\n--rw-r--r-- 0 root (0) root (0) 250488 2023-05-10 20:09:30.000000 ./usr/share/doc/libadasockets12-dev/adasockets.pdf.gz\n+-rw-r--r-- 0 root (0) root (0) 249930 2023-05-10 20:09:30.000000 ./usr/share/doc/libadasockets12-dev/adasockets.pdf.gz\n -rw-r--r-- 0 root (0) root (0) 1072 2023-05-10 20:09:30.000000 ./usr/share/doc/libadasockets12-dev/changelog.Debian.gz\n -rw-r--r-- 0 root (0) root (0) 3541 2023-05-10 20:08:47.000000 ./usr/share/doc/libadasockets12-dev/copyright\n drwxr-xr-x 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/share/doc/libadasockets12-dev/examples/\n -rw-r--r-- 0 root (0) root (0) 233 2023-05-10 20:07:02.000000 ./usr/share/doc/libadasockets12-dev/examples/examples.gpr\n -rw-r--r-- 0 root (0) root (0) 4956 2020-06-18 13:33:07.000000 ./usr/share/doc/libadasockets12-dev/examples/listener.adb\n -rw-r--r-- 0 root (0) root (0) 3980 2020-06-18 13:33:07.000000 ./usr/share/doc/libadasockets12-dev/examples/multi.adb\n -rw-r--r-- 0 root (0) root (0) 4591 2020-06-18 13:33:07.000000 ./usr/share/doc/libadasockets12-dev/examples/stream_listener.adb\n -rw-r--r-- 0 root (0) root (0) 3904 2020-06-18 13:33:07.000000 ./usr/share/doc/libadasockets12-dev/examples/stream_sender.adb\n -rw-r--r-- 0 root (0) root (0) 4919 2020-06-18 13:33:07.000000 ./usr/share/doc/libadasockets12-dev/examples/tcprelay.adb\n drwxr-xr-x 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/share/doc-base/\n -rw-r--r-- 0 root (0) root (0) 477 2023-05-10 20:09:30.000000 ./usr/share/doc-base/libadasockets12-dev.adasockets\n drwxr-xr-x 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/share/gpr/\n -rw-r--r-- 0 root (0) root (0) 354 2023-05-10 20:09:30.000000 ./usr/share/gpr/adasockets.gpr\n drwxr-xr-x 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/share/info/\n--rw-r--r-- 0 root (0) root (0) 13789 2023-05-10 20:09:30.000000 ./usr/share/info/adasockets.info.gz\n+-rw-r--r-- 0 root (0) root (0) 13987 2023-05-10 20:09:30.000000 ./usr/share/info/adasockets.info.gz\n drwxr-xr-x 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/share/man/\n drwxr-xr-x 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/share/man/man1/\n -rw-r--r-- 0 root (0) root (0) 299 2023-05-10 20:09:30.000000 ./usr/share/man/man1/adasockets-config.1.gz\n lrwxrwxrwx 0 root (0) root (0) 0 2023-05-10 20:09:30.000000 ./usr/lib/x86_64-linux-gnu/libadasockets.so -> libadasockets.so.10.0.0\n"}, {"source1": "./usr/share/doc/libadasockets12-dev/adasockets.pdf.gz", "source2": "./usr/share/doc/libadasockets12-dev/adasockets.pdf.gz", "unified_diff": null, "details": [{"source1": "adasockets.pdf", "source2": "adasockets.pdf", "unified_diff": null, "details": [{"source1": "pdftotext {} -", "source2": "pdftotext {} -", "unified_diff": "@@ -38,70 +38,70 @@\n Setting up multicast sockets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n Sending and receiving data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6\n 3.4.1 Raw data manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6\n 3.4.2 String-oriented exchanges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6\n \n Sockets package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n Accept Socket (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n-Bind (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n+Bind (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n Connect (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n Get (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\n Get Char (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\n Get Line (function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10\n Get Line (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10\n Get Receive Queue Size (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11\n Get Send Queue Size (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11\n-Getsockopt (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\n+Getsockopt (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11\n Listen (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\n-New Line (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n+New Line (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\n Put (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n-Put Line (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14\n+Put Line (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n Receive (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14\n-Receive (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15\n+Receive (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14\n Receive Some (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15\n-Send (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n+Send (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15\n Set Buffer (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n Setsockopt (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n Shutdown (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n Socket (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n Unset Buffer (procedure) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\n \n 5\n \n Sockets.Multicast package . . . . . . . . . . . . . . . . . . . . . 19\n Create Multicast Socket (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19\n-Create Multicast Socket (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19\n+Create Multicast Socket (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20\n \n \fii\n \n 6\n \n-Sockets.Naming package . . . . . . . . . . . . . . . . . . . . . . . 21\n-Address Of (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\n-Any Address (function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\n-Get Peer Addr (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\n-Get Peer Port (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\n-Get Sock Addr (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\n-Get Sock Port (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n-Host Name (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n-Image (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n-Info Of Name Or IP (function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n-Is IP Address (function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n-Name Of (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n-Value (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\n+Sockets.Naming package . . . . . . . . . . . . . . . . . . . . . . . 23\n+Address Of (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+Any Address (function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+Get Peer Addr (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+Get Peer Port (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+Get Sock Addr (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+Get Sock Port (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\n+Host Name (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\n+Image (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\n+Info Of Name Or IP (function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\n+Is IP Address (function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\n+Name Of (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\n+Value (function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27\n \n Appendix A\n \n-Contributors. . . . . . . . . . . . . . . . . . . . . . . . 27\n+Contributors. . . . . . . . . . . . . . . . . . . . . . . . 29\n \n Appendix B\n \n-Resources on the Internet . . . . . . . . . 29\n+Resources on the Internet . . . . . . . . . 31\n \n-Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31\n+Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33\n \n \f1\n \n 1 What is AdaSockets?\n AdaSockets is a set of free software Ada packages allowing Ada programmers to use the\n so-called BSD sockets from their favourite programming language. AdaSockets has been\n designed and tested with the GNAT free software Ada compiler, but should be portable to\n@@ -113,15 +113,15 @@\n AdaSockets philosophy is to help the Ada programmer by providing easy-to-use objects.\n Special care has been taken to ensure that performances do however remain good.\n \n \f\f3\n \n 2 Installing AdaSockets\n Installing AdaSockets on a Unix or OpenVMS machine is as simple as typing a few commands. Once you got the latest version of AdaSockets (see Appendix B [Resources on\n-the Internet], page 29), uncompress and untar it and go to the top-level directory of the\n+the Internet], page 31), uncompress and untar it and go to the top-level directory of the\n distribution.\n You must configure the AdaSockets distribution by using the configure command, such\n as in:\n ./configure --prefix=/users/sam/adasockets\n If you want to install AdaSockets under the /usr/local hierarchy, you do not need to\n specify the --prefix option. Make sure you have write permission on the target directories.\n Once AdaSockets is configured, you can compile and install it by using the make command:\n@@ -241,39 +241,15 @@\n This procedure creates a new socket corresponding to an incoming connection\n on TCP socket Socket. All the communications with the peer will take place\n on New Socket, while the program can accept another connection on Socket.\n New Socket must not be initialized before calling this procedure, or must have\n been cleaned up by calling Shutdown, in order to avoid a file descriptors leak.\n Accept_Socket will block until an incoming connection is ready to be accepted.\n Example\n-declare\n-Sock\n-: Socket_FD;\n-Incoming : Socket_FD;\n-begin\n--- Create a TCP socket listening on local port 4161\n-Socket (Sock, PF_INET, SOCK_STREAM);\n-Bind (Sock, 4161);\n-Listen (Sock, 3);\n--- One-connection-at-a-time server (3 may be pending)\n-loop\n--- Wait for a new connection and accept it\n-Accept_Socket (Sock, Incoming);\n--- Do some dialog with the remote host\n-Do_Some_Dialog (Incoming);\n--- Close incoming socket and wait for next connection\n-Shutdown (Incoming);\n-end loop;\n-end;\n-\n-\f8\n-\n-AdaSockets reference manual\n-\n-See also [Bind (procedure)], page 8,\n+See also [Bind (procedure)], page 7,\n [Listen (procedure)], page 12,\n [Shutdown (procedure)], page 17,\n [Socket (procedure)], page 17.\n \n Bind (procedure)\n Purpose\n \n@@ -288,24 +264,28 @@\n Port\n Host\n \n in\n in\n in\n \n-[Sockets.Bind]\n-\n Initialized socket object\n Local port to bind to\n Local interface to bind to\n \n+[Sockets.Bind]\n+\n+\f8\n+\n+AdaSockets reference manual\n+\n Description\n This procedure requests a local port from the operating system. If 0 is given\n in Port, the system will assign a free port whose number can later be retrieved\n-using [Get Sock Port (function)], page 23. Also, most operating systems require\n+using [Get Sock Port (function)], page 25. Also, most operating systems require\n special privileges if you want to bind to ports below 1024.\n If Host is not the empty string, it must contain the IP address of a local interface\n to bind to, or a name which resolves into such an address. If an empty string\n is given (the default), the socket will be bound to all the available interfaces.\n Exceptions\n Socket_Error\n \n@@ -345,31 +325,31 @@\n Exceptions\n Connection_Refused\n Socket_Error\n \n The connection has been refused by the server\n Another error occurred during the connection\n \n-\fChapter 4: Sockets package\n-\n-9\n-\n Example\n declare\n-Sock : Multicast_Socket_FD;\n+Sock : Socket_FD;\n begin\n--- Create a multicast socket on group 224.1.2.3 port 8763\n-Sock := Create_Multicast_Socket (\"224.1.2.3\", 8763);\n--- Perform some operations on socket\n+-- Create a TCP socket\n+Socket (Sock, PF_INET, SOCK_STREAM);\n+-- Connect it to rfc1149.net\u2019s mail server\n+Connect (Sock, \"mail.rfc1149.net\", 25);\n+-- Do a mail transaction then close the socket\n [...]\n--- Shutdown the socket in both directions\n-Shutdown (Sock, Both);\n end;\n See also [Socket (procedure)], page 17.\n \n+\fChapter 4: Sockets package\n+\n+9\n+\n Get (function)\n Purpose\n \n Get a string from a remote host\n \n Prototype\n \n@@ -415,33 +395,33 @@\n \n in\n \n [Sockets.Get Char]\n \n Initialized and connected socket object\n \n-\f10\n-\n-AdaSockets reference manual\n-\n Return value\n One character sent by the remote host\n Description\n This function receives exactly one character from the remote host.\n Exceptions\n Connection_Closed\n \n Peer has closed the connection before sending the character\n \n See also [Get (function)], page 9,\n [Get Line (function)], page 10,\n [Get Line (procedure)], page 10,\n-[Receive (procedure)], page 15,\n+[Receive (procedure)], page 14,\n [Set Buffer (procedure)], page 16.\n \n+\f10\n+\n+AdaSockets reference manual\n+\n Get Line (function)\n Purpose\n \n Get a whole line from a remote host\n \n Prototype\n \n@@ -473,26 +453,22 @@\n Connection_Closed\n \n Peer has closed the connection before sending a whole line\n \n See also [Get (function)], page 9,\n [Get Char (function)], page 9,\n [Get Line (procedure)], page 10,\n-[Receive (procedure)], page 15,\n+[Receive (procedure)], page 14,\n [Set Buffer (procedure)], page 16.\n \n Get Line (procedure)\n Purpose\n \n Get a whole line from a remote host\n \n-\fChapter 4: Sockets package\n-\n-11\n-\n Prototype\n \n procedure Get_Line (Socket : Socket FD\u2019Class;\n Str : in out String; Last : out Natural);\n Parameters\n Socket\n Str\n@@ -514,18 +490,22 @@\n are stripped before the line is returned.\n This procedure blocks until one full line has been received.\n Exceptions\n Connection_Closed\n \n Peer has closed the connection before sending a whole line\n \n+\fChapter 4: Sockets package\n+\n+11\n+\n See also [Get (function)], page 9,\n [Get Char (function)], page 9,\n [Get Line (function)], page 10,\n-[Receive (procedure)], page 15,\n+[Receive (procedure)], page 14,\n [Set Buffer (procedure)], page 16.\n \n Get Receive Queue Size (function)\n Purpose\n \n Return the size of the unread data in the input queue\n \n@@ -544,25 +524,21 @@\n Initialized and connected socket object\n \n Return value\n The non-negative size in bytes of the input queue\n Description\n This function is only available on Linux platforms. On other operating systems, it will return -2 to indicate that the necessary mechanisms to retrieve the\n information are not available.\n-See also [Receive (procedure)], page 15.\n+See also [Receive (procedure)], page 14.\n \n Get Send Queue Size (function)\n Purpose\n \n Return the size of the unsent data in the output queue\n \n-\f12\n-\n-AdaSockets reference manual\n-\n Prototype\n \n function Get_Send_Queue_Size\n (Socket : Socket FD\u2019Class)\n return Integer;\n Parameters\n Socket\n@@ -574,21 +550,25 @@\n Initialized and connected socket object\n \n Return value\n The non-negative size in bytes of the output queue\n Description\n This function is only available on Linux platforms. On other operating systems, it will return -2 to indicate that the necessary mechanisms to retrieve the\n information are not available.\n-See also [Send (procedure)], page 16.\n+See also [Send (procedure)], page 15.\n \n Getsockopt (procedure)\n Purpose\n \n Retrieve a socket option\n \n+\f12\n+\n+AdaSockets reference manual\n+\n Prototype\n \n procedure Getsockopt (Socket : Socket FD;\n [Sockets.Getsockopt]\n Level : Socket Level := SOL SOCKET;\n Optname : Socket Option; Optval : out Integer);\n Parameters\n@@ -624,45 +604,42 @@\n \n Prototype\n \n procedure Listen (Socket : Socket FD;\n Queue_Size : Positive := 5);\n Parameters\n Socket\n+Queue Size\n \n in\n+in\n \n [Sockets.Listen]\n \n Initialized and bound socket object\n-\n-\fChapter 4: Sockets package\n-\n-Queue Size\n-\n-13\n-\n-in\n-\n Requested slots in the listen queue\n \n Description\n This procedure establishes a listen queue after a TCP socket as been initialized\n and bound. Each slot in the queue can hold one incoming connection that has\n not been accepted yet. Note that most operating systems ignore queue sizes\n larger than five.\n See also [Accept Socket (procedure)], page 7,\n-[Bind (procedure)], page 8,\n+[Bind (procedure)], page 7,\n [Socket (procedure)], page 17.\n \n New Line (procedure)\n Purpose\n \n Send a CR/LF to a remote host\n \n+\fChapter 4: Sockets package\n+\n+13\n+\n Prototype\n \n procedure New_Line (Socket : Socket FD\u2019Class;\n Count : Natural := 1);\n Parameters\n Socket\n Count\n@@ -679,15 +656,15 @@\n This procedure sends one or more CR/LF combinations to the peer.\n Exceptions\n Connection_Closed\n \n Peer has prematurely closed the connection\n \n See also [Put (procedure)], page 13,\n-[Put Line (procedure)], page 14.\n+[Put Line (procedure)], page 13.\n \n Put (procedure)\n Purpose\n \n Send a string to a remote host\n \n Prototype\n@@ -709,21 +686,17 @@\n Description\n This procedure sends the content of Str over an outgoing or incoming socket.\n Exceptions\n Connection_Closed\n \n Peer has prematurely closed the connection\n \n-See also [New Line (procedure)], page 13,\n-[Put Line (procedure)], page 14,\n-[Send (procedure)], page 16.\n-\n-\f14\n-\n-AdaSockets reference manual\n+See also [New Line (procedure)], page 12,\n+[Put Line (procedure)], page 13,\n+[Send (procedure)], page 15.\n \n Put Line (procedure)\n Purpose\n \n Send a CR/LF terminated string to a remote host\n \n Prototype\n@@ -741,22 +714,27 @@\n \n Initialized and connected socket object\n String to send\n \n Description\n This procedure sends the content of Str plus a CR/LF combination over an\n outgoing or incoming socket.\n+\n+\f14\n+\n+AdaSockets reference manual\n+\n Exceptions\n Connection_Closed\n \n Peer has prematurely closed the connection\n \n-See also [New Line (procedure)], page 13,\n+See also [New Line (procedure)], page 12,\n [Put (procedure)], page 13,\n-[Send (procedure)], page 16.\n+[Send (procedure)], page 15.\n \n Receive (function)\n Purpose\n \n Receive raw data over a socket\n \n Prototype\n@@ -782,23 +760,19 @@\n socket. Only one system call will be performed; this function will return whatever data has arrived. Note that in GNAT the secondary stack may be used to\n store the data and may result in stack storage exhaustion.\n Exceptions\n Connection_Closed\n \n Peer has closed the connection before sending any data\n \n-See also [Receive (procedure)], page 15,\n+See also [Receive (procedure)], page 14,\n [Receive Some (procedure)], page 15,\n [Get Line (function)], page 10,\n [Get Line (procedure)], page 10.\n \n-\fChapter 4: Sockets package\n-\n-15\n-\n Receive (procedure)\n Purpose\n \n Receive raw data over a socket\n \n Prototype\n \n@@ -820,14 +794,18 @@\n socket. It will block until the Data reception buffer has been totally filled.\n Exceptions\n Connection_Closed\n \n Peer has closed the connection before Data\u2019Length bytes\n were received\n \n+\fChapter 4: Sockets package\n+\n+15\n+\n See also [Get Line (function)], page 10,\n [Get Line (procedure)], page 10,\n [Receive (function)], page 14,\n [Receive Some (procedure)], page 15.\n \n Receive Some (procedure)\n Purpose\n@@ -862,19 +840,15 @@\n Connection_Closed\n \n Peer has closed the connection before sending any data\n \n See also [Get Line (function)], page 10,\n [Get Line (procedure)], page 10,\n [Receive (function)], page 14,\n-[Receive (procedure)], page 15.\n-\n-\f16\n-\n-AdaSockets reference manual\n+[Receive (procedure)], page 14.\n \n Send (procedure)\n Purpose\n \n Send raw data over a socket\n \n Prototype\n@@ -897,25 +871,28 @@\n socket.\n Exceptions\n Connection_Closed\n \n Peer has prematurely closed the connection\n \n See also [Put (procedure)], page 13,\n-[Put Line (procedure)], page 14.\n+[Put Line (procedure)], page 13.\n+\n+\f16\n+\n+AdaSockets reference manual\n \n Set Buffer (procedure)\n Purpose\n \n Install a line-oriented buffer of the socket object\n \n Prototype\n-\n-procedure Set_Buffer\n [Sockets.Set Buffer]\n+procedure Set_Buffer\n (Socket : Socket FD\u2019Class; Length : Positive := 1500);\n Parameters\n Socket\n Length\n \n in\n in\n@@ -934,18 +911,14 @@\n See also [Unset Buffer (procedure)], page 18.\n \n Setsockopt (procedure)\n Purpose\n \n Set a socket option\n \n-\fChapter 4: Sockets package\n-\n-17\n-\n Prototype\n \n procedure Setsockopt (Socket : Socket FD;\n [Sockets.Setsockopt]\n Level : Socket Level := SOL SOCKET;\n Optname : Socket Option; Optval : Integer);\n Parameters\n@@ -969,15 +942,19 @@\n system manual for usable levels and options.\n Two levels are defined: SOL_SOCKET (the default) and IPPROTO_IP. The options\n are SO_REUSEADDR, SO_REUSEPORT, IP_MULTICAST_TTL, IP_ADD_MEMBERSHIP,\n IP_DROP_MEMBERSHIP, IP_MULTICAST_LOOP, SO_SNDBUF and IP_RCVBUF.\n Note that unlike their C language counterpart, Getsockopt and Setsockopt\n do not require an extra parameter representing the length in bytes of the option\n value. AdaSockets nows the right size for every option.\n-See also [Getsockopt (procedure)], page 12.\n+See also [Getsockopt (procedure)], page 11.\n+\n+\fChapter 4: Sockets package\n+\n+17\n \n Shutdown (procedure)\n Purpose\n \n Shutdown a socket\n \n Prototype\n@@ -1015,24 +992,20 @@\n Domain\n Typ\n \n out\n in\n in\n \n+[Sockets.Socket]\n+\n Socket object to initialize\n Protocol family\n Kind of sockets\n \n-[Sockets.Socket]\n-\n-\f18\n-\n-AdaSockets reference manual\n-\n Description\n This procedure initializes a new socket object by reserving a file descriptor to\n the operating system. For backward compatibility with older versions of this\n library, AF_INET is still accepted as a value but should be replaced as soon as\n possible with the proper PF_INET. Using SOCK_STREAM for the Typ argument\n will create a TCP socket while a SOCK_DGRAM will create a UDP one.\n Example\n@@ -1044,14 +1017,18 @@\n -- Perform some operations on socket\n [...]\n -- Shutdown the socket in both directions\n Shutdown (Sock, Both);\n end;\n See also [Shutdown (procedure)], page 17.\n \n+\f18\n+\n+AdaSockets reference manual\n+\n Unset Buffer (procedure)\n Purpose\n \n Deinstall the line-oriented buffer of the socket object\n \n Prototype\n \n@@ -1077,26 +1054,25 @@\n \n type Multicast_Socket_FD is new\n Socket FD with private;\n \n [Sockets.Multicast.Multicast Socket FD]\n \n The Multicast_Socket_FD tagged type derives from the Socket_FD type. It gets\n-initialized by calling [Create Multicast Socket (function)], page 19. An uninitialized\n+initialized by calling [Create Multicast Socket (function)], page 20. An uninitialized\n Multicast_Socket_FD can be succesfully compared to Null_Multicast_Socket_FD.\n \n Create Multicast Socket (function)\n Purpose\n \n Create an IP multicast socket\n \n Prototype\n-\n-function\n [Sockets.Multicast.Create Multicast Socket]\n+function\n Create_Multicast_Socket (Group : String; Port : Natural;\n TTL : Positive := 16; Self_Loop : Boolean := True;\n Local_If : String := 0.0.0.0)\n return Multicast Socket FD;\n Parameters\n Group\n Port\n@@ -1124,26 +1100,46 @@\n Be careful when choosing the TTL parameter of your IP multicast socket. Most\n IP multicast routers do implement threshold-based filtering and will not let IP\n multicast packets leave your organization if the TTL on the last router is smaller\n than 16.\n If 0 is given for the Port, a local one will be chosen. It can then later be retrieved\n using Get Sock Port.\n Example\n-See also [Send (procedure)], page 16,\n+declare\n+Sock\n+: Socket_FD;\n+Incoming : Socket_FD;\n+begin\n+-- Create a TCP socket listening on local port 4161\n+Socket (Sock, PF_INET, SOCK_STREAM);\n+Bind (Sock, 4161);\n+Listen (Sock, 3);\n+\n+\f20\n+\n+AdaSockets reference manual\n+\n+-- One-connection-at-a-time server (3 may be pending)\n+loop\n+-- Wait for a new connection and accept it\n+Accept_Socket (Sock, Incoming);\n+-- Do some dialog with the remote host\n+Do_Some_Dialog (Incoming);\n+-- Close incoming socket and wait for next connection\n+Shutdown (Incoming);\n+end loop;\n+end;\n+See also [Send (procedure)], page 15,\n [Shutdown (procedure)], page 17.\n \n Create Multicast Socket (function)\n Purpose\n \n Create an IP multicast socket\n \n-\f20\n-\n-AdaSockets reference manual\n-\n Prototype\n \n function\n [Sockets.Multicast.Create Multicast Socket]\n Create_Multicast_Socket (Group : String; Port : Positive;\n Local_Port : Natural; TTL : Positive := 16;\n Local_If : String := 0.0.0.0)\n@@ -1171,18 +1167,33 @@\n The new initialized multicast socket\n Description\n This function creates an IP multicast socket attached to a given group, identified by its class E IP address and port. If Local Port is 0, a free port will\n automatically be chosen by your operating system.\n This function should be used when you want to send packets to a multicast\n group without receiving any packet yourself.\n Example\n-See also [Send (procedure)], page 16,\n+declare\n+Sock : Socket_FD;\n+begin\n+-- Create a TCP socket\n+Socket (Sock, PF_INET, SOCK_STREAM);\n+-- Connect it to rfc1149.net\u2019s mail server\n+Connect (Sock, \"mail.rfc1149.net\", 25);\n+\n+\fChapter 5: Sockets.Multicast package\n+\n+-- Do a mail transaction then close the socket\n+[...]\n+end;\n+See also [Send (procedure)], page 15,\n [Shutdown (procedure)], page 17.\n \n-\f21\n+21\n+\n+\f\f23\n \n 6 Sockets.Naming package\n The Sockets.Naming package contains types and helper functions needed to manipulate\n Internet host names and addresses.\n \n type Address is record\n H1, H2, H3, H4 : Address Component;\n@@ -1251,17 +1262,17 @@\n Return value\n IPv4 address\n Exceptions\n Naming_Error\n \n No information available for this name or address\n \n-See also [Name Of (function)], page 24.\n+See also [Name Of (function)], page 26.\n \n-\f22\n+\f24\n \n AdaSockets reference manual\n \n Any Address (function)\n Purpose\n \n Special address representing any address on the local host\n@@ -1290,16 +1301,16 @@\n \n [Sockets.Naming.Get Peer Addr]\n \n Connected socket object\n \n Return value\n Peer address\n-See also [Get Peer Port (function)], page 22,\n-[Get Sock Addr (function)], page 22.\n+See also [Get Peer Port (function)], page 24,\n+[Get Sock Addr (function)], page 24.\n \n Get Peer Port (function)\n Purpose\n \n Retrieve port used by remote host\n \n Prototype\n@@ -1314,16 +1325,16 @@\n \n [Sockets.Naming.Get Peer Port]\n \n Connected socket object\n \n Return value\n Port used on the remote host\n-See also [Get Sock Port (function)], page 23,\n-[Get Peer Addr (function)], page 22.\n+See also [Get Sock Port (function)], page 25,\n+[Get Peer Addr (function)], page 24.\n \n Get Sock Addr (function)\n Purpose\n \n Retrieve IP address of local host\n \n Prototype\n@@ -1338,20 +1349,20 @@\n \n [Sockets.Naming.Get Sock Addr]\n \n Connected socket object\n \n \fChapter 6: Sockets.Naming package\n \n-23\n+25\n \n Return value\n Address of local interface used\n-See also [Get Sock Port (function)], page 23,\n-[Get Peer Addr (function)], page 22.\n+See also [Get Sock Port (function)], page 25,\n+[Get Peer Addr (function)], page 24.\n \n Get Sock Port (function)\n Purpose\n \n Retrieve port used by local host\n \n Prototype\n@@ -1366,16 +1377,16 @@\n \n [Sockets.Naming.Get Sock Port]\n \n Connected socket object\n \n Return value\n Port used on the local host\n-See also [Get Peer Port (function)], page 22,\n-[Get Sock Addr (function)], page 22.\n+See also [Get Peer Port (function)], page 24,\n+[Get Sock Addr (function)], page 24.\n \n Host Name (function)\n Purpose\n \n Get the name of the current host\n \n Prototype\n@@ -1403,19 +1414,19 @@\n \n in\n \n IP address\n \n Return value\n String representation of the IP address\n-See also [Value (function)], page 25.\n+See also [Value (function)], page 27.\n \n [Sockets.Naming.Image]\n \n-\f24\n+\f26\n \n AdaSockets reference manual\n \n Info Of Name Or IP (function)\n Purpose\n \n Get addresses and names of a host\n@@ -1486,19 +1497,19 @@\n Return value\n Name of the host\n Exceptions\n Naming_Error\n \n No information available for this name or address\n \n-See also [Address Of (function)], page 21.\n+See also [Address Of (function)], page 23.\n \n \fChapter 6: Sockets.Naming package\n \n-25\n+27\n \n Value (function)\n Purpose\n \n Transform a string into an address\n \n Prototype\n@@ -1508,21 +1519,21 @@\n Parameters\n Add\n \n in\n \n Return value\n Corresponding Address\n-See also [Image (function)], page 23.\n+See also [Image (function)], page 25.\n \n [Sockets.Naming.Value]\n \n Textual representation of an IP address\n \n-\f\f27\n+\f\f29\n \n Appendix A Contributors\n AdaSockets has been originally developped by Samuel Tardieu who still maintains it. However, the following people have made crucial contributions to AdaSockets, be they new code,\n bug fixes or porting to new operating systems:\n \u2022 Dmitriy Anisimkov (anisimkov@yahoo.com)\n \u2022 Alan Barnes (barnesa@aston.ac.uk)\n \u2022 Juanma Barranquero (lektu@terra.es)\n@@ -1539,213 +1550,213 @@\n \u2022 Thomas Quinot (thomas@cuivre.fr.eu.org)\n \u2022 Preben Randhol (randhol@pvv.org)\n \u2022 Maxim Reznik (max1@mbank.com.ua)\n \u2022 Joel Sherrill (joel.sherrill@oarcorp.com)\n \u2022 Samuel Tardieu (sam@rfc1149.net)\n If you feel that you have been forgotten, please send me a mail so that I can fix it in the\n next version.\n-See Appendix B [Resources on the Internet], page 29, for how to contribute.\n+See Appendix B [Resources on the Internet], page 31, for how to contribute.\n \n-\f\f29\n+\f\f31\n \n Appendix B Resources on the Internet\n The latest version of AdaSockets can always be found at:\n http://www.rfc1149.net/devel/adasockets\n You can report issues or submit questions on GitHub\u2019s issue tracker at:\n https://github.com/samueltardieu/adasockets/issues\n \n-\f\f31\n+\f\f33\n \n Index\n A\n \n G\n \n Accept_Socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n Accepting a new connection . . . . . . . . . . . . . . . . . . . . . 7\n-Ada.Streams.Stream_Element_Array . . 6, 14, 15, 16\n+Ada.Streams.Stream_Element_Array . . . . 6, 14, 15\n Ada.Streams.Stream_Element_Count . . . . . . . 14, 15\n AdaSockets presentation . . . . . . . . . . . . . . . . . . . . . . . . 1\n-Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\n-Address_Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\n-Address_Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\n-Address_Of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\n-AF_INET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\n-Any_Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\n-Assigning a local port . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n+Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+Address_Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+Address_Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+Address_Of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+AF_INET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n+Any_Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+Assigning a local port . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n \n Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\n Get_Char . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\n-Get_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10, 11\n-Get_Peer_Addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\n-Get_Peer_Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\n+Get_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10\n+Get_Peer_Addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+Get_Peer_Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n Get_Receive_Queue_Size . . . . . . . . . . . . . . . . . . . . . . 11\n-Get_Send_Queue_Size. . . . . . . . . . . . . . . . . . . . . . . . . . 12\n-Get_Sock_Addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22\n-Get_Sock_Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+Get_Send_Queue_Size. . . . . . . . . . . . . . . . . . . . . . . . . . 11\n+Get_Sock_Addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+Get_Sock_Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\n Getsockopt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\n Group communication . . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n \n H\n B\n-Bind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n-Binding a socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n+Bind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n+Binding a socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n Both . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n \n Handling a new connection . . . . . . . . . . . . . . . . . . . . . . 7\n-Host_Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\n-Host_Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+Host_Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+Host_Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\n \n I\n C\n Closing a socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n Comparaison with GNAT.Sockets . . . . . . . . . . . . . . . . 1\n Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n Connecting a socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n-Connection_Closed . . . . . . . 9, 10, 11, 13, 14, 15, 16\n+Connection_Closed . . . . . . . . . . . . . . 9, 10, 13, 14, 15\n Connection_Refused . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n-Contributing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27, 29\n+Contributing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29, 31\n Create_Multicast_Socket . . . . . . . . . . . . . . . 5, 19, 20\n-Creating a multicast socket . . . . . . . . . . . . . . . . . . 5, 19\n-Creating a server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n-Creating a socket . . . . . . . . . . . . . . . . . . . . . . . . 5, 17, 19\n+Creating a multicast socket . . . . . . . . . . . . . . 5, 19, 20\n+Creating a server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n+Creating a socket. . . . . . . . . . . . . . . . . . . . . 5, 17, 19, 20\n Creating a TCP socket . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n Creating a UDP socket . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n Creating a unicast socket . . . . . . . . . . . . . . . . . . . . . . . . 5\n-CR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10, 11, 13\n+CR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10, 13\n \n-Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n-Info_Of_Name_Or_IP . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\n+Info_Of_Name_Or_IP . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\n Installing AdaSockets . . . . . . . . . . . . . . . . . . . . . . . . . . . 3\n-IP_ADD_MEMBERSHIP . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-IP_DROP_MEMBERSHIP . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-IP_MULTICAST_LOOP . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-IP_MULTICAST_TTL . . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-IPPROTO_IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-Is_IP_Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n+IP_ADD_MEMBERSHIP . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+IP_DROP_MEMBERSHIP . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+IP_MULTICAST_LOOP . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+IP_MULTICAST_TTL . . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+IPPROTO_IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+Is_IP_Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\n \n L\n-LF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10, 11, 13\n+LF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10, 13\n Listen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\n Listen queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\n \n M\n E\n Establishing a listen queue . . . . . . . . . . . . . . . . . . . . . 12\n \n-Manipulating socket options . . . . . . . . . . . . . . . . 12, 16\n+Manipulating socket options . . . . . . . . . . . . . . . . 11, 16\n Mbone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n Multicast sockets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n Multicast_Socket_FD . . . . . . . . . . . . . . . . . . . . . . . 5, 19\n \n F\n \n N\n \n-Finding AdaSockets on the Internet . . . . . . . . . . . . 29\n+Finding AdaSockets on the Internet . . . . . . . . . . . . 31\n \n-Name_Of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24\n-Naming_Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21, 24\n+Name_Of . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26\n+Naming_Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23, 26\n New_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n \n-\f32\n+\f34\n \n AdaSockets reference manual\n \n P\n \n Sockets.Multicast.Create_\n Multicast_Socket . . . . . . . . . . . . . . . . . . . . . 5, 19, 20\n-Sockets.Naming.Address_Of . . . . . . . . . . . . . . . . . . . 21\n-Sockets.Naming.Any_Address. . . . . . . . . . . . . . . . . . 22\n-Sockets.Naming.Get_Peer_Addr . . . . . . . . . . . . . . . 22\n-Sockets.Naming.Get_Peer_Port . . . . . . . . . . . . . . . 22\n-Sockets.Naming.Get_Sock_Addr . . . . . . . . . . . . . . . 22\n-Sockets.Naming.Get_Sock_Port . . . . . . . . . . . . . . . 23\n-Sockets.Naming.Host_Name . . . . . . . . . . . . . . . . . . . . 23\n-Sockets.Naming.Image . . . . . . . . . . . . . . . . . . . . . . . . 23\n-Sockets.Naming.Info_Of_Name_Or_IP . . . . . . . . . 24\n-Sockets.Naming.Is_IP_Address . . . . . . . . . . . . . . . 24\n-Sockets.Naming.Name_Of . . . . . . . . . . . . . . . . . . . . . . 24\n-Sockets.Naming.Value . . . . . . . . . . . . . . . . . . . . . . . . 25\n+Sockets.Naming.Address_Of . . . . . . . . . . . . . . . . . . . 23\n+Sockets.Naming.Any_Address. . . . . . . . . . . . . . . . . . 24\n+Sockets.Naming.Get_Peer_Addr . . . . . . . . . . . . . . . 24\n+Sockets.Naming.Get_Peer_Port . . . . . . . . . . . . . . . 24\n+Sockets.Naming.Get_Sock_Addr . . . . . . . . . . . . . . . 24\n+Sockets.Naming.Get_Sock_Port . . . . . . . . . . . . . . . 25\n+Sockets.Naming.Host_Name . . . . . . . . . . . . . . . . . . . . 25\n+Sockets.Naming.Image . . . . . . . . . . . . . . . . . . . . . . . . 25\n+Sockets.Naming.Info_Of_Name_Or_IP . . . . . . . . . 26\n+Sockets.Naming.Is_IP_Address . . . . . . . . . . . . . . . 26\n+Sockets.Naming.Name_Of . . . . . . . . . . . . . . . . . . . . . . 26\n+Sockets.Naming.Value . . . . . . . . . . . . . . . . . . . . . . . . 27\n Sockets.New_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n Sockets.Put . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n-Sockets.Put_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14\n-Sockets.Receive. . . . . . . . . . . . . . . . . . . . . . . . . . . 14, 15\n+Sockets.Put_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n+Sockets.Receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14\n Sockets.Receive_Some . . . . . . . . . . . . . . . . . . . . . . . . 15\n-Sockets.Send . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n+Sockets.Send . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15\n Sockets.Set_Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n-Sockets.Setsockopt . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n+Sockets.Setsockopt . . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n Sockets.Shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n-Sockets.SO_RCVBUF . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-Sockets.SO_REUSEADDR . . . . . . . . . . . . . . . . . . . . . 12, 17\n-Sockets.SO_REUSEPORT . . . . . . . . . . . . . . . . . . . . . 12, 17\n-Sockets.SO_SNDBUF . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n+Sockets.SO_RCVBUF . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+Sockets.SO_REUSEADDR . . . . . . . . . . . . . . . . . . . . . 12, 16\n+Sockets.SO_REUSEPORT . . . . . . . . . . . . . . . . . . . . . 12, 16\n+Sockets.SO_SNDBUF . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n Sockets.Socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5, 17\n-Sockets.SOL_SOCKET . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n+Sockets.SOL_SOCKET . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n Sockets.Unset_Buffer . . . . . . . . . . . . . . . . . . . . . . . . 18\n-SOL_SOCKET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-Stream_Element_Array . . . . . . . . . . . . . . . 6, 14, 15, 16\n+SOL_SOCKET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+Stream_Element_Array . . . . . . . . . . . . . . . . . . 6, 14, 15\n Stream_Element_Count . . . . . . . . . . . . . . . . . . . . . 14, 15\n-String_Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\n-String_Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21\n-Suggesting a feature . . . . . . . . . . . . . . . . . . . . . . . . . . . 29\n+String_Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+String_Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23\n+Suggesting a feature . . . . . . . . . . . . . . . . . . . . . . . . . . . 31\n \n-PF_INET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\n+PF_INET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n Put . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n-Put_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14\n+Put_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13\n \n R\n Raw data manipulation . . . . . . . . . . . . . . . . . . . . . . . . . 6\n-Receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14, 15, 17\n+Receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14, 17\n Receive_Some . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15\n Receiving data . . . . . . . . . . 6, 9, 10, 11, 14, 15, 16, 18\n-Reporting a bug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29\n-Representing IP addresses . . . . . . . . . . . . . . . . . . 23, 25\n-Retrieving socket options. . . . . . . . . . . . . . . . . . . . . . . 12\n+Reporting a bug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31\n+Representing IP addresses . . . . . . . . . . . . . . . . . . 25, 27\n+Retrieving socket options. . . . . . . . . . . . . . . . . . . . . . . 11\n \n S\n-Send . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16, 17\n-Sending data . . . . . . . . . . . . . . . . . . . . . 6, 11, 13, 14, 16\n-Sending patches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29\n+Send . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15, 17\n+Sending data . . . . . . . . . . . . . . . . . . . . . 6, 11, 12, 13, 15\n+Sending patches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31\n Set_Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n-Setsockopt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n+Setsockopt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n Setting socket options . . . . . . . . . . . . . . . . . . . . . . . . . . 16\n Shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n-SO_RCVBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-SO_REUSEADDR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-SO_REUSEPORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-SO_SNDBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n-SOCK_DGRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\n-SOCK_STREAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\n+SO_RCVBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+SO_REUSEADDR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+SO_REUSEPORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+SO_SNDBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n+SOCK_DGRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n+SOCK_STREAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n Socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5, 17\n Socket shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17\n Socket_Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n Socket_FD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5, 7\n Sockets.Accept_Socket . . . . . . . . . . . . . . . . . . . . . . . . 7\n-Sockets.Bind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n+Sockets.Bind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7\n Sockets.Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8\n Sockets.Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\n Sockets.Get_Char . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9\n-Sockets.Get_Line . . . . . . . . . . . . . . . . . . . . . . . . . 10, 11\n+Sockets.Get_Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10\n Sockets.Get_Receive_Queue_Size . . . . . . . . . . . . . 11\n-Sockets.Get_Send_Queue_Size . . . . . . . . . . . . . . . . 12\n+Sockets.Get_Send_Queue_Size . . . . . . . . . . . . . . . . 11\n Sockets.Getsockopt . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\n-Sockets.IP_ADD_MEMBERSHIP . . . . . . . . . . . . . . . 12, 17\n-Sockets.IP_DROP_MEMBERSHIP . . . . . . . . . . . . . . 12, 17\n-Sockets.IP_MULTICAST_LOOP . . . . . . . . . . . . . . . 12, 17\n-Sockets.IP_MULTICAST_TTL . . . . . . . . . . . . . . . . 12, 17\n-Sockets.IPPROTO_IP . . . . . . . . . . . . . . . . . . . . . . . 12, 17\n+Sockets.IP_ADD_MEMBERSHIP . . . . . . . . . . . . . . . 12, 16\n+Sockets.IP_DROP_MEMBERSHIP . . . . . . . . . . . . . . 12, 16\n+Sockets.IP_MULTICAST_LOOP . . . . . . . . . . . . . . . 12, 16\n+Sockets.IP_MULTICAST_TTL . . . . . . . . . . . . . . . . 12, 16\n+Sockets.IPPROTO_IP . . . . . . . . . . . . . . . . . . . . . . . 12, 16\n Sockets.Listen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12\n \n T\n TCP socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n \n U\n UDP socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n Unicast sockets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5\n Unset_Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18\n \n V\n-Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25\n+Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27\n \n \f\n"}]}]}, {"source1": "./usr/share/info/adasockets.info.gz", "source2": "./usr/share/info/adasockets.info.gz", "unified_diff": null, "details": [{"source1": "adasockets.info", "source2": "adasockets.info", "has_internal_linenos": true, "unified_diff": "@@ -739,4076 +739,4195 @@\n 00002e20: 746f 7273 206c 6561 6b2e 0a0a 2020 2020 tors leak... \n 00002e30: 2027 4163 6365 7074 5f53 6f63 6b65 7427 'Accept_Socket'\n 00002e40: 2077 696c 6c20 626c 6f63 6b20 756e 7469 will block unti\n 00002e50: 6c20 616e 2069 6e63 6f6d 696e 6720 636f l an incoming co\n 00002e60: 6e6e 6563 7469 6f6e 2069 7320 7265 6164 nnection is read\n 00002e70: 7920 746f 0a20 2020 2020 6265 2061 6363 y to. be acc\n 00002e80: 6570 7465 642e 0a0a 4558 414d 504c 450a epted...EXAMPLE.\n-00002e90: 2020 2020 2020 2020 2020 6465 636c 6172 declar\n-00002ea0: 650a 2020 2020 2020 2020 2020 2020 2053 e. S\n-00002eb0: 6f63 6b20 2020 2020 3a20 536f 636b 6574 ock : Socket\n-00002ec0: 5f46 443b 0a20 2020 2020 2020 2020 2020 _FD;. \n-00002ed0: 2020 496e 636f 6d69 6e67 203a 2053 6f63 Incoming : Soc\n-00002ee0: 6b65 745f 4644 3b0a 2020 2020 2020 2020 ket_FD;. \n-00002ef0: 2020 6265 6769 6e0a 2020 2020 2020 2020 begin. \n-00002f00: 2020 2020 202d 2d20 4372 6561 7465 2061 -- Create a\n-00002f10: 2054 4350 2073 6f63 6b65 7420 6c69 7374 TCP socket list\n-00002f20: 656e 696e 6720 6f6e 206c 6f63 616c 2070 ening on local p\n-00002f30: 6f72 7420 3431 3631 0a20 2020 2020 2020 ort 4161. \n-00002f40: 2020 2020 2020 536f 636b 6574 2028 536f Socket (So\n-00002f50: 636b 2c20 5046 5f49 4e45 542c 2053 4f43 ck, PF_INET, SOC\n-00002f60: 4b5f 5354 5245 414d 293b 0a20 2020 2020 K_STREAM);. \n-00002f70: 2020 2020 2020 2020 4269 6e64 2028 536f Bind (So\n-00002f80: 636b 2c20 3431 3631 293b 0a20 2020 2020 ck, 4161);. \n-00002f90: 2020 2020 2020 2020 4c69 7374 656e 2028 Listen (\n-00002fa0: 536f 636b 2c20 3329 3b0a 2020 2020 2020 Sock, 3);. \n-00002fb0: 2020 2020 2020 202d 2d20 4f6e 652d 636f -- One-co\n-00002fc0: 6e6e 6563 7469 6f6e 2d61 742d 612d 7469 nnection-at-a-ti\n-00002fd0: 6d65 2073 6572 7665 7220 2833 206d 6179 me server (3 may\n-00002fe0: 2062 6520 7065 6e64 696e 6729 0a20 2020 be pending). \n-00002ff0: 2020 2020 2020 2020 2020 6c6f 6f70 0a20 loop. \n-00003000: 2020 2020 2020 2020 2020 2020 2020 202d -\n-00003010: 2d20 5761 6974 2066 6f72 2061 206e 6577 - Wait for a new\n-00003020: 2063 6f6e 6e65 6374 696f 6e20 616e 6420 connection and \n-00003030: 6163 6365 7074 2069 740a 2020 2020 2020 accept it. \n-00003040: 2020 2020 2020 2020 2020 4163 6365 7074 Accept\n-00003050: 5f53 6f63 6b65 7420 2853 6f63 6b2c 2049 _Socket (Sock, I\n-00003060: 6e63 6f6d 696e 6729 3b0a 2020 2020 2020 ncoming);. \n-00003070: 2020 2020 2020 2020 2020 2d2d 2044 6f20 -- Do \n-00003080: 736f 6d65 2064 6961 6c6f 6720 7769 7468 some dialog with\n-00003090: 2074 6865 2072 656d 6f74 6520 686f 7374 the remote host\n-000030a0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-000030b0: 2044 6f5f 536f 6d65 5f44 6961 6c6f 6720 Do_Some_Dialog \n-000030c0: 2849 6e63 6f6d 696e 6729 3b0a 2020 2020 (Incoming);. \n-000030d0: 2020 2020 2020 2020 2020 2020 2d2d 2043 -- C\n-000030e0: 6c6f 7365 2069 6e63 6f6d 696e 6720 736f lose incoming so\n-000030f0: 636b 6574 2061 6e64 2077 6169 7420 666f cket and wait fo\n-00003100: 7220 6e65 7874 2063 6f6e 6e65 6374 696f r next connectio\n-00003110: 6e0a 2020 2020 2020 2020 2020 2020 2020 n. \n-00003120: 2020 5368 7574 646f 776e 2028 496e 636f Shutdown (Inco\n-00003130: 6d69 6e67 293b 0a20 2020 2020 2020 2020 ming);. \n-00003140: 2020 2020 656e 6420 6c6f 6f70 3b0a 2020 end loop;. \n-00003150: 2020 2020 2020 2020 656e 643b 0a0a 5345 end;..SE\n-00003160: 4520 414c 534f 0a20 2020 2020 2a6e 6f74 E ALSO. *not\n-00003170: 6520 4269 6e64 2028 7072 6f63 6564 7572 e Bind (procedur\n-00003180: 6529 3a3a 2c0a 2020 2020 202a 6e6f 7465 e)::,. *note\n-00003190: 204c 6973 7465 6e20 2870 726f 6365 6475 Listen (procedu\n-000031a0: 7265 293a 3a2c 0a20 2020 2020 2a6e 6f74 re)::,. *not\n-000031b0: 6520 5368 7574 646f 776e 2028 7072 6f63 e Shutdown (proc\n-000031c0: 6564 7572 6529 3a3a 2c0a 2020 2020 202a edure)::,. *\n-000031d0: 6e6f 7465 2053 6f63 6b65 7420 2870 726f note Socket (pro\n-000031e0: 6365 6475 7265 293a 3a2e 0a0a 2a20 4d65 cedure)::...* Me\n-000031f0: 6e75 3a0a 0a2a 2042 696e 6420 2870 726f nu:..* Bind (pro\n-00003200: 6365 6475 7265 293a 3a0a 2a20 436f 6e6e cedure)::.* Conn\n-00003210: 6563 7420 2870 726f 6365 6475 7265 293a ect (procedure):\n-00003220: 3a0a 2a20 4765 7420 2866 756e 6374 696f :.* Get (functio\n-00003230: 6e29 3a3a 0a2a 2047 6574 5f43 6861 7220 n)::.* Get_Char \n-00003240: 2866 756e 6374 696f 6e29 3a3a 0a2a 2047 (function)::.* G\n-00003250: 6574 5f4c 696e 6520 2866 756e 6374 696f et_Line (functio\n-00003260: 6e29 3a3a 0a2a 2047 6574 5f4c 696e 6520 n)::.* Get_Line \n-00003270: 2870 726f 6365 6475 7265 293a 3a0a 2a20 (procedure)::.* \n-00003280: 4765 745f 5265 6365 6976 655f 5175 6575 Get_Receive_Queu\n-00003290: 655f 5369 7a65 2028 6675 6e63 7469 6f6e e_Size (function\n-000032a0: 293a 3a0a 2a20 4765 745f 5365 6e64 5f51 )::.* Get_Send_Q\n-000032b0: 7565 7565 5f53 697a 6520 2866 756e 6374 ueue_Size (funct\n-000032c0: 696f 6e29 3a3a 0a2a 2047 6574 736f 636b ion)::.* Getsock\n-000032d0: 6f70 7420 2870 726f 6365 6475 7265 293a opt (procedure):\n-000032e0: 3a0a 2a20 4c69 7374 656e 2028 7072 6f63 :.* Listen (proc\n-000032f0: 6564 7572 6529 3a3a 0a2a 204e 6577 5f4c edure)::.* New_L\n-00003300: 696e 6520 2870 726f 6365 6475 7265 293a ine (procedure):\n-00003310: 3a0a 2a20 5075 7420 2870 726f 6365 6475 :.* Put (procedu\n-00003320: 7265 293a 3a0a 2a20 5075 745f 4c69 6e65 re)::.* Put_Line\n-00003330: 2028 7072 6f63 6564 7572 6529 3a3a 0a2a (procedure)::.*\n-00003340: 2052 6563 6569 7665 2028 6675 6e63 7469 Receive (functi\n-00003350: 6f6e 293a 3a0a 2a20 5265 6365 6976 6520 on)::.* Receive \n-00003360: 2870 726f 6365 6475 7265 293a 3a0a 2a20 (procedure)::.* \n-00003370: 5265 6365 6976 655f 536f 6d65 2028 7072 Receive_Some (pr\n-00003380: 6f63 6564 7572 6529 3a3a 0a2a 2053 656e ocedure)::.* Sen\n-00003390: 6420 2870 726f 6365 6475 7265 293a 3a0a d (procedure)::.\n-000033a0: 2a20 5365 745f 4275 6666 6572 2028 7072 * Set_Buffer (pr\n-000033b0: 6f63 6564 7572 6529 3a3a 0a2a 2053 6574 ocedure)::.* Set\n-000033c0: 736f 636b 6f70 7420 2870 726f 6365 6475 sockopt (procedu\n-000033d0: 7265 293a 3a0a 2a20 5368 7574 646f 776e re)::.* Shutdown\n-000033e0: 2028 7072 6f63 6564 7572 6529 3a3a 0a2a (procedure)::.*\n-000033f0: 2053 6f63 6b65 7420 2870 726f 6365 6475 Socket (procedu\n-00003400: 7265 293a 3a0a 0a1f 0a46 696c 653a 2061 re)::....File: a\n-00003410: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n-00003420: 204e 6f64 653a 2042 696e 6420 2870 726f Node: Bind (pro\n-00003430: 6365 6475 7265 292c 2020 4e65 7874 3a20 cedure), Next: \n-00003440: 436f 6e6e 6563 7420 2870 726f 6365 6475 Connect (procedu\n-00003450: 7265 292c 2020 5072 6576 3a20 4163 6365 re), Prev: Acce\n-00003460: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n-00003470: 6475 7265 292c 2020 5570 3a20 4163 6365 dure), Up: Acce\n-00003480: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n-00003490: 6475 7265 290a 0a42 696e 6420 2870 726f dure)..Bind (pro\n-000034a0: 6365 6475 7265 290a 2d2d 2d2d 2d2d 2d2d cedure).--------\n-000034b0: 2d2d 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 --------..PURPOS\n-000034c0: 450a 2020 2020 2041 7373 6f63 6961 7465 E. Associate\n-000034d0: 2061 206c 6f63 616c 2070 6f72 7420 746f a local port to\n-000034e0: 2061 2073 6f63 6b65 740a 5052 4f54 4f54 a socket.PROTOT\n-000034f0: 5950 450a 2020 2020 2020 2d2d 2053 6f63 YPE. -- Soc\n-00003500: 6b65 7473 2e42 696e 643a 2070 726f 6365 kets.Bind: proce\n-00003510: 6475 7265 2042 696e 6420 2853 4f43 4b45 dure Bind (SOCKE\n-00003520: 5420 3a20 536f 636b 6574 5f46 443b 0a20 T : Socket_FD;. \n-00003530: 2020 2020 2020 2020 2020 2020 2020 504f PO\n-00003540: 5254 203a 204e 6174 7572 616c 3b20 484f RT : Natural; HO\n-00003550: 5354 203a 2053 7472 696e 6720 3a3d 2022 ST : String := \"\n-00003560: 2229 3b0a 0a50 4152 414d 4554 4552 530a \");..PARAMETERS.\n-00003570: 2020 2020 2053 4f43 4b45 5420 2020 2020 SOCKET \n-00003580: 696e 2020 2020 2020 2020 2049 6e69 7469 in Initi\n-00003590: 616c 697a 6564 2073 6f63 6b65 7420 6f62 alized socket ob\n-000035a0: 6a65 6374 0a20 2020 2020 504f 5254 2020 ject. PORT \n-000035b0: 2020 2020 2069 6e20 2020 2020 2020 2020 in \n-000035c0: 4c6f 6361 6c20 706f 7274 2074 6f20 6269 Local port to bi\n-000035d0: 6e64 2074 6f0a 2020 2020 2048 4f53 5420 nd to. HOST \n-000035e0: 2020 2020 2020 696e 2020 2020 2020 2020 in \n-000035f0: 204c 6f63 616c 2069 6e74 6572 6661 6365 Local interface\n-00003600: 2074 6f20 6269 6e64 2074 6f0a 0a44 4553 to bind to..DES\n-00003610: 4352 4950 5449 4f4e 0a20 2020 2020 5468 CRIPTION. Th\n-00003620: 6973 2070 726f 6365 6475 7265 2072 6571 is procedure req\n-00003630: 7565 7374 7320 6120 6c6f 6361 6c20 706f uests a local po\n-00003640: 7274 2066 726f 6d20 7468 6520 6f70 6572 rt from the oper\n-00003650: 6174 696e 6720 7379 7374 656d 2e20 2049 ating system. I\n-00003660: 660a 2020 2020 2030 2069 7320 6769 7665 f. 0 is give\n-00003670: 6e20 696e 2050 4f52 542c 2074 6865 2073 n in PORT, the s\n-00003680: 7973 7465 6d20 7769 6c6c 2061 7373 6967 ystem will assig\n-00003690: 6e20 6120 6672 6565 2070 6f72 7420 7768 n a free port wh\n-000036a0: 6f73 6520 6e75 6d62 6572 0a20 2020 2020 ose number. \n-000036b0: 6361 6e20 6c61 7465 7220 6265 2072 6574 can later be ret\n-000036c0: 7269 6576 6564 2075 7369 6e67 202a 6e6f rieved using *no\n-000036d0: 7465 2047 6574 5f53 6f63 6b5f 506f 7274 te Get_Sock_Port\n-000036e0: 2028 6675 6e63 7469 6f6e 293a 3a2e 0a20 (function)::.. \n-000036f0: 2020 2020 416c 736f 2c20 6d6f 7374 206f Also, most o\n-00003700: 7065 7261 7469 6e67 2073 7973 7465 6d73 perating systems\n-00003710: 2072 6571 7569 7265 2073 7065 6369 616c require special\n-00003720: 2070 7269 7669 6c65 6765 7320 6966 2079 privileges if y\n-00003730: 6f75 2077 616e 740a 2020 2020 2074 6f20 ou want. to \n-00003740: 6269 6e64 2074 6f20 706f 7274 7320 6265 bind to ports be\n-00003750: 6c6f 7720 3130 3234 2e0a 0a20 2020 2020 low 1024... \n-00003760: 4966 2048 4f53 5420 6973 206e 6f74 2074 If HOST is not t\n-00003770: 6865 2065 6d70 7479 2073 7472 696e 672c he empty string,\n-00003780: 2069 7420 6d75 7374 2063 6f6e 7461 696e it must contain\n-00003790: 2074 6865 2049 5020 6164 6472 6573 7320 the IP address \n-000037a0: 6f66 0a20 2020 2020 6120 6c6f 6361 6c20 of. a local \n-000037b0: 696e 7465 7266 6163 6520 746f 2062 696e interface to bin\n-000037c0: 6420 746f 2c20 6f72 2061 206e 616d 6520 d to, or a name \n-000037d0: 7768 6963 6820 7265 736f 6c76 6573 2069 which resolves i\n-000037e0: 6e74 6f20 7375 6368 2061 6e0a 2020 2020 nto such an. \n-000037f0: 2061 6464 7265 7373 2e20 2049 6620 616e address. If an\n-00003800: 2065 6d70 7479 2073 7472 696e 6720 6973 empty string is\n-00003810: 2067 6976 656e 2028 7468 6520 6465 6661 given (the defa\n-00003820: 756c 7429 2c20 7468 6520 736f 636b 6574 ult), the socket\n-00003830: 0a20 2020 2020 7769 6c6c 2062 6520 626f . will be bo\n-00003840: 756e 6420 746f 2061 6c6c 2074 6865 2061 und to all the a\n-00003850: 7661 696c 6162 6c65 2069 6e74 6572 6661 vailable interfa\n-00003860: 6365 732e 0a0a 4558 4345 5054 494f 4e53 ces...EXCEPTIONS\n-00003870: 0a20 2020 2020 2753 6f63 6b65 745f 4572 . 'Socket_Er\n-00003880: 726f 7227 2020 2020 2052 6571 7565 7374 ror' Request\n-00003890: 6564 2070 6f72 7420 6f72 2069 6e74 6572 ed port or inter\n-000038a0: 6661 6365 206e 6f74 2061 7661 696c 6162 face not availab\n-000038b0: 6c65 0a0a 5345 4520 414c 534f 0a20 2020 le..SEE ALSO. \n-000038c0: 2020 2a6e 6f74 6520 4c69 7374 656e 2028 *note Listen (\n-000038d0: 7072 6f63 6564 7572 6529 3a3a 2c0a 2020 procedure)::,. \n-000038e0: 2020 202a 6e6f 7465 2053 6f63 6b65 7420 *note Socket \n-000038f0: 2870 726f 6365 6475 7265 293a 3a2e 0a0a (procedure)::...\n-00003900: 1f0a 4669 6c65 3a20 6164 6173 6f63 6b65 ..File: adasocke\n-00003910: 7473 2e69 6e66 6f2c 2020 4e6f 6465 3a20 ts.info, Node: \n-00003920: 436f 6e6e 6563 7420 2870 726f 6365 6475 Connect (procedu\n-00003930: 7265 292c 2020 4e65 7874 3a20 4765 7420 re), Next: Get \n-00003940: 2866 756e 6374 696f 6e29 2c20 2050 7265 (function), Pre\n-00003950: 763a 2042 696e 6420 2870 726f 6365 6475 v: Bind (procedu\n-00003960: 7265 292c 2020 5570 3a20 4163 6365 7074 re), Up: Accept\n-00003970: 5f53 6f63 6b65 7420 2870 726f 6365 6475 _Socket (procedu\n-00003980: 7265 290a 0a43 6f6e 6e65 6374 2028 7072 re)..Connect (pr\n-00003990: 6f63 6564 7572 6529 0a2d 2d2d 2d2d 2d2d ocedure).-------\n-000039a0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 ------------..PU\n-000039b0: 5250 4f53 450a 2020 2020 2043 6f6e 6e65 RPOSE. Conne\n-000039c0: 6374 2061 2073 6f63 6b65 7420 6f6e 2061 ct a socket on a\n-000039d0: 2067 6976 656e 2068 6f73 742f 706f 7274 given host/port\n-000039e0: 0a50 524f 544f 5459 5045 0a20 2020 2020 .PROTOTYPE. \n-000039f0: 202d 2d20 536f 636b 6574 732e 436f 6e6e -- Sockets.Conn\n-00003a00: 6563 743a 2070 726f 6365 6475 7265 2043 ect: procedure C\n-00003a10: 6f6e 6e65 6374 2028 534f 434b 4554 203a onnect (SOCKET :\n-00003a20: 2053 6f63 6b65 745f 4644 3b0a 2020 2020 Socket_FD;. \n-00003a30: 2020 2020 2020 2020 2020 2048 4f53 5420 HOST \n-00003a40: 3a20 5374 7269 6e67 3b20 504f 5254 203a : String; PORT :\n-00003a50: 2050 6f73 6974 6976 6529 3b0a 0a50 4152 Positive);..PAR\n-00003a60: 414d 4554 4552 530a 2020 2020 2053 4f43 AMETERS. SOC\n-00003a70: 4b45 5420 2020 2020 696e 2020 2020 2020 KET in \n-00003a80: 2020 2049 6e69 7469 616c 697a 6564 2073 Initialized s\n-00003a90: 6f63 6b65 7420 6f62 6a65 6374 0a20 2020 ocket object. \n-00003aa0: 2020 484f 5354 2020 2020 2020 2069 6e20 HOST in \n-00003ab0: 2020 2020 2020 2020 486f 7374 2074 6f20 Host to \n-00003ac0: 636f 6e6e 6563 7420 746f 0a20 2020 2020 connect to. \n-00003ad0: 504f 5254 2020 2020 2020 2069 6e20 2020 PORT in \n-00003ae0: 2020 2020 2020 506f 7274 2074 6f20 636f Port to co\n-00003af0: 6e6e 6563 7420 746f 0a0a 4445 5343 5249 nnect to..DESCRI\n-00003b00: 5054 494f 4e0a 2020 2020 2054 6869 7320 PTION. This \n-00003b10: 7072 6f63 6564 7572 6520 636f 6e6e 6563 procedure connec\n-00003b20: 7473 2061 6e20 696e 6974 6961 6c69 7a65 ts an initialize\n-00003b30: 6420 736f 636b 6574 2074 6f20 6120 6769 d socket to a gi\n-00003b40: 7665 6e20 686f 7374 206f 6e20 610a 2020 ven host on a. \n-00003b50: 2020 2067 6976 656e 2070 6f72 742e 2020 given port. \n-00003b60: 496e 2074 6865 2063 6173 6520 6f66 2061 In the case of a\n-00003b70: 2054 4350 2073 6f63 6b65 742c 2061 2072 TCP socket, a r\n-00003b80: 6561 6c20 636f 6e6e 6563 7469 6f6e 2069 eal connection i\n-00003b90: 730a 2020 2020 2061 7474 656d 7074 6564 s. attempted\n-00003ba0: 2e20 2049 6e20 7468 6520 6361 7365 206f . In the case o\n-00003bb0: 6620 6120 5544 5020 736f 636b 6574 2c20 f a UDP socket, \n-00003bc0: 6e6f 2063 6f6e 6e65 6374 696f 6e20 7461 no connection ta\n-00003bd0: 6b65 7320 706c 6163 650a 2020 2020 2062 kes place. b\n-00003be0: 7574 2074 6865 2065 6e64 706f 696e 7420 ut the endpoint \n-00003bf0: 636f 6f72 6469 6e61 7465 7320 6172 6520 coordinates are \n-00003c00: 7265 636f 7264 6564 2e0a 0a45 5843 4550 recorded...EXCEP\n-00003c10: 5449 4f4e 530a 2020 2020 2027 436f 6e6e TIONS. 'Conn\n-00003c20: 6563 7469 6f6e 5f52 6566 7573 6564 2754 ection_Refused'T\n-00003c30: 6865 2063 6f6e 6e65 6374 696f 6e20 6861 he connection ha\n-00003c40: 7320 6265 656e 2072 6566 7573 6564 2062 s been refused b\n-00003c50: 7920 7468 650a 2020 2020 2020 2020 2020 y the. \n-00003c60: 2020 2020 2020 2020 2020 2020 2020 7365 se\n-00003c70: 7276 6572 0a20 2020 2020 2753 6f63 6b65 rver. 'Socke\n-00003c80: 745f 4572 726f 7227 2020 2020 2041 6e6f t_Error' Ano\n-00003c90: 7468 6572 2065 7272 6f72 206f 6363 7572 ther error occur\n-00003ca0: 7265 6420 6475 7269 6e67 2074 6865 0a20 red during the. \n-00003cb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00003cc0: 2020 2020 2020 2063 6f6e 6e65 6374 696f connectio\n-00003cd0: 6e0a 0a45 5841 4d50 4c45 0a20 2020 2020 n..EXAMPLE. \n-00003ce0: 2020 2020 2064 6563 6c61 7265 0a20 2020 declare. \n-00003cf0: 2020 2020 2020 2020 2020 536f 636b 203a Sock :\n-00003d00: 204d 756c 7469 6361 7374 5f53 6f63 6b65 Multicast_Socke\n-00003d10: 745f 4644 3b0a 2020 2020 2020 2020 2020 t_FD;. \n-00003d20: 6265 6769 6e0a 2020 2020 2020 2020 2020 begin. \n-00003d30: 2020 202d 2d20 4372 6561 7465 2061 206d -- Create a m\n-00003d40: 756c 7469 6361 7374 2073 6f63 6b65 7420 ulticast socket \n-00003d50: 6f6e 2067 726f 7570 2032 3234 2e31 2e32 on group 224.1.2\n-00003d60: 2e33 2070 6f72 7420 3837 3633 0a20 2020 .3 port 8763. \n-00003d70: 2020 2020 2020 2020 2020 536f 636b 203a Sock :\n-00003d80: 3d20 4372 6561 7465 5f4d 756c 7469 6361 = Create_Multica\n-00003d90: 7374 5f53 6f63 6b65 7420 2822 3232 342e st_Socket (\"224.\n-00003da0: 312e 322e 3322 2c20 3837 3633 293b 0a20 1.2.3\", 8763);. \n-00003db0: 2020 2020 2020 2020 2020 2020 2d2d 2050 -- P\n-00003dc0: 6572 666f 726d 2073 6f6d 6520 6f70 6572 erform some oper\n-00003dd0: 6174 696f 6e73 206f 6e20 736f 636b 6574 ations on socket\n-00003de0: 0a20 2020 2020 2020 2020 2020 2020 5b2e . [.\n-00003df0: 2e2e 5d0a 2020 2020 2020 2020 2020 2020 ..]. \n-00003e00: 202d 2d20 5368 7574 646f 776e 2074 6865 -- Shutdown the\n-00003e10: 2073 6f63 6b65 7420 696e 2062 6f74 6820 socket in both \n-00003e20: 6469 7265 6374 696f 6e73 0a20 2020 2020 directions. \n-00003e30: 2020 2020 2020 2020 5368 7574 646f 776e Shutdown\n-00003e40: 2028 536f 636b 2c20 426f 7468 293b 0a20 (Sock, Both);. \n-00003e50: 2020 2020 2020 2020 2065 6e64 3b0a 0a53 end;..S\n-00003e60: 4545 2041 4c53 4f0a 2020 2020 202a 6e6f EE ALSO. *no\n-00003e70: 7465 2053 6f63 6b65 7420 2870 726f 6365 te Socket (proce\n-00003e80: 6475 7265 293a 3a2e 0a0a 1f0a 4669 6c65 dure)::.....File\n-00003e90: 3a20 6164 6173 6f63 6b65 7473 2e69 6e66 : adasockets.inf\n-00003ea0: 6f2c 2020 4e6f 6465 3a20 4765 7420 2866 o, Node: Get (f\n-00003eb0: 756e 6374 696f 6e29 2c20 204e 6578 743a unction), Next:\n-00003ec0: 2047 6574 5f43 6861 7220 2866 756e 6374 Get_Char (funct\n-00003ed0: 696f 6e29 2c20 2050 7265 763a 2043 6f6e ion), Prev: Con\n-00003ee0: 6e65 6374 2028 7072 6f63 6564 7572 6529 nect (procedure)\n-00003ef0: 2c20 2055 703a 2041 6363 6570 745f 536f , Up: Accept_So\n-00003f00: 636b 6574 2028 7072 6f63 6564 7572 6529 cket (procedure)\n-00003f10: 0a0a 4765 7420 2866 756e 6374 696f 6e29 ..Get (function)\n-00003f20: 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a .--------------.\n-00003f30: 0a50 5552 504f 5345 0a20 2020 2020 4765 .PURPOSE. Ge\n-00003f40: 7420 6120 7374 7269 6e67 2066 726f 6d20 t a string from \n-00003f50: 6120 7265 6d6f 7465 2068 6f73 740a 5052 a remote host.PR\n-00003f60: 4f54 4f54 5950 450a 2020 2020 2020 2d2d OTOTYPE. --\n-00003f70: 2053 6f63 6b65 7473 2e47 6574 3a20 6675 Sockets.Get: fu\n-00003f80: 6e63 7469 6f6e 2047 6574 2028 534f 434b nction Get (SOCK\n-00003f90: 4554 203a 2053 6f63 6b65 745f 4644 2743 ET : Socket_FD'C\n-00003fa0: 6c61 7373 290a 2020 2020 2020 2020 2020 lass). \n-00003fb0: 2020 2020 2072 6574 7572 6e20 5374 7269 return Stri\n-00003fc0: 6e67 3b0a 0a50 4152 414d 4554 4552 530a ng;..PARAMETERS.\n-00003fd0: 2020 2020 2053 4f43 4b45 5420 2020 2020 SOCKET \n-00003fe0: 696e 2020 2020 2020 2020 2049 6e69 7469 in Initi\n-00003ff0: 616c 697a 6564 2061 6e64 2063 6f6e 6e65 alized and conne\n-00004000: 6374 6564 2073 6f63 6b65 7420 6f62 6a65 cted socket obje\n-00004010: 6374 0a0a 5245 5455 524e 2056 414c 5545 ct..RETURN VALUE\n-00004020: 0a20 2020 2020 536f 6d65 2063 6861 7261 . Some chara\n-00004030: 6374 6572 7320 7468 6174 2068 6176 6520 cters that have \n-00004040: 6265 656e 2072 6563 6569 7665 640a 0a44 been received..D\n-00004050: 4553 4352 4950 5449 4f4e 0a20 2020 2020 ESCRIPTION. \n-00004060: 5468 6973 2066 756e 6374 696f 6e20 7265 This function re\n-00004070: 6365 6976 6573 2073 6f6d 6520 6368 6172 ceives some char\n-00004080: 6163 7465 7273 2066 726f 6d20 6120 7265 acters from a re\n-00004090: 6d6f 7465 2068 6f73 742e 2020 4173 2073 mote host. As s\n-000040a0: 6f6f 6e0a 2020 2020 2074 6861 7420 6174 oon. that at\n-000040b0: 206c 6561 7374 206f 6e65 2063 6861 7261 least one chara\n-000040c0: 6374 6572 2069 7320 6176 6169 6c61 626c cter is availabl\n-000040d0: 652c 2074 6865 2063 7572 7265 6e74 2072 e, the current r\n-000040e0: 6563 6570 7469 6f6e 0a20 2020 2020 6275 eception. bu\n-000040f0: 6666 6572 2069 7320 7265 7475 726e 6564 ffer is returned\n-00004100: 2e0a 0a20 2020 2020 5468 6572 6520 6973 ... There is\n-00004110: 2075 7375 616c 6c79 206c 6974 746c 6520 usually little \n-00004120: 6761 696e 2069 6e20 7573 696e 6720 7468 gain in using th\n-00004130: 6973 2066 756e 6374 696f 6e20 7768 6f73 is function whos\n-00004140: 6520 6265 6861 7669 6f75 720a 2020 2020 e behaviour. \n-00004150: 2069 7320 636f 6d70 6172 6162 6c65 2074 is comparable t\n-00004160: 6f20 7468 6520 6f6e 6520 6f66 202a 6e6f o the one of *no\n-00004170: 7465 2052 6563 6569 7665 2028 6675 6e63 te Receive (func\n-00004180: 7469 6f6e 293a 3a2e 2020 4f74 6865 720a tion)::. Other.\n-00004190: 2020 2020 2066 756e 6374 696f 6e73 2073 functions s\n-000041a0: 7563 6820 6173 202a 6e6f 7465 2047 6574 uch as *note Get\n-000041b0: 5f43 6861 7220 2866 756e 6374 696f 6e29 _Char (function)\n-000041c0: 3a3a 2c20 6f72 202a 6e6f 7465 2047 6574 ::, or *note Get\n-000041d0: 5f4c 696e 650a 2020 2020 2028 6675 6e63 _Line. (func\n-000041e0: 7469 6f6e 293a 3a2c 2061 6c6c 6f77 206d tion)::, allow m\n-000041f0: 6f72 6520 7374 7275 6374 7572 6564 2070 ore structured p\n-00004200: 726f 6772 616d 6d69 6e67 2e0a 0a20 2020 rogramming... \n-00004210: 2020 486f 7765 7665 722c 2074 6869 7320 However, this \n-00004220: 6675 6e63 7469 6f6e 206d 6179 2062 6520 function may be \n-00004230: 7573 6564 2074 6f20 6176 6f69 6420 6c6f used to avoid lo\n-00004240: 6f73 696e 6720 6368 6172 6163 7465 7273 osing characters\n-00004250: 2077 6865 6e0a 2020 2020 2063 616c 6c69 when. calli\n-00004260: 6e67 202a 6e6f 7465 2055 6e73 6574 5f42 ng *note Unset_B\n-00004270: 7566 6665 7220 2870 726f 6365 6475 7265 uffer (procedure\n-00004280: 293a 3a2c 2069 662c 2066 6f72 2073 6f6d )::, if, for som\n-00004290: 6520 7265 6173 6f6e 2c20 7468 650a 2020 e reason, the. \n-000042a0: 2020 2072 656d 6f74 6520 686f 7374 206d remote host m\n-000042b0: 6179 2068 6176 6520 7365 6e74 2073 6f6d ay have sent som\n-000042c0: 652e 0a0a 4558 4345 5054 494f 4e53 0a20 e...EXCEPTIONS. \n-000042d0: 2020 2020 2743 6f6e 6e65 6374 696f 6e5f 'Connection_\n-000042e0: 436c 6f73 6564 2750 6565 7220 6861 7320 Closed'Peer has \n-000042f0: 636c 6f73 6564 2074 6865 2063 6f6e 6e65 closed the conne\n-00004300: 6374 696f 6e20 6265 666f 7265 0a20 2020 ction before. \n-00004310: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00004320: 2020 2020 2073 656e 6469 6e67 2061 6e79 sending any\n-00004330: 2064 6174 610a 0a1f 0a46 696c 653a 2061 data....File: a\n-00004340: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n-00004350: 204e 6f64 653a 2047 6574 5f43 6861 7220 Node: Get_Char \n-00004360: 2866 756e 6374 696f 6e29 2c20 204e 6578 (function), Nex\n-00004370: 743a 2047 6574 5f4c 696e 6520 2866 756e t: Get_Line (fun\n-00004380: 6374 696f 6e29 2c20 2050 7265 763a 2047 ction), Prev: G\n-00004390: 6574 2028 6675 6e63 7469 6f6e 292c 2020 et (function), \n-000043a0: 5570 3a20 4163 6365 7074 5f53 6f63 6b65 Up: Accept_Socke\n-000043b0: 7420 2870 726f 6365 6475 7265 290a 0a47 t (procedure)..G\n-000043c0: 6574 5f43 6861 7220 2866 756e 6374 696f et_Char (functio\n-000043d0: 6e29 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d n).-------------\n-000043e0: 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 450a ------..PURPOSE.\n-000043f0: 2020 2020 2047 6574 2061 2063 6861 7261 Get a chara\n-00004400: 6374 6572 2066 726f 6d20 6120 7265 6d6f cter from a remo\n-00004410: 7465 2068 6f73 740a 5052 4f54 4f54 5950 te host.PROTOTYP\n-00004420: 450a 2020 2020 2020 2d2d 2053 6f63 6b65 E. -- Socke\n-00004430: 7473 2e47 6574 5f43 6861 723a 2066 756e ts.Get_Char: fun\n-00004440: 6374 696f 6e20 4765 745f 4368 6172 2028 ction Get_Char (\n-00004450: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n-00004460: 4644 2743 6c61 7373 290a 2020 2020 2020 FD'Class). \n-00004470: 2020 2020 2020 2020 2072 6574 7572 6e20 return \n-00004480: 4368 6172 6163 7465 723b 0a0a 5041 5241 Character;..PARA\n-00004490: 4d45 5445 5253 0a20 2020 2020 534f 434b METERS. SOCK\n-000044a0: 4554 2020 2020 2069 6e20 2020 2020 2020 ET in \n-000044b0: 2020 496e 6974 6961 6c69 7a65 6420 616e Initialized an\n-000044c0: 6420 636f 6e6e 6563 7465 6420 736f 636b d connected sock\n-000044d0: 6574 206f 626a 6563 740a 0a52 4554 5552 et object..RETUR\n-000044e0: 4e20 5641 4c55 450a 2020 2020 204f 6e65 N VALUE. One\n-000044f0: 2063 6861 7261 6374 6572 2073 656e 7420 character sent \n-00004500: 6279 2074 6865 2072 656d 6f74 6520 686f by the remote ho\n-00004510: 7374 0a0a 4445 5343 5249 5054 494f 4e0a st..DESCRIPTION.\n-00004520: 2020 2020 2054 6869 7320 6675 6e63 7469 This functi\n-00004530: 6f6e 2072 6563 6569 7665 7320 6578 6163 on receives exac\n-00004540: 746c 7920 6f6e 6520 6368 6172 6163 7465 tly one characte\n-00004550: 7220 6672 6f6d 2074 6865 2072 656d 6f74 r from the remot\n-00004560: 6520 686f 7374 2e0a 0a45 5843 4550 5449 e host...EXCEPTI\n-00004570: 4f4e 530a 2020 2020 2027 436f 6e6e 6563 ONS. 'Connec\n-00004580: 7469 6f6e 5f43 6c6f 7365 6427 5065 6572 tion_Closed'Peer\n-00004590: 2068 6173 2063 6c6f 7365 6420 7468 6520 has closed the \n-000045a0: 636f 6e6e 6563 7469 6f6e 2062 6566 6f72 connection befor\n-000045b0: 650a 2020 2020 2020 2020 2020 2020 2020 e. \n-000045c0: 2020 2020 2020 2020 2020 7365 6e64 696e sendin\n-000045d0: 6720 7468 6520 6368 6172 6163 7465 720a g the character.\n-000045e0: 0a53 4545 2041 4c53 4f0a 2020 2020 202a .SEE ALSO. *\n-000045f0: 6e6f 7465 2047 6574 2028 6675 6e63 7469 note Get (functi\n-00004600: 6f6e 293a 3a2c 0a20 2020 2020 2a6e 6f74 on)::,. *not\n-00004610: 6520 4765 745f 4c69 6e65 2028 6675 6e63 e Get_Line (func\n-00004620: 7469 6f6e 293a 3a2c 0a20 2020 2020 2a6e tion)::,. *n\n-00004630: 6f74 6520 4765 745f 4c69 6e65 2028 7072 ote Get_Line (pr\n-00004640: 6f63 6564 7572 6529 3a3a 2c0a 2020 2020 ocedure)::,. \n-00004650: 202a 6e6f 7465 2052 6563 6569 7665 2028 *note Receive (\n-00004660: 7072 6f63 6564 7572 6529 3a3a 2c0a 2020 procedure)::,. \n-00004670: 2020 202a 6e6f 7465 2053 6574 5f42 7566 *note Set_Buf\n-00004680: 6665 7220 2870 726f 6365 6475 7265 293a fer (procedure):\n-00004690: 3a2e 0a0a 1f0a 4669 6c65 3a20 6164 6173 :.....File: adas\n-000046a0: 6f63 6b65 7473 2e69 6e66 6f2c 2020 4e6f ockets.info, No\n-000046b0: 6465 3a20 4765 745f 4c69 6e65 2028 6675 de: Get_Line (fu\n-000046c0: 6e63 7469 6f6e 292c 2020 4e65 7874 3a20 nction), Next: \n-000046d0: 4765 745f 4c69 6e65 2028 7072 6f63 6564 Get_Line (proced\n-000046e0: 7572 6529 2c20 2050 7265 763a 2047 6574 ure), Prev: Get\n-000046f0: 5f43 6861 7220 2866 756e 6374 696f 6e29 _Char (function)\n-00004700: 2c20 2055 703a 2041 6363 6570 745f 536f , Up: Accept_So\n-00004710: 636b 6574 2028 7072 6f63 6564 7572 6529 cket (procedure)\n-00004720: 0a0a 4765 745f 4c69 6e65 2028 6675 6e63 ..Get_Line (func\n-00004730: 7469 6f6e 290a 2d2d 2d2d 2d2d 2d2d 2d2d tion).----------\n-00004740: 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 5552 504f ---------..PURPO\n-00004750: 5345 0a20 2020 2020 4765 7420 6120 7768 SE. Get a wh\n-00004760: 6f6c 6520 6c69 6e65 2066 726f 6d20 6120 ole line from a \n-00004770: 7265 6d6f 7465 2068 6f73 740a 5052 4f54 remote host.PROT\n-00004780: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n-00004790: 6f63 6b65 7473 2e47 6574 5f4c 696e 653a ockets.Get_Line:\n-000047a0: 2066 756e 6374 696f 6e20 4765 745f 4c69 function Get_Li\n-000047b0: 6e65 2028 534f 434b 4554 203a 2053 6f63 ne (SOCKET : Soc\n-000047c0: 6b65 745f 4644 2743 6c61 7373 3b0a 2020 ket_FD'Class;. \n-000047d0: 2020 2020 2020 2020 2020 2020 204d 4158 MAX\n-000047e0: 5f4c 454e 4754 4820 3a20 506f 7369 7469 _LENGTH : Positi\n-000047f0: 7665 203a 3d20 3230 3438 290a 2020 2020 ve := 2048). \n-00004800: 2020 2020 2020 2020 2020 2072 6574 7572 retur\n-00004810: 6e20 5374 7269 6e67 3b0a 0a50 4152 414d n String;..PARAM\n-00004820: 4554 4552 530a 2020 2020 2053 4f43 4b45 ETERS. SOCKE\n-00004830: 5420 2020 2020 696e 2020 2020 2020 2020 T in \n-00004840: 2049 6e69 7469 616c 697a 6564 2061 6e64 Initialized and\n-00004850: 2063 6f6e 6e65 6374 6564 2073 6f63 6b65 connected socke\n-00004860: 7420 6f62 6a65 6374 0a20 2020 2020 4d41 t object. MA\n-00004870: 585f 4c45 4e47 5448 2069 6e20 2020 2020 X_LENGTH in \n-00004880: 2020 2020 4d61 7869 6d75 6d20 7265 7475 Maximum retu\n-00004890: 726e 6564 206c 696e 6520 6c65 6e67 7468 rned line length\n-000048a0: 0a0a 5245 5455 524e 2056 414c 5545 0a20 ..RETURN VALUE. \n-000048b0: 2020 2020 4120 6c69 6e65 2077 6974 686f A line witho\n-000048c0: 7574 2074 6865 2043 5220 616e 6420 4c46 ut the CR and LF\n-000048d0: 2073 6570 6172 6174 6f72 730a 0a44 4553 separators..DES\n-000048e0: 4352 4950 5449 4f4e 0a20 2020 2020 5468 CRIPTION. Th\n-000048f0: 6973 2066 756e 6374 696f 6e20 7265 6365 is function rece\n-00004900: 6976 6573 206f 6e65 206c 696e 6520 6672 ives one line fr\n-00004910: 6f6d 2074 6865 2072 656d 6f74 6520 686f om the remote ho\n-00004920: 7374 2e20 2041 206c 696e 650a 2020 2020 st. A line. \n-00004930: 2063 6f6e 7369 7374 7320 696e 746f 207a consists into z\n-00004940: 6572 6f20 6f72 206d 6f72 6520 6368 6172 ero or more char\n-00004950: 6163 7465 7273 2066 6f6c 6c6f 7765 6420 acters followed \n-00004960: 6279 2061 6e20 6f70 7469 6f6e 616c 2043 by an optional C\n-00004970: 520a 2020 2020 2061 6e64 2062 7920 6120 R. and by a \n-00004980: 4c46 2e20 5468 6f73 6520 7465 726d 696e LF. Those termin\n-00004990: 6174 6f72 7320 6172 6520 7374 7269 7070 ators are stripp\n-000049a0: 6564 2062 6566 6f72 6520 7468 6520 6c69 ed before the li\n-000049b0: 6e65 2069 730a 2020 2020 2072 6574 7572 ne is. retur\n-000049c0: 6e65 642e 0a0a 2020 2020 2054 6869 7320 ned... This \n-000049d0: 6675 6e63 7469 6f6e 2062 6c6f 636b 7320 function blocks \n-000049e0: 756e 7469 6c20 6f6e 6520 6675 6c6c 206c until one full l\n-000049f0: 696e 6520 6861 7320 6265 656e 2072 6563 ine has been rec\n-00004a00: 6569 7665 642e 2020 5468 650a 2020 2020 eived. The. \n-00004a10: 206c 696e 6520 6c65 6e67 7468 2069 7320 line length is \n-00004a20: 6c69 6d69 7465 6420 7769 7468 2074 6865 limited with the\n-00004a30: 2076 616c 7565 206f 6620 7468 6520 4d61 value of the Ma\n-00004a40: 785f 4c65 6e67 7468 2061 7267 756d 656e x_Length argumen\n-00004a50: 742c 0a20 2020 2020 746f 2061 766f 6964 t,. to avoid\n-00004a60: 2065 7868 6175 7374 696f 6e20 6f66 2074 exhaustion of t\n-00004a70: 6865 2073 6563 6f6e 6461 7279 2073 7461 he secondary sta\n-00004a80: 636b 2e0a 0a45 5843 4550 5449 4f4e 530a ck...EXCEPTIONS.\n-00004a90: 2020 2020 2027 436f 6e6e 6563 7469 6f6e 'Connection\n-00004aa0: 5f43 6c6f 7365 6427 5065 6572 2068 6173 _Closed'Peer has\n-00004ab0: 2063 6c6f 7365 6420 7468 6520 636f 6e6e closed the conn\n-00004ac0: 6563 7469 6f6e 2062 6566 6f72 650a 2020 ection before. \n-00004ad0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00004ae0: 2020 2020 2020 7365 6e64 696e 6720 6120 sending a \n-00004af0: 7768 6f6c 6520 6c69 6e65 0a0a 5345 4520 whole line..SEE \n-00004b00: 414c 534f 0a20 2020 2020 2a6e 6f74 6520 ALSO. *note \n-00004b10: 4765 7420 2866 756e 6374 696f 6e29 3a3a Get (function)::\n-00004b20: 2c0a 2020 2020 202a 6e6f 7465 2047 6574 ,. *note Get\n-00004b30: 5f43 6861 7220 2866 756e 6374 696f 6e29 _Char (function)\n-00004b40: 3a3a 2c0a 2020 2020 202a 6e6f 7465 2047 ::,. *note G\n-00004b50: 6574 5f4c 696e 6520 2870 726f 6365 6475 et_Line (procedu\n-00004b60: 7265 293a 3a2c 0a20 2020 2020 2a6e 6f74 re)::,. *not\n-00004b70: 6520 5265 6365 6976 6520 2870 726f 6365 e Receive (proce\n-00004b80: 6475 7265 293a 3a2c 0a20 2020 2020 2a6e dure)::,. *n\n-00004b90: 6f74 6520 5365 745f 4275 6666 6572 2028 ote Set_Buffer (\n-00004ba0: 7072 6f63 6564 7572 6529 3a3a 2e0a 0a1f procedure)::....\n-00004bb0: 0a46 696c 653a 2061 6461 736f 636b 6574 .File: adasocket\n-00004bc0: 732e 696e 666f 2c20 204e 6f64 653a 2047 s.info, Node: G\n-00004bd0: 6574 5f4c 696e 6520 2870 726f 6365 6475 et_Line (procedu\n-00004be0: 7265 292c 2020 4e65 7874 3a20 4765 745f re), Next: Get_\n-00004bf0: 5265 6365 6976 655f 5175 6575 655f 5369 Receive_Queue_Si\n-00004c00: 7a65 2028 6675 6e63 7469 6f6e 292c 2020 ze (function), \n-00004c10: 5072 6576 3a20 4765 745f 4c69 6e65 2028 Prev: Get_Line (\n-00004c20: 6675 6e63 7469 6f6e 292c 2020 5570 3a20 function), Up: \n-00004c30: 4163 6365 7074 5f53 6f63 6b65 7420 2870 Accept_Socket (p\n-00004c40: 726f 6365 6475 7265 290a 0a47 6574 5f4c rocedure)..Get_L\n-00004c50: 696e 6520 2870 726f 6365 6475 7265 290a ine (procedure).\n-00004c60: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-00004c70: 2d2d 2d2d 0a0a 5055 5250 4f53 450a 2020 ----..PURPOSE. \n-00004c80: 2020 2047 6574 2061 2077 686f 6c65 206c Get a whole l\n-00004c90: 696e 6520 6672 6f6d 2061 2072 656d 6f74 ine from a remot\n-00004ca0: 6520 686f 7374 0a50 524f 544f 5459 5045 e host.PROTOTYPE\n-00004cb0: 0a20 2020 2020 202d 2d20 536f 636b 6574 . -- Socket\n-00004cc0: 732e 4765 745f 4c69 6e65 3a20 7072 6f63 s.Get_Line: proc\n-00004cd0: 6564 7572 6520 4765 745f 4c69 6e65 2028 edure Get_Line (\n-00004ce0: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n-00004cf0: 4644 2743 6c61 7373 3b0a 2020 2020 2020 FD'Class;. \n-00004d00: 2020 2020 2020 2020 2053 5452 203a 2069 STR : i\n-00004d10: 6e20 6f75 7420 5374 7269 6e67 3b20 4c41 n out String; LA\n-00004d20: 5354 203a 206f 7574 204e 6174 7572 616c ST : out Natural\n-00004d30: 293b 0a0a 5041 5241 4d45 5445 5253 0a20 );..PARAMETERS. \n-00004d40: 2020 2020 534f 434b 4554 2020 2020 2069 SOCKET i\n-00004d50: 6e20 2020 2020 2020 2020 496e 6974 6961 n Initia\n-00004d60: 6c69 7a65 6420 616e 6420 636f 6e6e 6563 lized and connec\n-00004d70: 7465 6420 736f 636b 6574 206f 626a 6563 ted socket objec\n-00004d80: 740a 2020 2020 2053 5452 2020 2020 2020 t. STR \n-00004d90: 2020 696e 206f 7574 2020 2020 2053 7472 in out Str\n-00004da0: 696e 6720 746f 2066 696c 6c0a 2020 2020 ing to fill. \n-00004db0: 204c 4153 5420 2020 2020 2020 6f75 7420 LAST out \n-00004dc0: 2020 2020 2020 204c 6173 7420 696e 6465 Last inde\n-00004dd0: 7820 7573 6564 2069 6e20 7468 6520 7374 x used in the st\n-00004de0: 7269 6e67 0a0a 4445 5343 5249 5054 494f ring..DESCRIPTIO\n-00004df0: 4e0a 2020 2020 2054 6869 7320 7072 6f63 N. This proc\n-00004e00: 6564 7572 6520 7265 6365 6976 6573 206f edure receives o\n-00004e10: 6e65 206c 696e 6520 6672 6f6d 2074 6865 ne line from the\n-00004e20: 2072 656d 6f74 6520 686f 7374 2e20 2041 remote host. A\n-00004e30: 206c 696e 650a 2020 2020 2063 6f6e 7369 line. consi\n-00004e40: 7374 7320 696e 746f 207a 6572 6f20 6f72 sts into zero or\n-00004e50: 206d 6f72 6520 6368 6172 6163 7465 7273 more characters\n-00004e60: 2066 6f6c 6c6f 7765 6420 6279 2061 6e20 followed by an \n-00004e70: 6f70 7469 6f6e 616c 2043 520a 2020 2020 optional CR. \n-00004e80: 2061 6e64 2062 7920 6120 4c46 2e20 5468 and by a LF. Th\n-00004e90: 6f73 6520 7465 726d 696e 6174 6f72 7320 ose terminators \n-00004ea0: 6172 6520 7374 7269 7070 6564 2062 6566 are stripped bef\n-00004eb0: 6f72 6520 7468 6520 6c69 6e65 2069 730a ore the line is.\n-00004ec0: 2020 2020 2072 6574 7572 6e65 642e 0a0a returned...\n-00004ed0: 2020 2020 2054 6869 7320 7072 6f63 6564 This proced\n-00004ee0: 7572 6520 626c 6f63 6b73 2075 6e74 696c ure blocks until\n-00004ef0: 206f 6e65 2066 756c 6c20 6c69 6e65 2068 one full line h\n-00004f00: 6173 2062 6565 6e20 7265 6365 6976 6564 as been received\n-00004f10: 2e0a 0a45 5843 4550 5449 4f4e 530a 2020 ...EXCEPTIONS. \n-00004f20: 2020 2027 436f 6e6e 6563 7469 6f6e 5f43 'Connection_C\n-00004f30: 6c6f 7365 6427 5065 6572 2068 6173 2063 losed'Peer has c\n-00004f40: 6c6f 7365 6420 7468 6520 636f 6e6e 6563 losed the connec\n-00004f50: 7469 6f6e 2062 6566 6f72 650a 2020 2020 tion before. \n-00004f60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00004f70: 2020 2020 7365 6e64 696e 6720 6120 7768 sending a wh\n-00004f80: 6f6c 6520 6c69 6e65 0a0a 5345 4520 414c ole line..SEE AL\n-00004f90: 534f 0a20 2020 2020 2a6e 6f74 6520 4765 SO. *note Ge\n-00004fa0: 7420 2866 756e 6374 696f 6e29 3a3a 2c0a t (function)::,.\n-00004fb0: 2020 2020 202a 6e6f 7465 2047 6574 5f43 *note Get_C\n-00004fc0: 6861 7220 2866 756e 6374 696f 6e29 3a3a har (function)::\n-00004fd0: 2c0a 2020 2020 202a 6e6f 7465 2047 6574 ,. *note Get\n-00004fe0: 5f4c 696e 6520 2866 756e 6374 696f 6e29 _Line (function)\n-00004ff0: 3a3a 2c0a 2020 2020 202a 6e6f 7465 2052 ::,. *note R\n-00005000: 6563 6569 7665 2028 7072 6f63 6564 7572 eceive (procedur\n-00005010: 6529 3a3a 2c0a 2020 2020 202a 6e6f 7465 e)::,. *note\n-00005020: 2053 6574 5f42 7566 6665 7220 2870 726f Set_Buffer (pro\n-00005030: 6365 6475 7265 293a 3a2e 0a0a 1f0a 4669 cedure)::.....Fi\n-00005040: 6c65 3a20 6164 6173 6f63 6b65 7473 2e69 le: adasockets.i\n-00005050: 6e66 6f2c 2020 4e6f 6465 3a20 4765 745f nfo, Node: Get_\n-00005060: 5265 6365 6976 655f 5175 6575 655f 5369 Receive_Queue_Si\n-00005070: 7a65 2028 6675 6e63 7469 6f6e 292c 2020 ze (function), \n-00005080: 4e65 7874 3a20 4765 745f 5365 6e64 5f51 Next: Get_Send_Q\n-00005090: 7565 7565 5f53 697a 6520 2866 756e 6374 ueue_Size (funct\n-000050a0: 696f 6e29 2c20 2050 7265 763a 2047 6574 ion), Prev: Get\n-000050b0: 5f4c 696e 6520 2870 726f 6365 6475 7265 _Line (procedure\n-000050c0: 292c 2020 5570 3a20 4163 6365 7074 5f53 ), Up: Accept_S\n-000050d0: 6f63 6b65 7420 2870 726f 6365 6475 7265 ocket (procedure\n-000050e0: 290a 0a47 6574 5f52 6563 6569 7665 5f51 )..Get_Receive_Q\n-000050f0: 7565 7565 5f53 697a 6520 2866 756e 6374 ueue_Size (funct\n-00005100: 696f 6e29 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d ion).-----------\n-00005110: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-00005120: 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 450a ------..PURPOSE.\n-00005130: 2020 2020 2052 6574 7572 6e20 7468 6520 Return the \n-00005140: 7369 7a65 206f 6620 7468 6520 756e 7265 size of the unre\n-00005150: 6164 2064 6174 6120 696e 2074 6865 2069 ad data in the i\n-00005160: 6e70 7574 2071 7565 7565 0a50 524f 544f nput queue.PROTO\n-00005170: 5459 5045 0a20 2020 2020 202d 2d20 536f TYPE. -- So\n-00005180: 636b 6574 732e 4765 745f 5265 6365 6976 ckets.Get_Receiv\n-00005190: 655f 5175 6575 655f 5369 7a65 3a20 6675 e_Queue_Size: fu\n-000051a0: 6e63 7469 6f6e 2047 6574 5f52 6563 6569 nction Get_Recei\n-000051b0: 7665 5f51 7565 7565 5f53 697a 650a 2020 ve_Queue_Size. \n-000051c0: 2020 2020 2020 2020 2020 2020 2028 534f (SO\n-000051d0: 434b 4554 203a 2053 6f63 6b65 745f 4644 CKET : Socket_FD\n-000051e0: 2743 6c61 7373 290a 2020 2020 2020 2020 'Class). \n-000051f0: 2020 2020 2020 2072 6574 7572 6e20 496e return In\n-00005200: 7465 6765 723b 0a0a 5041 5241 4d45 5445 teger;..PARAMETE\n-00005210: 5253 0a20 2020 2020 534f 434b 4554 2020 RS. SOCKET \n-00005220: 2020 2069 6e20 2020 2020 2020 2020 496e in In\n-00005230: 6974 6961 6c69 7a65 6420 616e 6420 636f itialized and co\n-00005240: 6e6e 6563 7465 6420 736f 636b 6574 206f nnected socket o\n-00005250: 626a 6563 740a 0a52 4554 5552 4e20 5641 bject..RETURN VA\n-00005260: 4c55 450a 2020 2020 2054 6865 206e 6f6e LUE. The non\n-00005270: 2d6e 6567 6174 6976 6520 7369 7a65 2069 -negative size i\n-00005280: 6e20 6279 7465 7320 6f66 2074 6865 2069 n bytes of the i\n-00005290: 6e70 7574 2071 7565 7565 0a0a 4445 5343 nput queue..DESC\n-000052a0: 5249 5054 494f 4e0a 2020 2020 2054 6869 RIPTION. Thi\n-000052b0: 7320 6675 6e63 7469 6f6e 2069 7320 6f6e s function is on\n-000052c0: 6c79 2061 7661 696c 6162 6c65 206f 6e20 ly available on \n-000052d0: 4c69 6e75 7820 706c 6174 666f 726d 732e Linux platforms.\n-000052e0: 2020 4f6e 206f 7468 6572 0a20 2020 2020 On other. \n-000052f0: 6f70 6572 6174 696e 6720 7379 7374 656d operating system\n-00005300: 732c 2069 7420 7769 6c6c 2072 6574 7572 s, it will retur\n-00005310: 6e20 2d32 2074 6f20 696e 6469 6361 7465 n -2 to indicate\n-00005320: 2074 6861 7420 7468 6520 6e65 6365 7373 that the necess\n-00005330: 6172 790a 2020 2020 206d 6563 6861 6e69 ary. mechani\n-00005340: 736d 7320 746f 2072 6574 7269 6576 6520 sms to retrieve \n-00005350: 7468 6520 696e 666f 726d 6174 696f 6e20 the information \n-00005360: 6172 6520 6e6f 7420 6176 6169 6c61 626c are not availabl\n-00005370: 652e 0a0a 5345 4520 414c 534f 0a20 2020 e...SEE ALSO. \n-00005380: 2020 2a6e 6f74 6520 5265 6365 6976 6520 *note Receive \n-00005390: 2870 726f 6365 6475 7265 293a 3a2e 0a0a (procedure)::...\n-000053a0: 1f0a 4669 6c65 3a20 6164 6173 6f63 6b65 ..File: adasocke\n-000053b0: 7473 2e69 6e66 6f2c 2020 4e6f 6465 3a20 ts.info, Node: \n-000053c0: 4765 745f 5365 6e64 5f51 7565 7565 5f53 Get_Send_Queue_S\n-000053d0: 697a 6520 2866 756e 6374 696f 6e29 2c20 ize (function), \n-000053e0: 204e 6578 743a 2047 6574 736f 636b 6f70 Next: Getsockop\n-000053f0: 7420 2870 726f 6365 6475 7265 292c 2020 t (procedure), \n-00005400: 5072 6576 3a20 4765 745f 5265 6365 6976 Prev: Get_Receiv\n-00005410: 655f 5175 6575 655f 5369 7a65 2028 6675 e_Queue_Size (fu\n-00005420: 6e63 7469 6f6e 292c 2020 5570 3a20 4163 nction), Up: Ac\n-00005430: 6365 7074 5f53 6f63 6b65 7420 2870 726f cept_Socket (pro\n-00005440: 6365 6475 7265 290a 0a47 6574 5f53 656e cedure)..Get_Sen\n-00005450: 645f 5175 6575 655f 5369 7a65 2028 6675 d_Queue_Size (fu\n-00005460: 6e63 7469 6f6e 290a 2d2d 2d2d 2d2d 2d2d nction).--------\n-00005470: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-00005480: 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 450a ------..PURPOSE.\n-00005490: 2020 2020 2052 6574 7572 6e20 7468 6520 Return the \n-000054a0: 7369 7a65 206f 6620 7468 6520 756e 7365 size of the unse\n-000054b0: 6e74 2064 6174 6120 696e 2074 6865 206f nt data in the o\n-000054c0: 7574 7075 7420 7175 6575 650a 5052 4f54 utput queue.PROT\n-000054d0: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n-000054e0: 6f63 6b65 7473 2e47 6574 5f53 656e 645f ockets.Get_Send_\n-000054f0: 5175 6575 655f 5369 7a65 3a20 6675 6e63 Queue_Size: func\n-00005500: 7469 6f6e 2047 6574 5f53 656e 645f 5175 tion Get_Send_Qu\n-00005510: 6575 655f 5369 7a65 0a20 2020 2020 2020 eue_Size. \n-00005520: 2020 2020 2020 2020 2853 4f43 4b45 5420 (SOCKET \n-00005530: 3a20 536f 636b 6574 5f46 4427 436c 6173 : Socket_FD'Clas\n-00005540: 7329 0a20 2020 2020 2020 2020 2020 2020 s). \n-00005550: 2020 7265 7475 726e 2049 6e74 6567 6572 return Integer\n-00005560: 3b0a 0a50 4152 414d 4554 4552 530a 2020 ;..PARAMETERS. \n-00005570: 2020 2053 4f43 4b45 5420 2020 2020 696e SOCKET in\n-00005580: 2020 2020 2020 2020 2049 6e69 7469 616c Initial\n-00005590: 697a 6564 2061 6e64 2063 6f6e 6e65 6374 ized and connect\n-000055a0: 6564 2073 6f63 6b65 7420 6f62 6a65 6374 ed socket object\n-000055b0: 0a0a 5245 5455 524e 2056 414c 5545 0a20 ..RETURN VALUE. \n-000055c0: 2020 2020 5468 6520 6e6f 6e2d 6e65 6761 The non-nega\n-000055d0: 7469 7665 2073 697a 6520 696e 2062 7974 tive size in byt\n-000055e0: 6573 206f 6620 7468 6520 6f75 7470 7574 es of the output\n-000055f0: 2071 7565 7565 0a0a 4445 5343 5249 5054 queue..DESCRIPT\n-00005600: 494f 4e0a 2020 2020 2054 6869 7320 6675 ION. This fu\n-00005610: 6e63 7469 6f6e 2069 7320 6f6e 6c79 2061 nction is only a\n-00005620: 7661 696c 6162 6c65 206f 6e20 4c69 6e75 vailable on Linu\n-00005630: 7820 706c 6174 666f 726d 732e 2020 4f6e x platforms. On\n-00005640: 206f 7468 6572 0a20 2020 2020 6f70 6572 other. oper\n-00005650: 6174 696e 6720 7379 7374 656d 732c 2069 ating systems, i\n-00005660: 7420 7769 6c6c 2072 6574 7572 6e20 2d32 t will return -2\n-00005670: 2074 6f20 696e 6469 6361 7465 2074 6861 to indicate tha\n-00005680: 7420 7468 6520 6e65 6365 7373 6172 790a t the necessary.\n-00005690: 2020 2020 206d 6563 6861 6e69 736d 7320 mechanisms \n-000056a0: 746f 2072 6574 7269 6576 6520 7468 6520 to retrieve the \n-000056b0: 696e 666f 726d 6174 696f 6e20 6172 6520 information are \n-000056c0: 6e6f 7420 6176 6169 6c61 626c 652e 0a0a not available...\n-000056d0: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n-000056e0: 6f74 6520 5365 6e64 2028 7072 6f63 6564 ote Send (proced\n-000056f0: 7572 6529 3a3a 2e0a 0a1f 0a46 696c 653a ure)::.....File:\n-00005700: 2061 6461 736f 636b 6574 732e 696e 666f adasockets.info\n-00005710: 2c20 204e 6f64 653a 2047 6574 736f 636b , Node: Getsock\n-00005720: 6f70 7420 2870 726f 6365 6475 7265 292c opt (procedure),\n-00005730: 2020 4e65 7874 3a20 4c69 7374 656e 2028 Next: Listen (\n-00005740: 7072 6f63 6564 7572 6529 2c20 2050 7265 procedure), Pre\n-00005750: 763a 2047 6574 5f53 656e 645f 5175 6575 v: Get_Send_Queu\n-00005760: 655f 5369 7a65 2028 6675 6e63 7469 6f6e e_Size (function\n-00005770: 292c 2020 5570 3a20 4163 6365 7074 5f53 ), Up: Accept_S\n-00005780: 6f63 6b65 7420 2870 726f 6365 6475 7265 ocket (procedure\n-00005790: 290a 0a47 6574 736f 636b 6f70 7420 2870 )..Getsockopt (p\n-000057a0: 726f 6365 6475 7265 290a 2d2d 2d2d 2d2d rocedure).------\n-000057b0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-000057c0: 0a0a 5055 5250 4f53 450a 2020 2020 2052 ..PURPOSE. R\n-000057d0: 6574 7269 6576 6520 6120 736f 636b 6574 etrieve a socket\n-000057e0: 206f 7074 696f 6e0a 5052 4f54 4f54 5950 option.PROTOTYP\n-000057f0: 450a 2020 2020 2020 2d2d 2053 6f63 6b65 E. -- Socke\n-00005800: 7473 2e47 6574 736f 636b 6f70 743a 2070 ts.Getsockopt: p\n-00005810: 726f 6365 6475 7265 2047 6574 736f 636b rocedure Getsock\n-00005820: 6f70 7420 2853 4f43 4b45 5420 3a20 536f opt (SOCKET : So\n-00005830: 636b 6574 5f46 443b 0a20 2020 2020 2020 cket_FD;. \n-00005840: 2020 2020 2020 2020 4c45 5645 4c20 3a20 LEVEL : \n-00005850: 536f 636b 6574 5f4c 6576 656c 203a 3d20 Socket_Level := \n-00005860: 534f 4c5f 534f 434b 4554 3b0a 2020 2020 SOL_SOCKET;. \n-00005870: 2020 2020 2020 2020 2020 204f 5054 4e41 OPTNA\n-00005880: 4d45 203a 2053 6f63 6b65 745f 4f70 7469 ME : Socket_Opti\n-00005890: 6f6e 3b20 4f50 5456 414c 203a 206f 7574 on; OPTVAL : out\n-000058a0: 2049 6e74 6567 6572 293b 0a0a 5041 5241 Integer);..PARA\n-000058b0: 4d45 5445 5253 0a20 2020 2020 534f 434b METERS. SOCK\n-000058c0: 4554 2020 2020 2069 6e20 2020 2020 2020 ET in \n-000058d0: 2020 496e 6974 6961 6c69 7a65 6420 616e Initialized an\n-000058e0: 6420 626f 756e 6420 736f 636b 6574 206f d bound socket o\n-000058f0: 626a 6563 740a 2020 2020 204c 4556 454c bject. LEVEL\n-00005900: 2020 2020 2020 696e 2020 2020 2020 2020 in \n-00005910: 2050 726f 746f 636f 6c20 6c65 7665 6c0a Protocol level.\n-00005920: 2020 2020 204f 5054 4e41 4d45 2020 2020 OPTNAME \n-00005930: 696e 2020 2020 2020 2020 204f 7074 696f in Optio\n-00005940: 6e20 6e61 6d65 0a20 2020 2020 4f50 5456 n name. OPTV\n-00005950: 414c 2020 2020 206f 7574 2020 2020 2020 AL out \n-00005960: 2020 4f70 7469 6f6e 2076 616c 7565 0a0a Option value..\n-00005970: 4445 5343 5249 5054 494f 4e0a 2020 2020 DESCRIPTION. \n-00005980: 2054 6869 7320 7072 6f63 6564 7572 6520 This procedure \n-00005990: 7265 7472 6965 7665 7320 6f70 7469 6f6e retrieves option\n-000059a0: 7320 6170 706c 6963 6162 6c65 2074 6f20 s applicable to \n-000059b0: 6120 736f 636b 6574 2e20 2050 6c65 6173 a socket. Pleas\n-000059c0: 650a 2020 2020 2073 6565 2079 6f75 7220 e. see your \n-000059d0: 6f70 6572 6174 696e 6720 7379 7374 656d operating system\n-000059e0: 206d 616e 7561 6c20 666f 7220 7573 6162 manual for usab\n-000059f0: 6c65 206c 6576 656c 7320 616e 6420 6f70 le levels and op\n-00005a00: 7469 6f6e 732e 0a0a 2020 2020 2054 776f tions... Two\n-00005a10: 206c 6576 656c 7320 6172 6520 6465 6669 levels are defi\n-00005a20: 6e65 643a 2027 534f 4c5f 534f 434b 4554 ned: 'SOL_SOCKET\n-00005a30: 2720 2874 6865 2064 6566 6175 6c74 2920 ' (the default) \n-00005a40: 616e 640a 2020 2020 2027 4950 5052 4f54 and. 'IPPROT\n-00005a50: 4f5f 4950 272e 2020 5468 6520 6f70 7469 O_IP'. The opti\n-00005a60: 6f6e 7320 6172 6520 2753 4f5f 5245 5553 ons are 'SO_REUS\n-00005a70: 4541 4444 5227 2c20 2753 4f5f 5245 5553 EADDR', 'SO_REUS\n-00005a80: 4550 4f52 5427 2c0a 2020 2020 2027 4950 EPORT',. 'IP\n-00005a90: 5f4d 554c 5449 4341 5354 5f54 544c 272c _MULTICAST_TTL',\n-00005aa0: 2027 4950 5f41 4444 5f4d 454d 4245 5253 'IP_ADD_MEMBERS\n-00005ab0: 4849 5027 2c20 2749 505f 4452 4f50 5f4d HIP', 'IP_DROP_M\n-00005ac0: 454d 4245 5253 4849 5027 2c0a 2020 2020 EMBERSHIP',. \n-00005ad0: 2027 4950 5f4d 554c 5449 4341 5354 5f4c 'IP_MULTICAST_L\n-00005ae0: 4f4f 5027 2c20 2753 4f5f 534e 4442 5546 OOP', 'SO_SNDBUF\n-00005af0: 2720 616e 6420 2749 505f 5243 5642 5546 ' and 'IP_RCVBUF\n-00005b00: 272e 0a0a 2020 2020 204e 6f74 6520 7468 '... Note th\n-00005b10: 6174 2075 6e6c 696b 6520 7468 6569 7220 at unlike their \n-00005b20: 4320 6c61 6e67 7561 6765 2063 6f75 6e74 C language count\n-00005b30: 6572 7061 7274 2c20 2747 6574 736f 636b erpart, 'Getsock\n-00005b40: 6f70 7427 2061 6e64 0a20 2020 2020 2753 opt' and. 'S\n-00005b50: 6574 736f 636b 6f70 7427 2064 6f20 6e6f etsockopt' do no\n-00005b60: 7420 7265 7175 6972 6520 616e 2065 7874 t require an ext\n-00005b70: 7261 2070 6172 616d 6574 6572 2072 6570 ra parameter rep\n-00005b80: 7265 7365 6e74 696e 6720 7468 650a 2020 resenting the. \n-00005b90: 2020 206c 656e 6774 6820 696e 2062 7974 length in byt\n-00005ba0: 6573 206f 6620 7468 6520 6f70 7469 6f6e es of the option\n-00005bb0: 2076 616c 7565 2e20 2041 6461 536f 636b value. AdaSock\n-00005bc0: 6574 7320 6e6f 7773 2074 6865 2072 6967 ets nows the rig\n-00005bd0: 6874 0a20 2020 2020 7369 7a65 2066 6f72 ht. size for\n-00005be0: 2065 7665 7279 206f 7074 696f 6e2e 0a0a every option...\n-00005bf0: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n-00005c00: 6f74 6520 5365 7473 6f63 6b6f 7074 2028 ote Setsockopt (\n-00005c10: 7072 6f63 6564 7572 6529 3a3a 2e0a 0a1f procedure)::....\n-00005c20: 0a46 696c 653a 2061 6461 736f 636b 6574 .File: adasocket\n-00005c30: 732e 696e 666f 2c20 204e 6f64 653a 204c s.info, Node: L\n-00005c40: 6973 7465 6e20 2870 726f 6365 6475 7265 isten (procedure\n-00005c50: 292c 2020 4e65 7874 3a20 4e65 775f 4c69 ), Next: New_Li\n-00005c60: 6e65 2028 7072 6f63 6564 7572 6529 2c20 ne (procedure), \n-00005c70: 2050 7265 763a 2047 6574 736f 636b 6f70 Prev: Getsockop\n-00005c80: 7420 2870 726f 6365 6475 7265 292c 2020 t (procedure), \n-00005c90: 5570 3a20 4163 6365 7074 5f53 6f63 6b65 Up: Accept_Socke\n-00005ca0: 7420 2870 726f 6365 6475 7265 290a 0a4c t (procedure)..L\n-00005cb0: 6973 7465 6e20 2870 726f 6365 6475 7265 isten (procedure\n-00005cc0: 290a 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ).--------------\n-00005cd0: 2d2d 2d2d 0a0a 5055 5250 4f53 450a 2020 ----..PURPOSE. \n-00005ce0: 2020 2045 7374 6162 6c69 7368 2061 206c Establish a l\n-00005cf0: 6973 7465 6e20 7175 6575 650a 5052 4f54 isten queue.PROT\n-00005d00: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n-00005d10: 6f63 6b65 7473 2e4c 6973 7465 6e3a 2070 ockets.Listen: p\n-00005d20: 726f 6365 6475 7265 204c 6973 7465 6e20 rocedure Listen \n-00005d30: 2853 4f43 4b45 5420 3a20 536f 636b 6574 (SOCKET : Socket\n-00005d40: 5f46 443b 0a20 2020 2020 2020 2020 2020 _FD;. \n-00005d50: 2020 2020 5155 4555 455f 5349 5a45 203a QUEUE_SIZE :\n-00005d60: 2050 6f73 6974 6976 6520 3a3d 2035 293b Positive := 5);\n-00005d70: 0a0a 5041 5241 4d45 5445 5253 0a20 2020 ..PARAMETERS. \n-00005d80: 2020 534f 434b 4554 2020 2020 2069 6e20 SOCKET in \n-00005d90: 2020 2020 2020 2020 496e 6974 6961 6c69 Initiali\n-00005da0: 7a65 6420 616e 6420 626f 756e 6420 736f zed and bound so\n-00005db0: 636b 6574 206f 626a 6563 740a 2020 2020 cket object. \n-00005dc0: 2051 5545 5545 5f53 495a 4520 696e 2020 QUEUE_SIZE in \n-00005dd0: 2020 2020 2020 2052 6571 7565 7374 6564 Requested\n-00005de0: 2073 6c6f 7473 2069 6e20 7468 6520 6c69 slots in the li\n-00005df0: 7374 656e 2071 7565 7565 0a0a 4445 5343 sten queue..DESC\n-00005e00: 5249 5054 494f 4e0a 2020 2020 2054 6869 RIPTION. Thi\n-00005e10: 7320 7072 6f63 6564 7572 6520 6573 7461 s procedure esta\n-00005e20: 626c 6973 6865 7320 6120 6c69 7374 656e blishes a listen\n-00005e30: 2071 7565 7565 2061 6674 6572 2061 2054 queue after a T\n-00005e40: 4350 2073 6f63 6b65 7420 6173 0a20 2020 CP socket as. \n-00005e50: 2020 6265 656e 2069 6e69 7469 616c 697a been initializ\n-00005e60: 6564 2061 6e64 2062 6f75 6e64 2e20 2045 ed and bound. E\n-00005e70: 6163 6820 736c 6f74 2069 6e20 7468 6520 ach slot in the \n-00005e80: 7175 6575 6520 6361 6e20 686f 6c64 206f queue can hold o\n-00005e90: 6e65 0a20 2020 2020 696e 636f 6d69 6e67 ne. incoming\n-00005ea0: 2063 6f6e 6e65 6374 696f 6e20 7468 6174 connection that\n-00005eb0: 2068 6173 206e 6f74 2062 6565 6e20 6163 has not been ac\n-00005ec0: 6365 7074 6564 2079 6574 2e20 204e 6f74 cepted yet. Not\n-00005ed0: 6520 7468 6174 206d 6f73 740a 2020 2020 e that most. \n-00005ee0: 206f 7065 7261 7469 6e67 2073 7973 7465 operating syste\n-00005ef0: 6d73 2069 676e 6f72 6520 7175 6575 6520 ms ignore queue \n-00005f00: 7369 7a65 7320 6c61 7267 6572 2074 6861 sizes larger tha\n-00005f10: 6e20 6669 7665 2e0a 0a53 4545 2041 4c53 n five...SEE ALS\n-00005f20: 4f0a 2020 2020 202a 6e6f 7465 2041 6363 O. *note Acc\n-00005f30: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n-00005f40: 6564 7572 6529 3a3a 2c0a 2020 2020 202a edure)::,. *\n-00005f50: 6e6f 7465 2042 696e 6420 2870 726f 6365 note Bind (proce\n+00002e90: 0a0a 5345 4520 414c 534f 0a20 2020 2020 ..SEE ALSO. \n+00002ea0: 2a6e 6f74 6520 4269 6e64 2028 7072 6f63 *note Bind (proc\n+00002eb0: 6564 7572 6529 3a3a 2c0a 2020 2020 202a edure)::,. *\n+00002ec0: 6e6f 7465 204c 6973 7465 6e20 2870 726f note Listen (pro\n+00002ed0: 6365 6475 7265 293a 3a2c 0a20 2020 2020 cedure)::,. \n+00002ee0: 2a6e 6f74 6520 5368 7574 646f 776e 2028 *note Shutdown (\n+00002ef0: 7072 6f63 6564 7572 6529 3a3a 2c0a 2020 procedure)::,. \n+00002f00: 2020 202a 6e6f 7465 2053 6f63 6b65 7420 *note Socket \n+00002f10: 2870 726f 6365 6475 7265 293a 3a2e 0a0a (procedure)::...\n+00002f20: 2a20 4d65 6e75 3a0a 0a2a 2042 696e 6420 * Menu:..* Bind \n+00002f30: 2870 726f 6365 6475 7265 293a 3a0a 2a20 (procedure)::.* \n+00002f40: 436f 6e6e 6563 7420 2870 726f 6365 6475 Connect (procedu\n+00002f50: 7265 293a 3a0a 2a20 4765 7420 2866 756e re)::.* Get (fun\n+00002f60: 6374 696f 6e29 3a3a 0a2a 2047 6574 5f43 ction)::.* Get_C\n+00002f70: 6861 7220 2866 756e 6374 696f 6e29 3a3a har (function)::\n+00002f80: 0a2a 2047 6574 5f4c 696e 6520 2866 756e .* Get_Line (fun\n+00002f90: 6374 696f 6e29 3a3a 0a2a 2047 6574 5f4c ction)::.* Get_L\n+00002fa0: 696e 6520 2870 726f 6365 6475 7265 293a ine (procedure):\n+00002fb0: 3a0a 2a20 4765 745f 5265 6365 6976 655f :.* Get_Receive_\n+00002fc0: 5175 6575 655f 5369 7a65 2028 6675 6e63 Queue_Size (func\n+00002fd0: 7469 6f6e 293a 3a0a 2a20 4765 745f 5365 tion)::.* Get_Se\n+00002fe0: 6e64 5f51 7565 7565 5f53 697a 6520 2866 nd_Queue_Size (f\n+00002ff0: 756e 6374 696f 6e29 3a3a 0a2a 2047 6574 unction)::.* Get\n+00003000: 736f 636b 6f70 7420 2870 726f 6365 6475 sockopt (procedu\n+00003010: 7265 293a 3a0a 2a20 4c69 7374 656e 2028 re)::.* Listen (\n+00003020: 7072 6f63 6564 7572 6529 3a3a 0a2a 204e procedure)::.* N\n+00003030: 6577 5f4c 696e 6520 2870 726f 6365 6475 ew_Line (procedu\n+00003040: 7265 293a 3a0a 2a20 5075 7420 2870 726f re)::.* Put (pro\n+00003050: 6365 6475 7265 293a 3a0a 2a20 5075 745f cedure)::.* Put_\n+00003060: 4c69 6e65 2028 7072 6f63 6564 7572 6529 Line (procedure)\n+00003070: 3a3a 0a2a 2052 6563 6569 7665 2028 6675 ::.* Receive (fu\n+00003080: 6e63 7469 6f6e 293a 3a0a 2a20 5265 6365 nction)::.* Rece\n+00003090: 6976 6520 2870 726f 6365 6475 7265 293a ive (procedure):\n+000030a0: 3a0a 2a20 5265 6365 6976 655f 536f 6d65 :.* Receive_Some\n+000030b0: 2028 7072 6f63 6564 7572 6529 3a3a 0a2a (procedure)::.*\n+000030c0: 2053 656e 6420 2870 726f 6365 6475 7265 Send (procedure\n+000030d0: 293a 3a0a 2a20 5365 745f 4275 6666 6572 )::.* Set_Buffer\n+000030e0: 2028 7072 6f63 6564 7572 6529 3a3a 0a2a (procedure)::.*\n+000030f0: 2053 6574 736f 636b 6f70 7420 2870 726f Setsockopt (pro\n+00003100: 6365 6475 7265 293a 3a0a 2a20 5368 7574 cedure)::.* Shut\n+00003110: 646f 776e 2028 7072 6f63 6564 7572 6529 down (procedure)\n+00003120: 3a3a 0a2a 2053 6f63 6b65 7420 2870 726f ::.* Socket (pro\n+00003130: 6365 6475 7265 293a 3a0a 2a20 556e 7365 cedure)::.* Unse\n+00003140: 745f 4275 6666 6572 2028 7072 6f63 6564 t_Buffer (proced\n+00003150: 7572 6529 3a3a 0a0a 1f0a 4669 6c65 3a20 ure)::....File: \n+00003160: 6164 6173 6f63 6b65 7473 2e69 6e66 6f2c adasockets.info,\n+00003170: 2020 4e6f 6465 3a20 4269 6e64 2028 7072 Node: Bind (pr\n+00003180: 6f63 6564 7572 6529 2c20 204e 6578 743a ocedure), Next:\n+00003190: 2043 6f6e 6e65 6374 2028 7072 6f63 6564 Connect (proced\n+000031a0: 7572 6529 2c20 2050 7265 763a 2041 6363 ure), Prev: Acc\n+000031b0: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n+000031c0: 6564 7572 6529 2c20 2055 703a 2041 6363 edure), Up: Acc\n+000031d0: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n+000031e0: 6564 7572 6529 0a0a 4269 6e64 2028 7072 edure)..Bind (pr\n+000031f0: 6f63 6564 7572 6529 0a2d 2d2d 2d2d 2d2d ocedure).-------\n+00003200: 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 5552 504f ---------..PURPO\n+00003210: 5345 0a20 2020 2020 4173 736f 6369 6174 SE. Associat\n+00003220: 6520 6120 6c6f 6361 6c20 706f 7274 2074 e a local port t\n+00003230: 6f20 6120 736f 636b 6574 0a50 524f 544f o a socket.PROTO\n+00003240: 5459 5045 0a20 2020 2020 202d 2d20 536f TYPE. -- So\n+00003250: 636b 6574 732e 4269 6e64 3a20 7072 6f63 ckets.Bind: proc\n+00003260: 6564 7572 6520 4269 6e64 2028 534f 434b edure Bind (SOCK\n+00003270: 4554 203a 2053 6f63 6b65 745f 4644 3b0a ET : Socket_FD;.\n+00003280: 2020 2020 2020 2020 2020 2020 2020 2050 P\n+00003290: 4f52 5420 3a20 4e61 7475 7261 6c3b 2048 ORT : Natural; H\n+000032a0: 4f53 5420 3a20 5374 7269 6e67 203a 3d20 OST : String := \n+000032b0: 2222 293b 0a0a 5041 5241 4d45 5445 5253 \"\");..PARAMETERS\n+000032c0: 0a20 2020 2020 534f 434b 4554 2020 2020 . SOCKET \n+000032d0: 2069 6e20 2020 2020 2020 2020 496e 6974 in Init\n+000032e0: 6961 6c69 7a65 6420 736f 636b 6574 206f ialized socket o\n+000032f0: 626a 6563 740a 2020 2020 2050 4f52 5420 bject. PORT \n+00003300: 2020 2020 2020 696e 2020 2020 2020 2020 in \n+00003310: 204c 6f63 616c 2070 6f72 7420 746f 2062 Local port to b\n+00003320: 696e 6420 746f 0a20 2020 2020 484f 5354 ind to. HOST\n+00003330: 2020 2020 2020 2069 6e20 2020 2020 2020 in \n+00003340: 2020 4c6f 6361 6c20 696e 7465 7266 6163 Local interfac\n+00003350: 6520 746f 2062 696e 6420 746f 0a0a 4445 e to bind to..DE\n+00003360: 5343 5249 5054 494f 4e0a 2020 2020 2054 SCRIPTION. T\n+00003370: 6869 7320 7072 6f63 6564 7572 6520 7265 his procedure re\n+00003380: 7175 6573 7473 2061 206c 6f63 616c 2070 quests a local p\n+00003390: 6f72 7420 6672 6f6d 2074 6865 206f 7065 ort from the ope\n+000033a0: 7261 7469 6e67 2073 7973 7465 6d2e 2020 rating system. \n+000033b0: 4966 0a20 2020 2020 3020 6973 2067 6976 If. 0 is giv\n+000033c0: 656e 2069 6e20 504f 5254 2c20 7468 6520 en in PORT, the \n+000033d0: 7379 7374 656d 2077 696c 6c20 6173 7369 system will assi\n+000033e0: 676e 2061 2066 7265 6520 706f 7274 2077 gn a free port w\n+000033f0: 686f 7365 206e 756d 6265 720a 2020 2020 hose number. \n+00003400: 2063 616e 206c 6174 6572 2062 6520 7265 can later be re\n+00003410: 7472 6965 7665 6420 7573 696e 6720 2a6e trieved using *n\n+00003420: 6f74 6520 4765 745f 536f 636b 5f50 6f72 ote Get_Sock_Por\n+00003430: 7420 2866 756e 6374 696f 6e29 3a3a 2e0a t (function)::..\n+00003440: 2020 2020 2041 6c73 6f2c 206d 6f73 7420 Also, most \n+00003450: 6f70 6572 6174 696e 6720 7379 7374 656d operating system\n+00003460: 7320 7265 7175 6972 6520 7370 6563 6961 s require specia\n+00003470: 6c20 7072 6976 696c 6567 6573 2069 6620 l privileges if \n+00003480: 796f 7520 7761 6e74 0a20 2020 2020 746f you want. to\n+00003490: 2062 696e 6420 746f 2070 6f72 7473 2062 bind to ports b\n+000034a0: 656c 6f77 2031 3032 342e 0a0a 2020 2020 elow 1024... \n+000034b0: 2049 6620 484f 5354 2069 7320 6e6f 7420 If HOST is not \n+000034c0: 7468 6520 656d 7074 7920 7374 7269 6e67 the empty string\n+000034d0: 2c20 6974 206d 7573 7420 636f 6e74 6169 , it must contai\n+000034e0: 6e20 7468 6520 4950 2061 6464 7265 7373 n the IP address\n+000034f0: 206f 660a 2020 2020 2061 206c 6f63 616c of. a local\n+00003500: 2069 6e74 6572 6661 6365 2074 6f20 6269 interface to bi\n+00003510: 6e64 2074 6f2c 206f 7220 6120 6e61 6d65 nd to, or a name\n+00003520: 2077 6869 6368 2072 6573 6f6c 7665 7320 which resolves \n+00003530: 696e 746f 2073 7563 6820 616e 0a20 2020 into such an. \n+00003540: 2020 6164 6472 6573 732e 2020 4966 2061 address. If a\n+00003550: 6e20 656d 7074 7920 7374 7269 6e67 2069 n empty string i\n+00003560: 7320 6769 7665 6e20 2874 6865 2064 6566 s given (the def\n+00003570: 6175 6c74 292c 2074 6865 2073 6f63 6b65 ault), the socke\n+00003580: 740a 2020 2020 2077 696c 6c20 6265 2062 t. will be b\n+00003590: 6f75 6e64 2074 6f20 616c 6c20 7468 6520 ound to all the \n+000035a0: 6176 6169 6c61 626c 6520 696e 7465 7266 available interf\n+000035b0: 6163 6573 2e0a 0a45 5843 4550 5449 4f4e aces...EXCEPTION\n+000035c0: 530a 2020 2020 2027 536f 636b 6574 5f45 S. 'Socket_E\n+000035d0: 7272 6f72 2720 2020 2020 5265 7175 6573 rror' Reques\n+000035e0: 7465 6420 706f 7274 206f 7220 696e 7465 ted port or inte\n+000035f0: 7266 6163 6520 6e6f 7420 6176 6169 6c61 rface not availa\n+00003600: 626c 650a 0a53 4545 2041 4c53 4f0a 2020 ble..SEE ALSO. \n+00003610: 2020 202a 6e6f 7465 204c 6973 7465 6e20 *note Listen \n+00003620: 2870 726f 6365 6475 7265 293a 3a2c 0a20 (procedure)::,. \n+00003630: 2020 2020 2a6e 6f74 6520 536f 636b 6574 *note Socket\n+00003640: 2028 7072 6f63 6564 7572 6529 3a3a 2e0a (procedure)::..\n+00003650: 0a1f 0a46 696c 653a 2061 6461 736f 636b ...File: adasock\n+00003660: 6574 732e 696e 666f 2c20 204e 6f64 653a ets.info, Node:\n+00003670: 2043 6f6e 6e65 6374 2028 7072 6f63 6564 Connect (proced\n+00003680: 7572 6529 2c20 204e 6578 743a 2047 6574 ure), Next: Get\n+00003690: 2028 6675 6e63 7469 6f6e 292c 2020 5072 (function), Pr\n+000036a0: 6576 3a20 4269 6e64 2028 7072 6f63 6564 ev: Bind (proced\n+000036b0: 7572 6529 2c20 2055 703a 2041 6363 6570 ure), Up: Accep\n+000036c0: 745f 536f 636b 6574 2028 7072 6f63 6564 t_Socket (proced\n+000036d0: 7572 6529 0a0a 436f 6e6e 6563 7420 2870 ure)..Connect (p\n+000036e0: 726f 6365 6475 7265 290a 2d2d 2d2d 2d2d rocedure).------\n+000036f0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 -------------..P\n+00003700: 5552 504f 5345 0a20 2020 2020 436f 6e6e URPOSE. Conn\n+00003710: 6563 7420 6120 736f 636b 6574 206f 6e20 ect a socket on \n+00003720: 6120 6769 7665 6e20 686f 7374 2f70 6f72 a given host/por\n+00003730: 740a 5052 4f54 4f54 5950 450a 2020 2020 t.PROTOTYPE. \n+00003740: 2020 2d2d 2053 6f63 6b65 7473 2e43 6f6e -- Sockets.Con\n+00003750: 6e65 6374 3a20 7072 6f63 6564 7572 6520 nect: procedure \n+00003760: 436f 6e6e 6563 7420 2853 4f43 4b45 5420 Connect (SOCKET \n+00003770: 3a20 536f 636b 6574 5f46 443b 0a20 2020 : Socket_FD;. \n+00003780: 2020 2020 2020 2020 2020 2020 484f 5354 HOST\n+00003790: 203a 2053 7472 696e 673b 2050 4f52 5420 : String; PORT \n+000037a0: 3a20 506f 7369 7469 7665 293b 0a0a 5041 : Positive);..PA\n+000037b0: 5241 4d45 5445 5253 0a20 2020 2020 534f RAMETERS. SO\n+000037c0: 434b 4554 2020 2020 2069 6e20 2020 2020 CKET in \n+000037d0: 2020 2020 496e 6974 6961 6c69 7a65 6420 Initialized \n+000037e0: 736f 636b 6574 206f 626a 6563 740a 2020 socket object. \n+000037f0: 2020 2048 4f53 5420 2020 2020 2020 696e HOST in\n+00003800: 2020 2020 2020 2020 2048 6f73 7420 746f Host to\n+00003810: 2063 6f6e 6e65 6374 2074 6f0a 2020 2020 connect to. \n+00003820: 2050 4f52 5420 2020 2020 2020 696e 2020 PORT in \n+00003830: 2020 2020 2020 2050 6f72 7420 746f 2063 Port to c\n+00003840: 6f6e 6e65 6374 2074 6f0a 0a44 4553 4352 onnect to..DESCR\n+00003850: 4950 5449 4f4e 0a20 2020 2020 5468 6973 IPTION. This\n+00003860: 2070 726f 6365 6475 7265 2063 6f6e 6e65 procedure conne\n+00003870: 6374 7320 616e 2069 6e69 7469 616c 697a cts an initializ\n+00003880: 6564 2073 6f63 6b65 7420 746f 2061 2067 ed socket to a g\n+00003890: 6976 656e 2068 6f73 7420 6f6e 2061 0a20 iven host on a. \n+000038a0: 2020 2020 6769 7665 6e20 706f 7274 2e20 given port. \n+000038b0: 2049 6e20 7468 6520 6361 7365 206f 6620 In the case of \n+000038c0: 6120 5443 5020 736f 636b 6574 2c20 6120 a TCP socket, a \n+000038d0: 7265 616c 2063 6f6e 6e65 6374 696f 6e20 real connection \n+000038e0: 6973 0a20 2020 2020 6174 7465 6d70 7465 is. attempte\n+000038f0: 642e 2020 496e 2074 6865 2063 6173 6520 d. In the case \n+00003900: 6f66 2061 2055 4450 2073 6f63 6b65 742c of a UDP socket,\n+00003910: 206e 6f20 636f 6e6e 6563 7469 6f6e 2074 no connection t\n+00003920: 616b 6573 2070 6c61 6365 0a20 2020 2020 akes place. \n+00003930: 6275 7420 7468 6520 656e 6470 6f69 6e74 but the endpoint\n+00003940: 2063 6f6f 7264 696e 6174 6573 2061 7265 coordinates are\n+00003950: 2072 6563 6f72 6465 642e 0a0a 4558 4345 recorded...EXCE\n+00003960: 5054 494f 4e53 0a20 2020 2020 2743 6f6e PTIONS. 'Con\n+00003970: 6e65 6374 696f 6e5f 5265 6675 7365 6427 nection_Refused'\n+00003980: 5468 6520 636f 6e6e 6563 7469 6f6e 2068 The connection h\n+00003990: 6173 2062 6565 6e20 7265 6675 7365 6420 as been refused \n+000039a0: 6279 2074 6865 0a20 2020 2020 2020 2020 by the. \n+000039b0: 2020 2020 2020 2020 2020 2020 2020 2073 s\n+000039c0: 6572 7665 720a 2020 2020 2027 536f 636b erver. 'Sock\n+000039d0: 6574 5f45 7272 6f72 2720 2020 2020 416e et_Error' An\n+000039e0: 6f74 6865 7220 6572 726f 7220 6f63 6375 other error occu\n+000039f0: 7272 6564 2064 7572 696e 6720 7468 650a rred during the.\n+00003a00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00003a10: 2020 2020 2020 2020 636f 6e6e 6563 7469 connecti\n+00003a20: 6f6e 0a0a 4558 414d 504c 450a 2020 2020 on..EXAMPLE. \n+00003a30: 2020 2020 2020 6465 636c 6172 650a 2020 declare. \n+00003a40: 2020 2020 2020 2020 2020 2053 6f63 6b20 Sock \n+00003a50: 3a20 536f 636b 6574 5f46 443b 0a20 2020 : Socket_FD;. \n+00003a60: 2020 2020 2020 2062 6567 696e 0a20 2020 begin. \n+00003a70: 2020 2020 2020 2020 2020 2d2d 2043 7265 -- Cre\n+00003a80: 6174 6520 6120 5443 5020 736f 636b 6574 ate a TCP socket\n+00003a90: 0a20 2020 2020 2020 2020 2020 2020 536f . So\n+00003aa0: 636b 6574 2028 536f 636b 2c20 5046 5f49 cket (Sock, PF_I\n+00003ab0: 4e45 542c 2053 4f43 4b5f 5354 5245 414d NET, SOCK_STREAM\n+00003ac0: 293b 0a20 2020 2020 2020 2020 2020 2020 );. \n+00003ad0: 2d2d 2043 6f6e 6e65 6374 2069 7420 746f -- Connect it to\n+00003ae0: 2072 6663 3131 3439 2e6e 6574 2773 206d rfc1149.net's m\n+00003af0: 6169 6c20 7365 7276 6572 0a20 2020 2020 ail server. \n+00003b00: 2020 2020 2020 2020 436f 6e6e 6563 7420 Connect \n+00003b10: 2853 6f63 6b2c 2022 6d61 696c 2e72 6663 (Sock, \"mail.rfc\n+00003b20: 3131 3439 2e6e 6574 222c 2032 3529 3b0a 1149.net\", 25);.\n+00003b30: 2020 2020 2020 2020 2020 2020 202d 2d20 -- \n+00003b40: 446f 2061 206d 6169 6c20 7472 616e 7361 Do a mail transa\n+00003b50: 6374 696f 6e20 7468 656e 2063 6c6f 7365 ction then close\n+00003b60: 2074 6865 2073 6f63 6b65 740a 2020 2020 the socket. \n+00003b70: 2020 2020 2020 2020 205b 2e2e 2e5d 0a20 [...]. \n+00003b80: 2020 2020 2020 2020 2065 6e64 3b0a 0a53 end;..S\n+00003b90: 4545 2041 4c53 4f0a 2020 2020 202a 6e6f EE ALSO. *no\n+00003ba0: 7465 2053 6f63 6b65 7420 2870 726f 6365 te Socket (proce\n+00003bb0: 6475 7265 293a 3a2e 0a0a 1f0a 4669 6c65 dure)::.....File\n+00003bc0: 3a20 6164 6173 6f63 6b65 7473 2e69 6e66 : adasockets.inf\n+00003bd0: 6f2c 2020 4e6f 6465 3a20 4765 7420 2866 o, Node: Get (f\n+00003be0: 756e 6374 696f 6e29 2c20 204e 6578 743a unction), Next:\n+00003bf0: 2047 6574 5f43 6861 7220 2866 756e 6374 Get_Char (funct\n+00003c00: 696f 6e29 2c20 2050 7265 763a 2043 6f6e ion), Prev: Con\n+00003c10: 6e65 6374 2028 7072 6f63 6564 7572 6529 nect (procedure)\n+00003c20: 2c20 2055 703a 2041 6363 6570 745f 536f , Up: Accept_So\n+00003c30: 636b 6574 2028 7072 6f63 6564 7572 6529 cket (procedure)\n+00003c40: 0a0a 4765 7420 2866 756e 6374 696f 6e29 ..Get (function)\n+00003c50: 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a .--------------.\n+00003c60: 0a50 5552 504f 5345 0a20 2020 2020 4765 .PURPOSE. Ge\n+00003c70: 7420 6120 7374 7269 6e67 2066 726f 6d20 t a string from \n+00003c80: 6120 7265 6d6f 7465 2068 6f73 740a 5052 a remote host.PR\n+00003c90: 4f54 4f54 5950 450a 2020 2020 2020 2d2d OTOTYPE. --\n+00003ca0: 2053 6f63 6b65 7473 2e47 6574 3a20 6675 Sockets.Get: fu\n+00003cb0: 6e63 7469 6f6e 2047 6574 2028 534f 434b nction Get (SOCK\n+00003cc0: 4554 203a 2053 6f63 6b65 745f 4644 2743 ET : Socket_FD'C\n+00003cd0: 6c61 7373 290a 2020 2020 2020 2020 2020 lass). \n+00003ce0: 2020 2020 2072 6574 7572 6e20 5374 7269 return Stri\n+00003cf0: 6e67 3b0a 0a50 4152 414d 4554 4552 530a ng;..PARAMETERS.\n+00003d00: 2020 2020 2053 4f43 4b45 5420 2020 2020 SOCKET \n+00003d10: 696e 2020 2020 2020 2020 2049 6e69 7469 in Initi\n+00003d20: 616c 697a 6564 2061 6e64 2063 6f6e 6e65 alized and conne\n+00003d30: 6374 6564 2073 6f63 6b65 7420 6f62 6a65 cted socket obje\n+00003d40: 6374 0a0a 5245 5455 524e 2056 414c 5545 ct..RETURN VALUE\n+00003d50: 0a20 2020 2020 536f 6d65 2063 6861 7261 . Some chara\n+00003d60: 6374 6572 7320 7468 6174 2068 6176 6520 cters that have \n+00003d70: 6265 656e 2072 6563 6569 7665 640a 0a44 been received..D\n+00003d80: 4553 4352 4950 5449 4f4e 0a20 2020 2020 ESCRIPTION. \n+00003d90: 5468 6973 2066 756e 6374 696f 6e20 7265 This function re\n+00003da0: 6365 6976 6573 2073 6f6d 6520 6368 6172 ceives some char\n+00003db0: 6163 7465 7273 2066 726f 6d20 6120 7265 acters from a re\n+00003dc0: 6d6f 7465 2068 6f73 742e 2020 4173 2073 mote host. As s\n+00003dd0: 6f6f 6e0a 2020 2020 2074 6861 7420 6174 oon. that at\n+00003de0: 206c 6561 7374 206f 6e65 2063 6861 7261 least one chara\n+00003df0: 6374 6572 2069 7320 6176 6169 6c61 626c cter is availabl\n+00003e00: 652c 2074 6865 2063 7572 7265 6e74 2072 e, the current r\n+00003e10: 6563 6570 7469 6f6e 0a20 2020 2020 6275 eception. bu\n+00003e20: 6666 6572 2069 7320 7265 7475 726e 6564 ffer is returned\n+00003e30: 2e0a 0a20 2020 2020 5468 6572 6520 6973 ... There is\n+00003e40: 2075 7375 616c 6c79 206c 6974 746c 6520 usually little \n+00003e50: 6761 696e 2069 6e20 7573 696e 6720 7468 gain in using th\n+00003e60: 6973 2066 756e 6374 696f 6e20 7768 6f73 is function whos\n+00003e70: 6520 6265 6861 7669 6f75 720a 2020 2020 e behaviour. \n+00003e80: 2069 7320 636f 6d70 6172 6162 6c65 2074 is comparable t\n+00003e90: 6f20 7468 6520 6f6e 6520 6f66 202a 6e6f o the one of *no\n+00003ea0: 7465 2052 6563 6569 7665 2028 6675 6e63 te Receive (func\n+00003eb0: 7469 6f6e 293a 3a2e 2020 4f74 6865 720a tion)::. Other.\n+00003ec0: 2020 2020 2066 756e 6374 696f 6e73 2073 functions s\n+00003ed0: 7563 6820 6173 202a 6e6f 7465 2047 6574 uch as *note Get\n+00003ee0: 5f43 6861 7220 2866 756e 6374 696f 6e29 _Char (function)\n+00003ef0: 3a3a 2c20 6f72 202a 6e6f 7465 2047 6574 ::, or *note Get\n+00003f00: 5f4c 696e 650a 2020 2020 2028 6675 6e63 _Line. (func\n+00003f10: 7469 6f6e 293a 3a2c 2061 6c6c 6f77 206d tion)::, allow m\n+00003f20: 6f72 6520 7374 7275 6374 7572 6564 2070 ore structured p\n+00003f30: 726f 6772 616d 6d69 6e67 2e0a 0a20 2020 rogramming... \n+00003f40: 2020 486f 7765 7665 722c 2074 6869 7320 However, this \n+00003f50: 6675 6e63 7469 6f6e 206d 6179 2062 6520 function may be \n+00003f60: 7573 6564 2074 6f20 6176 6f69 6420 6c6f used to avoid lo\n+00003f70: 6f73 696e 6720 6368 6172 6163 7465 7273 osing characters\n+00003f80: 2077 6865 6e0a 2020 2020 2063 616c 6c69 when. calli\n+00003f90: 6e67 202a 6e6f 7465 2055 6e73 6574 5f42 ng *note Unset_B\n+00003fa0: 7566 6665 7220 2870 726f 6365 6475 7265 uffer (procedure\n+00003fb0: 293a 3a2c 2069 662c 2066 6f72 2073 6f6d )::, if, for som\n+00003fc0: 6520 7265 6173 6f6e 2c20 7468 650a 2020 e reason, the. \n+00003fd0: 2020 2072 656d 6f74 6520 686f 7374 206d remote host m\n+00003fe0: 6179 2068 6176 6520 7365 6e74 2073 6f6d ay have sent som\n+00003ff0: 652e 0a0a 4558 4345 5054 494f 4e53 0a20 e...EXCEPTIONS. \n+00004000: 2020 2020 2743 6f6e 6e65 6374 696f 6e5f 'Connection_\n+00004010: 436c 6f73 6564 2750 6565 7220 6861 7320 Closed'Peer has \n+00004020: 636c 6f73 6564 2074 6865 2063 6f6e 6e65 closed the conne\n+00004030: 6374 696f 6e20 6265 666f 7265 0a20 2020 ction before. \n+00004040: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00004050: 2020 2020 2073 656e 6469 6e67 2061 6e79 sending any\n+00004060: 2064 6174 610a 0a1f 0a46 696c 653a 2061 data....File: a\n+00004070: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n+00004080: 204e 6f64 653a 2047 6574 5f43 6861 7220 Node: Get_Char \n+00004090: 2866 756e 6374 696f 6e29 2c20 204e 6578 (function), Nex\n+000040a0: 743a 2047 6574 5f4c 696e 6520 2866 756e t: Get_Line (fun\n+000040b0: 6374 696f 6e29 2c20 2050 7265 763a 2047 ction), Prev: G\n+000040c0: 6574 2028 6675 6e63 7469 6f6e 292c 2020 et (function), \n+000040d0: 5570 3a20 4163 6365 7074 5f53 6f63 6b65 Up: Accept_Socke\n+000040e0: 7420 2870 726f 6365 6475 7265 290a 0a47 t (procedure)..G\n+000040f0: 6574 5f43 6861 7220 2866 756e 6374 696f et_Char (functio\n+00004100: 6e29 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d n).-------------\n+00004110: 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 450a ------..PURPOSE.\n+00004120: 2020 2020 2047 6574 2061 2063 6861 7261 Get a chara\n+00004130: 6374 6572 2066 726f 6d20 6120 7265 6d6f cter from a remo\n+00004140: 7465 2068 6f73 740a 5052 4f54 4f54 5950 te host.PROTOTYP\n+00004150: 450a 2020 2020 2020 2d2d 2053 6f63 6b65 E. -- Socke\n+00004160: 7473 2e47 6574 5f43 6861 723a 2066 756e ts.Get_Char: fun\n+00004170: 6374 696f 6e20 4765 745f 4368 6172 2028 ction Get_Char (\n+00004180: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n+00004190: 4644 2743 6c61 7373 290a 2020 2020 2020 FD'Class). \n+000041a0: 2020 2020 2020 2020 2072 6574 7572 6e20 return \n+000041b0: 4368 6172 6163 7465 723b 0a0a 5041 5241 Character;..PARA\n+000041c0: 4d45 5445 5253 0a20 2020 2020 534f 434b METERS. SOCK\n+000041d0: 4554 2020 2020 2069 6e20 2020 2020 2020 ET in \n+000041e0: 2020 496e 6974 6961 6c69 7a65 6420 616e Initialized an\n+000041f0: 6420 636f 6e6e 6563 7465 6420 736f 636b d connected sock\n+00004200: 6574 206f 626a 6563 740a 0a52 4554 5552 et object..RETUR\n+00004210: 4e20 5641 4c55 450a 2020 2020 204f 6e65 N VALUE. One\n+00004220: 2063 6861 7261 6374 6572 2073 656e 7420 character sent \n+00004230: 6279 2074 6865 2072 656d 6f74 6520 686f by the remote ho\n+00004240: 7374 0a0a 4445 5343 5249 5054 494f 4e0a st..DESCRIPTION.\n+00004250: 2020 2020 2054 6869 7320 6675 6e63 7469 This functi\n+00004260: 6f6e 2072 6563 6569 7665 7320 6578 6163 on receives exac\n+00004270: 746c 7920 6f6e 6520 6368 6172 6163 7465 tly one characte\n+00004280: 7220 6672 6f6d 2074 6865 2072 656d 6f74 r from the remot\n+00004290: 6520 686f 7374 2e0a 0a45 5843 4550 5449 e host...EXCEPTI\n+000042a0: 4f4e 530a 2020 2020 2027 436f 6e6e 6563 ONS. 'Connec\n+000042b0: 7469 6f6e 5f43 6c6f 7365 6427 5065 6572 tion_Closed'Peer\n+000042c0: 2068 6173 2063 6c6f 7365 6420 7468 6520 has closed the \n+000042d0: 636f 6e6e 6563 7469 6f6e 2062 6566 6f72 connection befor\n+000042e0: 650a 2020 2020 2020 2020 2020 2020 2020 e. \n+000042f0: 2020 2020 2020 2020 2020 7365 6e64 696e sendin\n+00004300: 6720 7468 6520 6368 6172 6163 7465 720a g the character.\n+00004310: 0a53 4545 2041 4c53 4f0a 2020 2020 202a .SEE ALSO. *\n+00004320: 6e6f 7465 2047 6574 2028 6675 6e63 7469 note Get (functi\n+00004330: 6f6e 293a 3a2c 0a20 2020 2020 2a6e 6f74 on)::,. *not\n+00004340: 6520 4765 745f 4c69 6e65 2028 6675 6e63 e Get_Line (func\n+00004350: 7469 6f6e 293a 3a2c 0a20 2020 2020 2a6e tion)::,. *n\n+00004360: 6f74 6520 4765 745f 4c69 6e65 2028 7072 ote Get_Line (pr\n+00004370: 6f63 6564 7572 6529 3a3a 2c0a 2020 2020 ocedure)::,. \n+00004380: 202a 6e6f 7465 2052 6563 6569 7665 2028 *note Receive (\n+00004390: 7072 6f63 6564 7572 6529 3a3a 2c0a 2020 procedure)::,. \n+000043a0: 2020 202a 6e6f 7465 2053 6574 5f42 7566 *note Set_Buf\n+000043b0: 6665 7220 2870 726f 6365 6475 7265 293a fer (procedure):\n+000043c0: 3a2e 0a0a 1f0a 4669 6c65 3a20 6164 6173 :.....File: adas\n+000043d0: 6f63 6b65 7473 2e69 6e66 6f2c 2020 4e6f ockets.info, No\n+000043e0: 6465 3a20 4765 745f 4c69 6e65 2028 6675 de: Get_Line (fu\n+000043f0: 6e63 7469 6f6e 292c 2020 4e65 7874 3a20 nction), Next: \n+00004400: 4765 745f 4c69 6e65 2028 7072 6f63 6564 Get_Line (proced\n+00004410: 7572 6529 2c20 2050 7265 763a 2047 6574 ure), Prev: Get\n+00004420: 5f43 6861 7220 2866 756e 6374 696f 6e29 _Char (function)\n+00004430: 2c20 2055 703a 2041 6363 6570 745f 536f , Up: Accept_So\n+00004440: 636b 6574 2028 7072 6f63 6564 7572 6529 cket (procedure)\n+00004450: 0a0a 4765 745f 4c69 6e65 2028 6675 6e63 ..Get_Line (func\n+00004460: 7469 6f6e 290a 2d2d 2d2d 2d2d 2d2d 2d2d tion).----------\n+00004470: 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 5552 504f ---------..PURPO\n+00004480: 5345 0a20 2020 2020 4765 7420 6120 7768 SE. Get a wh\n+00004490: 6f6c 6520 6c69 6e65 2066 726f 6d20 6120 ole line from a \n+000044a0: 7265 6d6f 7465 2068 6f73 740a 5052 4f54 remote host.PROT\n+000044b0: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n+000044c0: 6f63 6b65 7473 2e47 6574 5f4c 696e 653a ockets.Get_Line:\n+000044d0: 2066 756e 6374 696f 6e20 4765 745f 4c69 function Get_Li\n+000044e0: 6e65 2028 534f 434b 4554 203a 2053 6f63 ne (SOCKET : Soc\n+000044f0: 6b65 745f 4644 2743 6c61 7373 3b0a 2020 ket_FD'Class;. \n+00004500: 2020 2020 2020 2020 2020 2020 204d 4158 MAX\n+00004510: 5f4c 454e 4754 4820 3a20 506f 7369 7469 _LENGTH : Positi\n+00004520: 7665 203a 3d20 3230 3438 290a 2020 2020 ve := 2048). \n+00004530: 2020 2020 2020 2020 2020 2072 6574 7572 retur\n+00004540: 6e20 5374 7269 6e67 3b0a 0a50 4152 414d n String;..PARAM\n+00004550: 4554 4552 530a 2020 2020 2053 4f43 4b45 ETERS. SOCKE\n+00004560: 5420 2020 2020 696e 2020 2020 2020 2020 T in \n+00004570: 2049 6e69 7469 616c 697a 6564 2061 6e64 Initialized and\n+00004580: 2063 6f6e 6e65 6374 6564 2073 6f63 6b65 connected socke\n+00004590: 7420 6f62 6a65 6374 0a20 2020 2020 4d41 t object. MA\n+000045a0: 585f 4c45 4e47 5448 2069 6e20 2020 2020 X_LENGTH in \n+000045b0: 2020 2020 4d61 7869 6d75 6d20 7265 7475 Maximum retu\n+000045c0: 726e 6564 206c 696e 6520 6c65 6e67 7468 rned line length\n+000045d0: 0a0a 5245 5455 524e 2056 414c 5545 0a20 ..RETURN VALUE. \n+000045e0: 2020 2020 4120 6c69 6e65 2077 6974 686f A line witho\n+000045f0: 7574 2074 6865 2043 5220 616e 6420 4c46 ut the CR and LF\n+00004600: 2073 6570 6172 6174 6f72 730a 0a44 4553 separators..DES\n+00004610: 4352 4950 5449 4f4e 0a20 2020 2020 5468 CRIPTION. Th\n+00004620: 6973 2066 756e 6374 696f 6e20 7265 6365 is function rece\n+00004630: 6976 6573 206f 6e65 206c 696e 6520 6672 ives one line fr\n+00004640: 6f6d 2074 6865 2072 656d 6f74 6520 686f om the remote ho\n+00004650: 7374 2e20 2041 206c 696e 650a 2020 2020 st. A line. \n+00004660: 2063 6f6e 7369 7374 7320 696e 746f 207a consists into z\n+00004670: 6572 6f20 6f72 206d 6f72 6520 6368 6172 ero or more char\n+00004680: 6163 7465 7273 2066 6f6c 6c6f 7765 6420 acters followed \n+00004690: 6279 2061 6e20 6f70 7469 6f6e 616c 2043 by an optional C\n+000046a0: 520a 2020 2020 2061 6e64 2062 7920 6120 R. and by a \n+000046b0: 4c46 2e20 5468 6f73 6520 7465 726d 696e LF. Those termin\n+000046c0: 6174 6f72 7320 6172 6520 7374 7269 7070 ators are stripp\n+000046d0: 6564 2062 6566 6f72 6520 7468 6520 6c69 ed before the li\n+000046e0: 6e65 2069 730a 2020 2020 2072 6574 7572 ne is. retur\n+000046f0: 6e65 642e 0a0a 2020 2020 2054 6869 7320 ned... This \n+00004700: 6675 6e63 7469 6f6e 2062 6c6f 636b 7320 function blocks \n+00004710: 756e 7469 6c20 6f6e 6520 6675 6c6c 206c until one full l\n+00004720: 696e 6520 6861 7320 6265 656e 2072 6563 ine has been rec\n+00004730: 6569 7665 642e 2020 5468 650a 2020 2020 eived. The. \n+00004740: 206c 696e 6520 6c65 6e67 7468 2069 7320 line length is \n+00004750: 6c69 6d69 7465 6420 7769 7468 2074 6865 limited with the\n+00004760: 2076 616c 7565 206f 6620 7468 6520 4d61 value of the Ma\n+00004770: 785f 4c65 6e67 7468 2061 7267 756d 656e x_Length argumen\n+00004780: 742c 0a20 2020 2020 746f 2061 766f 6964 t,. to avoid\n+00004790: 2065 7868 6175 7374 696f 6e20 6f66 2074 exhaustion of t\n+000047a0: 6865 2073 6563 6f6e 6461 7279 2073 7461 he secondary sta\n+000047b0: 636b 2e0a 0a45 5843 4550 5449 4f4e 530a ck...EXCEPTIONS.\n+000047c0: 2020 2020 2027 436f 6e6e 6563 7469 6f6e 'Connection\n+000047d0: 5f43 6c6f 7365 6427 5065 6572 2068 6173 _Closed'Peer has\n+000047e0: 2063 6c6f 7365 6420 7468 6520 636f 6e6e closed the conn\n+000047f0: 6563 7469 6f6e 2062 6566 6f72 650a 2020 ection before. \n+00004800: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00004810: 2020 2020 2020 7365 6e64 696e 6720 6120 sending a \n+00004820: 7768 6f6c 6520 6c69 6e65 0a0a 5345 4520 whole line..SEE \n+00004830: 414c 534f 0a20 2020 2020 2a6e 6f74 6520 ALSO. *note \n+00004840: 4765 7420 2866 756e 6374 696f 6e29 3a3a Get (function)::\n+00004850: 2c0a 2020 2020 202a 6e6f 7465 2047 6574 ,. *note Get\n+00004860: 5f43 6861 7220 2866 756e 6374 696f 6e29 _Char (function)\n+00004870: 3a3a 2c0a 2020 2020 202a 6e6f 7465 2047 ::,. *note G\n+00004880: 6574 5f4c 696e 6520 2870 726f 6365 6475 et_Line (procedu\n+00004890: 7265 293a 3a2c 0a20 2020 2020 2a6e 6f74 re)::,. *not\n+000048a0: 6520 5265 6365 6976 6520 2870 726f 6365 e Receive (proce\n+000048b0: 6475 7265 293a 3a2c 0a20 2020 2020 2a6e dure)::,. *n\n+000048c0: 6f74 6520 5365 745f 4275 6666 6572 2028 ote Set_Buffer (\n+000048d0: 7072 6f63 6564 7572 6529 3a3a 2e0a 0a1f procedure)::....\n+000048e0: 0a46 696c 653a 2061 6461 736f 636b 6574 .File: adasocket\n+000048f0: 732e 696e 666f 2c20 204e 6f64 653a 2047 s.info, Node: G\n+00004900: 6574 5f4c 696e 6520 2870 726f 6365 6475 et_Line (procedu\n+00004910: 7265 292c 2020 4e65 7874 3a20 4765 745f re), Next: Get_\n+00004920: 5265 6365 6976 655f 5175 6575 655f 5369 Receive_Queue_Si\n+00004930: 7a65 2028 6675 6e63 7469 6f6e 292c 2020 ze (function), \n+00004940: 5072 6576 3a20 4765 745f 4c69 6e65 2028 Prev: Get_Line (\n+00004950: 6675 6e63 7469 6f6e 292c 2020 5570 3a20 function), Up: \n+00004960: 4163 6365 7074 5f53 6f63 6b65 7420 2870 Accept_Socket (p\n+00004970: 726f 6365 6475 7265 290a 0a47 6574 5f4c rocedure)..Get_L\n+00004980: 696e 6520 2870 726f 6365 6475 7265 290a ine (procedure).\n+00004990: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+000049a0: 2d2d 2d2d 0a0a 5055 5250 4f53 450a 2020 ----..PURPOSE. \n+000049b0: 2020 2047 6574 2061 2077 686f 6c65 206c Get a whole l\n+000049c0: 696e 6520 6672 6f6d 2061 2072 656d 6f74 ine from a remot\n+000049d0: 6520 686f 7374 0a50 524f 544f 5459 5045 e host.PROTOTYPE\n+000049e0: 0a20 2020 2020 202d 2d20 536f 636b 6574 . -- Socket\n+000049f0: 732e 4765 745f 4c69 6e65 3a20 7072 6f63 s.Get_Line: proc\n+00004a00: 6564 7572 6520 4765 745f 4c69 6e65 2028 edure Get_Line (\n+00004a10: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n+00004a20: 4644 2743 6c61 7373 3b0a 2020 2020 2020 FD'Class;. \n+00004a30: 2020 2020 2020 2020 2053 5452 203a 2069 STR : i\n+00004a40: 6e20 6f75 7420 5374 7269 6e67 3b20 4c41 n out String; LA\n+00004a50: 5354 203a 206f 7574 204e 6174 7572 616c ST : out Natural\n+00004a60: 293b 0a0a 5041 5241 4d45 5445 5253 0a20 );..PARAMETERS. \n+00004a70: 2020 2020 534f 434b 4554 2020 2020 2069 SOCKET i\n+00004a80: 6e20 2020 2020 2020 2020 496e 6974 6961 n Initia\n+00004a90: 6c69 7a65 6420 616e 6420 636f 6e6e 6563 lized and connec\n+00004aa0: 7465 6420 736f 636b 6574 206f 626a 6563 ted socket objec\n+00004ab0: 740a 2020 2020 2053 5452 2020 2020 2020 t. STR \n+00004ac0: 2020 696e 206f 7574 2020 2020 2053 7472 in out Str\n+00004ad0: 696e 6720 746f 2066 696c 6c0a 2020 2020 ing to fill. \n+00004ae0: 204c 4153 5420 2020 2020 2020 6f75 7420 LAST out \n+00004af0: 2020 2020 2020 204c 6173 7420 696e 6465 Last inde\n+00004b00: 7820 7573 6564 2069 6e20 7468 6520 7374 x used in the st\n+00004b10: 7269 6e67 0a0a 4445 5343 5249 5054 494f ring..DESCRIPTIO\n+00004b20: 4e0a 2020 2020 2054 6869 7320 7072 6f63 N. This proc\n+00004b30: 6564 7572 6520 7265 6365 6976 6573 206f edure receives o\n+00004b40: 6e65 206c 696e 6520 6672 6f6d 2074 6865 ne line from the\n+00004b50: 2072 656d 6f74 6520 686f 7374 2e20 2041 remote host. A\n+00004b60: 206c 696e 650a 2020 2020 2063 6f6e 7369 line. consi\n+00004b70: 7374 7320 696e 746f 207a 6572 6f20 6f72 sts into zero or\n+00004b80: 206d 6f72 6520 6368 6172 6163 7465 7273 more characters\n+00004b90: 2066 6f6c 6c6f 7765 6420 6279 2061 6e20 followed by an \n+00004ba0: 6f70 7469 6f6e 616c 2043 520a 2020 2020 optional CR. \n+00004bb0: 2061 6e64 2062 7920 6120 4c46 2e20 5468 and by a LF. Th\n+00004bc0: 6f73 6520 7465 726d 696e 6174 6f72 7320 ose terminators \n+00004bd0: 6172 6520 7374 7269 7070 6564 2062 6566 are stripped bef\n+00004be0: 6f72 6520 7468 6520 6c69 6e65 2069 730a ore the line is.\n+00004bf0: 2020 2020 2072 6574 7572 6e65 642e 0a0a returned...\n+00004c00: 2020 2020 2054 6869 7320 7072 6f63 6564 This proced\n+00004c10: 7572 6520 626c 6f63 6b73 2075 6e74 696c ure blocks until\n+00004c20: 206f 6e65 2066 756c 6c20 6c69 6e65 2068 one full line h\n+00004c30: 6173 2062 6565 6e20 7265 6365 6976 6564 as been received\n+00004c40: 2e0a 0a45 5843 4550 5449 4f4e 530a 2020 ...EXCEPTIONS. \n+00004c50: 2020 2027 436f 6e6e 6563 7469 6f6e 5f43 'Connection_C\n+00004c60: 6c6f 7365 6427 5065 6572 2068 6173 2063 losed'Peer has c\n+00004c70: 6c6f 7365 6420 7468 6520 636f 6e6e 6563 losed the connec\n+00004c80: 7469 6f6e 2062 6566 6f72 650a 2020 2020 tion before. \n+00004c90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00004ca0: 2020 2020 7365 6e64 696e 6720 6120 7768 sending a wh\n+00004cb0: 6f6c 6520 6c69 6e65 0a0a 5345 4520 414c ole line..SEE AL\n+00004cc0: 534f 0a20 2020 2020 2a6e 6f74 6520 4765 SO. *note Ge\n+00004cd0: 7420 2866 756e 6374 696f 6e29 3a3a 2c0a t (function)::,.\n+00004ce0: 2020 2020 202a 6e6f 7465 2047 6574 5f43 *note Get_C\n+00004cf0: 6861 7220 2866 756e 6374 696f 6e29 3a3a har (function)::\n+00004d00: 2c0a 2020 2020 202a 6e6f 7465 2047 6574 ,. *note Get\n+00004d10: 5f4c 696e 6520 2866 756e 6374 696f 6e29 _Line (function)\n+00004d20: 3a3a 2c0a 2020 2020 202a 6e6f 7465 2052 ::,. *note R\n+00004d30: 6563 6569 7665 2028 7072 6f63 6564 7572 eceive (procedur\n+00004d40: 6529 3a3a 2c0a 2020 2020 202a 6e6f 7465 e)::,. *note\n+00004d50: 2053 6574 5f42 7566 6665 7220 2870 726f Set_Buffer (pro\n+00004d60: 6365 6475 7265 293a 3a2e 0a0a 1f0a 4669 cedure)::.....Fi\n+00004d70: 6c65 3a20 6164 6173 6f63 6b65 7473 2e69 le: adasockets.i\n+00004d80: 6e66 6f2c 2020 4e6f 6465 3a20 4765 745f nfo, Node: Get_\n+00004d90: 5265 6365 6976 655f 5175 6575 655f 5369 Receive_Queue_Si\n+00004da0: 7a65 2028 6675 6e63 7469 6f6e 292c 2020 ze (function), \n+00004db0: 4e65 7874 3a20 4765 745f 5365 6e64 5f51 Next: Get_Send_Q\n+00004dc0: 7565 7565 5f53 697a 6520 2866 756e 6374 ueue_Size (funct\n+00004dd0: 696f 6e29 2c20 2050 7265 763a 2047 6574 ion), Prev: Get\n+00004de0: 5f4c 696e 6520 2870 726f 6365 6475 7265 _Line (procedure\n+00004df0: 292c 2020 5570 3a20 4163 6365 7074 5f53 ), Up: Accept_S\n+00004e00: 6f63 6b65 7420 2870 726f 6365 6475 7265 ocket (procedure\n+00004e10: 290a 0a47 6574 5f52 6563 6569 7665 5f51 )..Get_Receive_Q\n+00004e20: 7565 7565 5f53 697a 6520 2866 756e 6374 ueue_Size (funct\n+00004e30: 696f 6e29 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d ion).-----------\n+00004e40: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+00004e50: 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 450a ------..PURPOSE.\n+00004e60: 2020 2020 2052 6574 7572 6e20 7468 6520 Return the \n+00004e70: 7369 7a65 206f 6620 7468 6520 756e 7265 size of the unre\n+00004e80: 6164 2064 6174 6120 696e 2074 6865 2069 ad data in the i\n+00004e90: 6e70 7574 2071 7565 7565 0a50 524f 544f nput queue.PROTO\n+00004ea0: 5459 5045 0a20 2020 2020 202d 2d20 536f TYPE. -- So\n+00004eb0: 636b 6574 732e 4765 745f 5265 6365 6976 ckets.Get_Receiv\n+00004ec0: 655f 5175 6575 655f 5369 7a65 3a20 6675 e_Queue_Size: fu\n+00004ed0: 6e63 7469 6f6e 2047 6574 5f52 6563 6569 nction Get_Recei\n+00004ee0: 7665 5f51 7565 7565 5f53 697a 650a 2020 ve_Queue_Size. \n+00004ef0: 2020 2020 2020 2020 2020 2020 2028 534f (SO\n+00004f00: 434b 4554 203a 2053 6f63 6b65 745f 4644 CKET : Socket_FD\n+00004f10: 2743 6c61 7373 290a 2020 2020 2020 2020 'Class). \n+00004f20: 2020 2020 2020 2072 6574 7572 6e20 496e return In\n+00004f30: 7465 6765 723b 0a0a 5041 5241 4d45 5445 teger;..PARAMETE\n+00004f40: 5253 0a20 2020 2020 534f 434b 4554 2020 RS. SOCKET \n+00004f50: 2020 2069 6e20 2020 2020 2020 2020 496e in In\n+00004f60: 6974 6961 6c69 7a65 6420 616e 6420 636f itialized and co\n+00004f70: 6e6e 6563 7465 6420 736f 636b 6574 206f nnected socket o\n+00004f80: 626a 6563 740a 0a52 4554 5552 4e20 5641 bject..RETURN VA\n+00004f90: 4c55 450a 2020 2020 2054 6865 206e 6f6e LUE. The non\n+00004fa0: 2d6e 6567 6174 6976 6520 7369 7a65 2069 -negative size i\n+00004fb0: 6e20 6279 7465 7320 6f66 2074 6865 2069 n bytes of the i\n+00004fc0: 6e70 7574 2071 7565 7565 0a0a 4445 5343 nput queue..DESC\n+00004fd0: 5249 5054 494f 4e0a 2020 2020 2054 6869 RIPTION. Thi\n+00004fe0: 7320 6675 6e63 7469 6f6e 2069 7320 6f6e s function is on\n+00004ff0: 6c79 2061 7661 696c 6162 6c65 206f 6e20 ly available on \n+00005000: 4c69 6e75 7820 706c 6174 666f 726d 732e Linux platforms.\n+00005010: 2020 4f6e 206f 7468 6572 0a20 2020 2020 On other. \n+00005020: 6f70 6572 6174 696e 6720 7379 7374 656d operating system\n+00005030: 732c 2069 7420 7769 6c6c 2072 6574 7572 s, it will retur\n+00005040: 6e20 2d32 2074 6f20 696e 6469 6361 7465 n -2 to indicate\n+00005050: 2074 6861 7420 7468 6520 6e65 6365 7373 that the necess\n+00005060: 6172 790a 2020 2020 206d 6563 6861 6e69 ary. mechani\n+00005070: 736d 7320 746f 2072 6574 7269 6576 6520 sms to retrieve \n+00005080: 7468 6520 696e 666f 726d 6174 696f 6e20 the information \n+00005090: 6172 6520 6e6f 7420 6176 6169 6c61 626c are not availabl\n+000050a0: 652e 0a0a 5345 4520 414c 534f 0a20 2020 e...SEE ALSO. \n+000050b0: 2020 2a6e 6f74 6520 5265 6365 6976 6520 *note Receive \n+000050c0: 2870 726f 6365 6475 7265 293a 3a2e 0a0a (procedure)::...\n+000050d0: 1f0a 4669 6c65 3a20 6164 6173 6f63 6b65 ..File: adasocke\n+000050e0: 7473 2e69 6e66 6f2c 2020 4e6f 6465 3a20 ts.info, Node: \n+000050f0: 4765 745f 5365 6e64 5f51 7565 7565 5f53 Get_Send_Queue_S\n+00005100: 697a 6520 2866 756e 6374 696f 6e29 2c20 ize (function), \n+00005110: 204e 6578 743a 2047 6574 736f 636b 6f70 Next: Getsockop\n+00005120: 7420 2870 726f 6365 6475 7265 292c 2020 t (procedure), \n+00005130: 5072 6576 3a20 4765 745f 5265 6365 6976 Prev: Get_Receiv\n+00005140: 655f 5175 6575 655f 5369 7a65 2028 6675 e_Queue_Size (fu\n+00005150: 6e63 7469 6f6e 292c 2020 5570 3a20 4163 nction), Up: Ac\n+00005160: 6365 7074 5f53 6f63 6b65 7420 2870 726f cept_Socket (pro\n+00005170: 6365 6475 7265 290a 0a47 6574 5f53 656e cedure)..Get_Sen\n+00005180: 645f 5175 6575 655f 5369 7a65 2028 6675 d_Queue_Size (fu\n+00005190: 6e63 7469 6f6e 290a 2d2d 2d2d 2d2d 2d2d nction).--------\n+000051a0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+000051b0: 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 450a ------..PURPOSE.\n+000051c0: 2020 2020 2052 6574 7572 6e20 7468 6520 Return the \n+000051d0: 7369 7a65 206f 6620 7468 6520 756e 7365 size of the unse\n+000051e0: 6e74 2064 6174 6120 696e 2074 6865 206f nt data in the o\n+000051f0: 7574 7075 7420 7175 6575 650a 5052 4f54 utput queue.PROT\n+00005200: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n+00005210: 6f63 6b65 7473 2e47 6574 5f53 656e 645f ockets.Get_Send_\n+00005220: 5175 6575 655f 5369 7a65 3a20 6675 6e63 Queue_Size: func\n+00005230: 7469 6f6e 2047 6574 5f53 656e 645f 5175 tion Get_Send_Qu\n+00005240: 6575 655f 5369 7a65 0a20 2020 2020 2020 eue_Size. \n+00005250: 2020 2020 2020 2020 2853 4f43 4b45 5420 (SOCKET \n+00005260: 3a20 536f 636b 6574 5f46 4427 436c 6173 : Socket_FD'Clas\n+00005270: 7329 0a20 2020 2020 2020 2020 2020 2020 s). \n+00005280: 2020 7265 7475 726e 2049 6e74 6567 6572 return Integer\n+00005290: 3b0a 0a50 4152 414d 4554 4552 530a 2020 ;..PARAMETERS. \n+000052a0: 2020 2053 4f43 4b45 5420 2020 2020 696e SOCKET in\n+000052b0: 2020 2020 2020 2020 2049 6e69 7469 616c Initial\n+000052c0: 697a 6564 2061 6e64 2063 6f6e 6e65 6374 ized and connect\n+000052d0: 6564 2073 6f63 6b65 7420 6f62 6a65 6374 ed socket object\n+000052e0: 0a0a 5245 5455 524e 2056 414c 5545 0a20 ..RETURN VALUE. \n+000052f0: 2020 2020 5468 6520 6e6f 6e2d 6e65 6761 The non-nega\n+00005300: 7469 7665 2073 697a 6520 696e 2062 7974 tive size in byt\n+00005310: 6573 206f 6620 7468 6520 6f75 7470 7574 es of the output\n+00005320: 2071 7565 7565 0a0a 4445 5343 5249 5054 queue..DESCRIPT\n+00005330: 494f 4e0a 2020 2020 2054 6869 7320 6675 ION. This fu\n+00005340: 6e63 7469 6f6e 2069 7320 6f6e 6c79 2061 nction is only a\n+00005350: 7661 696c 6162 6c65 206f 6e20 4c69 6e75 vailable on Linu\n+00005360: 7820 706c 6174 666f 726d 732e 2020 4f6e x platforms. On\n+00005370: 206f 7468 6572 0a20 2020 2020 6f70 6572 other. oper\n+00005380: 6174 696e 6720 7379 7374 656d 732c 2069 ating systems, i\n+00005390: 7420 7769 6c6c 2072 6574 7572 6e20 2d32 t will return -2\n+000053a0: 2074 6f20 696e 6469 6361 7465 2074 6861 to indicate tha\n+000053b0: 7420 7468 6520 6e65 6365 7373 6172 790a t the necessary.\n+000053c0: 2020 2020 206d 6563 6861 6e69 736d 7320 mechanisms \n+000053d0: 746f 2072 6574 7269 6576 6520 7468 6520 to retrieve the \n+000053e0: 696e 666f 726d 6174 696f 6e20 6172 6520 information are \n+000053f0: 6e6f 7420 6176 6169 6c61 626c 652e 0a0a not available...\n+00005400: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n+00005410: 6f74 6520 5365 6e64 2028 7072 6f63 6564 ote Send (proced\n+00005420: 7572 6529 3a3a 2e0a 0a1f 0a46 696c 653a ure)::.....File:\n+00005430: 2061 6461 736f 636b 6574 732e 696e 666f adasockets.info\n+00005440: 2c20 204e 6f64 653a 2047 6574 736f 636b , Node: Getsock\n+00005450: 6f70 7420 2870 726f 6365 6475 7265 292c opt (procedure),\n+00005460: 2020 4e65 7874 3a20 4c69 7374 656e 2028 Next: Listen (\n+00005470: 7072 6f63 6564 7572 6529 2c20 2050 7265 procedure), Pre\n+00005480: 763a 2047 6574 5f53 656e 645f 5175 6575 v: Get_Send_Queu\n+00005490: 655f 5369 7a65 2028 6675 6e63 7469 6f6e e_Size (function\n+000054a0: 292c 2020 5570 3a20 4163 6365 7074 5f53 ), Up: Accept_S\n+000054b0: 6f63 6b65 7420 2870 726f 6365 6475 7265 ocket (procedure\n+000054c0: 290a 0a47 6574 736f 636b 6f70 7420 2870 )..Getsockopt (p\n+000054d0: 726f 6365 6475 7265 290a 2d2d 2d2d 2d2d rocedure).------\n+000054e0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+000054f0: 0a0a 5055 5250 4f53 450a 2020 2020 2052 ..PURPOSE. R\n+00005500: 6574 7269 6576 6520 6120 736f 636b 6574 etrieve a socket\n+00005510: 206f 7074 696f 6e0a 5052 4f54 4f54 5950 option.PROTOTYP\n+00005520: 450a 2020 2020 2020 2d2d 2053 6f63 6b65 E. -- Socke\n+00005530: 7473 2e47 6574 736f 636b 6f70 743a 2070 ts.Getsockopt: p\n+00005540: 726f 6365 6475 7265 2047 6574 736f 636b rocedure Getsock\n+00005550: 6f70 7420 2853 4f43 4b45 5420 3a20 536f opt (SOCKET : So\n+00005560: 636b 6574 5f46 443b 0a20 2020 2020 2020 cket_FD;. \n+00005570: 2020 2020 2020 2020 4c45 5645 4c20 3a20 LEVEL : \n+00005580: 536f 636b 6574 5f4c 6576 656c 203a 3d20 Socket_Level := \n+00005590: 534f 4c5f 534f 434b 4554 3b0a 2020 2020 SOL_SOCKET;. \n+000055a0: 2020 2020 2020 2020 2020 204f 5054 4e41 OPTNA\n+000055b0: 4d45 203a 2053 6f63 6b65 745f 4f70 7469 ME : Socket_Opti\n+000055c0: 6f6e 3b20 4f50 5456 414c 203a 206f 7574 on; OPTVAL : out\n+000055d0: 2049 6e74 6567 6572 293b 0a0a 5041 5241 Integer);..PARA\n+000055e0: 4d45 5445 5253 0a20 2020 2020 534f 434b METERS. SOCK\n+000055f0: 4554 2020 2020 2069 6e20 2020 2020 2020 ET in \n+00005600: 2020 496e 6974 6961 6c69 7a65 6420 616e Initialized an\n+00005610: 6420 626f 756e 6420 736f 636b 6574 206f d bound socket o\n+00005620: 626a 6563 740a 2020 2020 204c 4556 454c bject. LEVEL\n+00005630: 2020 2020 2020 696e 2020 2020 2020 2020 in \n+00005640: 2050 726f 746f 636f 6c20 6c65 7665 6c0a Protocol level.\n+00005650: 2020 2020 204f 5054 4e41 4d45 2020 2020 OPTNAME \n+00005660: 696e 2020 2020 2020 2020 204f 7074 696f in Optio\n+00005670: 6e20 6e61 6d65 0a20 2020 2020 4f50 5456 n name. OPTV\n+00005680: 414c 2020 2020 206f 7574 2020 2020 2020 AL out \n+00005690: 2020 4f70 7469 6f6e 2076 616c 7565 0a0a Option value..\n+000056a0: 4445 5343 5249 5054 494f 4e0a 2020 2020 DESCRIPTION. \n+000056b0: 2054 6869 7320 7072 6f63 6564 7572 6520 This procedure \n+000056c0: 7265 7472 6965 7665 7320 6f70 7469 6f6e retrieves option\n+000056d0: 7320 6170 706c 6963 6162 6c65 2074 6f20 s applicable to \n+000056e0: 6120 736f 636b 6574 2e20 2050 6c65 6173 a socket. Pleas\n+000056f0: 650a 2020 2020 2073 6565 2079 6f75 7220 e. see your \n+00005700: 6f70 6572 6174 696e 6720 7379 7374 656d operating system\n+00005710: 206d 616e 7561 6c20 666f 7220 7573 6162 manual for usab\n+00005720: 6c65 206c 6576 656c 7320 616e 6420 6f70 le levels and op\n+00005730: 7469 6f6e 732e 0a0a 2020 2020 2054 776f tions... Two\n+00005740: 206c 6576 656c 7320 6172 6520 6465 6669 levels are defi\n+00005750: 6e65 643a 2027 534f 4c5f 534f 434b 4554 ned: 'SOL_SOCKET\n+00005760: 2720 2874 6865 2064 6566 6175 6c74 2920 ' (the default) \n+00005770: 616e 640a 2020 2020 2027 4950 5052 4f54 and. 'IPPROT\n+00005780: 4f5f 4950 272e 2020 5468 6520 6f70 7469 O_IP'. The opti\n+00005790: 6f6e 7320 6172 6520 2753 4f5f 5245 5553 ons are 'SO_REUS\n+000057a0: 4541 4444 5227 2c20 2753 4f5f 5245 5553 EADDR', 'SO_REUS\n+000057b0: 4550 4f52 5427 2c0a 2020 2020 2027 4950 EPORT',. 'IP\n+000057c0: 5f4d 554c 5449 4341 5354 5f54 544c 272c _MULTICAST_TTL',\n+000057d0: 2027 4950 5f41 4444 5f4d 454d 4245 5253 'IP_ADD_MEMBERS\n+000057e0: 4849 5027 2c20 2749 505f 4452 4f50 5f4d HIP', 'IP_DROP_M\n+000057f0: 454d 4245 5253 4849 5027 2c0a 2020 2020 EMBERSHIP',. \n+00005800: 2027 4950 5f4d 554c 5449 4341 5354 5f4c 'IP_MULTICAST_L\n+00005810: 4f4f 5027 2c20 2753 4f5f 534e 4442 5546 OOP', 'SO_SNDBUF\n+00005820: 2720 616e 6420 2749 505f 5243 5642 5546 ' and 'IP_RCVBUF\n+00005830: 272e 0a0a 2020 2020 204e 6f74 6520 7468 '... Note th\n+00005840: 6174 2075 6e6c 696b 6520 7468 6569 7220 at unlike their \n+00005850: 4320 6c61 6e67 7561 6765 2063 6f75 6e74 C language count\n+00005860: 6572 7061 7274 2c20 2747 6574 736f 636b erpart, 'Getsock\n+00005870: 6f70 7427 2061 6e64 0a20 2020 2020 2753 opt' and. 'S\n+00005880: 6574 736f 636b 6f70 7427 2064 6f20 6e6f etsockopt' do no\n+00005890: 7420 7265 7175 6972 6520 616e 2065 7874 t require an ext\n+000058a0: 7261 2070 6172 616d 6574 6572 2072 6570 ra parameter rep\n+000058b0: 7265 7365 6e74 696e 6720 7468 650a 2020 resenting the. \n+000058c0: 2020 206c 656e 6774 6820 696e 2062 7974 length in byt\n+000058d0: 6573 206f 6620 7468 6520 6f70 7469 6f6e es of the option\n+000058e0: 2076 616c 7565 2e20 2041 6461 536f 636b value. AdaSock\n+000058f0: 6574 7320 6e6f 7773 2074 6865 2072 6967 ets nows the rig\n+00005900: 6874 0a20 2020 2020 7369 7a65 2066 6f72 ht. size for\n+00005910: 2065 7665 7279 206f 7074 696f 6e2e 0a0a every option...\n+00005920: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n+00005930: 6f74 6520 5365 7473 6f63 6b6f 7074 2028 ote Setsockopt (\n+00005940: 7072 6f63 6564 7572 6529 3a3a 2e0a 0a1f procedure)::....\n+00005950: 0a46 696c 653a 2061 6461 736f 636b 6574 .File: adasocket\n+00005960: 732e 696e 666f 2c20 204e 6f64 653a 204c s.info, Node: L\n+00005970: 6973 7465 6e20 2870 726f 6365 6475 7265 isten (procedure\n+00005980: 292c 2020 4e65 7874 3a20 4e65 775f 4c69 ), Next: New_Li\n+00005990: 6e65 2028 7072 6f63 6564 7572 6529 2c20 ne (procedure), \n+000059a0: 2050 7265 763a 2047 6574 736f 636b 6f70 Prev: Getsockop\n+000059b0: 7420 2870 726f 6365 6475 7265 292c 2020 t (procedure), \n+000059c0: 5570 3a20 4163 6365 7074 5f53 6f63 6b65 Up: Accept_Socke\n+000059d0: 7420 2870 726f 6365 6475 7265 290a 0a4c t (procedure)..L\n+000059e0: 6973 7465 6e20 2870 726f 6365 6475 7265 isten (procedure\n+000059f0: 290a 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ).--------------\n+00005a00: 2d2d 2d2d 0a0a 5055 5250 4f53 450a 2020 ----..PURPOSE. \n+00005a10: 2020 2045 7374 6162 6c69 7368 2061 206c Establish a l\n+00005a20: 6973 7465 6e20 7175 6575 650a 5052 4f54 isten queue.PROT\n+00005a30: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n+00005a40: 6f63 6b65 7473 2e4c 6973 7465 6e3a 2070 ockets.Listen: p\n+00005a50: 726f 6365 6475 7265 204c 6973 7465 6e20 rocedure Listen \n+00005a60: 2853 4f43 4b45 5420 3a20 536f 636b 6574 (SOCKET : Socket\n+00005a70: 5f46 443b 0a20 2020 2020 2020 2020 2020 _FD;. \n+00005a80: 2020 2020 5155 4555 455f 5349 5a45 203a QUEUE_SIZE :\n+00005a90: 2050 6f73 6974 6976 6520 3a3d 2035 293b Positive := 5);\n+00005aa0: 0a0a 5041 5241 4d45 5445 5253 0a20 2020 ..PARAMETERS. \n+00005ab0: 2020 534f 434b 4554 2020 2020 2069 6e20 SOCKET in \n+00005ac0: 2020 2020 2020 2020 496e 6974 6961 6c69 Initiali\n+00005ad0: 7a65 6420 616e 6420 626f 756e 6420 736f zed and bound so\n+00005ae0: 636b 6574 206f 626a 6563 740a 2020 2020 cket object. \n+00005af0: 2051 5545 5545 5f53 495a 4520 696e 2020 QUEUE_SIZE in \n+00005b00: 2020 2020 2020 2052 6571 7565 7374 6564 Requested\n+00005b10: 2073 6c6f 7473 2069 6e20 7468 6520 6c69 slots in the li\n+00005b20: 7374 656e 2071 7565 7565 0a0a 4445 5343 sten queue..DESC\n+00005b30: 5249 5054 494f 4e0a 2020 2020 2054 6869 RIPTION. Thi\n+00005b40: 7320 7072 6f63 6564 7572 6520 6573 7461 s procedure esta\n+00005b50: 626c 6973 6865 7320 6120 6c69 7374 656e blishes a listen\n+00005b60: 2071 7565 7565 2061 6674 6572 2061 2054 queue after a T\n+00005b70: 4350 2073 6f63 6b65 7420 6173 0a20 2020 CP socket as. \n+00005b80: 2020 6265 656e 2069 6e69 7469 616c 697a been initializ\n+00005b90: 6564 2061 6e64 2062 6f75 6e64 2e20 2045 ed and bound. E\n+00005ba0: 6163 6820 736c 6f74 2069 6e20 7468 6520 ach slot in the \n+00005bb0: 7175 6575 6520 6361 6e20 686f 6c64 206f queue can hold o\n+00005bc0: 6e65 0a20 2020 2020 696e 636f 6d69 6e67 ne. incoming\n+00005bd0: 2063 6f6e 6e65 6374 696f 6e20 7468 6174 connection that\n+00005be0: 2068 6173 206e 6f74 2062 6565 6e20 6163 has not been ac\n+00005bf0: 6365 7074 6564 2079 6574 2e20 204e 6f74 cepted yet. Not\n+00005c00: 6520 7468 6174 206d 6f73 740a 2020 2020 e that most. \n+00005c10: 206f 7065 7261 7469 6e67 2073 7973 7465 operating syste\n+00005c20: 6d73 2069 676e 6f72 6520 7175 6575 6520 ms ignore queue \n+00005c30: 7369 7a65 7320 6c61 7267 6572 2074 6861 sizes larger tha\n+00005c40: 6e20 6669 7665 2e0a 0a53 4545 2041 4c53 n five...SEE ALS\n+00005c50: 4f0a 2020 2020 202a 6e6f 7465 2041 6363 O. *note Acc\n+00005c60: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n+00005c70: 6564 7572 6529 3a3a 2c0a 2020 2020 202a edure)::,. *\n+00005c80: 6e6f 7465 2042 696e 6420 2870 726f 6365 note Bind (proce\n+00005c90: 6475 7265 293a 3a2c 0a20 2020 2020 2a6e dure)::,. *n\n+00005ca0: 6f74 6520 536f 636b 6574 2028 7072 6f63 ote Socket (proc\n+00005cb0: 6564 7572 6529 3a3a 2e0a 0a1f 0a46 696c edure)::.....Fil\n+00005cc0: 653a 2061 6461 736f 636b 6574 732e 696e e: adasockets.in\n+00005cd0: 666f 2c20 204e 6f64 653a 204e 6577 5f4c fo, Node: New_L\n+00005ce0: 696e 6520 2870 726f 6365 6475 7265 292c ine (procedure),\n+00005cf0: 2020 4e65 7874 3a20 5075 7420 2870 726f Next: Put (pro\n+00005d00: 6365 6475 7265 292c 2020 5072 6576 3a20 cedure), Prev: \n+00005d10: 4c69 7374 656e 2028 7072 6f63 6564 7572 Listen (procedur\n+00005d20: 6529 2c20 2055 703a 2041 6363 6570 745f e), Up: Accept_\n+00005d30: 536f 636b 6574 2028 7072 6f63 6564 7572 Socket (procedur\n+00005d40: 6529 0a0a 4e65 775f 4c69 6e65 2028 7072 e)..New_Line (pr\n+00005d50: 6f63 6564 7572 6529 0a2d 2d2d 2d2d 2d2d ocedure).-------\n+00005d60: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 -------------..P\n+00005d70: 5552 504f 5345 0a20 2020 2020 5365 6e64 URPOSE. Send\n+00005d80: 2061 2043 522f 4c46 2074 6f20 6120 7265 a CR/LF to a re\n+00005d90: 6d6f 7465 2068 6f73 740a 5052 4f54 4f54 mote host.PROTOT\n+00005da0: 5950 450a 2020 2020 2020 2d2d 2053 6f63 YPE. -- Soc\n+00005db0: 6b65 7473 2e4e 6577 5f4c 696e 653a 2070 kets.New_Line: p\n+00005dc0: 726f 6365 6475 7265 204e 6577 5f4c 696e rocedure New_Lin\n+00005dd0: 6520 2853 4f43 4b45 5420 3a20 536f 636b e (SOCKET : Sock\n+00005de0: 6574 5f46 4427 436c 6173 733b 0a20 2020 et_FD'Class;. \n+00005df0: 2020 2020 2020 2020 2020 2020 434f 554e COUN\n+00005e00: 5420 3a20 4e61 7475 7261 6c20 3a3d 2031 T : Natural := 1\n+00005e10: 293b 0a0a 5041 5241 4d45 5445 5253 0a20 );..PARAMETERS. \n+00005e20: 2020 2020 534f 434b 4554 2020 2020 2069 SOCKET i\n+00005e30: 6e20 2020 2020 2020 2020 496e 6974 6961 n Initia\n+00005e40: 6c69 7a65 6420 616e 6420 636f 6e6e 6563 lized and connec\n+00005e50: 7465 6420 736f 636b 6574 206f 626a 6563 ted socket objec\n+00005e60: 740a 2020 2020 2043 4f55 4e54 2020 2020 t. COUNT \n+00005e70: 2020 696e 2020 2020 2020 2020 204e 756d in Num\n+00005e80: 6265 7220 6f66 2043 522f 4c46 2073 6571 ber of CR/LF seq\n+00005e90: 7565 6e63 6573 2074 6f20 7365 6e64 0a0a uences to send..\n+00005ea0: 4445 5343 5249 5054 494f 4e0a 2020 2020 DESCRIPTION. \n+00005eb0: 2054 6869 7320 7072 6f63 6564 7572 6520 This procedure \n+00005ec0: 7365 6e64 7320 6f6e 6520 6f72 206d 6f72 sends one or mor\n+00005ed0: 6520 4352 2f4c 4620 636f 6d62 696e 6174 e CR/LF combinat\n+00005ee0: 696f 6e73 2074 6f20 7468 6520 7065 6572 ions to the peer\n+00005ef0: 2e0a 0a45 5843 4550 5449 4f4e 530a 2020 ...EXCEPTIONS. \n+00005f00: 2020 2027 436f 6e6e 6563 7469 6f6e 5f43 'Connection_C\n+00005f10: 6c6f 7365 6427 5065 6572 2068 6173 2070 losed'Peer has p\n+00005f20: 7265 6d61 7475 7265 6c79 2063 6c6f 7365 rematurely close\n+00005f30: 6420 7468 6520 636f 6e6e 6563 7469 6f6e d the connection\n+00005f40: 0a0a 5345 4520 414c 534f 0a20 2020 2020 ..SEE ALSO. \n+00005f50: 2a6e 6f74 6520 5075 7420 2870 726f 6365 *note Put (proce\n 00005f60: 6475 7265 293a 3a2c 0a20 2020 2020 2a6e dure)::,. *n\n-00005f70: 6f74 6520 536f 636b 6574 2028 7072 6f63 ote Socket (proc\n-00005f80: 6564 7572 6529 3a3a 2e0a 0a1f 0a46 696c edure)::.....Fil\n-00005f90: 653a 2061 6461 736f 636b 6574 732e 696e e: adasockets.in\n-00005fa0: 666f 2c20 204e 6f64 653a 204e 6577 5f4c fo, Node: New_L\n-00005fb0: 696e 6520 2870 726f 6365 6475 7265 292c ine (procedure),\n-00005fc0: 2020 4e65 7874 3a20 5075 7420 2870 726f Next: Put (pro\n-00005fd0: 6365 6475 7265 292c 2020 5072 6576 3a20 cedure), Prev: \n-00005fe0: 4c69 7374 656e 2028 7072 6f63 6564 7572 Listen (procedur\n-00005ff0: 6529 2c20 2055 703a 2041 6363 6570 745f e), Up: Accept_\n-00006000: 536f 636b 6574 2028 7072 6f63 6564 7572 Socket (procedur\n-00006010: 6529 0a0a 4e65 775f 4c69 6e65 2028 7072 e)..New_Line (pr\n-00006020: 6f63 6564 7572 6529 0a2d 2d2d 2d2d 2d2d ocedure).-------\n-00006030: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 -------------..P\n-00006040: 5552 504f 5345 0a20 2020 2020 5365 6e64 URPOSE. Send\n-00006050: 2061 2043 522f 4c46 2074 6f20 6120 7265 a CR/LF to a re\n-00006060: 6d6f 7465 2068 6f73 740a 5052 4f54 4f54 mote host.PROTOT\n-00006070: 5950 450a 2020 2020 2020 2d2d 2053 6f63 YPE. -- Soc\n-00006080: 6b65 7473 2e4e 6577 5f4c 696e 653a 2070 kets.New_Line: p\n-00006090: 726f 6365 6475 7265 204e 6577 5f4c 696e rocedure New_Lin\n-000060a0: 6520 2853 4f43 4b45 5420 3a20 536f 636b e (SOCKET : Sock\n-000060b0: 6574 5f46 4427 436c 6173 733b 0a20 2020 et_FD'Class;. \n-000060c0: 2020 2020 2020 2020 2020 2020 434f 554e COUN\n-000060d0: 5420 3a20 4e61 7475 7261 6c20 3a3d 2031 T : Natural := 1\n-000060e0: 293b 0a0a 5041 5241 4d45 5445 5253 0a20 );..PARAMETERS. \n-000060f0: 2020 2020 534f 434b 4554 2020 2020 2069 SOCKET i\n-00006100: 6e20 2020 2020 2020 2020 496e 6974 6961 n Initia\n-00006110: 6c69 7a65 6420 616e 6420 636f 6e6e 6563 lized and connec\n-00006120: 7465 6420 736f 636b 6574 206f 626a 6563 ted socket objec\n-00006130: 740a 2020 2020 2043 4f55 4e54 2020 2020 t. COUNT \n-00006140: 2020 696e 2020 2020 2020 2020 204e 756d in Num\n-00006150: 6265 7220 6f66 2043 522f 4c46 2073 6571 ber of CR/LF seq\n-00006160: 7565 6e63 6573 2074 6f20 7365 6e64 0a0a uences to send..\n-00006170: 4445 5343 5249 5054 494f 4e0a 2020 2020 DESCRIPTION. \n-00006180: 2054 6869 7320 7072 6f63 6564 7572 6520 This procedure \n-00006190: 7365 6e64 7320 6f6e 6520 6f72 206d 6f72 sends one or mor\n-000061a0: 6520 4352 2f4c 4620 636f 6d62 696e 6174 e CR/LF combinat\n-000061b0: 696f 6e73 2074 6f20 7468 6520 7065 6572 ions to the peer\n-000061c0: 2e0a 0a45 5843 4550 5449 4f4e 530a 2020 ...EXCEPTIONS. \n-000061d0: 2020 2027 436f 6e6e 6563 7469 6f6e 5f43 'Connection_C\n-000061e0: 6c6f 7365 6427 5065 6572 2068 6173 2070 losed'Peer has p\n-000061f0: 7265 6d61 7475 7265 6c79 2063 6c6f 7365 rematurely close\n-00006200: 6420 7468 6520 636f 6e6e 6563 7469 6f6e d the connection\n-00006210: 0a0a 5345 4520 414c 534f 0a20 2020 2020 ..SEE ALSO. \n-00006220: 2a6e 6f74 6520 5075 7420 2870 726f 6365 *note Put (proce\n-00006230: 6475 7265 293a 3a2c 0a20 2020 2020 2a6e dure)::,. *n\n-00006240: 6f74 6520 5075 745f 4c69 6e65 2028 7072 ote Put_Line (pr\n-00006250: 6f63 6564 7572 6529 3a3a 2e0a 0a1f 0a46 ocedure)::.....F\n-00006260: 696c 653a 2061 6461 736f 636b 6574 732e ile: adasockets.\n-00006270: 696e 666f 2c20 204e 6f64 653a 2050 7574 info, Node: Put\n-00006280: 2028 7072 6f63 6564 7572 6529 2c20 204e (procedure), N\n-00006290: 6578 743a 2050 7574 5f4c 696e 6520 2870 ext: Put_Line (p\n-000062a0: 726f 6365 6475 7265 292c 2020 5072 6576 rocedure), Prev\n-000062b0: 3a20 4e65 775f 4c69 6e65 2028 7072 6f63 : New_Line (proc\n-000062c0: 6564 7572 6529 2c20 2055 703a 2041 6363 edure), Up: Acc\n-000062d0: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n-000062e0: 6564 7572 6529 0a0a 5075 7420 2870 726f edure)..Put (pro\n-000062f0: 6365 6475 7265 290a 2d2d 2d2d 2d2d 2d2d cedure).--------\n-00006300: 2d2d 2d2d 2d2d 2d0a 0a50 5552 504f 5345 -------..PURPOSE\n-00006310: 0a20 2020 2020 5365 6e64 2061 2073 7472 . Send a str\n-00006320: 696e 6720 746f 2061 2072 656d 6f74 6520 ing to a remote \n-00006330: 686f 7374 0a50 524f 544f 5459 5045 0a20 host.PROTOTYPE. \n-00006340: 2020 2020 202d 2d20 536f 636b 6574 732e -- Sockets.\n-00006350: 5075 743a 2070 726f 6365 6475 7265 2050 Put: procedure P\n-00006360: 7574 2028 534f 434b 4554 203a 2053 6f63 ut (SOCKET : Soc\n-00006370: 6b65 745f 4644 2743 6c61 7373 3b0a 2020 ket_FD'Class;. \n-00006380: 2020 2020 2020 2020 2020 2020 2053 5452 STR\n-00006390: 203a 2053 7472 696e 6729 3b0a 0a50 4152 : String);..PAR\n-000063a0: 414d 4554 4552 530a 2020 2020 2053 4f43 AMETERS. SOC\n-000063b0: 4b45 5420 2020 2020 696e 2020 2020 2020 KET in \n-000063c0: 2020 2049 6e69 7469 616c 697a 6564 2061 Initialized a\n-000063d0: 6e64 2063 6f6e 6e65 6374 6564 2073 6f63 nd connected soc\n-000063e0: 6b65 7420 6f62 6a65 6374 0a20 2020 2020 ket object. \n-000063f0: 5354 5220 2020 2020 2020 2069 6e20 2020 STR in \n-00006400: 2020 2020 2020 5374 7269 6e67 2074 6f20 String to \n-00006410: 7365 6e64 0a0a 4445 5343 5249 5054 494f send..DESCRIPTIO\n-00006420: 4e0a 2020 2020 2054 6869 7320 7072 6f63 N. This proc\n-00006430: 6564 7572 6520 7365 6e64 7320 7468 6520 edure sends the \n-00006440: 636f 6e74 656e 7420 6f66 2053 5452 206f content of STR o\n-00006450: 7665 7220 616e 206f 7574 676f 696e 6720 ver an outgoing \n-00006460: 6f72 0a20 2020 2020 696e 636f 6d69 6e67 or. incoming\n-00006470: 2073 6f63 6b65 742e 0a0a 4558 4345 5054 socket...EXCEPT\n-00006480: 494f 4e53 0a20 2020 2020 2743 6f6e 6e65 IONS. 'Conne\n-00006490: 6374 696f 6e5f 436c 6f73 6564 2750 6565 ction_Closed'Pee\n-000064a0: 7220 6861 7320 7072 656d 6174 7572 656c r has prematurel\n-000064b0: 7920 636c 6f73 6564 2074 6865 2063 6f6e y closed the con\n-000064c0: 6e65 6374 696f 6e0a 0a53 4545 2041 4c53 nection..SEE ALS\n-000064d0: 4f0a 2020 2020 202a 6e6f 7465 204e 6577 O. *note New\n-000064e0: 5f4c 696e 6520 2870 726f 6365 6475 7265 _Line (procedure\n-000064f0: 293a 3a2c 0a20 2020 2020 2a6e 6f74 6520 )::,. *note \n-00006500: 5075 745f 4c69 6e65 2028 7072 6f63 6564 Put_Line (proced\n-00006510: 7572 6529 3a3a 2c0a 2020 2020 202a 6e6f ure)::,. *no\n-00006520: 7465 2053 656e 6420 2870 726f 6365 6475 te Send (procedu\n-00006530: 7265 293a 3a2e 0a0a 1f0a 4669 6c65 3a20 re)::.....File: \n-00006540: 6164 6173 6f63 6b65 7473 2e69 6e66 6f2c adasockets.info,\n-00006550: 2020 4e6f 6465 3a20 5075 745f 4c69 6e65 Node: Put_Line\n-00006560: 2028 7072 6f63 6564 7572 6529 2c20 204e (procedure), N\n-00006570: 6578 743a 2052 6563 6569 7665 2028 6675 ext: Receive (fu\n-00006580: 6e63 7469 6f6e 292c 2020 5072 6576 3a20 nction), Prev: \n-00006590: 5075 7420 2870 726f 6365 6475 7265 292c Put (procedure),\n-000065a0: 2020 5570 3a20 4163 6365 7074 5f53 6f63 Up: Accept_Soc\n-000065b0: 6b65 7420 2870 726f 6365 6475 7265 290a ket (procedure).\n-000065c0: 0a50 7574 5f4c 696e 6520 2870 726f 6365 .Put_Line (proce\n-000065d0: 6475 7265 290a 2d2d 2d2d 2d2d 2d2d 2d2d dure).----------\n-000065e0: 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 5250 ----------..PURP\n-000065f0: 4f53 450a 2020 2020 2053 656e 6420 6120 OSE. Send a \n-00006600: 4352 2f4c 4620 7465 726d 696e 6174 6564 CR/LF terminated\n-00006610: 2073 7472 696e 6720 746f 2061 2072 656d string to a rem\n-00006620: 6f74 6520 686f 7374 0a50 524f 544f 5459 ote host.PROTOTY\n-00006630: 5045 0a20 2020 2020 202d 2d20 536f 636b PE. -- Sock\n-00006640: 6574 732e 5075 745f 4c69 6e65 3a20 7072 ets.Put_Line: pr\n-00006650: 6f63 6564 7572 6520 5075 745f 4c69 6e65 ocedure Put_Line\n-00006660: 2028 534f 434b 4554 203a 2053 6f63 6b65 (SOCKET : Socke\n-00006670: 745f 4644 2743 6c61 7373 3b0a 2020 2020 t_FD'Class;. \n-00006680: 2020 2020 2020 2020 2020 2053 5452 203a STR :\n-00006690: 2053 7472 696e 6729 3b0a 0a50 4152 414d String);..PARAM\n-000066a0: 4554 4552 530a 2020 2020 2053 4f43 4b45 ETERS. SOCKE\n-000066b0: 5420 2020 2020 696e 2020 2020 2020 2020 T in \n-000066c0: 2049 6e69 7469 616c 697a 6564 2061 6e64 Initialized and\n-000066d0: 2063 6f6e 6e65 6374 6564 2073 6f63 6b65 connected socke\n-000066e0: 7420 6f62 6a65 6374 0a20 2020 2020 5354 t object. ST\n-000066f0: 5220 2020 2020 2020 2069 6e20 2020 2020 R in \n-00006700: 2020 2020 5374 7269 6e67 2074 6f20 7365 String to se\n-00006710: 6e64 0a0a 4445 5343 5249 5054 494f 4e0a nd..DESCRIPTION.\n-00006720: 2020 2020 2054 6869 7320 7072 6f63 6564 This proced\n-00006730: 7572 6520 7365 6e64 7320 7468 6520 636f ure sends the co\n-00006740: 6e74 656e 7420 6f66 2053 5452 2070 6c75 ntent of STR plu\n-00006750: 7320 6120 4352 2f4c 4620 636f 6d62 696e s a CR/LF combin\n-00006760: 6174 696f 6e0a 2020 2020 206f 7665 7220 ation. over \n-00006770: 616e 206f 7574 676f 696e 6720 6f72 2069 an outgoing or i\n-00006780: 6e63 6f6d 696e 6720 736f 636b 6574 2e0a ncoming socket..\n-00006790: 0a45 5843 4550 5449 4f4e 530a 2020 2020 .EXCEPTIONS. \n-000067a0: 2027 436f 6e6e 6563 7469 6f6e 5f43 6c6f 'Connection_Clo\n-000067b0: 7365 6427 5065 6572 2068 6173 2070 7265 sed'Peer has pre\n-000067c0: 6d61 7475 7265 6c79 2063 6c6f 7365 6420 maturely closed \n-000067d0: 7468 6520 636f 6e6e 6563 7469 6f6e 0a0a the connection..\n-000067e0: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n-000067f0: 6f74 6520 4e65 775f 4c69 6e65 2028 7072 ote New_Line (pr\n-00006800: 6f63 6564 7572 6529 3a3a 2c0a 2020 2020 ocedure)::,. \n-00006810: 202a 6e6f 7465 2050 7574 2028 7072 6f63 *note Put (proc\n-00006820: 6564 7572 6529 3a3a 2c0a 2020 2020 202a edure)::,. *\n-00006830: 6e6f 7465 2053 656e 6420 2870 726f 6365 note Send (proce\n-00006840: 6475 7265 293a 3a2e 0a0a 1f0a 4669 6c65 dure)::.....File\n-00006850: 3a20 6164 6173 6f63 6b65 7473 2e69 6e66 : adasockets.inf\n-00006860: 6f2c 2020 4e6f 6465 3a20 5265 6365 6976 o, Node: Receiv\n-00006870: 6520 2866 756e 6374 696f 6e29 2c20 204e e (function), N\n-00006880: 6578 743a 2052 6563 6569 7665 2028 7072 ext: Receive (pr\n-00006890: 6f63 6564 7572 6529 2c20 2050 7265 763a ocedure), Prev:\n-000068a0: 2050 7574 5f4c 696e 6520 2870 726f 6365 Put_Line (proce\n-000068b0: 6475 7265 292c 2020 5570 3a20 4163 6365 dure), Up: Acce\n-000068c0: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n-000068d0: 6475 7265 290a 0a52 6563 6569 7665 2028 dure)..Receive (\n-000068e0: 6675 6e63 7469 6f6e 290a 2d2d 2d2d 2d2d function).------\n-000068f0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 ------------..PU\n-00006900: 5250 4f53 450a 2020 2020 2052 6563 6569 RPOSE. Recei\n-00006910: 7665 2072 6177 2064 6174 6120 6f76 6572 ve raw data over\n-00006920: 2061 2073 6f63 6b65 740a 5052 4f54 4f54 a socket.PROTOT\n-00006930: 5950 450a 2020 2020 2020 2d2d 2053 6f63 YPE. -- Soc\n-00006940: 6b65 7473 2e52 6563 6569 7665 3a20 6675 kets.Receive: fu\n-00006950: 6e63 7469 6f6e 2052 6563 6569 7665 2028 nction Receive (\n-00006960: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n-00006970: 4644 3b0a 2020 2020 2020 2020 2020 2020 FD;. \n-00006980: 2020 204d 4158 203a 2041 6461 2e53 7472 MAX : Ada.Str\n-00006990: 6561 6d73 2e53 7472 6561 6d5f 456c 656d eams.Stream_Elem\n-000069a0: 656e 745f 436f 756e 7420 3a3d 2034 3039 ent_Count := 409\n-000069b0: 3629 0a20 2020 2020 2020 2020 2020 2020 6). \n-000069c0: 2020 7265 7475 726e 2041 6461 2e53 7472 return Ada.Str\n-000069d0: 6561 6d73 2e53 7472 6561 6d5f 456c 656d eams.Stream_Elem\n-000069e0: 656e 745f 4172 7261 793b 0a0a 5041 5241 ent_Array;..PARA\n-000069f0: 4d45 5445 5253 0a20 2020 2020 534f 434b METERS. SOCK\n-00006a00: 4554 2020 2020 2069 6e20 2020 2020 2020 ET in \n-00006a10: 2020 496e 6974 6961 6c69 7a65 6420 616e Initialized an\n-00006a20: 6420 626f 756e 6420 6f72 2063 6f6e 6e65 d bound or conne\n-00006a30: 6374 6564 0a20 2020 2020 2020 2020 2020 cted. \n-00006a40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00006a50: 736f 636b 6574 206f 626a 6563 740a 2020 socket object. \n-00006a60: 2020 204d 4158 2020 2020 2020 2020 696e MAX in\n-00006a70: 2020 2020 2020 2020 204d 6178 696d 756d Maximum\n-00006a80: 2064 6174 6120 6c65 6e67 7468 0a0a 5245 data length..RE\n-00006a90: 5455 524e 2056 414c 5545 0a20 2020 2020 TURN VALUE. \n-00006aa0: 5265 6365 6976 6564 2072 6177 2064 6174 Received raw dat\n-00006ab0: 610a 0a44 4553 4352 4950 5449 4f4e 0a20 a..DESCRIPTION. \n-00006ac0: 2020 2020 5468 6973 2070 726f 6365 6475 This procedu\n-00006ad0: 7265 2072 6563 6569 7665 7320 6461 7461 re receives data\n-00006ae0: 2066 726f 6d20 6120 626f 756e 6420 5544 from a bound UD\n-00006af0: 5020 736f 636b 6574 206f 7220 6120 636f P socket or a co\n-00006b00: 6e6e 6563 7465 640a 2020 2020 2054 4350 nnected. TCP\n-00006b10: 2073 6f63 6b65 742e 2020 4f6e 6c79 206f socket. Only o\n-00006b20: 6e65 2073 7973 7465 6d20 6361 6c6c 2077 ne system call w\n-00006b30: 696c 6c20 6265 2070 6572 666f 726d 6564 ill be performed\n-00006b40: 3b20 7468 6973 2066 756e 6374 696f 6e0a ; this function.\n-00006b50: 2020 2020 2077 696c 6c20 7265 7475 726e will return\n-00006b60: 2077 6861 7465 7665 7220 6461 7461 2068 whatever data h\n-00006b70: 6173 2061 7272 6976 6564 2e20 204e 6f74 as arrived. Not\n-00006b80: 6520 7468 6174 2069 6e20 474e 4154 2074 e that in GNAT t\n-00006b90: 6865 0a20 2020 2020 7365 636f 6e64 6172 he. secondar\n-00006ba0: 7920 7374 6163 6b20 6d61 7920 6265 2075 y stack may be u\n-00006bb0: 7365 6420 746f 2073 746f 7265 2074 6865 sed to store the\n-00006bc0: 2064 6174 6120 616e 6420 6d61 7920 7265 data and may re\n-00006bd0: 7375 6c74 2069 6e0a 2020 2020 2073 7461 sult in. sta\n-00006be0: 636b 2073 746f 7261 6765 2065 7868 6175 ck storage exhau\n-00006bf0: 7374 696f 6e2e 0a0a 4558 4345 5054 494f stion...EXCEPTIO\n-00006c00: 4e53 0a20 2020 2020 2743 6f6e 6e65 6374 NS. 'Connect\n-00006c10: 696f 6e5f 436c 6f73 6564 2750 6565 7220 ion_Closed'Peer \n-00006c20: 6861 7320 636c 6f73 6564 2074 6865 2063 has closed the c\n-00006c30: 6f6e 6e65 6374 696f 6e20 6265 666f 7265 onnection before\n-00006c40: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-00006c50: 2020 2020 2020 2020 2073 656e 6469 6e67 sending\n-00006c60: 2061 6e79 2064 6174 610a 0a53 4545 2041 any data..SEE A\n-00006c70: 4c53 4f0a 2020 2020 202a 6e6f 7465 2052 LSO. *note R\n-00006c80: 6563 6569 7665 2028 7072 6f63 6564 7572 eceive (procedur\n-00006c90: 6529 3a3a 2c0a 2020 2020 202a 6e6f 7465 e)::,. *note\n-00006ca0: 2052 6563 6569 7665 5f53 6f6d 6520 2870 Receive_Some (p\n-00006cb0: 726f 6365 6475 7265 293a 3a2c 0a20 2020 rocedure)::,. \n-00006cc0: 2020 2a6e 6f74 6520 4765 745f 4c69 6e65 *note Get_Line\n-00006cd0: 2028 6675 6e63 7469 6f6e 293a 3a2c 0a20 (function)::,. \n-00006ce0: 2020 2020 2a6e 6f74 6520 4765 745f 4c69 *note Get_Li\n-00006cf0: 6e65 2028 7072 6f63 6564 7572 6529 3a3a ne (procedure)::\n-00006d00: 2e0a 0a1f 0a46 696c 653a 2061 6461 736f .....File: adaso\n-00006d10: 636b 6574 732e 696e 666f 2c20 204e 6f64 ckets.info, Nod\n-00006d20: 653a 2052 6563 6569 7665 2028 7072 6f63 e: Receive (proc\n-00006d30: 6564 7572 6529 2c20 204e 6578 743a 2052 edure), Next: R\n-00006d40: 6563 6569 7665 5f53 6f6d 6520 2870 726f eceive_Some (pro\n-00006d50: 6365 6475 7265 292c 2020 5072 6576 3a20 cedure), Prev: \n-00006d60: 5265 6365 6976 6520 2866 756e 6374 696f Receive (functio\n-00006d70: 6e29 2c20 2055 703a 2041 6363 6570 745f n), Up: Accept_\n-00006d80: 536f 636b 6574 2028 7072 6f63 6564 7572 Socket (procedur\n-00006d90: 6529 0a0a 5265 6365 6976 6520 2870 726f e)..Receive (pro\n-00006da0: 6365 6475 7265 290a 2d2d 2d2d 2d2d 2d2d cedure).--------\n-00006db0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 5552 -----------..PUR\n-00006dc0: 504f 5345 0a20 2020 2020 5265 6365 6976 POSE. Receiv\n-00006dd0: 6520 7261 7720 6461 7461 206f 7665 7220 e raw data over \n-00006de0: 6120 736f 636b 6574 0a50 524f 544f 5459 a socket.PROTOTY\n-00006df0: 5045 0a20 2020 2020 202d 2d20 536f 636b PE. -- Sock\n-00006e00: 6574 732e 5265 6365 6976 653a 2070 726f ets.Receive: pro\n-00006e10: 6365 6475 7265 2052 6563 6569 7665 2028 cedure Receive (\n-00006e20: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n-00006e30: 4644 2743 6c61 7373 3b0a 2020 2020 2020 FD'Class;. \n-00006e40: 2020 2020 2020 2020 2044 4154 4120 3a20 DATA : \n-00006e50: 6f75 7420 4164 612e 5374 7265 616d 732e out Ada.Streams.\n-00006e60: 5374 7265 616d 5f45 6c65 6d65 6e74 5f41 Stream_Element_A\n-00006e70: 7272 6179 293b 0a0a 5041 5241 4d45 5445 rray);..PARAMETE\n-00006e80: 5253 0a20 2020 2020 534f 434b 4554 2020 RS. SOCKET \n-00006e90: 2020 2069 6e20 2020 2020 2020 2020 496e in In\n-00006ea0: 6974 6961 6c69 7a65 6420 616e 6420 626f itialized and bo\n-00006eb0: 756e 6420 6f72 2063 6f6e 6e65 6374 6564 und or connected\n-00006ec0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-00006ed0: 2020 2020 2020 2020 2020 2020 736f 636b sock\n-00006ee0: 6574 206f 626a 6563 740a 2020 2020 2044 et object. D\n-00006ef0: 4154 4120 2020 2020 2020 6f75 7420 2020 ATA out \n-00006f00: 2020 2020 2049 6e63 6f6d 696e 6720 6461 Incoming da\n-00006f10: 7461 2062 7566 6665 720a 0a44 4553 4352 ta buffer..DESCR\n-00006f20: 4950 5449 4f4e 0a20 2020 2020 5468 6973 IPTION. This\n-00006f30: 2070 726f 6365 6475 7265 2072 6563 6569 procedure recei\n-00006f40: 7665 7320 6461 7461 2066 726f 6d20 6120 ves data from a \n-00006f50: 626f 756e 6420 5544 5020 736f 636b 6574 bound UDP socket\n-00006f60: 206f 7220 6120 636f 6e6e 6563 7465 640a or a connected.\n-00006f70: 2020 2020 2054 4350 2073 6f63 6b65 742e TCP socket.\n-00006f80: 2020 4974 2077 696c 6c20 626c 6f63 6b20 It will block \n-00006f90: 756e 7469 6c20 7468 6520 4441 5441 2072 until the DATA r\n-00006fa0: 6563 6570 7469 6f6e 2062 7566 6665 7220 eception buffer \n-00006fb0: 6861 7320 6265 656e 0a20 2020 2020 746f has been. to\n-00006fc0: 7461 6c6c 7920 6669 6c6c 6564 2e0a 0a45 tally filled...E\n-00006fd0: 5843 4550 5449 4f4e 530a 2020 2020 2027 XCEPTIONS. '\n-00006fe0: 436f 6e6e 6563 7469 6f6e 5f43 6c6f 7365 Connection_Close\n-00006ff0: 6427 5065 6572 2068 6173 2063 6c6f 7365 d'Peer has close\n-00007000: 6420 7468 6520 636f 6e6e 6563 7469 6f6e d the connection\n-00007010: 2062 6566 6f72 650a 2020 2020 2020 2020 before. \n-00007020: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00007030: 2744 6174 6127 4c65 6e67 7468 2720 6279 'Data'Length' by\n-00007040: 7465 730a 2020 2020 2020 2020 2020 2020 tes. \n-00007050: 2020 2020 2020 2020 2020 2020 7765 7265 were\n-00007060: 2072 6563 6569 7665 640a 0a53 4545 2041 received..SEE A\n-00007070: 4c53 4f0a 2020 2020 202a 6e6f 7465 2047 LSO. *note G\n-00007080: 6574 5f4c 696e 6520 2866 756e 6374 696f et_Line (functio\n-00007090: 6e29 3a3a 2c0a 2020 2020 202a 6e6f 7465 n)::,. *note\n-000070a0: 2047 6574 5f4c 696e 6520 2870 726f 6365 Get_Line (proce\n-000070b0: 6475 7265 293a 3a2c 0a20 2020 2020 2a6e dure)::,. *n\n-000070c0: 6f74 6520 5265 6365 6976 6520 2866 756e ote Receive (fun\n-000070d0: 6374 696f 6e29 3a3a 2c0a 2020 2020 202a ction)::,. *\n-000070e0: 6e6f 7465 2052 6563 6569 7665 5f53 6f6d note Receive_Som\n-000070f0: 6520 2870 726f 6365 6475 7265 293a 3a2e e (procedure)::.\n-00007100: 0a0a 1f0a 4669 6c65 3a20 6164 6173 6f63 ....File: adasoc\n-00007110: 6b65 7473 2e69 6e66 6f2c 2020 4e6f 6465 kets.info, Node\n-00007120: 3a20 5265 6365 6976 655f 536f 6d65 2028 : Receive_Some (\n-00007130: 7072 6f63 6564 7572 6529 2c20 204e 6578 procedure), Nex\n-00007140: 743a 2053 656e 6420 2870 726f 6365 6475 t: Send (procedu\n-00007150: 7265 292c 2020 5072 6576 3a20 5265 6365 re), Prev: Rece\n-00007160: 6976 6520 2870 726f 6365 6475 7265 292c ive (procedure),\n-00007170: 2020 5570 3a20 4163 6365 7074 5f53 6f63 Up: Accept_Soc\n-00007180: 6b65 7420 2870 726f 6365 6475 7265 290a ket (procedure).\n-00007190: 0a52 6563 6569 7665 5f53 6f6d 6520 2870 .Receive_Some (p\n-000071a0: 726f 6365 6475 7265 290a 2d2d 2d2d 2d2d rocedure).------\n-000071b0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-000071c0: 2d2d 0a0a 5055 5250 4f53 450a 2020 2020 --..PURPOSE. \n-000071d0: 2052 6563 6569 7665 2072 6177 2064 6174 Receive raw dat\n-000071e0: 6120 6f76 6572 2061 2073 6f63 6b65 740a a over a socket.\n-000071f0: 5052 4f54 4f54 5950 450a 2020 2020 2020 PROTOTYPE. \n-00007200: 2d2d 2053 6f63 6b65 7473 2e52 6563 6569 -- Sockets.Recei\n-00007210: 7665 5f53 6f6d 653a 2070 726f 6365 6475 ve_Some: procedu\n-00007220: 7265 2052 6563 6569 7665 5f53 6f6d 650a re Receive_Some.\n-00007230: 2020 2020 2020 2020 2020 2020 2020 2028 (\n-00007240: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n-00007250: 4644 2743 6c61 7373 3b0a 2020 2020 2020 FD'Class;. \n-00007260: 2020 2020 2020 2020 2044 4154 4120 3a20 DATA : \n-00007270: 6f75 7420 4164 612e 5374 7265 616d 732e out Ada.Streams.\n-00007280: 5374 7265 616d 5f45 6c65 6d65 6e74 5f41 Stream_Element_A\n-00007290: 7272 6179 3b0a 2020 2020 2020 2020 2020 rray;. \n-000072a0: 2020 2020 204c 4153 5420 3a20 6f75 7420 LAST : out \n-000072b0: 4164 612e 5374 7265 616d 732e 5374 7265 Ada.Streams.Stre\n-000072c0: 616d 5f45 6c65 6d65 6e74 5f4f 6666 7365 am_Element_Offse\n-000072d0: 7429 3b0a 0a50 4152 414d 4554 4552 530a t);..PARAMETERS.\n-000072e0: 2020 2020 2053 4f43 4b45 5420 2020 2020 SOCKET \n-000072f0: 696e 2020 2020 2020 2020 2049 6e69 7469 in Initi\n-00007300: 616c 697a 6564 2061 6e64 2062 6f75 6e64 alized and bound\n-00007310: 206f 7220 636f 6e6e 6563 7465 640a 2020 or connected. \n-00007320: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00007330: 2020 2020 2020 2020 2073 6f63 6b65 7420 socket \n-00007340: 6f62 6a65 6374 0a20 2020 2020 4441 5441 object. DATA\n-00007350: 2020 2020 2020 206f 7574 2020 2020 2020 out \n-00007360: 2020 496e 636f 6d69 6e67 2064 6174 6120 Incoming data \n-00007370: 6275 6666 6572 0a20 2020 2020 4c41 5354 buffer. LAST\n-00007380: 2020 2020 2020 206f 7574 2020 2020 2020 out \n-00007390: 2020 496e 6465 7820 6f66 206c 6173 7420 Index of last \n-000073a0: 656c 656d 656e 7420 706c 6163 6564 2069 element placed i\n-000073b0: 6e74 6f20 4441 5441 0a0a 4445 5343 5249 nto DATA..DESCRI\n-000073c0: 5054 494f 4e0a 2020 2020 2054 6869 7320 PTION. This \n-000073d0: 7072 6f63 6564 7572 6520 7265 6365 6976 procedure receiv\n-000073e0: 6573 2064 6174 6120 6672 6f6d 2061 2062 es data from a b\n-000073f0: 6f75 6e64 2055 4450 2073 6f63 6b65 7420 ound UDP socket \n-00007400: 6f72 2061 2063 6f6e 6e65 6374 6564 0a20 or a connected. \n-00007410: 2020 2020 5443 5020 736f 636b 6574 2e20 TCP socket. \n-00007420: 2041 7320 736f 6f6e 2061 7320 6174 206c As soon as at l\n-00007430: 6561 7374 206f 6e65 2062 7974 6520 6861 east one byte ha\n-00007440: 7320 6265 656e 2072 6561 642c 2069 7420 s been read, it \n-00007450: 7265 7475 726e 730a 2020 2020 2077 6974 returns. wit\n-00007460: 6820 4c41 5354 2073 6574 2074 6f20 7468 h LAST set to th\n-00007470: 6520 696e 6465 7820 6f66 2074 6865 206c e index of the l\n-00007480: 6174 6573 7420 7772 6974 7465 6e20 656c atest written el\n-00007490: 656d 656e 7420 6f66 2044 4154 412e 0a0a ement of DATA...\n-000074a0: 4558 4345 5054 494f 4e53 0a20 2020 2020 EXCEPTIONS. \n-000074b0: 2743 6f6e 6e65 6374 696f 6e5f 436c 6f73 'Connection_Clos\n-000074c0: 6564 2750 6565 7220 6861 7320 636c 6f73 ed'Peer has clos\n-000074d0: 6564 2074 6865 2063 6f6e 6e65 6374 696f ed the connectio\n-000074e0: 6e20 6265 666f 7265 0a20 2020 2020 2020 n before. \n-000074f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00007500: 2073 656e 6469 6e67 2061 6e79 2064 6174 sending any dat\n-00007510: 610a 0a53 4545 2041 4c53 4f0a 2020 2020 a..SEE ALSO. \n-00007520: 202a 6e6f 7465 2047 6574 5f4c 696e 6520 *note Get_Line \n-00007530: 2866 756e 6374 696f 6e29 3a3a 2c0a 2020 (function)::,. \n-00007540: 2020 202a 6e6f 7465 2047 6574 5f4c 696e *note Get_Lin\n-00007550: 6520 2870 726f 6365 6475 7265 293a 3a2c e (procedure)::,\n-00007560: 0a20 2020 2020 2a6e 6f74 6520 5265 6365 . *note Rece\n-00007570: 6976 6520 2866 756e 6374 696f 6e29 3a3a ive (function)::\n-00007580: 2c0a 2020 2020 202a 6e6f 7465 2052 6563 ,. *note Rec\n-00007590: 6569 7665 2028 7072 6f63 6564 7572 6529 eive (procedure)\n-000075a0: 3a3a 2e0a 0a1f 0a46 696c 653a 2061 6461 ::.....File: ada\n-000075b0: 736f 636b 6574 732e 696e 666f 2c20 204e sockets.info, N\n-000075c0: 6f64 653a 2053 656e 6420 2870 726f 6365 ode: Send (proce\n-000075d0: 6475 7265 292c 2020 4e65 7874 3a20 5365 dure), Next: Se\n-000075e0: 745f 4275 6666 6572 2028 7072 6f63 6564 t_Buffer (proced\n-000075f0: 7572 6529 2c20 2050 7265 763a 2052 6563 ure), Prev: Rec\n-00007600: 6569 7665 5f53 6f6d 6520 2870 726f 6365 eive_Some (proce\n-00007610: 6475 7265 292c 2020 5570 3a20 4163 6365 dure), Up: Acce\n-00007620: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n-00007630: 6475 7265 290a 0a53 656e 6420 2870 726f dure)..Send (pro\n-00007640: 6365 6475 7265 290a 2d2d 2d2d 2d2d 2d2d cedure).--------\n-00007650: 2d2d 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 --------..PURPOS\n-00007660: 450a 2020 2020 2053 656e 6420 7261 7720 E. Send raw \n-00007670: 6461 7461 206f 7665 7220 6120 736f 636b data over a sock\n-00007680: 6574 0a50 524f 544f 5459 5045 0a20 2020 et.PROTOTYPE. \n-00007690: 2020 202d 2d20 536f 636b 6574 732e 5365 -- Sockets.Se\n-000076a0: 6e64 3a20 7072 6f63 6564 7572 6520 5365 nd: procedure Se\n-000076b0: 6e64 2028 534f 434b 4554 203a 2053 6f63 nd (SOCKET : Soc\n-000076c0: 6b65 745f 4644 3b0a 2020 2020 2020 2020 ket_FD;. \n-000076d0: 2020 2020 2020 2044 4154 4120 3a20 6f75 DATA : ou\n-000076e0: 7420 4164 612e 5374 7265 616d 732e 5374 t Ada.Streams.St\n-000076f0: 7265 616d 5f45 6c65 6d65 6e74 5f41 7272 ream_Element_Arr\n-00007700: 6179 293b 0a0a 5041 5241 4d45 5445 5253 ay);..PARAMETERS\n-00007710: 0a20 2020 2020 534f 434b 4554 2020 2020 . SOCKET \n-00007720: 2069 6e20 2020 2020 2020 2020 496e 6974 in Init\n-00007730: 6961 6c69 7a65 6420 616e 6420 636f 6e6e ialized and conn\n-00007740: 6563 7465 6420 736f 636b 6574 206f 626a ected socket obj\n-00007750: 6563 740a 2020 2020 2044 4154 4120 2020 ect. DATA \n-00007760: 2020 2020 6f75 7420 2020 2020 2020 2044 out D\n-00007770: 6174 6120 746f 2062 6520 7365 6e74 0a0a ata to be sent..\n-00007780: 4445 5343 5249 5054 494f 4e0a 2020 2020 DESCRIPTION. \n-00007790: 2054 6869 7320 7072 6f63 6564 7572 6520 This procedure \n-000077a0: 7365 6e64 7320 6461 7461 206f 7665 7220 sends data over \n-000077b0: 6120 636f 6e6e 6563 7465 6420 6f75 7467 a connected outg\n-000077c0: 6f69 6e67 2073 6f63 6b65 7420 6f72 206f oing socket or o\n-000077d0: 7665 720a 2020 2020 2061 6e20 696e 636f ver. an inco\n-000077e0: 6d69 6e67 2073 6f63 6b65 742e 0a0a 4558 ming socket...EX\n-000077f0: 4345 5054 494f 4e53 0a20 2020 2020 2743 CEPTIONS. 'C\n-00007800: 6f6e 6e65 6374 696f 6e5f 436c 6f73 6564 onnection_Closed\n-00007810: 2750 6565 7220 6861 7320 7072 656d 6174 'Peer has premat\n-00007820: 7572 656c 7920 636c 6f73 6564 2074 6865 urely closed the\n-00007830: 2063 6f6e 6e65 6374 696f 6e0a 0a53 4545 connection..SEE\n-00007840: 2041 4c53 4f0a 2020 2020 202a 6e6f 7465 ALSO. *note\n-00007850: 2050 7574 2028 7072 6f63 6564 7572 6529 Put (procedure)\n-00007860: 3a3a 2c0a 2020 2020 202a 6e6f 7465 2050 ::,. *note P\n-00007870: 7574 5f4c 696e 6520 2870 726f 6365 6475 ut_Line (procedu\n-00007880: 7265 293a 3a2e 0a0a 1f0a 4669 6c65 3a20 re)::.....File: \n-00007890: 6164 6173 6f63 6b65 7473 2e69 6e66 6f2c adasockets.info,\n-000078a0: 2020 4e6f 6465 3a20 5365 745f 4275 6666 Node: Set_Buff\n-000078b0: 6572 2028 7072 6f63 6564 7572 6529 2c20 er (procedure), \n-000078c0: 204e 6578 743a 2053 6574 736f 636b 6f70 Next: Setsockop\n-000078d0: 7420 2870 726f 6365 6475 7265 292c 2020 t (procedure), \n-000078e0: 5072 6576 3a20 5365 6e64 2028 7072 6f63 Prev: Send (proc\n-000078f0: 6564 7572 6529 2c20 2055 703a 2041 6363 edure), Up: Acc\n-00007900: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n-00007910: 6564 7572 6529 0a0a 5365 745f 4275 6666 edure)..Set_Buff\n-00007920: 6572 2028 7072 6f63 6564 7572 6529 0a2d er (procedure).-\n-00007930: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-00007940: 2d2d 2d2d 2d0a 0a50 5552 504f 5345 0a20 -----..PURPOSE. \n-00007950: 2020 2020 496e 7374 616c 6c20 6120 6c69 Install a li\n-00007960: 6e65 2d6f 7269 656e 7465 6420 6275 6666 ne-oriented buff\n-00007970: 6572 206f 6620 7468 6520 736f 636b 6574 er of the socket\n-00007980: 206f 626a 6563 740a 5052 4f54 4f54 5950 object.PROTOTYP\n-00007990: 450a 2020 2020 2020 2d2d 2053 6f63 6b65 E. -- Socke\n-000079a0: 7473 2e53 6574 5f42 7566 6665 723a 2070 ts.Set_Buffer: p\n-000079b0: 726f 6365 6475 7265 2053 6574 5f42 7566 rocedure Set_Buf\n-000079c0: 6665 720a 2020 2020 2020 2020 2020 2020 fer. \n-000079d0: 2020 2028 534f 434b 4554 203a 2053 6f63 (SOCKET : Soc\n-000079e0: 6b65 745f 4644 2743 6c61 7373 3b20 4c45 ket_FD'Class; LE\n-000079f0: 4e47 5448 203a 2050 6f73 6974 6976 6520 NGTH : Positive \n-00007a00: 3a3d 2031 3530 3029 3b0a 0a50 4152 414d := 1500);..PARAM\n-00007a10: 4554 4552 530a 2020 2020 2053 4f43 4b45 ETERS. SOCKE\n-00007a20: 5420 2020 2020 696e 2020 2020 2020 2020 T in \n-00007a30: 2049 6e69 7469 616c 697a 6564 2061 6e64 Initialized and\n-00007a40: 2063 6f6e 6e65 6374 6564 2073 6f63 6b65 connected socke\n-00007a50: 7420 6f62 6a65 6374 0a20 2020 2020 4c45 t object. LE\n-00007a60: 4e47 5448 2020 2020 2069 6e20 2020 2020 NGTH in \n-00007a70: 2020 2020 5369 7a65 2069 6e20 6279 7465 Size in byte\n-00007a80: 7320 6f66 2074 6865 206e 6577 6c79 2069 s of the newly i\n-00007a90: 6e73 7461 6c6c 6564 0a20 2020 2020 2020 nstalled. \n-00007aa0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00007ab0: 2020 2020 6275 6666 6572 0a0a 4445 5343 buffer..DESC\n-00007ac0: 5249 5054 494f 4e0a 2020 2020 2054 6869 RIPTION. Thi\n-00007ad0: 7320 7072 6f63 6564 7572 6520 7075 7473 s procedure puts\n-00007ae0: 2074 6865 2073 6f63 6b65 7420 6f62 6a65 the socket obje\n-00007af0: 6374 2069 6e20 6275 6666 6572 6564 206d ct in buffered m\n-00007b00: 6f64 652e 2020 4966 2074 6865 0a20 2020 ode. If the. \n-00007b10: 2020 736f 636b 6574 2077 6173 2061 6c72 socket was alr\n-00007b20: 6561 6479 2062 7566 6665 7265 642c 2074 eady buffered, t\n-00007b30: 6865 2063 6f6e 7465 6e74 206f 6620 7468 he content of th\n-00007b40: 6520 7072 6576 696f 7573 2062 7566 6665 e previous buffe\n-00007b50: 720a 2020 2020 2077 696c 6c20 6265 206c r. will be l\n-00007b60: 6f73 742e 2020 5468 6520 6275 6666 6572 ost. The buffer\n-00007b70: 6564 206d 6f64 6520 6f6e 6c79 2061 6666 ed mode only aff\n-00007b80: 6563 7473 2063 6861 7261 6374 6572 2d20 ects character- \n-00007b90: 616e 640a 2020 2020 206c 696e 652d 6f72 and. line-or\n-00007ba0: 6965 6e74 6564 2072 6561 6420 6f70 6572 iented read oper\n-00007bb0: 6174 696f 6e20 7375 6368 2061 7320 2a6e ation such as *n\n-00007bc0: 6f74 6520 4765 7420 2866 756e 6374 696f ote Get (functio\n-00007bd0: 6e29 3a3a 2c20 2a6e 6f74 650a 2020 2020 n)::, *note. \n-00007be0: 2047 6574 5f43 6861 7220 2866 756e 6374 Get_Char (funct\n-00007bf0: 696f 6e29 3a3a 2c20 616e 6420 2a6e 6f74 ion)::, and *not\n-00007c00: 6520 4765 745f 4c69 6e65 2028 6675 6e63 e Get_Line (func\n-00007c10: 7469 6f6e 293a 3a2e 2020 4f74 6865 720a tion)::. Other.\n-00007c20: 2020 2020 2072 6563 6570 7469 6f6e 2073 reception s\n-00007c30: 7562 7072 6f67 7261 6d73 2077 696c 6c20 ubprograms will \n-00007c40: 6e6f 7420 6675 6e63 7469 6f6e 2070 726f not function pro\n-00007c50: 7065 726c 7920 6966 2062 7566 6665 7265 perly if buffere\n-00007c60: 6420 6d6f 6465 0a20 2020 2020 6973 2075 d mode. is u\n-00007c70: 7365 6420 6174 2074 6865 2073 616d 6520 sed at the same \n-00007c80: 7469 6d65 2e0a 0a20 2020 2020 5468 6520 time... The \n-00007c90: 7369 7a65 206f 6620 7468 6520 6275 6666 size of the buff\n-00007ca0: 6572 2068 6173 2074 6f20 6265 2067 7265 er has to be gre\n-00007cb0: 6174 6572 2074 6861 6e20 7468 6520 6269 ater than the bi\n-00007cc0: 6767 6573 7420 706f 7373 6962 6c65 0a20 ggest possible. \n-00007cd0: 2020 2020 7061 636b 6574 2073 656e 7420 packet sent \n-00007ce0: 6279 2074 6865 2072 656d 6f74 6520 686f by the remote ho\n-00007cf0: 7374 2c20 6f74 6865 7277 6973 6520 6461 st, otherwise da\n-00007d00: 7461 206c 6f73 7320 6d61 7920 6f63 6375 ta loss may occu\n-00007d10: 722e 0a0a 5345 4520 414c 534f 0a20 2020 r...SEE ALSO. \n-00007d20: 2020 2a6e 6f74 6520 556e 7365 745f 4275 *note Unset_Bu\n-00007d30: 6666 6572 2028 7072 6f63 6564 7572 6529 ffer (procedure)\n-00007d40: 3a3a 2e0a 0a1f 0a46 696c 653a 2061 6461 ::.....File: ada\n-00007d50: 736f 636b 6574 732e 696e 666f 2c20 204e sockets.info, N\n-00007d60: 6f64 653a 2053 6574 736f 636b 6f70 7420 ode: Setsockopt \n-00007d70: 2870 726f 6365 6475 7265 292c 2020 4e65 (procedure), Ne\n-00007d80: 7874 3a20 5368 7574 646f 776e 2028 7072 xt: Shutdown (pr\n-00007d90: 6f63 6564 7572 6529 2c20 2050 7265 763a ocedure), Prev:\n-00007da0: 2053 6574 5f42 7566 6665 7220 2870 726f Set_Buffer (pro\n-00007db0: 6365 6475 7265 292c 2020 5570 3a20 4163 cedure), Up: Ac\n-00007dc0: 6365 7074 5f53 6f63 6b65 7420 2870 726f cept_Socket (pro\n-00007dd0: 6365 6475 7265 290a 0a53 6574 736f 636b cedure)..Setsock\n-00007de0: 6f70 7420 2870 726f 6365 6475 7265 290a opt (procedure).\n-00007df0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-00007e00: 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 450a ------..PURPOSE.\n-00007e10: 2020 2020 2053 6574 2061 2073 6f63 6b65 Set a socke\n-00007e20: 7420 6f70 7469 6f6e 0a50 524f 544f 5459 t option.PROTOTY\n-00007e30: 5045 0a20 2020 2020 202d 2d20 536f 636b PE. -- Sock\n-00007e40: 6574 732e 5365 7473 6f63 6b6f 7074 3a20 ets.Setsockopt: \n-00007e50: 7072 6f63 6564 7572 6520 5365 7473 6f63 procedure Setsoc\n-00007e60: 6b6f 7074 2028 534f 434b 4554 203a 2053 kopt (SOCKET : S\n-00007e70: 6f63 6b65 745f 4644 3b0a 2020 2020 2020 ocket_FD;. \n-00007e80: 2020 2020 2020 2020 204c 4556 454c 203a LEVEL :\n-00007e90: 2053 6f63 6b65 745f 4c65 7665 6c20 3a3d Socket_Level :=\n-00007ea0: 2053 4f4c 5f53 4f43 4b45 543b 0a20 2020 SOL_SOCKET;. \n-00007eb0: 2020 2020 2020 2020 2020 2020 4f50 544e OPTN\n-00007ec0: 414d 4520 3a20 536f 636b 6574 5f4f 7074 AME : Socket_Opt\n-00007ed0: 696f 6e3b 204f 5054 5641 4c20 3a20 496e ion; OPTVAL : In\n-00007ee0: 7465 6765 7229 3b0a 0a50 4152 414d 4554 teger);..PARAMET\n-00007ef0: 4552 530a 2020 2020 2053 4f43 4b45 5420 ERS. SOCKET \n-00007f00: 2020 2020 696e 2020 2020 2020 2020 2049 in I\n-00007f10: 6e69 7469 616c 697a 6564 2061 6e64 2062 nitialized and b\n-00007f20: 6f75 6e64 2073 6f63 6b65 7420 6f62 6a65 ound socket obje\n-00007f30: 6374 0a20 2020 2020 4c45 5645 4c20 2020 ct. LEVEL \n-00007f40: 2020 2069 6e20 2020 2020 2020 2020 5072 in Pr\n-00007f50: 6f74 6f63 6f6c 206c 6576 656c 0a20 2020 otocol level. \n-00007f60: 2020 4f50 544e 414d 4520 2020 2069 6e20 OPTNAME in \n-00007f70: 2020 2020 2020 2020 4f70 7469 6f6e 206e Option n\n-00007f80: 616d 650a 2020 2020 204f 5054 5641 4c20 ame. OPTVAL \n-00007f90: 2020 2020 696e 2020 2020 2020 2020 204f in O\n-00007fa0: 7074 696f 6e20 7661 6c75 650a 0a44 4553 ption value..DES\n-00007fb0: 4352 4950 5449 4f4e 0a20 2020 2020 5468 CRIPTION. Th\n-00007fc0: 6973 2070 726f 6365 6475 7265 2073 6574 is procedure set\n-00007fd0: 7320 6f70 7469 6f6e 7320 6170 706c 6963 s options applic\n-00007fe0: 6162 6c65 2074 6f20 6120 736f 636b 6574 able to a socket\n-00007ff0: 2e20 2050 6c65 6173 6520 7365 650a 2020 . Please see. \n-00008000: 2020 2079 6f75 7220 6f70 6572 6174 696e your operatin\n-00008010: 6720 7379 7374 656d 206d 616e 7561 6c20 g system manual \n-00008020: 666f 7220 7573 6162 6c65 206c 6576 656c for usable level\n-00008030: 7320 616e 6420 6f70 7469 6f6e 732e 0a0a s and options...\n-00008040: 2020 2020 2054 776f 206c 6576 656c 7320 Two levels \n-00008050: 6172 6520 6465 6669 6e65 643a 2027 534f are defined: 'SO\n-00008060: 4c5f 534f 434b 4554 2720 2874 6865 2064 L_SOCKET' (the d\n-00008070: 6566 6175 6c74 2920 616e 640a 2020 2020 efault) and. \n-00008080: 2027 4950 5052 4f54 4f5f 4950 272e 2020 'IPPROTO_IP'. \n-00008090: 5468 6520 6f70 7469 6f6e 7320 6172 6520 The options are \n-000080a0: 2753 4f5f 5245 5553 4541 4444 5227 2c20 'SO_REUSEADDR', \n-000080b0: 2753 4f5f 5245 5553 4550 4f52 5427 2c0a 'SO_REUSEPORT',.\n-000080c0: 2020 2020 2027 4950 5f4d 554c 5449 4341 'IP_MULTICA\n-000080d0: 5354 5f54 544c 272c 2027 4950 5f41 4444 ST_TTL', 'IP_ADD\n-000080e0: 5f4d 454d 4245 5253 4849 5027 2c20 2749 _MEMBERSHIP', 'I\n-000080f0: 505f 4452 4f50 5f4d 454d 4245 5253 4849 P_DROP_MEMBERSHI\n-00008100: 5027 2c0a 2020 2020 2027 4950 5f4d 554c P',. 'IP_MUL\n-00008110: 5449 4341 5354 5f4c 4f4f 5027 2c20 2753 TICAST_LOOP', 'S\n-00008120: 4f5f 534e 4442 5546 2720 616e 6420 2749 O_SNDBUF' and 'I\n-00008130: 505f 5243 5642 5546 272e 0a0a 2020 2020 P_RCVBUF'... \n-00008140: 204e 6f74 6520 7468 6174 2075 6e6c 696b Note that unlik\n-00008150: 6520 7468 6569 7220 4320 6c61 6e67 7561 e their C langua\n-00008160: 6765 2063 6f75 6e74 6572 7061 7274 2c20 ge counterpart, \n-00008170: 2747 6574 736f 636b 6f70 7427 2061 6e64 'Getsockopt' and\n-00008180: 0a20 2020 2020 2753 6574 736f 636b 6f70 . 'Setsockop\n-00008190: 7427 2064 6f20 6e6f 7420 7265 7175 6972 t' do not requir\n-000081a0: 6520 616e 2065 7874 7261 2070 6172 616d e an extra param\n-000081b0: 6574 6572 2072 6570 7265 7365 6e74 696e eter representin\n-000081c0: 6720 7468 650a 2020 2020 206c 656e 6774 g the. lengt\n-000081d0: 6820 696e 2062 7974 6573 206f 6620 7468 h in bytes of th\n-000081e0: 6520 6f70 7469 6f6e 2076 616c 7565 2e20 e option value. \n-000081f0: 2041 6461 536f 636b 6574 7320 6e6f 7773 AdaSockets nows\n-00008200: 2074 6865 2072 6967 6874 0a20 2020 2020 the right. \n-00008210: 7369 7a65 2066 6f72 2065 7665 7279 206f size for every o\n-00008220: 7074 696f 6e2e 0a0a 5345 4520 414c 534f ption...SEE ALSO\n-00008230: 0a20 2020 2020 2a6e 6f74 6520 4765 7473 . *note Gets\n-00008240: 6f63 6b6f 7074 2028 7072 6f63 6564 7572 ockopt (procedur\n-00008250: 6529 3a3a 2e0a 0a1f 0a46 696c 653a 2061 e)::.....File: a\n-00008260: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n-00008270: 204e 6f64 653a 2053 6875 7464 6f77 6e20 Node: Shutdown \n-00008280: 2870 726f 6365 6475 7265 292c 2020 4e65 (procedure), Ne\n-00008290: 7874 3a20 536f 636b 6574 2028 7072 6f63 xt: Socket (proc\n-000082a0: 6564 7572 6529 2c20 2050 7265 763a 2053 edure), Prev: S\n-000082b0: 6574 736f 636b 6f70 7420 2870 726f 6365 etsockopt (proce\n-000082c0: 6475 7265 292c 2020 5570 3a20 4163 6365 dure), Up: Acce\n-000082d0: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n-000082e0: 6475 7265 290a 0a53 6875 7464 6f77 6e20 dure)..Shutdown \n-000082f0: 2870 726f 6365 6475 7265 290a 2d2d 2d2d (procedure).----\n-00008300: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-00008310: 0a0a 5055 5250 4f53 450a 2020 2020 2053 ..PURPOSE. S\n-00008320: 6875 7464 6f77 6e20 6120 736f 636b 6574 hutdown a socket\n-00008330: 0a50 524f 544f 5459 5045 0a20 2020 2020 .PROTOTYPE. \n-00008340: 202d 2d20 536f 636b 6574 732e 5368 7574 -- Sockets.Shut\n-00008350: 646f 776e 3a20 7072 6f63 6564 7572 6520 down: procedure \n-00008360: 5368 7574 646f 776e 0a20 2020 2020 2020 Shutdown. \n-00008370: 2020 2020 2020 2020 2853 4f43 4b45 5420 (SOCKET \n-00008380: 3a20 696e 206f 7574 2053 6f63 6b65 745f : in out Socket_\n-00008390: 4644 3b20 484f 5720 3a20 5368 7574 646f FD; HOW : Shutdo\n-000083a0: 776e 5f54 7970 6520 3a3d 2042 6f74 6829 wn_Type := Both)\n-000083b0: 3b0a 0a50 4152 414d 4554 4552 530a 2020 ;..PARAMETERS. \n-000083c0: 2020 2053 4f43 4b45 5420 2020 2020 696e SOCKET in\n-000083d0: 206f 7574 2020 2020 2053 6f63 6b65 7420 out Socket \n-000083e0: 6f62 6a65 6374 2074 6f20 7368 7574 646f object to shutdo\n-000083f0: 776e 0a20 2020 2020 484f 5720 2020 2020 wn. HOW \n-00008400: 2020 2069 6e20 2020 2020 2020 2020 4469 in Di\n-00008410: 7265 6374 696f 6e20 746f 2073 6875 7464 rection to shutd\n-00008420: 6f77 6e0a 0a44 4553 4352 4950 5449 4f4e own..DESCRIPTION\n-00008430: 0a20 2020 2020 5468 6973 2070 726f 6365 . This proce\n-00008440: 6475 7265 2073 6875 7464 6f77 6e73 2065 dure shutdowns e\n-00008450: 6974 6865 7220 6469 7265 6374 696f 6e20 ither direction \n-00008460: 6f66 2074 6865 2073 6f63 6b65 742e 2020 of the socket. \n-00008470: 484f 5720 6361 6e0a 2020 2020 2074 616b HOW can. tak\n-00008480: 6520 7468 6520 7661 6c75 6520 2753 656e e the value 'Sen\n-00008490: 6427 2c20 2752 6563 6569 7665 2720 6f72 d', 'Receive' or\n-000084a0: 2027 426f 7468 272e 0a0a 5345 4520 414c 'Both'...SEE AL\n-000084b0: 534f 0a20 2020 2020 2a6e 6f74 6520 536f SO. *note So\n-000084c0: 636b 6574 2028 7072 6f63 6564 7572 6529 cket (procedure)\n-000084d0: 3a3a 2e0a 0a1f 0a46 696c 653a 2061 6461 ::.....File: ada\n-000084e0: 736f 636b 6574 732e 696e 666f 2c20 204e sockets.info, N\n-000084f0: 6f64 653a 2053 6f63 6b65 7420 2870 726f ode: Socket (pro\n-00008500: 6365 6475 7265 292c 2020 5072 6576 3a20 cedure), Prev: \n-00008510: 5368 7574 646f 776e 2028 7072 6f63 6564 Shutdown (proced\n-00008520: 7572 6529 2c20 2055 703a 2041 6363 6570 ure), Up: Accep\n-00008530: 745f 536f 636b 6574 2028 7072 6f63 6564 t_Socket (proced\n-00008540: 7572 6529 0a0a 536f 636b 6574 2028 7072 ure)..Socket (pr\n-00008550: 6f63 6564 7572 6529 0a2d 2d2d 2d2d 2d2d ocedure).-------\n-00008560: 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 5552 -----------..PUR\n-00008570: 504f 5345 0a20 2020 2020 4372 6561 7465 POSE. Create\n-00008580: 2061 2073 6f63 6b65 7420 6f66 2074 6865 a socket of the\n-00008590: 2067 6976 656e 206d 6f64 650a 5052 4f54 given mode.PROT\n-000085a0: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n-000085b0: 6f63 6b65 7473 2e53 6f63 6b65 743a 2070 ockets.Socket: p\n-000085c0: 726f 6365 6475 7265 2053 6f63 6b65 7420 rocedure Socket \n-000085d0: 2853 4f43 4b45 5420 3a20 6f75 7420 536f (SOCKET : out So\n-000085e0: 636b 6574 5f46 443b 0a20 2020 2020 2020 cket_FD;. \n-000085f0: 2020 2020 2020 2020 444f 4d41 494e 203a DOMAIN :\n-00008600: 2053 6f63 6b65 745f 446f 6d61 696e 203a Socket_Domain :\n-00008610: 3d20 5046 5f49 4e45 543b 0a20 2020 2020 = PF_INET;. \n-00008620: 2020 2020 2020 2020 2020 5459 5020 3a20 TYP : \n-00008630: 536f 636b 6574 5f54 7970 6520 3a3d 2053 Socket_Type := S\n-00008640: 4f43 4b5f 5354 5245 414d 293b 0a0a 5041 OCK_STREAM);..PA\n-00008650: 5241 4d45 5445 5253 0a20 2020 2020 534f RAMETERS. SO\n-00008660: 434b 4554 2020 2020 206f 7574 2020 2020 CKET out \n-00008670: 2020 2020 536f 636b 6574 206f 626a 6563 Socket objec\n-00008680: 7420 746f 2069 6e69 7469 616c 697a 650a t to initialize.\n-00008690: 2020 2020 2044 4f4d 4149 4e20 2020 2020 DOMAIN \n-000086a0: 696e 2020 2020 2020 2020 2050 726f 746f in Proto\n-000086b0: 636f 6c20 6661 6d69 6c79 0a20 2020 2020 col family. \n-000086c0: 5459 5020 2020 2020 2020 2069 6e20 2020 TYP in \n-000086d0: 2020 2020 2020 4b69 6e64 206f 6620 736f Kind of so\n-000086e0: 636b 6574 730a 0a44 4553 4352 4950 5449 ckets..DESCRIPTI\n-000086f0: 4f4e 0a20 2020 2020 5468 6973 2070 726f ON. This pro\n-00008700: 6365 6475 7265 2069 6e69 7469 616c 697a cedure initializ\n-00008710: 6573 2061 206e 6577 2073 6f63 6b65 7420 es a new socket \n-00008720: 6f62 6a65 6374 2062 7920 7265 7365 7276 object by reserv\n-00008730: 696e 6720 6120 6669 6c65 0a20 2020 2020 ing a file. \n-00008740: 6465 7363 7269 7074 6f72 2074 6f20 7468 descriptor to th\n-00008750: 6520 6f70 6572 6174 696e 6720 7379 7374 e operating syst\n-00008760: 656d 2e20 2046 6f72 2062 6163 6b77 6172 em. For backwar\n-00008770: 6420 636f 6d70 6174 6962 696c 6974 790a d compatibility.\n-00008780: 2020 2020 2077 6974 6820 6f6c 6465 7220 with older \n-00008790: 7665 7273 696f 6e73 206f 6620 7468 6973 versions of this\n-000087a0: 206c 6962 7261 7279 2c20 2741 465f 494e library, 'AF_IN\n-000087b0: 4554 2720 6973 2073 7469 6c6c 2061 6363 ET' is still acc\n-000087c0: 6570 7465 6420 6173 0a20 2020 2020 6120 epted as. a \n-000087d0: 7661 6c75 6520 6275 7420 7368 6f75 6c64 value but should\n-000087e0: 2062 6520 7265 706c 6163 6564 2061 7320 be replaced as \n-000087f0: 736f 6f6e 2061 7320 706f 7373 6962 6c65 soon as possible\n-00008800: 2077 6974 6820 7468 6520 7072 6f70 6572 with the proper\n-00008810: 0a20 2020 2020 2750 465f 494e 4554 272e . 'PF_INET'.\n-00008820: 2020 5573 696e 6720 2753 4f43 4b5f 5354 Using 'SOCK_ST\n-00008830: 5245 414d 2720 666f 7220 7468 6520 5459 REAM' for the TY\n-00008840: 5020 6172 6775 6d65 6e74 2077 696c 6c20 P argument will \n-00008850: 6372 6561 7465 2061 0a20 2020 2020 5443 create a. TC\n-00008860: 5020 736f 636b 6574 2077 6869 6c65 2061 P socket while a\n-00008870: 2027 534f 434b 5f44 4752 414d 2720 7769 'SOCK_DGRAM' wi\n-00008880: 6c6c 2063 7265 6174 6520 6120 5544 5020 ll create a UDP \n-00008890: 6f6e 652e 0a0a 4558 414d 504c 450a 0a0a one...EXAMPLE...\n-000088a0: 1f0a 4669 6c65 3a20 6164 6173 6f63 6b65 ..File: adasocke\n-000088b0: 7473 2e69 6e66 6f2c 2020 4e6f 6465 3a20 ts.info, Node: \n-000088c0: 536f 636b 6574 732e 4d75 6c74 6963 6173 Sockets.Multicas\n-000088d0: 7420 7061 636b 6167 652c 2020 4e65 7874 t package, Next\n-000088e0: 3a20 536f 636b 6574 732e 4e61 6d69 6e67 : Sockets.Naming\n-000088f0: 2070 6163 6b61 6765 2c20 2050 7265 763a package, Prev:\n-00008900: 2053 6f63 6b65 7473 2070 6163 6b61 6765 Sockets package\n-00008910: 2c20 2055 703a 2054 6f70 0a0a 3520 536f , Up: Top..5 So\n-00008920: 636b 6574 732e 4d75 6c74 6963 6173 7420 ckets.Multicast \n-00008930: 7061 636b 6167 650a 2a2a 2a2a 2a2a 2a2a package.********\n-00008940: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a ****************\n-00008950: 2a2a 2a0a 0a54 6865 2027 536f 636b 6574 ***..The 'Socket\n-00008960: 732e 4d75 6c74 6963 6173 7427 2061 6c6c s.Multicast' all\n-00008970: 6f77 7320 7468 6520 6372 6561 7469 6f6e ows the creation\n-00008980: 206f 6620 4950 206d 756c 7469 6361 7374 of IP multicast\n-00008990: 2073 6f63 6b65 7473 2e0a 0a20 2d2d 2053 sockets... -- S\n-000089a0: 6f63 6b65 7473 2e4d 756c 7469 6361 7374 ockets.Multicast\n-000089b0: 2e4d 756c 7469 6361 7374 5f53 6f63 6b65 .Multicast_Socke\n-000089c0: 745f 4644 3a20 7479 7065 204d 756c 7469 t_FD: type Multi\n-000089d0: 6361 7374 5f53 6f63 6b65 745f 4644 2069 cast_Socket_FD i\n-000089e0: 730a 2020 2020 2020 2020 2020 6e65 7720 s. new \n-000089f0: 536f 636b 6574 5f46 4420 7769 7468 2070 Socket_FD with p\n-00008a00: 7269 7661 7465 3b0a 2020 2020 2054 6865 rivate;. The\n-00008a10: 2027 4d75 6c74 6963 6173 745f 536f 636b 'Multicast_Sock\n-00008a20: 6574 5f46 4427 2074 6167 6765 6420 7479 et_FD' tagged ty\n-00008a30: 7065 2064 6572 6976 6573 2066 726f 6d20 pe derives from \n-00008a40: 7468 6520 2753 6f63 6b65 745f 4644 270a the 'Socket_FD'.\n-00008a50: 2020 2020 2074 7970 652e 2020 4974 2067 type. It g\n-00008a60: 6574 7320 696e 6974 6961 6c69 7a65 6420 ets initialized \n-00008a70: 6279 2063 616c 6c69 6e67 202a 6e6f 7465 by calling *note\n-00008a80: 2043 7265 6174 655f 4d75 6c74 6963 6173 Create_Multicas\n-00008a90: 745f 536f 636b 6574 0a20 2020 2020 2866 t_Socket. (f\n-00008aa0: 756e 6374 696f 6e29 3a3a 2e20 2041 6e20 unction)::. An \n-00008ab0: 756e 696e 6974 6961 6c69 7a65 6420 274d uninitialized 'M\n-00008ac0: 756c 7469 6361 7374 5f53 6f63 6b65 745f ulticast_Socket_\n-00008ad0: 4644 2720 6361 6e20 6265 0a20 2020 2020 FD' can be. \n-00008ae0: 7375 6363 6573 6675 6c6c 7920 636f 6d70 succesfully comp\n-00008af0: 6172 6564 2074 6f20 274e 756c 6c5f 4d75 ared to 'Null_Mu\n-00008b00: 6c74 6963 6173 745f 536f 636b 6574 5f46 lticast_Socket_F\n-00008b10: 4427 2e0a 0a2a 204d 656e 753a 0a0a 2a20 D'...* Menu:..* \n-00008b20: 4372 6561 7465 5f4d 756c 7469 6361 7374 Create_Multicast\n-00008b30: 5f53 6f63 6b65 7420 2866 756e 6374 696f _Socket (functio\n-00008b40: 6e29 3a3a 0a20 2020 2020 2020 2020 2020 n)::. \n-00008b50: 2020 2020 2020 2020 2020 2020 2043 7265 Cre\n-00008b60: 6174 6520 616e 2049 5020 6d75 6c74 6963 ate an IP multic\n-00008b70: 6173 7420 736f 636b 6574 0a2a 2043 7265 ast socket.* Cre\n-00008b80: 6174 655f 4d75 6c74 6963 6173 745f 536f ate_Multicast_So\n-00008b90: 636b 6574 2028 6675 6e63 7469 6f6e 293a cket (function):\n-00008ba0: 3a0a 2020 2020 2020 2020 2020 2020 2020 :. \n-00008bb0: 2020 2020 2020 2020 2020 4372 6561 7465 Create\n-00008bc0: 2061 6e20 4950 206d 756c 7469 6361 7374 an IP multicast\n-00008bd0: 2073 6f63 6b65 740a 0a1f 0a46 696c 653a socket....File:\n-00008be0: 2061 6461 736f 636b 6574 732e 696e 666f adasockets.info\n-00008bf0: 2c20 204e 6f64 653a 2043 7265 6174 655f , Node: Create_\n-00008c00: 4d75 6c74 6963 6173 745f 536f 636b 6574 Multicast_Socket\n-00008c10: 2028 6675 6e63 7469 6f6e 292c 2020 4e65 (function), Ne\n-00008c20: 7874 3a20 4372 6561 7465 5f4d 756c 7469 xt: Create_Multi\n-00008c30: 6361 7374 5f53 6f63 6b65 7420 2866 756e cast_Socket (fun\n-00008c40: 6374 696f 6e29 2c20 2050 7265 763a 2043 ction), Prev: C\n-00008c50: 7265 6174 655f 4d75 6c74 6963 6173 745f reate_Multicast_\n-00008c60: 536f 636b 6574 2028 6675 6e63 7469 6f6e Socket (function\n-00008c70: 292c 2020 5570 3a20 536f 636b 6574 732e ), Up: Sockets.\n-00008c80: 4d75 6c74 6963 6173 7420 7061 636b 6167 Multicast packag\n-00008c90: 650a 0a43 7265 6174 655f 4d75 6c74 6963 e..Create_Multic\n-00008ca0: 6173 745f 536f 636b 6574 2028 6675 6e63 ast_Socket (func\n-00008cb0: 7469 6f6e 290a 3d3d 3d3d 3d3d 3d3d 3d3d tion).==========\n-00008cc0: 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d ================\n-00008cd0: 3d3d 3d3d 3d3d 3d3d 0a0a 5055 5250 4f53 ========..PURPOS\n-00008ce0: 450a 2020 2020 2043 7265 6174 6520 616e E. Create an\n-00008cf0: 2049 5020 6d75 6c74 6963 6173 7420 736f IP multicast so\n-00008d00: 636b 6574 0a50 524f 544f 5459 5045 0a20 cket.PROTOTYPE. \n-00008d10: 2020 2020 202d 2d20 536f 636b 6574 732e -- Sockets.\n-00008d20: 4d75 6c74 6963 6173 742e 4372 6561 7465 Multicast.Create\n-00008d30: 5f4d 756c 7469 6361 7374 5f53 6f63 6b65 _Multicast_Socke\n-00008d40: 743a 2066 756e 6374 696f 6e0a 2020 2020 t: function. \n-00008d50: 2020 2020 2020 2020 2020 2043 7265 6174 Creat\n-00008d60: 655f 4d75 6c74 6963 6173 745f 536f 636b e_Multicast_Sock\n-00008d70: 6574 2028 4752 4f55 5020 3a20 5374 7269 et (GROUP : Stri\n-00008d80: 6e67 3b20 504f 5254 203a 204e 6174 7572 ng; PORT : Natur\n-00008d90: 616c 3b0a 2020 2020 2020 2020 2020 2020 al;. \n-00008da0: 2020 2054 544c 203a 2050 6f73 6974 6976 TTL : Positiv\n-00008db0: 6520 3a3d 2031 363b 2053 454c 465f 4c4f e := 16; SELF_LO\n-00008dc0: 4f50 203a 2042 6f6f 6c65 616e 203a 3d20 OP : Boolean := \n-00008dd0: 5472 7565 3b0a 2020 2020 2020 2020 2020 True;. \n-00008de0: 2020 2020 204c 4f43 414c 5f49 4620 3a20 LOCAL_IF : \n-00008df0: 5374 7269 6e67 203a 3d20 302e 302e 302e String := 0.0.0.\n-00008e00: 3029 0a20 2020 2020 2020 2020 2020 2020 0). \n-00008e10: 2020 7265 7475 726e 204d 756c 7469 6361 return Multica\n-00008e20: 7374 5f53 6f63 6b65 745f 4644 3b0a 0a50 st_Socket_FD;..P\n-00008e30: 4152 414d 4554 4552 530a 2020 2020 2047 ARAMETERS. G\n-00008e40: 524f 5550 2020 2020 2020 696e 2020 2020 ROUP in \n-00008e50: 2020 2020 2049 5020 6164 6472 6573 7320 IP address \n-00008e60: 6f66 2074 6865 206d 756c 7469 6361 7374 of the multicast\n-00008e70: 2067 726f 7570 2074 6f0a 2020 2020 2020 group to. \n-00008e80: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00008e90: 2020 2020 206a 6f69 6e0a 2020 2020 2050 join. P\n-00008ea0: 4f52 5420 2020 2020 2020 696e 2020 2020 ORT in \n-00008eb0: 2020 2020 2050 6f72 7420 6f66 2074 6865 Port of the\n-00008ec0: 206d 756c 7469 6361 7374 2067 726f 7570 multicast group\n-00008ed0: 2074 6f20 6a6f 696e 0a20 2020 2020 5454 to join. TT\n-00008ee0: 4c20 2020 2020 2020 2069 6e20 2020 2020 L in \n-00008ef0: 2020 2020 5469 6d65 2d74 6f2d 6c69 7665 Time-to-live\n-00008f00: 206f 6620 7365 6e74 2070 6163 6b65 7473 of sent packets\n-00008f10: 0a20 2020 2020 5345 4c46 5f4c 4f4f 5020 . SELF_LOOP \n-00008f20: 2069 6e20 2020 2020 2020 2020 5368 6f75 in Shou\n-00008f30: 6c64 2074 6865 2073 6f63 6b65 7420 7265 ld the socket re\n-00008f40: 6365 6976 6520 7468 6520 7061 636b 6574 ceive the packet\n-00008f50: 730a 2020 2020 2020 2020 2020 2020 2020 s. \n-00008f60: 2020 2020 2020 2020 2020 2020 2073 656e sen\n-00008f70: 7420 6672 6f6d 2074 6865 206c 6f63 616c t from the local\n-00008f80: 2068 6f73 743f 0a20 2020 2020 4c4f 4341 host?. LOCA\n-00008f90: 4c5f 4946 2020 2069 6e20 2020 2020 2020 L_IF in \n-00008fa0: 2020 4164 6472 6573 7320 6f66 2074 6865 Address of the\n-00008fb0: 206c 6f63 616c 2069 6e74 6572 6661 6365 local interface\n-00008fc0: 2074 6f20 7573 650a 0a52 4554 5552 4e20 to use..RETURN \n-00008fd0: 5641 4c55 450a 2020 2020 2054 6865 206e VALUE. The n\n-00008fe0: 6577 2069 6e69 7469 616c 697a 6564 206d ew initialized m\n-00008ff0: 756c 7469 6361 7374 2073 6f63 6b65 740a ulticast socket.\n-00009000: 0a44 4553 4352 4950 5449 4f4e 0a20 2020 .DESCRIPTION. \n-00009010: 2020 5468 6973 2066 756e 6374 696f 6e20 This function \n-00009020: 6372 6561 7465 7320 616e 2049 5020 6d75 creates an IP mu\n-00009030: 6c74 6963 6173 7420 736f 636b 6574 2061 lticast socket a\n-00009040: 7474 6163 6865 6420 746f 2061 2067 6976 ttached to a giv\n-00009050: 656e 0a20 2020 2020 6772 6f75 702c 2069 en. group, i\n-00009060: 6465 6e74 6966 6965 6420 6279 2069 7473 dentified by its\n-00009070: 2063 6c61 7373 2045 2049 5020 6164 6472 class E IP addr\n-00009080: 6573 7320 616e 6420 706f 7274 2e0a 0a20 ess and port... \n-00009090: 2020 2020 4265 2063 6172 6566 756c 2077 Be careful w\n-000090a0: 6865 6e20 6368 6f6f 7369 6e67 2074 6865 hen choosing the\n-000090b0: 2054 544c 2070 6172 616d 6574 6572 206f TTL parameter o\n-000090c0: 6620 796f 7572 2049 5020 6d75 6c74 6963 f your IP multic\n-000090d0: 6173 740a 2020 2020 2073 6f63 6b65 742e ast. socket.\n-000090e0: 2020 4d6f 7374 2049 5020 6d75 6c74 6963 Most IP multic\n-000090f0: 6173 7420 726f 7574 6572 7320 646f 2069 ast routers do i\n-00009100: 6d70 6c65 6d65 6e74 2074 6872 6573 686f mplement thresho\n-00009110: 6c64 2d62 6173 6564 0a20 2020 2020 6669 ld-based. fi\n-00009120: 6c74 6572 696e 6720 616e 6420 7769 6c6c ltering and will\n-00009130: 206e 6f74 206c 6574 2049 5020 6d75 6c74 not let IP mult\n-00009140: 6963 6173 7420 7061 636b 6574 7320 6c65 icast packets le\n-00009150: 6176 6520 796f 7572 0a20 2020 2020 6f72 ave your. or\n-00009160: 6761 6e69 7a61 7469 6f6e 2069 6620 7468 ganization if th\n-00009170: 6520 5454 4c20 6f6e 2074 6865 206c 6173 e TTL on the las\n-00009180: 7420 726f 7574 6572 2069 7320 736d 616c t router is smal\n-00009190: 6c65 7220 7468 616e 2031 362e 0a0a 2020 ler than 16... \n-000091a0: 2020 2049 6620 3020 6973 2067 6976 656e If 0 is given\n-000091b0: 2066 6f72 2074 6865 2050 6f72 742c 2061 for the Port, a\n-000091c0: 206c 6f63 616c 206f 6e65 2077 696c 6c20 local one will \n-000091d0: 6265 2063 686f 7365 6e2e 2020 4974 2063 be chosen. It c\n-000091e0: 616e 0a20 2020 2020 7468 656e 206c 6174 an. then lat\n-000091f0: 6572 2062 6520 7265 7472 6965 7665 6420 er be retrieved \n-00009200: 7573 696e 6720 4765 745f 536f 636b 5f50 using Get_Sock_P\n-00009210: 6f72 742e 0a0a 4558 414d 504c 450a 0a0a ort...EXAMPLE...\n-00009220: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n-00009230: 6f74 6520 5365 6e64 2028 7072 6f63 6564 ote Send (proced\n-00009240: 7572 6529 3a3a 2c0a 2020 2020 202a 6e6f ure)::,. *no\n-00009250: 7465 2053 6875 7464 6f77 6e20 2870 726f te Shutdown (pro\n-00009260: 6365 6475 7265 293a 3a2e 0a0a 2a20 4d65 cedure)::...* Me\n-00009270: 6e75 3a0a 0a2a 203a 3a0a 0a43 7265 6174 nu:..* ::..Creat\n-00009280: 655f 4d75 6c74 6963 6173 745f 536f 636b e_Multicast_Sock\n-00009290: 6574 2028 6675 6e63 7469 6f6e 290a 2d2d et (function).--\n-000092a0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-000092b0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-000092c0: 0a0a 5055 5250 4f53 450a 2020 2020 2043 ..PURPOSE. C\n-000092d0: 7265 6174 6520 616e 2049 5020 6d75 6c74 reate an IP mult\n-000092e0: 6963 6173 7420 736f 636b 6574 0a50 524f icast socket.PRO\n-000092f0: 544f 5459 5045 0a20 2020 2020 202d 2d20 TOTYPE. -- \n-00009300: 536f 636b 6574 732e 4d75 6c74 6963 6173 Sockets.Multicas\n-00009310: 742e 4372 6561 7465 5f4d 756c 7469 6361 t.Create_Multica\n-00009320: 7374 5f53 6f63 6b65 743a 2066 756e 6374 st_Socket: funct\n-00009330: 696f 6e0a 2020 2020 2020 2020 2020 2020 ion. \n-00009340: 2020 2043 7265 6174 655f 4d75 6c74 6963 Create_Multic\n-00009350: 6173 745f 536f 636b 6574 2028 4752 4f55 ast_Socket (GROU\n-00009360: 5020 3a20 5374 7269 6e67 3b20 504f 5254 P : String; PORT\n-00009370: 203a 2050 6f73 6974 6976 653b 0a20 2020 : Positive;. \n-00009380: 2020 2020 2020 2020 2020 2020 4c4f 4341 LOCA\n-00009390: 4c5f 504f 5254 203a 204e 6174 7572 616c L_PORT : Natural\n-000093a0: 3b20 5454 4c20 3a20 506f 7369 7469 7665 ; TTL : Positive\n-000093b0: 203a 3d20 3136 3b0a 2020 2020 2020 2020 := 16;. \n-000093c0: 2020 2020 2020 204c 4f43 414c 5f49 4620 LOCAL_IF \n-000093d0: 3a20 5374 7269 6e67 203a 3d20 302e 302e : String := 0.0.\n-000093e0: 302e 3029 0a20 2020 2020 2020 2020 2020 0.0). \n-000093f0: 2020 2020 7265 7475 726e 204d 756c 7469 return Multi\n-00009400: 6361 7374 5f53 6f63 6b65 745f 4644 3b0a cast_Socket_FD;.\n-00009410: 0a50 4152 414d 4554 4552 530a 2020 2020 .PARAMETERS. \n-00009420: 2047 524f 5550 2020 2020 2020 696e 2020 GROUP in \n-00009430: 2020 2020 2020 2049 5020 6164 6472 6573 IP addres\n-00009440: 7320 6f66 2074 6865 206d 756c 7469 6361 s of the multica\n-00009450: 7374 2067 726f 7570 2074 6f0a 2020 2020 st group to. \n-00009460: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00009470: 2020 2020 2020 206a 6f69 6e0a 2020 2020 join. \n-00009480: 2050 4f52 5420 2020 2020 2020 696e 2020 PORT in \n-00009490: 2020 2020 2020 2050 6f72 7420 6f66 2074 Port of t\n-000094a0: 6865 206d 756c 7469 6361 7374 2067 726f he multicast gro\n-000094b0: 7570 2074 6f20 6a6f 696e 0a20 2020 2020 up to join. \n-000094c0: 4c4f 4341 4c5f 504f 5254 2069 6e20 2020 LOCAL_PORT in \n-000094d0: 2020 2020 2020 4c6f 6361 6c20 706f 7274 Local port\n-000094e0: 206e 756d 6265 7220 746f 2075 7365 0a20 number to use. \n-000094f0: 2020 2020 5454 4c20 2020 2020 2020 2069 TTL i\n-00009500: 6e20 2020 2020 2020 2020 5469 6d65 2d74 n Time-t\n-00009510: 6f2d 6c69 7665 206f 6620 7365 6e74 2070 o-live of sent p\n-00009520: 6163 6b65 7473 0a20 2020 2020 4c4f 4341 ackets. LOCA\n-00009530: 4c5f 4946 2020 2069 6e20 2020 2020 2020 L_IF in \n-00009540: 2020 4164 6472 6573 7320 6f66 2074 6865 Address of the\n-00009550: 206c 6f63 616c 2069 6e74 6572 6661 6365 local interface\n-00009560: 2074 6f20 7573 650a 0a52 4554 5552 4e20 to use..RETURN \n-00009570: 5641 4c55 450a 2020 2020 2054 6865 206e VALUE. The n\n-00009580: 6577 2069 6e69 7469 616c 697a 6564 206d ew initialized m\n-00009590: 756c 7469 6361 7374 2073 6f63 6b65 740a ulticast socket.\n-000095a0: 0a44 4553 4352 4950 5449 4f4e 0a20 2020 .DESCRIPTION. \n-000095b0: 2020 5468 6973 2066 756e 6374 696f 6e20 This function \n-000095c0: 6372 6561 7465 7320 616e 2049 5020 6d75 creates an IP mu\n-000095d0: 6c74 6963 6173 7420 736f 636b 6574 2061 lticast socket a\n-000095e0: 7474 6163 6865 6420 746f 2061 2067 6976 ttached to a giv\n-000095f0: 656e 0a20 2020 2020 6772 6f75 702c 2069 en. group, i\n-00009600: 6465 6e74 6966 6965 6420 6279 2069 7473 dentified by its\n-00009610: 2063 6c61 7373 2045 2049 5020 6164 6472 class E IP addr\n-00009620: 6573 7320 616e 6420 706f 7274 2e20 2049 ess and port. I\n-00009630: 660a 2020 2020 204c 6f63 616c 5f50 6f72 f. Local_Por\n-00009640: 7420 6973 2030 2c20 6120 6672 6565 2070 t is 0, a free p\n-00009650: 6f72 7420 7769 6c6c 2061 7574 6f6d 6174 ort will automat\n-00009660: 6963 616c 6c79 2062 6520 6368 6f73 656e ically be chosen\n-00009670: 2062 7920 796f 7572 0a20 2020 2020 6f70 by your. op\n-00009680: 6572 6174 696e 6720 7379 7374 656d 2e0a erating system..\n-00009690: 0a20 2020 2020 5468 6973 2066 756e 6374 . This funct\n-000096a0: 696f 6e20 7368 6f75 6c64 2062 6520 7573 ion should be us\n-000096b0: 6564 2077 6865 6e20 796f 7520 7761 6e74 ed when you want\n-000096c0: 2074 6f20 7365 6e64 2070 6163 6b65 7473 to send packets\n-000096d0: 2074 6f20 610a 2020 2020 206d 756c 7469 to a. multi\n-000096e0: 6361 7374 2067 726f 7570 2077 6974 686f cast group witho\n-000096f0: 7574 2072 6563 6569 7669 6e67 2061 6e79 ut receiving any\n-00009700: 2070 6163 6b65 7420 796f 7572 7365 6c66 packet yourself\n-00009710: 2e0a 0a45 5841 4d50 4c45 0a0a 0a53 4545 ...EXAMPLE...SEE\n-00009720: 2041 4c53 4f0a 2020 2020 202a 6e6f 7465 ALSO. *note\n-00009730: 2053 656e 6420 2870 726f 6365 6475 7265 Send (procedure\n-00009740: 293a 3a2c 0a20 2020 2020 2a6e 6f74 6520 )::,. *note \n-00009750: 5368 7574 646f 776e 2028 7072 6f63 6564 Shutdown (proced\n-00009760: 7572 6529 3a3a 2e0a 0a1f 0a46 696c 653a ure)::.....File:\n-00009770: 2061 6461 736f 636b 6574 732e 696e 666f adasockets.info\n-00009780: 2c20 204e 6f64 653a 2053 6f63 6b65 7473 , Node: Sockets\n-00009790: 2e4e 616d 696e 6720 7061 636b 6167 652c .Naming package,\n-000097a0: 2020 4e65 7874 3a20 436f 6e74 7269 6275 Next: Contribu\n-000097b0: 746f 7273 2c20 2050 7265 763a 2053 6f63 tors, Prev: Soc\n-000097c0: 6b65 7473 2e4d 756c 7469 6361 7374 2070 kets.Multicast p\n-000097d0: 6163 6b61 6765 2c20 2055 703a 2054 6f70 ackage, Up: Top\n-000097e0: 0a0a 3620 536f 636b 6574 732e 4e61 6d69 ..6 Sockets.Nami\n-000097f0: 6e67 2070 6163 6b61 6765 0a2a 2a2a 2a2a ng package.*****\n-00009800: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a ****************\n-00009810: 2a2a 2a0a 0a54 6865 2027 536f 636b 6574 ***..The 'Socket\n-00009820: 732e 4e61 6d69 6e67 2720 7061 636b 6167 s.Naming' packag\n-00009830: 6520 636f 6e74 6169 6e73 2074 7970 6573 e contains types\n-00009840: 2061 6e64 2068 656c 7065 7220 6675 6e63 and helper func\n-00009850: 7469 6f6e 7320 6e65 6564 6564 0a74 6f20 tions needed.to \n-00009860: 6d61 6e69 7075 6c61 7465 2049 6e74 6572 manipulate Inter\n-00009870: 6e65 7420 686f 7374 206e 616d 6573 2061 net host names a\n-00009880: 6e64 2061 6464 7265 7373 6573 2e0a 0a20 nd addresses... \n-00009890: 2d2d 2053 6f63 6b65 7473 2e4e 616d 696e -- Sockets.Namin\n-000098a0: 672e 4164 6472 6573 733a 2074 7970 6520 g.Address: type \n-000098b0: 4164 6472 6573 7320 6973 2072 6563 6f72 Address is recor\n-000098c0: 640a 2020 2020 2020 2020 2020 2020 4831 d. H1\n-000098d0: 2c20 4832 2c20 4833 2c20 4834 203a 2041 , H2, H3, H4 : A\n-000098e0: 6464 7265 7373 5f43 6f6d 706f 6e65 6e74 ddress_Component\n-000098f0: 3b0a 2020 2020 2020 2020 2020 656e 6420 ;. end \n-00009900: 7265 636f 7264 3b0a 2020 2020 2054 6869 record;. Thi\n-00009910: 7320 7479 7065 2072 6570 7265 7365 6e74 s type represent\n-00009920: 7320 616e 2049 5076 3420 6164 6472 6573 s an IPv4 addres\n-00009930: 7320 7769 7468 2027 4831 2720 6265 696e s with 'H1' bein\n-00009940: 6720 7468 6520 6669 7273 740a 2020 2020 g the first. \n-00009950: 206f 6374 6574 2061 6e64 2027 4834 2720 octet and 'H4' \n-00009960: 7468 6520 6c61 7374 206f 6e65 2e20 2046 the last one. F\n-00009970: 6f72 2065 7861 6d70 6c65 2c20 3133 372e or example, 137.\n-00009980: 3139 342e 3136 312e 3220 6973 0a20 2020 194.161.2 is. \n-00009990: 2020 7265 7072 6573 656e 7465 6420 6279 represented by\n-000099a0: 2027 4831 3d31 3337 2c20 4832 3d31 3934 'H1=137, H2=194\n-000099b0: 2c20 4833 3d31 3631 2c20 4834 3d32 272e , H3=161, H4=2'.\n-000099c0: 0a0a 202d 2d20 536f 636b 6574 732e 4e61 .. -- Sockets.Na\n-000099d0: 6d69 6e67 2e41 6464 7265 7373 5f41 7272 ming.Address_Arr\n-000099e0: 6179 3a20 7479 7065 2041 6464 7265 7373 ay: type Address\n-000099f0: 5f41 7272 6179 2069 7320 6172 7261 7920 _Array is array \n-00009a00: 2850 6f73 6974 6976 650a 2020 2020 2020 (Positive. \n-00009a10: 2020 2020 7261 6e67 6520 3c3e 2920 6f66 range <>) of\n-00009a20: 2041 6464 7265 7373 3b0a 2020 2020 2048 Address;. H\n-00009a30: 656c 7065 7220 7479 7065 0a0a 202d 2d20 elper type.. -- \n-00009a40: 536f 636b 6574 732e 4e61 6d69 6e67 2e41 Sockets.Naming.A\n-00009a50: 6464 7265 7373 5f43 6f6d 706f 6e65 6e74 ddress_Component\n-00009a60: 3a20 7479 7065 2041 6464 7265 7373 5f43 : type Address_C\n-00009a70: 6f6d 706f 6e65 6e74 2069 7320 4e61 7475 omponent is Natu\n-00009a80: 7261 6c0a 2020 2020 2020 2020 2020 7261 ral. ra\n-00009a90: 6e67 6520 3020 2e2e 2032 3535 3b0a 2020 nge 0 .. 255;. \n-00009aa0: 2020 2048 656c 7065 7220 7479 7065 0a0a Helper type..\n-00009ab0: 202d 2d20 536f 636b 6574 732e 4e61 6d69 -- Sockets.Nami\n-00009ac0: 6e67 2e48 6f73 745f 456e 7472 793a 2074 ng.Host_Entry: t\n-00009ad0: 7970 6520 486f 7374 5f45 6e74 7279 2028 ype Host_Entry (\n-00009ae0: 4e5f 416c 6961 7365 732c 204e 5f41 6464 N_Aliases, N_Add\n-00009af0: 7265 7373 6573 203a 0a20 2020 2020 2020 resses :. \n-00009b00: 2020 204e 6174 7572 616c 2920 6973 206e Natural) is n\n-00009b10: 6577 2041 6461 2e46 696e 616c 697a 6174 ew Ada.Finalizat\n-00009b20: 696f 6e2e 436f 6e74 726f 6c6c 6564 2077 ion.Controlled w\n-00009b30: 6974 6820 7265 636f 7264 0a20 2020 2020 ith record. \n-00009b40: 2020 2020 2020 2020 4e61 6d65 203a 2053 Name : S\n-00009b50: 7472 696e 675f 4163 6365 7373 3b0a 2020 tring_Access;. \n-00009b60: 2020 2020 2020 2020 2020 2041 6c69 6173 Alias\n-00009b70: 6573 203a 2053 7472 696e 675f 4172 7261 es : String_Arra\n-00009b80: 7920 2831 202e 2e20 4e5f 416c 6961 7365 y (1 .. N_Aliase\n-00009b90: 7329 3b0a 2020 2020 2020 2020 2020 2020 s);. \n-00009ba0: 2041 6464 7265 7373 6573 203a 2041 6464 Addresses : Add\n-00009bb0: 7265 7373 5f41 7272 6179 2028 3120 2e2e ress_Array (1 ..\n-00009bc0: 204e 5f41 6464 7265 7373 6573 293b 0a20 N_Addresses);. \n-00009bd0: 2020 2020 2020 2020 2065 6e64 2072 6563 end rec\n-00009be0: 6f72 643b 0a20 2020 2020 5468 6520 2748 ord;. The 'H\n-00009bf0: 6f73 745f 456e 7472 7927 2074 7970 6520 ost_Entry' type \n-00009c00: 686f 6c64 7320 6120 7365 7420 6f66 206e holds a set of n\n-00009c10: 616d 6573 2061 6e64 2049 5020 6164 6472 ames and IP addr\n-00009c20: 6573 7365 730a 2020 2020 2061 7373 6f63 esses. assoc\n-00009c30: 6961 7465 6420 7769 7468 2061 2068 6f73 iated with a hos\n-00009c40: 742e 2020 4561 6368 2068 6f73 7420 6361 t. Each host ca\n-00009c50: 6e20 6861 7665 2073 6576 6572 616c 2049 n have several I\n-00009c60: 5020 6164 6472 6573 7320 6173 0a20 2020 P address as. \n-00009c70: 2020 7765 6c6c 2061 7320 7365 7665 7261 well as severa\n-00009c80: 6c20 616c 6961 7365 732e 0a0a 202d 2d20 l aliases... -- \n-00009c90: 536f 636b 6574 732e 4e61 6d69 6e67 2e53 Sockets.Naming.S\n-00009ca0: 7472 696e 675f 4163 6365 7373 3a20 7479 tring_Access: ty\n-00009cb0: 7065 2053 7472 696e 675f 4163 6365 7373 pe String_Access\n-00009cc0: 2069 7320 6163 6365 7373 2053 7472 696e is access Strin\n-00009cd0: 673b 0a20 2020 2020 4865 6c70 6572 2074 g;. Helper t\n-00009ce0: 7970 650a 0a20 2d2d 2053 6f63 6b65 7473 ype.. -- Sockets\n-00009cf0: 2e4e 616d 696e 672e 5374 7269 6e67 5f41 .Naming.String_A\n-00009d00: 7272 6179 3a20 7479 7065 2053 7472 696e rray: type Strin\n-00009d10: 675f 4172 7261 7920 6973 2061 7272 6179 g_Array is array\n-00009d20: 2028 506f 7369 7469 7665 0a20 2020 2020 (Positive. \n-00009d30: 2020 2020 2072 616e 6765 203c 3e29 206f range <>) o\n-00009d40: 6620 5374 7269 6e67 5f41 6363 6573 733b f String_Access;\n-00009d50: 0a20 2020 2020 4865 6c70 6572 2074 7970 . Helper typ\n-00009d60: 650a 0a2a 204d 656e 753a 0a0a 2a20 4164 e..* Menu:..* Ad\n-00009d70: 6472 6573 735f 4f66 2028 6675 6e63 7469 dress_Of (functi\n-00009d80: 6f6e 293a 3a0a 2020 2020 2020 2020 2020 on)::. \n-00009d90: 2020 2020 2020 2020 2020 2020 2020 4765 Ge\n-00009da0: 7420 7468 6520 4950 2061 6464 7265 7373 t the IP address\n-00009db0: 206f 6620 6120 686f 7374 0a2a 2041 6e79 of a host.* Any\n-00009dc0: 5f41 6464 7265 7373 2028 6675 6e63 7469 _Address (functi\n-00009dd0: 6f6e 293a 3a0a 2020 2020 2020 2020 2020 on)::. \n-00009de0: 2020 2020 2020 2020 2020 2020 2020 5370 Sp\n-00009df0: 6563 6961 6c20 6164 6472 6573 7320 7265 ecial address re\n-00009e00: 7072 6573 656e 7469 6e67 2061 6e79 2061 presenting any a\n-00009e10: 6464 7265 7373 206f 6e20 7468 6520 6c6f ddress on the lo\n-00009e20: 6361 6c20 686f 7374 0a2a 2047 6574 5f50 cal host.* Get_P\n-00009e30: 6565 725f 4164 6472 2028 6675 6e63 7469 eer_Addr (functi\n-00009e40: 6f6e 293a 3a0a 2020 2020 2020 2020 2020 on)::. \n-00009e50: 2020 2020 2020 2020 2020 2020 2020 5265 Re\n-00009e60: 7472 6965 7665 2049 5020 6164 6472 6573 trieve IP addres\n-00009e70: 7320 6f66 2072 656d 6f74 6520 686f 7374 s of remote host\n-00009e80: 0a2a 2047 6574 5f50 6565 725f 506f 7274 .* Get_Peer_Port\n-00009e90: 2028 6675 6e63 7469 6f6e 293a 3a0a 2020 (function)::. \n-00009ea0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00009eb0: 2020 2020 2020 5265 7472 6965 7665 2070 Retrieve p\n-00009ec0: 6f72 7420 7573 6564 2062 7920 7265 6d6f ort used by remo\n-00009ed0: 7465 2068 6f73 740a 2a20 4765 745f 536f te host.* Get_So\n-00009ee0: 636b 5f41 6464 7220 2866 756e 6374 696f ck_Addr (functio\n-00009ef0: 6e29 3a3a 0a20 2020 2020 2020 2020 2020 n)::. \n-00009f00: 2020 2020 2020 2020 2020 2020 2052 6574 Ret\n-00009f10: 7269 6576 6520 4950 2061 6464 7265 7373 rieve IP address\n-00009f20: 206f 6620 6c6f 6361 6c20 686f 7374 0a2a of local host.*\n-00009f30: 2047 6574 5f53 6f63 6b5f 506f 7274 2028 Get_Sock_Port (\n-00009f40: 6675 6e63 7469 6f6e 293a 3a0a 2020 2020 function)::. \n-00009f50: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00009f60: 2020 2020 5265 7472 6965 7665 2070 6f72 Retrieve por\n-00009f70: 7420 7573 6564 2062 7920 6c6f 6361 6c20 t used by local \n-00009f80: 686f 7374 0a2a 2048 6f73 745f 4e61 6d65 host.* Host_Name\n-00009f90: 2028 6675 6e63 7469 6f6e 293a 3a0a 2020 (function)::. \n-00009fa0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00009fb0: 2020 2020 2020 4765 7420 7468 6520 6e61 Get the na\n-00009fc0: 6d65 206f 6620 7468 6520 6375 7272 656e me of the curren\n-00009fd0: 7420 686f 7374 0a2a 2049 6d61 6765 2028 t host.* Image (\n-00009fe0: 6675 6e63 7469 6f6e 293a 3a20 2020 204d function):: M\n-00009ff0: 616b 6520 6120 7374 7269 6e67 2066 726f ake a string fro\n-0000a000: 6d20 616e 2061 6464 7265 7373 0a2a 2049 m an address.* I\n-0000a010: 6e66 6f5f 4f66 5f4e 616d 655f 4f72 5f49 nfo_Of_Name_Or_I\n-0000a020: 5020 2866 756e 6374 696f 6e29 3a3a 0a20 P (function)::. \n-0000a030: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000a040: 2020 2020 2020 2047 6574 2061 6464 7265 Get addre\n-0000a050: 7373 6573 2061 6e64 206e 616d 6573 206f sses and names o\n-0000a060: 6620 6120 686f 7374 0a2a 2049 735f 4950 f a host.* Is_IP\n-0000a070: 5f41 6464 7265 7373 2028 6675 6e63 7469 _Address (functi\n-0000a080: 6f6e 293a 3a0a 2020 2020 2020 2020 2020 on)::. \n-0000a090: 2020 2020 2020 2020 2020 2020 2020 4368 Ch\n-0000a0a0: 6563 6b20 6966 2067 6976 656e 2073 7472 eck if given str\n-0000a0b0: 696e 6720 6973 2061 2076 616c 6964 2049 ing is a valid I\n-0000a0c0: 5020 6164 6472 6573 730a 2a20 4e61 6d65 P address.* Name\n-0000a0d0: 5f4f 6620 2866 756e 6374 696f 6e29 3a3a _Of (function)::\n-0000a0e0: 2020 4f66 6669 6369 616c 206e 616d 6520 Official name \n-0000a0f0: 6f66 2074 6865 2068 6f73 740a 2a20 5661 of the host.* Va\n-0000a100: 6c75 6520 2866 756e 6374 696f 6e29 3a3a lue (function)::\n-0000a110: 2020 2020 5472 616e 7366 6f72 6d20 6120 Transform a \n-0000a120: 7374 7269 6e67 2069 6e74 6f20 616e 2061 string into an a\n-0000a130: 6464 7265 7373 0a0a 1f0a 4669 6c65 3a20 ddress....File: \n-0000a140: 6164 6173 6f63 6b65 7473 2e69 6e66 6f2c adasockets.info,\n-0000a150: 2020 4e6f 6465 3a20 4164 6472 6573 735f Node: Address_\n-0000a160: 4f66 2028 6675 6e63 7469 6f6e 292c 2020 Of (function), \n-0000a170: 4e65 7874 3a20 416e 795f 4164 6472 6573 Next: Any_Addres\n-0000a180: 7320 2866 756e 6374 696f 6e29 2c20 2055 s (function), U\n-0000a190: 703a 2053 6f63 6b65 7473 2e4e 616d 696e p: Sockets.Namin\n-0000a1a0: 6720 7061 636b 6167 650a 0a41 6464 7265 g package..Addre\n-0000a1b0: 7373 5f4f 6620 2866 756e 6374 696f 6e29 ss_Of (function)\n-0000a1c0: 0a3d 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d .===============\n-0000a1d0: 3d3d 3d3d 3d3d 0a0a 5055 5250 4f53 450a ======..PURPOSE.\n-0000a1e0: 2020 2020 2047 6574 2074 6865 2049 5020 Get the IP \n-0000a1f0: 6164 6472 6573 7320 6f66 2061 2068 6f73 address of a hos\n-0000a200: 740a 5052 4f54 4f54 5950 450a 2020 2020 t.PROTOTYPE. \n-0000a210: 2020 2d2d 2053 6f63 6b65 7473 2e4e 616d -- Sockets.Nam\n-0000a220: 696e 672e 4164 6472 6573 735f 4f66 3a20 ing.Address_Of: \n-0000a230: 6675 6e63 7469 6f6e 2041 6464 7265 7373 function Address\n-0000a240: 5f4f 660a 2020 2020 2020 2020 2020 2020 _Of. \n-0000a250: 2020 2028 534f 4d45 5448 494e 4720 3a20 (SOMETHING : \n-0000a260: 5374 7269 6e67 290a 2020 2020 2020 2020 String). \n-0000a270: 2020 2020 2020 2072 6574 7572 6e20 4164 return Ad\n-0000a280: 6472 6573 733b 0a0a 5041 5241 4d45 5445 dress;..PARAMETE\n-0000a290: 5253 0a20 2020 2020 534f 4d45 5448 494e RS. SOMETHIN\n-0000a2a0: 4720 2069 6e20 2020 2020 2020 2020 486f G in Ho\n-0000a2b0: 7374 206e 616d 6520 6f72 2049 5020 6164 st name or IP ad\n-0000a2c0: 6472 6573 730a 0a52 4554 5552 4e20 5641 dress..RETURN VA\n-0000a2d0: 4c55 450a 2020 2020 2049 5076 3420 6164 LUE. IPv4 ad\n-0000a2e0: 6472 6573 730a 0a45 5843 4550 5449 4f4e dress..EXCEPTION\n-0000a2f0: 530a 2020 2020 2027 4e61 6d69 6e67 5f45 S. 'Naming_E\n-0000a300: 7272 6f72 2720 2020 2020 4e6f 2069 6e66 rror' No inf\n-0000a310: 6f72 6d61 7469 6f6e 2061 7661 696c 6162 ormation availab\n-0000a320: 6c65 2066 6f72 2074 6869 7320 6e61 6d65 le for this name\n-0000a330: 206f 720a 2020 2020 2020 2020 2020 2020 or. \n-0000a340: 2020 2020 2020 2020 2020 2020 6164 6472 addr\n-0000a350: 6573 730a 0a53 4545 2041 4c53 4f0a 2020 ess..SEE ALSO. \n-0000a360: 2020 202a 6e6f 7465 204e 616d 655f 4f66 *note Name_Of\n-0000a370: 2028 6675 6e63 7469 6f6e 293a 3a2e 0a0a (function)::...\n-0000a380: 2a20 4d65 6e75 3a0a 0a2a 2041 6e79 5f41 * Menu:..* Any_A\n-0000a390: 6464 7265 7373 2028 6675 6e63 7469 6f6e ddress (function\n-0000a3a0: 293a 3a0a 2a20 4765 745f 5065 6572 5f41 )::.* Get_Peer_A\n-0000a3b0: 6464 7220 2866 756e 6374 696f 6e29 3a3a ddr (function)::\n-0000a3c0: 0a2a 2047 6574 5f50 6565 725f 506f 7274 .* Get_Peer_Port\n-0000a3d0: 2028 6675 6e63 7469 6f6e 293a 3a0a 2a20 (function)::.* \n-0000a3e0: 4765 745f 536f 636b 5f41 6464 7220 2866 Get_Sock_Addr (f\n-0000a3f0: 756e 6374 696f 6e29 3a3a 0a2a 2047 6574 unction)::.* Get\n-0000a400: 5f53 6f63 6b5f 506f 7274 2028 6675 6e63 _Sock_Port (func\n-0000a410: 7469 6f6e 293a 3a0a 2a20 486f 7374 5f4e tion)::.* Host_N\n-0000a420: 616d 6520 2866 756e 6374 696f 6e29 3a3a ame (function)::\n-0000a430: 0a2a 2049 6d61 6765 2028 6675 6e63 7469 .* Image (functi\n-0000a440: 6f6e 293a 3a0a 2a20 496e 666f 5f4f 665f on)::.* Info_Of_\n-0000a450: 4e61 6d65 5f4f 725f 4950 2028 6675 6e63 Name_Or_IP (func\n-0000a460: 7469 6f6e 293a 3a0a 2a20 4973 5f49 505f tion)::.* Is_IP_\n-0000a470: 4164 6472 6573 7320 2866 756e 6374 696f Address (functio\n-0000a480: 6e29 3a3a 0a2a 204e 616d 655f 4f66 2028 n)::.* Name_Of (\n-0000a490: 6675 6e63 7469 6f6e 293a 3a0a 2a20 5661 function)::.* Va\n-0000a4a0: 6c75 6520 2866 756e 6374 696f 6e29 3a3a lue (function)::\n-0000a4b0: 0a0a 1f0a 4669 6c65 3a20 6164 6173 6f63 ....File: adasoc\n-0000a4c0: 6b65 7473 2e69 6e66 6f2c 2020 4e6f 6465 kets.info, Node\n-0000a4d0: 3a20 416e 795f 4164 6472 6573 7320 2866 : Any_Address (f\n-0000a4e0: 756e 6374 696f 6e29 2c20 204e 6578 743a unction), Next:\n-0000a4f0: 2047 6574 5f50 6565 725f 4164 6472 2028 Get_Peer_Addr (\n-0000a500: 6675 6e63 7469 6f6e 292c 2020 5072 6576 function), Prev\n-0000a510: 3a20 4164 6472 6573 735f 4f66 2028 6675 : Address_Of (fu\n-0000a520: 6e63 7469 6f6e 292c 2020 5570 3a20 4164 nction), Up: Ad\n-0000a530: 6472 6573 735f 4f66 2028 6675 6e63 7469 dress_Of (functi\n-0000a540: 6f6e 290a 0a41 6e79 5f41 6464 7265 7373 on)..Any_Address\n-0000a550: 2028 6675 6e63 7469 6f6e 290a 2d2d 2d2d (function).----\n-0000a560: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-0000a570: 2d2d 0a0a 5055 5250 4f53 450a 2020 2020 --..PURPOSE. \n-0000a580: 2053 7065 6369 616c 2061 6464 7265 7373 Special address\n-0000a590: 2072 6570 7265 7365 6e74 696e 6720 616e representing an\n-0000a5a0: 7920 6164 6472 6573 7320 6f6e 2074 6865 y address on the\n-0000a5b0: 206c 6f63 616c 2068 6f73 740a 5052 4f54 local host.PROT\n-0000a5c0: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n-0000a5d0: 6f63 6b65 7473 2e4e 616d 696e 672e 416e ockets.Naming.An\n-0000a5e0: 795f 4164 6472 6573 733a 2066 756e 6374 y_Address: funct\n-0000a5f0: 696f 6e20 416e 795f 4164 6472 6573 730a ion Any_Address.\n-0000a600: 0a52 4554 5552 4e20 5641 4c55 450a 2020 .RETURN VALUE. \n-0000a610: 2020 2045 7175 6976 616c 656e 7420 746f Equivalent to\n-0000a620: 2027 494e 4144 4452 5f41 4e59 2720 696e 'INADDR_ANY' in\n-0000a630: 2074 6865 2043 2070 726f 6772 616d 6d69 the C programmi\n-0000a640: 6e67 206c 616e 6775 6167 650a 0a1f 0a46 ng language....F\n-0000a650: 696c 653a 2061 6461 736f 636b 6574 732e ile: adasockets.\n-0000a660: 696e 666f 2c20 204e 6f64 653a 2047 6574 info, Node: Get\n-0000a670: 5f50 6565 725f 4164 6472 2028 6675 6e63 _Peer_Addr (func\n-0000a680: 7469 6f6e 292c 2020 4e65 7874 3a20 4765 tion), Next: Ge\n-0000a690: 745f 5065 6572 5f50 6f72 7420 2866 756e t_Peer_Port (fun\n-0000a6a0: 6374 696f 6e29 2c20 2050 7265 763a 2041 ction), Prev: A\n-0000a6b0: 6e79 5f41 6464 7265 7373 2028 6675 6e63 ny_Address (func\n-0000a6c0: 7469 6f6e 292c 2020 5570 3a20 4164 6472 tion), Up: Addr\n-0000a6d0: 6573 735f 4f66 2028 6675 6e63 7469 6f6e ess_Of (function\n-0000a6e0: 290a 0a47 6574 5f50 6565 725f 4164 6472 )..Get_Peer_Addr\n-0000a6f0: 2028 6675 6e63 7469 6f6e 290a 2d2d 2d2d (function).----\n-0000a700: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-0000a710: 2d2d 2d2d 0a0a 5055 5250 4f53 450a 2020 ----..PURPOSE. \n-0000a720: 2020 2052 6574 7269 6576 6520 4950 2061 Retrieve IP a\n-0000a730: 6464 7265 7373 206f 6620 7265 6d6f 7465 ddress of remote\n-0000a740: 2068 6f73 740a 5052 4f54 4f54 5950 450a host.PROTOTYPE.\n-0000a750: 2020 2020 2020 2d2d 2053 6f63 6b65 7473 -- Sockets\n-0000a760: 2e4e 616d 696e 672e 4765 745f 5065 6572 .Naming.Get_Peer\n-0000a770: 5f41 6464 723a 2066 756e 6374 696f 6e20 _Addr: function \n-0000a780: 4765 745f 5065 6572 5f41 6464 720a 2020 Get_Peer_Addr. \n-0000a790: 2020 2020 2020 2020 2020 2020 2028 534f (SO\n-0000a7a0: 434b 4554 203a 2053 6f63 6b65 745f 4644 CKET : Socket_FD\n-0000a7b0: 290a 2020 2020 2020 2020 2020 2020 2020 ). \n-0000a7c0: 2072 6574 7572 6e20 4164 6472 6573 733b return Address;\n-0000a7d0: 0a0a 5041 5241 4d45 5445 5253 0a20 2020 ..PARAMETERS. \n-0000a7e0: 2020 534f 434b 4554 2020 2020 2069 6e20 SOCKET in \n-0000a7f0: 2020 2020 2020 2020 436f 6e6e 6563 7465 Connecte\n-0000a800: 6420 736f 636b 6574 206f 626a 6563 740a d socket object.\n-0000a810: 0a52 4554 5552 4e20 5641 4c55 450a 2020 .RETURN VALUE. \n-0000a820: 2020 2050 6565 7220 6164 6472 6573 730a Peer address.\n-0000a830: 0a53 4545 2041 4c53 4f0a 2020 2020 202a .SEE ALSO. *\n-0000a840: 6e6f 7465 2047 6574 5f50 6565 725f 506f note Get_Peer_Po\n-0000a850: 7274 2028 6675 6e63 7469 6f6e 293a 3a2c rt (function)::,\n-0000a860: 0a20 2020 2020 2a6e 6f74 6520 4765 745f . *note Get_\n-0000a870: 536f 636b 5f41 6464 7220 2866 756e 6374 Sock_Addr (funct\n-0000a880: 696f 6e29 3a3a 2e0a 0a1f 0a46 696c 653a ion)::.....File:\n-0000a890: 2061 6461 736f 636b 6574 732e 696e 666f adasockets.info\n-0000a8a0: 2c20 204e 6f64 653a 2047 6574 5f50 6565 , Node: Get_Pee\n-0000a8b0: 725f 506f 7274 2028 6675 6e63 7469 6f6e r_Port (function\n-0000a8c0: 292c 2020 4e65 7874 3a20 4765 745f 536f ), Next: Get_So\n-0000a8d0: 636b 5f41 6464 7220 2866 756e 6374 696f ck_Addr (functio\n-0000a8e0: 6e29 2c20 2050 7265 763a 2047 6574 5f50 n), Prev: Get_P\n-0000a8f0: 6565 725f 4164 6472 2028 6675 6e63 7469 eer_Addr (functi\n-0000a900: 6f6e 292c 2020 5570 3a20 4164 6472 6573 on), Up: Addres\n-0000a910: 735f 4f66 2028 6675 6e63 7469 6f6e 290a s_Of (function).\n-0000a920: 0a47 6574 5f50 6565 725f 506f 7274 2028 .Get_Peer_Port (\n-0000a930: 6675 6e63 7469 6f6e 290a 2d2d 2d2d 2d2d function).------\n-0000a940: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-0000a950: 2d2d 0a0a 5055 5250 4f53 450a 2020 2020 --..PURPOSE. \n-0000a960: 2052 6574 7269 6576 6520 706f 7274 2075 Retrieve port u\n-0000a970: 7365 6420 6279 2072 656d 6f74 6520 686f sed by remote ho\n-0000a980: 7374 0a50 524f 544f 5459 5045 0a20 2020 st.PROTOTYPE. \n-0000a990: 2020 202d 2d20 536f 636b 6574 732e 4e61 -- Sockets.Na\n-0000a9a0: 6d69 6e67 2e47 6574 5f50 6565 725f 506f ming.Get_Peer_Po\n-0000a9b0: 7274 3a20 6675 6e63 7469 6f6e 2047 6574 rt: function Get\n-0000a9c0: 5f50 6565 725f 506f 7274 0a20 2020 2020 _Peer_Port. \n-0000a9d0: 2020 2020 2020 2020 2020 2853 4f43 4b45 (SOCKE\n-0000a9e0: 5420 3a20 536f 636b 6574 5f46 4429 0a20 T : Socket_FD). \n-0000a9f0: 2020 2020 2020 2020 2020 2020 2020 7265 re\n-0000aa00: 7475 726e 2050 6f73 6974 6976 653b 0a0a turn Positive;..\n-0000aa10: 5041 5241 4d45 5445 5253 0a20 2020 2020 PARAMETERS. \n-0000aa20: 534f 434b 4554 2020 2020 2069 6e20 2020 SOCKET in \n-0000aa30: 2020 2020 2020 436f 6e6e 6563 7465 6420 Connected \n-0000aa40: 736f 636b 6574 206f 626a 6563 740a 0a52 socket object..R\n-0000aa50: 4554 5552 4e20 5641 4c55 450a 2020 2020 ETURN VALUE. \n-0000aa60: 2050 6f72 7420 7573 6564 206f 6e20 7468 Port used on th\n-0000aa70: 6520 7265 6d6f 7465 2068 6f73 740a 0a53 e remote host..S\n-0000aa80: 4545 2041 4c53 4f0a 2020 2020 202a 6e6f EE ALSO. *no\n-0000aa90: 7465 2047 6574 5f53 6f63 6b5f 506f 7274 te Get_Sock_Port\n-0000aaa0: 2028 6675 6e63 7469 6f6e 293a 3a2c 0a20 (function)::,. \n-0000aab0: 2020 2020 2a6e 6f74 6520 4765 745f 5065 *note Get_Pe\n-0000aac0: 6572 5f41 6464 7220 2866 756e 6374 696f er_Addr (functio\n-0000aad0: 6e29 3a3a 2e0a 0a1f 0a46 696c 653a 2061 n)::.....File: a\n-0000aae0: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n-0000aaf0: 204e 6f64 653a 2047 6574 5f53 6f63 6b5f Node: Get_Sock_\n-0000ab00: 4164 6472 2028 6675 6e63 7469 6f6e 292c Addr (function),\n-0000ab10: 2020 4e65 7874 3a20 4765 745f 536f 636b Next: Get_Sock\n-0000ab20: 5f50 6f72 7420 2866 756e 6374 696f 6e29 _Port (function)\n-0000ab30: 2c20 2050 7265 763a 2047 6574 5f50 6565 , Prev: Get_Pee\n-0000ab40: 725f 506f 7274 2028 6675 6e63 7469 6f6e r_Port (function\n-0000ab50: 292c 2020 5570 3a20 4164 6472 6573 735f ), Up: Address_\n-0000ab60: 4f66 2028 6675 6e63 7469 6f6e 290a 0a47 Of (function)..G\n-0000ab70: 6574 5f53 6f63 6b5f 4164 6472 2028 6675 et_Sock_Addr (fu\n-0000ab80: 6e63 7469 6f6e 290a 2d2d 2d2d 2d2d 2d2d nction).--------\n-0000ab90: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-0000aba0: 0a0a 5055 5250 4f53 450a 2020 2020 2052 ..PURPOSE. R\n-0000abb0: 6574 7269 6576 6520 4950 2061 6464 7265 etrieve IP addre\n-0000abc0: 7373 206f 6620 6c6f 6361 6c20 686f 7374 ss of local host\n-0000abd0: 0a50 524f 544f 5459 5045 0a20 2020 2020 .PROTOTYPE. \n-0000abe0: 202d 2d20 536f 636b 6574 732e 4e61 6d69 -- Sockets.Nami\n-0000abf0: 6e67 2e47 6574 5f53 6f63 6b5f 4164 6472 ng.Get_Sock_Addr\n-0000ac00: 3a20 6675 6e63 7469 6f6e 2047 6574 5f53 : function Get_S\n-0000ac10: 6f63 6b5f 4164 6472 0a20 2020 2020 2020 ock_Addr. \n-0000ac20: 2020 2020 2020 2020 2853 4f43 4b45 5420 (SOCKET \n-0000ac30: 3a20 536f 636b 6574 5f46 4429 0a20 2020 : Socket_FD). \n-0000ac40: 2020 2020 2020 2020 2020 2020 7265 7475 retu\n-0000ac50: 726e 2041 6464 7265 7373 3b0a 0a50 4152 rn Address;..PAR\n-0000ac60: 414d 4554 4552 530a 2020 2020 2053 4f43 AMETERS. SOC\n-0000ac70: 4b45 5420 2020 2020 696e 2020 2020 2020 KET in \n-0000ac80: 2020 2043 6f6e 6e65 6374 6564 2073 6f63 Connected soc\n-0000ac90: 6b65 7420 6f62 6a65 6374 0a0a 5245 5455 ket object..RETU\n-0000aca0: 524e 2056 414c 5545 0a20 2020 2020 4164 RN VALUE. Ad\n-0000acb0: 6472 6573 7320 6f66 206c 6f63 616c 2069 dress of local i\n-0000acc0: 6e74 6572 6661 6365 2075 7365 640a 0a53 nterface used..S\n-0000acd0: 4545 2041 4c53 4f0a 2020 2020 202a 6e6f EE ALSO. *no\n-0000ace0: 7465 2047 6574 5f53 6f63 6b5f 506f 7274 te Get_Sock_Port\n-0000acf0: 2028 6675 6e63 7469 6f6e 293a 3a2c 0a20 (function)::,. \n-0000ad00: 2020 2020 2a6e 6f74 6520 4765 745f 5065 *note Get_Pe\n-0000ad10: 6572 5f41 6464 7220 2866 756e 6374 696f er_Addr (functio\n-0000ad20: 6e29 3a3a 2e0a 0a1f 0a46 696c 653a 2061 n)::.....File: a\n-0000ad30: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n-0000ad40: 204e 6f64 653a 2047 6574 5f53 6f63 6b5f Node: Get_Sock_\n-0000ad50: 506f 7274 2028 6675 6e63 7469 6f6e 292c Port (function),\n-0000ad60: 2020 4e65 7874 3a20 486f 7374 5f4e 616d Next: Host_Nam\n-0000ad70: 6520 2866 756e 6374 696f 6e29 2c20 2050 e (function), P\n-0000ad80: 7265 763a 2047 6574 5f53 6f63 6b5f 4164 rev: Get_Sock_Ad\n-0000ad90: 6472 2028 6675 6e63 7469 6f6e 292c 2020 dr (function), \n-0000ada0: 5570 3a20 4164 6472 6573 735f 4f66 2028 Up: Address_Of (\n-0000adb0: 6675 6e63 7469 6f6e 290a 0a47 6574 5f53 function)..Get_S\n-0000adc0: 6f63 6b5f 506f 7274 2028 6675 6e63 7469 ock_Port (functi\n-0000add0: 6f6e 290a 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d on).------------\n-0000ade0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 ------------..PU\n-0000adf0: 5250 4f53 450a 2020 2020 2052 6574 7269 RPOSE. Retri\n-0000ae00: 6576 6520 706f 7274 2075 7365 6420 6279 eve port used by\n-0000ae10: 206c 6f63 616c 2068 6f73 740a 5052 4f54 local host.PROT\n-0000ae20: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n-0000ae30: 6f63 6b65 7473 2e4e 616d 696e 672e 4765 ockets.Naming.Ge\n-0000ae40: 745f 536f 636b 5f50 6f72 743a 2066 756e t_Sock_Port: fun\n-0000ae50: 6374 696f 6e20 4765 745f 536f 636b 5f50 ction Get_Sock_P\n-0000ae60: 6f72 740a 2020 2020 2020 2020 2020 2020 ort. \n-0000ae70: 2020 2028 534f 434b 4554 203a 2053 6f63 (SOCKET : Soc\n-0000ae80: 6b65 745f 4644 290a 2020 2020 2020 2020 ket_FD). \n-0000ae90: 2020 2020 2020 2072 6574 7572 6e20 506f return Po\n-0000aea0: 7369 7469 7665 3b0a 0a50 4152 414d 4554 sitive;..PARAMET\n-0000aeb0: 4552 530a 2020 2020 2053 4f43 4b45 5420 ERS. SOCKET \n-0000aec0: 2020 2020 696e 2020 2020 2020 2020 2043 in C\n-0000aed0: 6f6e 6e65 6374 6564 2073 6f63 6b65 7420 onnected socket \n-0000aee0: 6f62 6a65 6374 0a0a 5245 5455 524e 2056 object..RETURN V\n-0000aef0: 414c 5545 0a20 2020 2020 506f 7274 2075 ALUE. Port u\n-0000af00: 7365 6420 6f6e 2074 6865 206c 6f63 616c sed on the local\n-0000af10: 2068 6f73 740a 0a53 4545 2041 4c53 4f0a host..SEE ALSO.\n-0000af20: 2020 2020 202a 6e6f 7465 2047 6574 5f50 *note Get_P\n-0000af30: 6565 725f 506f 7274 2028 6675 6e63 7469 eer_Port (functi\n-0000af40: 6f6e 293a 3a2c 0a20 2020 2020 2a6e 6f74 on)::,. *not\n-0000af50: 6520 4765 745f 536f 636b 5f41 6464 7220 e Get_Sock_Addr \n-0000af60: 2866 756e 6374 696f 6e29 3a3a 2e0a 0a1f (function)::....\n-0000af70: 0a46 696c 653a 2061 6461 736f 636b 6574 .File: adasocket\n-0000af80: 732e 696e 666f 2c20 204e 6f64 653a 2048 s.info, Node: H\n-0000af90: 6f73 745f 4e61 6d65 2028 6675 6e63 7469 ost_Name (functi\n-0000afa0: 6f6e 292c 2020 4e65 7874 3a20 496d 6167 on), Next: Imag\n-0000afb0: 6520 2866 756e 6374 696f 6e29 2c20 2050 e (function), P\n-0000afc0: 7265 763a 2047 6574 5f53 6f63 6b5f 506f rev: Get_Sock_Po\n-0000afd0: 7274 2028 6675 6e63 7469 6f6e 292c 2020 rt (function), \n-0000afe0: 5570 3a20 4164 6472 6573 735f 4f66 2028 Up: Address_Of (\n-0000aff0: 6675 6e63 7469 6f6e 290a 0a48 6f73 745f function)..Host_\n-0000b000: 4e61 6d65 2028 6675 6e63 7469 6f6e 290a Name (function).\n-0000b010: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-0000b020: 2d2d 2d2d 0a0a 5055 5250 4f53 450a 2020 ----..PURPOSE. \n-0000b030: 2020 2047 6574 2074 6865 206e 616d 6520 Get the name \n-0000b040: 6f66 2074 6865 2063 7572 7265 6e74 2068 of the current h\n-0000b050: 6f73 740a 5052 4f54 4f54 5950 450a 2020 ost.PROTOTYPE. \n-0000b060: 2020 2020 2d2d 2053 6f63 6b65 7473 2e4e -- Sockets.N\n-0000b070: 616d 696e 672e 486f 7374 5f4e 616d 653a aming.Host_Name:\n-0000b080: 2066 756e 6374 696f 6e20 486f 7374 5f4e function Host_N\n-0000b090: 616d 650a 0a52 4554 5552 4e20 5641 4c55 ame..RETURN VALU\n-0000b0a0: 450a 2020 2020 204e 616d 6520 6f66 2074 E. Name of t\n-0000b0b0: 6865 2063 7572 7265 6e74 2068 6f73 740a he current host.\n-0000b0c0: 0a44 4553 4352 4950 5449 4f4e 0a20 2020 .DESCRIPTION. \n-0000b0d0: 2020 5468 6973 2066 756e 6374 696f 6e20 This function \n-0000b0e0: 7265 7475 726e 7320 7468 6520 6e61 6d65 returns the name\n-0000b0f0: 206f 6620 7468 6520 6375 7272 656e 7420 of the current \n-0000b100: 686f 7374 2e20 2044 6570 656e 6469 6e67 host. Depending\n-0000b110: 206f 6e0a 2020 2020 2074 6865 206c 6f63 on. the loc\n-0000b120: 616c 2063 6f6e 6669 6775 7261 7469 6f6e al configuration\n-0000b130: 2c20 6974 206d 6179 206f 7220 6d61 7920 , it may or may \n-0000b140: 6e6f 7420 6265 2061 2066 756c 6c79 2071 not be a fully q\n-0000b150: 7561 6c69 6669 6564 0a20 2020 2020 646f ualified. do\n-0000b160: 6d61 696e 206e 616d 6520 2846 5144 4e29 main name (FQDN)\n-0000b170: 2e0a 0a1f 0a46 696c 653a 2061 6461 736f .....File: adaso\n-0000b180: 636b 6574 732e 696e 666f 2c20 204e 6f64 ckets.info, Nod\n-0000b190: 653a 2049 6d61 6765 2028 6675 6e63 7469 e: Image (functi\n-0000b1a0: 6f6e 292c 2020 4e65 7874 3a20 496e 666f on), Next: Info\n-0000b1b0: 5f4f 665f 4e61 6d65 5f4f 725f 4950 2028 _Of_Name_Or_IP (\n-0000b1c0: 6675 6e63 7469 6f6e 292c 2020 5072 6576 function), Prev\n-0000b1d0: 3a20 486f 7374 5f4e 616d 6520 2866 756e : Host_Name (fun\n-0000b1e0: 6374 696f 6e29 2c20 2055 703a 2041 6464 ction), Up: Add\n-0000b1f0: 7265 7373 5f4f 6620 2866 756e 6374 696f ress_Of (functio\n-0000b200: 6e29 0a0a 496d 6167 6520 2866 756e 6374 n)..Image (funct\n-0000b210: 696f 6e29 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d ion).-----------\n-0000b220: 2d2d 2d2d 2d0a 0a50 5552 504f 5345 0a20 -----..PURPOSE. \n-0000b230: 2020 2020 4d61 6b65 2061 2073 7472 696e Make a strin\n-0000b240: 6720 6672 6f6d 2061 6e20 6164 6472 6573 g from an addres\n-0000b250: 730a 5052 4f54 4f54 5950 450a 2020 2020 s.PROTOTYPE. \n-0000b260: 2020 2d2d 2053 6f63 6b65 7473 2e4e 616d -- Sockets.Nam\n-0000b270: 696e 672e 496d 6167 653a 2066 756e 6374 ing.Image: funct\n-0000b280: 696f 6e20 496d 6167 6520 2841 4444 203a ion Image (ADD :\n-0000b290: 2041 6464 7265 7373 290a 2020 2020 2020 Address). \n-0000b2a0: 2020 2020 2020 2020 2072 6574 7572 6e20 return \n-0000b2b0: 5374 7269 6e67 3b0a 0a50 4152 414d 4554 String;..PARAMET\n-0000b2c0: 4552 530a 2020 2020 2041 4444 2020 2020 ERS. ADD \n-0000b2d0: 2020 2020 696e 2020 2020 2020 2020 2049 in I\n-0000b2e0: 5020 6164 6472 6573 730a 0a52 4554 5552 P address..RETUR\n-0000b2f0: 4e20 5641 4c55 450a 2020 2020 2053 7472 N VALUE. Str\n-0000b300: 696e 6720 7265 7072 6573 656e 7461 7469 ing representati\n-0000b310: 6f6e 206f 6620 7468 6520 4950 2061 6464 on of the IP add\n-0000b320: 7265 7373 0a0a 5345 4520 414c 534f 0a20 ress..SEE ALSO. \n-0000b330: 2020 2020 2a6e 6f74 6520 5661 6c75 6520 *note Value \n-0000b340: 2866 756e 6374 696f 6e29 3a3a 2e0a 0a1f (function)::....\n-0000b350: 0a46 696c 653a 2061 6461 736f 636b 6574 .File: adasocket\n-0000b360: 732e 696e 666f 2c20 204e 6f64 653a 2049 s.info, Node: I\n-0000b370: 6e66 6f5f 4f66 5f4e 616d 655f 4f72 5f49 nfo_Of_Name_Or_I\n-0000b380: 5020 2866 756e 6374 696f 6e29 2c20 204e P (function), N\n-0000b390: 6578 743a 2049 735f 4950 5f41 6464 7265 ext: Is_IP_Addre\n-0000b3a0: 7373 2028 6675 6e63 7469 6f6e 292c 2020 ss (function), \n-0000b3b0: 5072 6576 3a20 496d 6167 6520 2866 756e Prev: Image (fun\n-0000b3c0: 6374 696f 6e29 2c20 2055 703a 2041 6464 ction), Up: Add\n-0000b3d0: 7265 7373 5f4f 6620 2866 756e 6374 696f ress_Of (functio\n-0000b3e0: 6e29 0a0a 496e 666f 5f4f 665f 4e61 6d65 n)..Info_Of_Name\n-0000b3f0: 5f4f 725f 4950 2028 6675 6e63 7469 6f6e _Or_IP (function\n-0000b400: 290a 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ).--------------\n-0000b410: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a ---------------.\n-0000b420: 0a50 5552 504f 5345 0a20 2020 2020 4765 .PURPOSE. Ge\n-0000b430: 7420 6164 6472 6573 7365 7320 616e 6420 t addresses and \n-0000b440: 6e61 6d65 7320 6f66 2061 2068 6f73 740a names of a host.\n-0000b450: 5052 4f54 4f54 5950 450a 2020 2020 2020 PROTOTYPE. \n-0000b460: 2d2d 2053 6f63 6b65 7473 2e4e 616d 696e -- Sockets.Namin\n-0000b470: 672e 496e 666f 5f4f 665f 4e61 6d65 5f4f g.Info_Of_Name_O\n-0000b480: 725f 4950 3a20 6675 6e63 7469 6f6e 2049 r_IP: function I\n-0000b490: 6e66 6f5f 4f66 5f4e 616d 655f 4f72 5f49 nfo_Of_Name_Or_I\n-0000b4a0: 500a 2020 2020 2020 2020 2020 2020 2020 P. \n-0000b4b0: 2028 534f 4d45 5448 494e 4720 3a20 5374 (SOMETHING : St\n-0000b4c0: 7269 6e67 290a 2020 2020 2020 2020 2020 ring). \n-0000b4d0: 2020 2020 2072 6574 7572 6e20 486f 7374 return Host\n-0000b4e0: 5f45 6e74 7279 3b0a 0a50 4152 414d 4554 _Entry;..PARAMET\n-0000b4f0: 4552 530a 2020 2020 2053 4f4d 4554 4849 ERS. SOMETHI\n-0000b500: 4e47 2020 696e 2020 2020 2020 2020 2048 NG in H\n-0000b510: 6f73 7420 6e61 6d65 206f 7220 4950 2061 ost name or IP a\n-0000b520: 6464 7265 7373 0a0a 5245 5455 524e 2056 ddress..RETURN V\n-0000b530: 414c 5545 0a20 2020 2020 436f 7272 6573 ALUE. Corres\n-0000b540: 706f 6e64 696e 6720 686f 7374 2065 6e74 ponding host ent\n-0000b550: 7279 0a0a 4445 5343 5249 5054 494f 4e0a ry..DESCRIPTION.\n-0000b560: 2020 2020 2054 6869 7320 6675 6e63 7469 This functi\n-0000b570: 6f6e 2065 7874 7261 6374 7320 616c 6c20 on extracts all \n-0000b580: 7468 6520 6e61 6d65 7320 616e 6420 6164 the names and ad\n-0000b590: 6472 6573 7365 7320 6672 6f6d 2074 6865 dresses from the\n-0000b5a0: 206e 616d 696e 670a 2020 2020 2073 6572 naming. ser\n-0000b5b0: 7669 6365 2e0a 0a45 5843 4550 5449 4f4e vice...EXCEPTION\n-0000b5c0: 530a 2020 2020 2027 4e61 6d69 6e67 5f45 S. 'Naming_E\n-0000b5d0: 7272 6f72 2720 2020 2020 4e6f 2069 6e66 rror' No inf\n-0000b5e0: 6f72 6d61 7469 6f6e 2061 7661 696c 6162 ormation availab\n-0000b5f0: 6c65 2066 6f72 2074 6869 7320 6e61 6d65 le for this name\n-0000b600: 206f 720a 2020 2020 2020 2020 2020 2020 or. \n-0000b610: 2020 2020 2020 2020 2020 2020 6164 6472 addr\n-0000b620: 6573 730a 0a1f 0a46 696c 653a 2061 6461 ess....File: ada\n-0000b630: 736f 636b 6574 732e 696e 666f 2c20 204e sockets.info, N\n-0000b640: 6f64 653a 2049 735f 4950 5f41 6464 7265 ode: Is_IP_Addre\n-0000b650: 7373 2028 6675 6e63 7469 6f6e 292c 2020 ss (function), \n-0000b660: 4e65 7874 3a20 4e61 6d65 5f4f 6620 2866 Next: Name_Of (f\n-0000b670: 756e 6374 696f 6e29 2c20 2050 7265 763a unction), Prev:\n-0000b680: 2049 6e66 6f5f 4f66 5f4e 616d 655f 4f72 Info_Of_Name_Or\n-0000b690: 5f49 5020 2866 756e 6374 696f 6e29 2c20 _IP (function), \n-0000b6a0: 2055 703a 2041 6464 7265 7373 5f4f 6620 Up: Address_Of \n-0000b6b0: 2866 756e 6374 696f 6e29 0a0a 4973 5f49 (function)..Is_I\n-0000b6c0: 505f 4164 6472 6573 7320 2866 756e 6374 P_Address (funct\n-0000b6d0: 696f 6e29 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d ion).-----------\n-0000b6e0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 -------------..P\n-0000b6f0: 5552 504f 5345 0a20 2020 2020 4368 6563 URPOSE. Chec\n-0000b700: 6b20 6966 2067 6976 656e 2073 7472 696e k if given strin\n-0000b710: 6720 6973 2061 2076 616c 6964 2049 5020 g is a valid IP \n-0000b720: 6164 6472 6573 730a 5052 4f54 4f54 5950 address.PROTOTYP\n-0000b730: 450a 2020 2020 2020 2d2d 2053 6f63 6b65 E. -- Socke\n-0000b740: 7473 2e4e 616d 696e 672e 4973 5f49 505f ts.Naming.Is_IP_\n-0000b750: 4164 6472 6573 733a 2066 756e 6374 696f Address: functio\n-0000b760: 6e20 4973 5f49 505f 4164 6472 6573 730a n Is_IP_Address.\n-0000b770: 2020 2020 2020 2020 2020 2020 2020 2028 (\n-0000b780: 534f 4d45 5448 494e 4720 3a20 5374 7269 SOMETHING : Stri\n-0000b790: 6e67 290a 2020 2020 2020 2020 2020 2020 ng). \n-0000b7a0: 2020 2072 6574 7572 6e20 426f 6f6c 6561 return Boolea\n-0000b7b0: 6e3b 0a0a 5041 5241 4d45 5445 5253 0a20 n;..PARAMETERS. \n-0000b7c0: 2020 2020 534f 4d45 5448 494e 4720 2069 SOMETHING i\n-0000b7d0: 6e20 2020 2020 2020 2020 5374 7269 6e67 n String\n-0000b7e0: 2074 6f20 6368 6563 6b0a 0a52 4554 5552 to check..RETUR\n-0000b7f0: 4e20 5641 4c55 450a 2020 2020 2027 5472 N VALUE. 'Tr\n-0000b800: 7565 2720 6966 2053 4f4d 4554 4849 4e47 ue' if SOMETHING\n-0000b810: 2069 7320 616e 2049 5020 6164 6472 6573 is an IP addres\n-0000b820: 730a 0a1f 0a46 696c 653a 2061 6461 736f s....File: adaso\n-0000b830: 636b 6574 732e 696e 666f 2c20 204e 6f64 ckets.info, Nod\n-0000b840: 653a 204e 616d 655f 4f66 2028 6675 6e63 e: Name_Of (func\n-0000b850: 7469 6f6e 292c 2020 4e65 7874 3a20 5661 tion), Next: Va\n-0000b860: 6c75 6520 2866 756e 6374 696f 6e29 2c20 lue (function), \n-0000b870: 2050 7265 763a 2049 735f 4950 5f41 6464 Prev: Is_IP_Add\n-0000b880: 7265 7373 2028 6675 6e63 7469 6f6e 292c ress (function),\n-0000b890: 2020 5570 3a20 4164 6472 6573 735f 4f66 Up: Address_Of\n-0000b8a0: 2028 6675 6e63 7469 6f6e 290a 0a4e 616d (function)..Nam\n-0000b8b0: 655f 4f66 2028 6675 6e63 7469 6f6e 290a e_Of (function).\n-0000b8c0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n-0000b8d0: 2d2d 0a0a 5055 5250 4f53 450a 2020 2020 --..PURPOSE. \n-0000b8e0: 204f 6666 6963 6961 6c20 6e61 6d65 206f Official name o\n-0000b8f0: 6620 7468 6520 686f 7374 0a50 524f 544f f the host.PROTO\n-0000b900: 5459 5045 0a20 2020 2020 202d 2d20 536f TYPE. -- So\n-0000b910: 636b 6574 732e 4e61 6d69 6e67 2e4e 616d ckets.Naming.Nam\n-0000b920: 655f 4f66 3a20 6675 6e63 7469 6f6e 204e e_Of: function N\n-0000b930: 616d 655f 4f66 2028 534f 4d45 5448 494e ame_Of (SOMETHIN\n-0000b940: 4720 3a20 5374 7269 6e67 290a 2020 2020 G : String). \n-0000b950: 2020 2020 2020 2020 2020 2072 6574 7572 retur\n-0000b960: 6e20 5374 7269 6e67 3b0a 0a50 4152 414d n String;..PARAM\n-0000b970: 4554 4552 530a 2020 2020 2053 4f4d 4554 ETERS. SOMET\n-0000b980: 4849 4e47 2020 696e 2020 2020 2020 2020 HING in \n-0000b990: 2048 6f73 7420 6e61 6d65 206f 7220 4950 Host name or IP\n-0000b9a0: 2061 6464 7265 7373 0a0a 5245 5455 524e address..RETURN\n-0000b9b0: 2056 414c 5545 0a20 2020 2020 4e61 6d65 VALUE. Name\n-0000b9c0: 206f 6620 7468 6520 686f 7374 0a0a 4558 of the host..EX\n-0000b9d0: 4345 5054 494f 4e53 0a20 2020 2020 274e CEPTIONS. 'N\n-0000b9e0: 616d 696e 675f 4572 726f 7227 2020 2020 aming_Error' \n-0000b9f0: 204e 6f20 696e 666f 726d 6174 696f 6e20 No information \n-0000ba00: 6176 6169 6c61 626c 6520 666f 7220 7468 available for th\n-0000ba10: 6973 206e 616d 6520 6f72 0a20 2020 2020 is name or. \n-0000ba20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ba30: 2020 2061 6464 7265 7373 0a0a 5345 4520 address..SEE \n-0000ba40: 414c 534f 0a20 2020 2020 2a6e 6f74 6520 ALSO. *note \n-0000ba50: 4164 6472 6573 735f 4f66 2028 6675 6e63 Address_Of (func\n-0000ba60: 7469 6f6e 293a 3a2e 0a0a 1f0a 4669 6c65 tion)::.....File\n-0000ba70: 3a20 6164 6173 6f63 6b65 7473 2e69 6e66 : adasockets.inf\n-0000ba80: 6f2c 2020 4e6f 6465 3a20 5661 6c75 6520 o, Node: Value \n-0000ba90: 2866 756e 6374 696f 6e29 2c20 2050 7265 (function), Pre\n-0000baa0: 763a 204e 616d 655f 4f66 2028 6675 6e63 v: Name_Of (func\n-0000bab0: 7469 6f6e 292c 2020 5570 3a20 4164 6472 tion), Up: Addr\n-0000bac0: 6573 735f 4f66 2028 6675 6e63 7469 6f6e ess_Of (function\n-0000bad0: 290a 0a56 616c 7565 2028 6675 6e63 7469 )..Value (functi\n-0000bae0: 6f6e 290a 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d on).------------\n-0000baf0: 2d2d 2d2d 0a0a 5055 5250 4f53 450a 2020 ----..PURPOSE. \n-0000bb00: 2020 2054 7261 6e73 666f 726d 2061 2073 Transform a s\n-0000bb10: 7472 696e 6720 696e 746f 2061 6e20 6164 tring into an ad\n-0000bb20: 6472 6573 730a 5052 4f54 4f54 5950 450a dress.PROTOTYPE.\n-0000bb30: 2020 2020 2020 2d2d 2053 6f63 6b65 7473 -- Sockets\n-0000bb40: 2e4e 616d 696e 672e 5661 6c75 653a 2066 .Naming.Value: f\n-0000bb50: 756e 6374 696f 6e20 5661 6c75 6520 2841 unction Value (A\n-0000bb60: 4444 203a 2053 7472 696e 6729 0a20 2020 DD : String). \n-0000bb70: 2020 2020 2020 2020 2020 2020 7265 7475 retu\n-0000bb80: 726e 2041 6464 7265 7373 3b0a 0a50 4152 rn Address;..PAR\n-0000bb90: 414d 4554 4552 530a 2020 2020 2041 4444 AMETERS. ADD\n-0000bba0: 2020 2020 2020 2020 696e 2020 2020 2020 in \n-0000bbb0: 2020 2054 6578 7475 616c 2072 6570 7265 Textual repre\n-0000bbc0: 7365 6e74 6174 696f 6e20 6f66 2061 6e20 sentation of an \n-0000bbd0: 4950 2061 6464 7265 7373 0a0a 5245 5455 IP address..RETU\n-0000bbe0: 524e 2056 414c 5545 0a20 2020 2020 436f RN VALUE. Co\n-0000bbf0: 7272 6573 706f 6e64 696e 6720 4164 6472 rresponding Addr\n-0000bc00: 6573 730a 0a53 4545 2041 4c53 4f0a 2020 ess..SEE ALSO. \n-0000bc10: 2020 202a 6e6f 7465 2049 6d61 6765 2028 *note Image (\n-0000bc20: 6675 6e63 7469 6f6e 293a 3a2e 0a0a 1f0a function)::.....\n-0000bc30: 4669 6c65 3a20 6164 6173 6f63 6b65 7473 File: adasockets\n-0000bc40: 2e69 6e66 6f2c 2020 4e6f 6465 3a20 436f .info, Node: Co\n-0000bc50: 6e74 7269 6275 746f 7273 2c20 204e 6578 ntributors, Nex\n-0000bc60: 743a 2052 6573 6f75 7263 6573 206f 6e20 t: Resources on \n-0000bc70: 7468 6520 496e 7465 726e 6574 2c20 2050 the Internet, P\n-0000bc80: 7265 763a 2053 6f63 6b65 7473 2e4e 616d rev: Sockets.Nam\n-0000bc90: 696e 6720 7061 636b 6167 652c 2020 5570 ing package, Up\n-0000bca0: 3a20 546f 700a 0a41 7070 656e 6469 7820 : Top..Appendix \n-0000bcb0: 4120 436f 6e74 7269 6275 746f 7273 0a2a A Contributors.*\n-0000bcc0: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a ****************\n-0000bcd0: 2a2a 2a2a 2a2a 0a0a 4164 6153 6f63 6b65 ******..AdaSocke\n-0000bce0: 7473 2068 6173 2062 6565 6e20 6f72 6967 ts has been orig\n-0000bcf0: 696e 616c 6c79 2064 6576 656c 6f70 7065 inally developpe\n-0000bd00: 6420 6279 2053 616d 7565 6c20 5461 7264 d by Samuel Tard\n-0000bd10: 6965 7520 7768 6f20 7374 696c 6c0a 6d61 ieu who still.ma\n-0000bd20: 696e 7461 696e 7320 6974 2e20 2048 6f77 intains it. How\n-0000bd30: 6576 6572 2c20 7468 6520 666f 6c6c 6f77 ever, the follow\n-0000bd40: 696e 6720 7065 6f70 6c65 2068 6176 6520 ing people have \n-0000bd50: 6d61 6465 2063 7275 6369 616c 0a63 6f6e made crucial.con\n-0000bd60: 7472 6962 7574 696f 6e73 2074 6f20 4164 tributions to Ad\n-0000bd70: 6153 6f63 6b65 7473 2c20 6265 2074 6865 aSockets, be the\n-0000bd80: 7920 6e65 7720 636f 6465 2c20 6275 6720 y new code, bug \n-0000bd90: 6669 7865 7320 6f72 2070 6f72 7469 6e67 fixes or porting\n-0000bda0: 2074 6f0a 6e65 7720 6f70 6572 6174 696e to.new operatin\n-0000bdb0: 6720 7379 7374 656d 733a 0a0a 2020 202a g systems:.. *\n-0000bdc0: 2044 6d69 7472 6979 2041 6e69 7369 6d6b Dmitriy Anisimk\n-0000bdd0: 6f76 2028 3c61 6e69 7369 6d6b 6f76 4079 ov (). * \n-0000bdf0: 416c 616e 2042 6172 6e65 7320 283c 6261 Alan Barnes (). * Juanma \n-0000be20: 4261 7272 616e 7175 6572 6f20 283c 6c65 Barranquero (). \n-0000be40: 2020 2a20 426f 6262 7920 442e 2042 7279 * Bobby D. Bry\n-0000be50: 616e 7420 283c 6264 6272 7961 6e74 406d ant ()\n-0000be70: 0a20 2020 2a20 5361 6e64 6572 2043 6f78 . * Sander Cox\n-0000be80: 2028 3c73 616e 6465 722e 636f 7840 7068 (). *\n-0000bea0: 2053 756e 6520 4661 6c6b 2028 3c73 756e Sune Falk (). * Guillau\n-0000bed0: 6d65 2046 6f6c 6961 7264 2028 3c67 7569 me Foliard ().\n-0000bef0: 2020 202a 204c 6175 7265 6e74 2047 7565 * Laurent Gue\n-0000bf00: 7262 7920 283c 6775 6572 6279 4063 6c75 rby ().\n-0000bf20: 2020 202a 2044 6176 6964 204a 2e20 4b72 * David J. Kr\n-0000bf30: 6973 746f 6c61 2028 3c44 6176 6964 3935 istola (). \n-0000bf50: 202a 2044 6f6d 696e 696b 204d 6164 6f6e * Dominik Madon\n-0000bf60: 2028 3c64 6f6d 696e 696b 4061 636d 2e6f (). * Pascal\n-0000bf80: 204f 6272 7920 283c 702e 6f62 7279 4077 Obry (). *\n-0000bfa0: 204e 6963 6f6c 6173 204f 6c6c 696e 6765 Nicolas Ollinge\n-0000bfb0: 7220 283c 4e69 636f 6c61 732e 4f6c 6c69 r (). * Stphane \n-0000bfe0: 5061 7475 7265 6175 2028 3c73 7061 7475 Patureau (\n-0000c010: 290a 2020 202a 2054 686f 6d61 7320 5175 ). * Thomas Qu\n-0000c020: 696e 6f74 2028 3c74 686f 6d61 7340 6375 inot ()\n-0000c040: 0a20 2020 2a20 5072 6562 656e 2052 616e . * Preben Ran\n-0000c050: 6468 6f6c 2028 3c72 616e 6468 6f6c 4070 dhol (). * Ma\n-0000c070: 7869 6d20 5265 7a6e 696b 2028 3c6d 6178 xim Reznik ()\n-0000c090: 0a20 2020 2a20 4a6f 656c 2053 6865 7272 . * Joel Sherr\n-0000c0a0: 696c 6c20 283c 6a6f 656c 2e73 6865 7272 ill (\n-0000c0c0: 290a 2020 202a 2053 616d 7565 6c20 5461 ). * Samuel Ta\n-0000c0d0: 7264 6965 7520 283c 7361 6d40 7266 6331 rdieu ().. If\n-0000c0f0: 2079 6f75 2066 6565 6c20 7468 6174 2079 you feel that y\n-0000c100: 6f75 2068 6176 6520 6265 656e 2066 6f72 ou have been for\n-0000c110: 676f 7474 656e 2c20 706c 6561 7365 2073 gotten, please s\n-0000c120: 656e 6420 6d65 2061 206d 6169 6c20 736f end me a mail so\n-0000c130: 0a74 6861 7420 4920 6361 6e20 6669 7820 .that I can fix \n-0000c140: 6974 2069 6e20 7468 6520 6e65 7874 2076 it in the next v\n-0000c150: 6572 7369 6f6e 2e0a 0a20 2020 2a4e 6f74 ersion... *Not\n-0000c160: 6520 5265 736f 7572 6365 7320 6f6e 2074 e Resources on t\n-0000c170: 6865 2049 6e74 6572 6e65 743a 3a2c 2066 he Internet::, f\n-0000c180: 6f72 2068 6f77 2074 6f20 636f 6e74 7269 or how to contri\n-0000c190: 6275 7465 2e0a 0a1f 0a46 696c 653a 2061 bute.....File: a\n-0000c1a0: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n-0000c1b0: 204e 6f64 653a 2052 6573 6f75 7263 6573 Node: Resources\n-0000c1c0: 206f 6e20 7468 6520 496e 7465 726e 6574 on the Internet\n-0000c1d0: 2c20 204e 6578 743a 2049 6e64 6578 2c20 , Next: Index, \n-0000c1e0: 2050 7265 763a 2043 6f6e 7472 6962 7574 Prev: Contribut\n-0000c1f0: 6f72 732c 2020 5570 3a20 546f 700a 0a41 ors, Up: Top..A\n-0000c200: 7070 656e 6469 7820 4220 5265 736f 7572 ppendix B Resour\n-0000c210: 6365 7320 6f6e 2074 6865 2049 6e74 6572 ces on the Inter\n-0000c220: 6e65 740a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a net.************\n-0000c230: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a ****************\n-0000c240: 2a2a 2a2a 2a2a 2a2a 0a0a 5468 6520 6c61 ********..The la\n-0000c250: 7465 7374 2076 6572 7369 6f6e 206f 6620 test version of \n-0000c260: 4164 6153 6f63 6b65 7473 2063 616e 2061 AdaSockets can a\n-0000c270: 6c77 6179 7320 6265 2066 6f75 6e64 2061 lways be found a\n-0000c280: 743a 0a0a 2020 2020 2020 2020 2020 2020 t:.. \n-0000c290: 2020 203c 6874 7470 3a2f 2f77 7777 2e72 .. \n-0000c2c0: 2059 6f75 2063 616e 2072 6570 6f72 7420 You can report \n-0000c2d0: 6973 7375 6573 206f 7220 7375 626d 6974 issues or submit\n-0000c2e0: 2071 7565 7374 696f 6e73 206f 6e20 4769 questions on Gi\n-0000c2f0: 7448 7562 2773 2069 7373 7565 2074 7261 tHub's issue tra\n-0000c300: 636b 6572 0a61 743a 0a0a 2020 2020 2020 cker.at:.. \n-0000c310: 2020 203c 6874 7470 733a 2f2f 6769 7468 ....File:\n-0000c350: 2061 6461 736f 636b 6574 732e 696e 666f adasockets.info\n-0000c360: 2c20 204e 6f64 653a 2049 6e64 6578 2c20 , Node: Index, \n-0000c370: 2050 7265 763a 2052 6573 6f75 7263 6573 Prev: Resources\n-0000c380: 206f 6e20 7468 6520 496e 7465 726e 6574 on the Internet\n-0000c390: 2c20 2055 703a 2054 6f70 0a0a 496e 6465 , Up: Top..Inde\n-0000c3a0: 780a 2a2a 2a2a 2a0a 0a00 085b 696e 6465 x.*****....[inde\n-0000c3b0: 7800 085d 0a2a 204d 656e 753a 0a0a 2a20 x..].* Menu:..* \n-0000c3c0: 4163 6365 7074 696e 6720 6120 6e65 7720 Accepting a new \n-0000c3d0: 636f 6e6e 6563 7469 6f6e 3a20 2020 2020 connection: \n-0000c3e0: 2020 2020 2020 2041 6363 6570 745f 536f Accept_So\n-0000c3f0: 636b 6574 2028 7072 6f63 6564 7572 6529 cket (procedure)\n-0000c400: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-0000c410: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c420: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c430: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c440: 2028 6c69 6e65 2020 3629 0a2a 2041 6363 (line 6).* Acc\n-0000c450: 6570 745f 536f 636b 6574 3a20 2020 2020 ept_Socket: \n-0000c460: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c470: 2020 2020 4163 6365 7074 5f53 6f63 6b65 Accept_Socke\n-0000c480: 7420 2870 726f 6365 6475 7265 292e 0a20 t (procedure).. \n-0000c490: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c4a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c4b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c4c0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n-0000c4d0: 696e 6520 2039 290a 2a20 4164 612e 5374 ine 9).* Ada.St\n-0000c4e0: 7265 616d 732e 5374 7265 616d 5f45 6c65 reams.Stream_Ele\n-0000c4f0: 6d65 6e74 5f41 7272 6179 3a20 2020 2020 ment_Array: \n-0000c500: 2052 6177 2064 6174 6120 6d61 6e69 7075 Raw data manipu\n-0000c510: 6c61 7469 6f6e 2e0a 2020 2020 2020 2020 lation.. \n-0000c520: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c530: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c540: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c550: 2020 2020 2020 2028 6c69 6e65 2020 3629 (line 6)\n-0000c560: 0a2a 2041 6461 2e53 7472 6561 6d73 2e53 .* Ada.Streams.S\n-0000c570: 7472 6561 6d5f 456c 656d 656e 745f 4172 tream_Element_Ar\n-0000c580: 7261 7920 3c31 3e3a 2020 5265 6365 6976 ray <1>: Receiv\n-0000c590: 6520 2866 756e 6374 696f 6e29 2e20 2020 e (function). \n-0000c5a0: 286c 696e 6520 3232 290a 2a20 4164 612e (line 22).* Ada.\n-0000c5b0: 5374 7265 616d 732e 5374 7265 616d 5f45 Streams.Stream_E\n-0000c5c0: 6c65 6d65 6e74 5f41 7272 6179 203c 323e lement_Array <2>\n-0000c5d0: 3a20 2052 6563 6569 7665 2028 7072 6f63 : Receive (proc\n-0000c5e0: 6564 7572 6529 2e20 2028 6c69 6e65 2031 edure). (line 1\n-0000c5f0: 3829 0a2a 2041 6461 2e53 7472 6561 6d73 8).* Ada.Streams\n-0000c600: 2e53 7472 6561 6d5f 456c 656d 656e 745f .Stream_Element_\n-0000c610: 4172 7261 7920 3c33 3e3a 2020 5265 6365 Array <3>: Rece\n-0000c620: 6976 655f 536f 6d65 2028 7072 6f63 6564 ive_Some (proced\n-0000c630: 7572 6529 2e0a 2020 2020 2020 2020 2020 ure).. \n-0000c640: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c650: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c660: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c670: 2020 2020 2028 6c69 6e65 2032 3129 0a2a (line 21).*\n-0000c680: 2041 6461 2e53 7472 6561 6d73 2e53 7472 Ada.Streams.Str\n-0000c690: 6561 6d5f 456c 656d 656e 745f 4172 7261 eam_Element_Arra\n-0000c6a0: 7920 3c34 3e3a 2020 5365 6e64 2028 7072 y <4>: Send (pr\n-0000c6b0: 6f63 6564 7572 6529 2e20 2020 2020 286c ocedure). (l\n-0000c6c0: 696e 6520 3137 290a 2a20 4164 612e 5374 ine 17).* Ada.St\n-0000c6d0: 7265 616d 732e 5374 7265 616d 5f45 6c65 reams.Stream_Ele\n-0000c6e0: 6d65 6e74 5f43 6f75 6e74 3a20 2020 2020 ment_Count: \n-0000c6f0: 2052 6563 6569 7665 2028 6675 6e63 7469 Receive (functi\n-0000c700: 6f6e 292e 2020 2028 6c69 6e65 2032 3229 on). (line 22)\n-0000c710: 0a2a 2041 6461 2e53 7472 6561 6d73 2e53 .* Ada.Streams.S\n-0000c720: 7472 6561 6d5f 456c 656d 656e 745f 436f tream_Element_Co\n-0000c730: 756e 7420 3c31 3e3a 2020 5265 6365 6976 unt <1>: Receiv\n-0000c740: 655f 536f 6d65 2028 7072 6f63 6564 7572 e_Some (procedur\n-0000c750: 6529 2e0a 2020 2020 2020 2020 2020 2020 e).. \n-0000c760: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c770: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c780: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c790: 2020 2028 6c69 6e65 2032 3129 0a2a 2041 (line 21).* A\n-0000c7a0: 6461 536f 636b 6574 7320 7072 6573 656e daSockets presen\n-0000c7b0: 7461 7469 6f6e 3a20 2020 2020 2020 2020 tation: \n-0000c7c0: 2020 2020 2020 5768 6174 2069 7320 4164 What is Ad\n-0000c7d0: 6153 6f63 6b65 7473 3f2e 2020 286c 696e aSockets?. (lin\n-0000c7e0: 6520 2036 290a 2a20 4164 6472 6573 733a e 6).* Address:\n-0000c7f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c800: 2020 2020 2020 2020 2020 2020 2020 2053 S\n-0000c810: 6f63 6b65 7473 2e4e 616d 696e 6720 7061 ockets.Naming pa\n-0000c820: 636b 6167 652e 0a20 2020 2020 2020 2020 ckage.. \n-0000c830: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c840: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c850: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c860: 2020 2020 2020 286c 696e 6520 2039 290a (line 9).\n-0000c870: 2a20 4164 6472 6573 735f 4172 7261 793a * Address_Array:\n-0000c880: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c890: 2020 2020 2020 2020 2053 6f63 6b65 7473 Sockets\n-0000c8a0: 2e4e 616d 696e 6720 7061 636b 6167 652e .Naming package.\n-0000c8b0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-0000c8c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c8d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c8e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c8f0: 286c 696e 6520 3136 290a 2a20 4164 6472 (line 16).* Addr\n-0000c900: 6573 735f 436f 6d70 6f6e 656e 743a 2020 ess_Component: \n-0000c910: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c920: 2020 2053 6f63 6b65 7473 2e4e 616d 696e Sockets.Namin\n-0000c930: 6720 7061 636b 6167 652e 0a20 2020 2020 g package.. \n-0000c940: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c950: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c960: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c970: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n-0000c980: 3230 290a 2a20 4164 6472 6573 735f 4f66 20).* Address_Of\n-0000c990: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n-0000c9a0: 2020 2020 2020 2020 2020 2020 2041 6464 Add\n-0000c9b0: 7265 7373 5f4f 6620 2866 756e 6374 696f ress_Of (functio\n-0000c9c0: 6e29 2e0a 2020 2020 2020 2020 2020 2020 n).. \n+00005f70: 6f74 6520 5075 745f 4c69 6e65 2028 7072 ote Put_Line (pr\n+00005f80: 6f63 6564 7572 6529 3a3a 2e0a 0a1f 0a46 ocedure)::.....F\n+00005f90: 696c 653a 2061 6461 736f 636b 6574 732e ile: adasockets.\n+00005fa0: 696e 666f 2c20 204e 6f64 653a 2050 7574 info, Node: Put\n+00005fb0: 2028 7072 6f63 6564 7572 6529 2c20 204e (procedure), N\n+00005fc0: 6578 743a 2050 7574 5f4c 696e 6520 2870 ext: Put_Line (p\n+00005fd0: 726f 6365 6475 7265 292c 2020 5072 6576 rocedure), Prev\n+00005fe0: 3a20 4e65 775f 4c69 6e65 2028 7072 6f63 : New_Line (proc\n+00005ff0: 6564 7572 6529 2c20 2055 703a 2041 6363 edure), Up: Acc\n+00006000: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n+00006010: 6564 7572 6529 0a0a 5075 7420 2870 726f edure)..Put (pro\n+00006020: 6365 6475 7265 290a 2d2d 2d2d 2d2d 2d2d cedure).--------\n+00006030: 2d2d 2d2d 2d2d 2d0a 0a50 5552 504f 5345 -------..PURPOSE\n+00006040: 0a20 2020 2020 5365 6e64 2061 2073 7472 . Send a str\n+00006050: 696e 6720 746f 2061 2072 656d 6f74 6520 ing to a remote \n+00006060: 686f 7374 0a50 524f 544f 5459 5045 0a20 host.PROTOTYPE. \n+00006070: 2020 2020 202d 2d20 536f 636b 6574 732e -- Sockets.\n+00006080: 5075 743a 2070 726f 6365 6475 7265 2050 Put: procedure P\n+00006090: 7574 2028 534f 434b 4554 203a 2053 6f63 ut (SOCKET : Soc\n+000060a0: 6b65 745f 4644 2743 6c61 7373 3b0a 2020 ket_FD'Class;. \n+000060b0: 2020 2020 2020 2020 2020 2020 2053 5452 STR\n+000060c0: 203a 2053 7472 696e 6729 3b0a 0a50 4152 : String);..PAR\n+000060d0: 414d 4554 4552 530a 2020 2020 2053 4f43 AMETERS. SOC\n+000060e0: 4b45 5420 2020 2020 696e 2020 2020 2020 KET in \n+000060f0: 2020 2049 6e69 7469 616c 697a 6564 2061 Initialized a\n+00006100: 6e64 2063 6f6e 6e65 6374 6564 2073 6f63 nd connected soc\n+00006110: 6b65 7420 6f62 6a65 6374 0a20 2020 2020 ket object. \n+00006120: 5354 5220 2020 2020 2020 2069 6e20 2020 STR in \n+00006130: 2020 2020 2020 5374 7269 6e67 2074 6f20 String to \n+00006140: 7365 6e64 0a0a 4445 5343 5249 5054 494f send..DESCRIPTIO\n+00006150: 4e0a 2020 2020 2054 6869 7320 7072 6f63 N. This proc\n+00006160: 6564 7572 6520 7365 6e64 7320 7468 6520 edure sends the \n+00006170: 636f 6e74 656e 7420 6f66 2053 5452 206f content of STR o\n+00006180: 7665 7220 616e 206f 7574 676f 696e 6720 ver an outgoing \n+00006190: 6f72 0a20 2020 2020 696e 636f 6d69 6e67 or. incoming\n+000061a0: 2073 6f63 6b65 742e 0a0a 4558 4345 5054 socket...EXCEPT\n+000061b0: 494f 4e53 0a20 2020 2020 2743 6f6e 6e65 IONS. 'Conne\n+000061c0: 6374 696f 6e5f 436c 6f73 6564 2750 6565 ction_Closed'Pee\n+000061d0: 7220 6861 7320 7072 656d 6174 7572 656c r has prematurel\n+000061e0: 7920 636c 6f73 6564 2074 6865 2063 6f6e y closed the con\n+000061f0: 6e65 6374 696f 6e0a 0a53 4545 2041 4c53 nection..SEE ALS\n+00006200: 4f0a 2020 2020 202a 6e6f 7465 204e 6577 O. *note New\n+00006210: 5f4c 696e 6520 2870 726f 6365 6475 7265 _Line (procedure\n+00006220: 293a 3a2c 0a20 2020 2020 2a6e 6f74 6520 )::,. *note \n+00006230: 5075 745f 4c69 6e65 2028 7072 6f63 6564 Put_Line (proced\n+00006240: 7572 6529 3a3a 2c0a 2020 2020 202a 6e6f ure)::,. *no\n+00006250: 7465 2053 656e 6420 2870 726f 6365 6475 te Send (procedu\n+00006260: 7265 293a 3a2e 0a0a 1f0a 4669 6c65 3a20 re)::.....File: \n+00006270: 6164 6173 6f63 6b65 7473 2e69 6e66 6f2c adasockets.info,\n+00006280: 2020 4e6f 6465 3a20 5075 745f 4c69 6e65 Node: Put_Line\n+00006290: 2028 7072 6f63 6564 7572 6529 2c20 204e (procedure), N\n+000062a0: 6578 743a 2052 6563 6569 7665 2028 6675 ext: Receive (fu\n+000062b0: 6e63 7469 6f6e 292c 2020 5072 6576 3a20 nction), Prev: \n+000062c0: 5075 7420 2870 726f 6365 6475 7265 292c Put (procedure),\n+000062d0: 2020 5570 3a20 4163 6365 7074 5f53 6f63 Up: Accept_Soc\n+000062e0: 6b65 7420 2870 726f 6365 6475 7265 290a ket (procedure).\n+000062f0: 0a50 7574 5f4c 696e 6520 2870 726f 6365 .Put_Line (proce\n+00006300: 6475 7265 290a 2d2d 2d2d 2d2d 2d2d 2d2d dure).----------\n+00006310: 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 5250 ----------..PURP\n+00006320: 4f53 450a 2020 2020 2053 656e 6420 6120 OSE. Send a \n+00006330: 4352 2f4c 4620 7465 726d 696e 6174 6564 CR/LF terminated\n+00006340: 2073 7472 696e 6720 746f 2061 2072 656d string to a rem\n+00006350: 6f74 6520 686f 7374 0a50 524f 544f 5459 ote host.PROTOTY\n+00006360: 5045 0a20 2020 2020 202d 2d20 536f 636b PE. -- Sock\n+00006370: 6574 732e 5075 745f 4c69 6e65 3a20 7072 ets.Put_Line: pr\n+00006380: 6f63 6564 7572 6520 5075 745f 4c69 6e65 ocedure Put_Line\n+00006390: 2028 534f 434b 4554 203a 2053 6f63 6b65 (SOCKET : Socke\n+000063a0: 745f 4644 2743 6c61 7373 3b0a 2020 2020 t_FD'Class;. \n+000063b0: 2020 2020 2020 2020 2020 2053 5452 203a STR :\n+000063c0: 2053 7472 696e 6729 3b0a 0a50 4152 414d String);..PARAM\n+000063d0: 4554 4552 530a 2020 2020 2053 4f43 4b45 ETERS. SOCKE\n+000063e0: 5420 2020 2020 696e 2020 2020 2020 2020 T in \n+000063f0: 2049 6e69 7469 616c 697a 6564 2061 6e64 Initialized and\n+00006400: 2063 6f6e 6e65 6374 6564 2073 6f63 6b65 connected socke\n+00006410: 7420 6f62 6a65 6374 0a20 2020 2020 5354 t object. ST\n+00006420: 5220 2020 2020 2020 2069 6e20 2020 2020 R in \n+00006430: 2020 2020 5374 7269 6e67 2074 6f20 7365 String to se\n+00006440: 6e64 0a0a 4445 5343 5249 5054 494f 4e0a nd..DESCRIPTION.\n+00006450: 2020 2020 2054 6869 7320 7072 6f63 6564 This proced\n+00006460: 7572 6520 7365 6e64 7320 7468 6520 636f ure sends the co\n+00006470: 6e74 656e 7420 6f66 2053 5452 2070 6c75 ntent of STR plu\n+00006480: 7320 6120 4352 2f4c 4620 636f 6d62 696e s a CR/LF combin\n+00006490: 6174 696f 6e0a 2020 2020 206f 7665 7220 ation. over \n+000064a0: 616e 206f 7574 676f 696e 6720 6f72 2069 an outgoing or i\n+000064b0: 6e63 6f6d 696e 6720 736f 636b 6574 2e0a ncoming socket..\n+000064c0: 0a45 5843 4550 5449 4f4e 530a 2020 2020 .EXCEPTIONS. \n+000064d0: 2027 436f 6e6e 6563 7469 6f6e 5f43 6c6f 'Connection_Clo\n+000064e0: 7365 6427 5065 6572 2068 6173 2070 7265 sed'Peer has pre\n+000064f0: 6d61 7475 7265 6c79 2063 6c6f 7365 6420 maturely closed \n+00006500: 7468 6520 636f 6e6e 6563 7469 6f6e 0a0a the connection..\n+00006510: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n+00006520: 6f74 6520 4e65 775f 4c69 6e65 2028 7072 ote New_Line (pr\n+00006530: 6f63 6564 7572 6529 3a3a 2c0a 2020 2020 ocedure)::,. \n+00006540: 202a 6e6f 7465 2050 7574 2028 7072 6f63 *note Put (proc\n+00006550: 6564 7572 6529 3a3a 2c0a 2020 2020 202a edure)::,. *\n+00006560: 6e6f 7465 2053 656e 6420 2870 726f 6365 note Send (proce\n+00006570: 6475 7265 293a 3a2e 0a0a 1f0a 4669 6c65 dure)::.....File\n+00006580: 3a20 6164 6173 6f63 6b65 7473 2e69 6e66 : adasockets.inf\n+00006590: 6f2c 2020 4e6f 6465 3a20 5265 6365 6976 o, Node: Receiv\n+000065a0: 6520 2866 756e 6374 696f 6e29 2c20 204e e (function), N\n+000065b0: 6578 743a 2052 6563 6569 7665 2028 7072 ext: Receive (pr\n+000065c0: 6f63 6564 7572 6529 2c20 2050 7265 763a ocedure), Prev:\n+000065d0: 2050 7574 5f4c 696e 6520 2870 726f 6365 Put_Line (proce\n+000065e0: 6475 7265 292c 2020 5570 3a20 4163 6365 dure), Up: Acce\n+000065f0: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n+00006600: 6475 7265 290a 0a52 6563 6569 7665 2028 dure)..Receive (\n+00006610: 6675 6e63 7469 6f6e 290a 2d2d 2d2d 2d2d function).------\n+00006620: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 ------------..PU\n+00006630: 5250 4f53 450a 2020 2020 2052 6563 6569 RPOSE. Recei\n+00006640: 7665 2072 6177 2064 6174 6120 6f76 6572 ve raw data over\n+00006650: 2061 2073 6f63 6b65 740a 5052 4f54 4f54 a socket.PROTOT\n+00006660: 5950 450a 2020 2020 2020 2d2d 2053 6f63 YPE. -- Soc\n+00006670: 6b65 7473 2e52 6563 6569 7665 3a20 6675 kets.Receive: fu\n+00006680: 6e63 7469 6f6e 2052 6563 6569 7665 2028 nction Receive (\n+00006690: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n+000066a0: 4644 3b0a 2020 2020 2020 2020 2020 2020 FD;. \n+000066b0: 2020 204d 4158 203a 2041 6461 2e53 7472 MAX : Ada.Str\n+000066c0: 6561 6d73 2e53 7472 6561 6d5f 456c 656d eams.Stream_Elem\n+000066d0: 656e 745f 436f 756e 7420 3a3d 2034 3039 ent_Count := 409\n+000066e0: 3629 0a20 2020 2020 2020 2020 2020 2020 6). \n+000066f0: 2020 7265 7475 726e 2041 6461 2e53 7472 return Ada.Str\n+00006700: 6561 6d73 2e53 7472 6561 6d5f 456c 656d eams.Stream_Elem\n+00006710: 656e 745f 4172 7261 793b 0a0a 5041 5241 ent_Array;..PARA\n+00006720: 4d45 5445 5253 0a20 2020 2020 534f 434b METERS. SOCK\n+00006730: 4554 2020 2020 2069 6e20 2020 2020 2020 ET in \n+00006740: 2020 496e 6974 6961 6c69 7a65 6420 616e Initialized an\n+00006750: 6420 626f 756e 6420 6f72 2063 6f6e 6e65 d bound or conne\n+00006760: 6374 6564 0a20 2020 2020 2020 2020 2020 cted. \n+00006770: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00006780: 736f 636b 6574 206f 626a 6563 740a 2020 socket object. \n+00006790: 2020 204d 4158 2020 2020 2020 2020 696e MAX in\n+000067a0: 2020 2020 2020 2020 204d 6178 696d 756d Maximum\n+000067b0: 2064 6174 6120 6c65 6e67 7468 0a0a 5245 data length..RE\n+000067c0: 5455 524e 2056 414c 5545 0a20 2020 2020 TURN VALUE. \n+000067d0: 5265 6365 6976 6564 2072 6177 2064 6174 Received raw dat\n+000067e0: 610a 0a44 4553 4352 4950 5449 4f4e 0a20 a..DESCRIPTION. \n+000067f0: 2020 2020 5468 6973 2070 726f 6365 6475 This procedu\n+00006800: 7265 2072 6563 6569 7665 7320 6461 7461 re receives data\n+00006810: 2066 726f 6d20 6120 626f 756e 6420 5544 from a bound UD\n+00006820: 5020 736f 636b 6574 206f 7220 6120 636f P socket or a co\n+00006830: 6e6e 6563 7465 640a 2020 2020 2054 4350 nnected. TCP\n+00006840: 2073 6f63 6b65 742e 2020 4f6e 6c79 206f socket. Only o\n+00006850: 6e65 2073 7973 7465 6d20 6361 6c6c 2077 ne system call w\n+00006860: 696c 6c20 6265 2070 6572 666f 726d 6564 ill be performed\n+00006870: 3b20 7468 6973 2066 756e 6374 696f 6e0a ; this function.\n+00006880: 2020 2020 2077 696c 6c20 7265 7475 726e will return\n+00006890: 2077 6861 7465 7665 7220 6461 7461 2068 whatever data h\n+000068a0: 6173 2061 7272 6976 6564 2e20 204e 6f74 as arrived. Not\n+000068b0: 6520 7468 6174 2069 6e20 474e 4154 2074 e that in GNAT t\n+000068c0: 6865 0a20 2020 2020 7365 636f 6e64 6172 he. secondar\n+000068d0: 7920 7374 6163 6b20 6d61 7920 6265 2075 y stack may be u\n+000068e0: 7365 6420 746f 2073 746f 7265 2074 6865 sed to store the\n+000068f0: 2064 6174 6120 616e 6420 6d61 7920 7265 data and may re\n+00006900: 7375 6c74 2069 6e0a 2020 2020 2073 7461 sult in. sta\n+00006910: 636b 2073 746f 7261 6765 2065 7868 6175 ck storage exhau\n+00006920: 7374 696f 6e2e 0a0a 4558 4345 5054 494f stion...EXCEPTIO\n+00006930: 4e53 0a20 2020 2020 2743 6f6e 6e65 6374 NS. 'Connect\n+00006940: 696f 6e5f 436c 6f73 6564 2750 6565 7220 ion_Closed'Peer \n+00006950: 6861 7320 636c 6f73 6564 2074 6865 2063 has closed the c\n+00006960: 6f6e 6e65 6374 696f 6e20 6265 666f 7265 onnection before\n+00006970: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+00006980: 2020 2020 2020 2020 2073 656e 6469 6e67 sending\n+00006990: 2061 6e79 2064 6174 610a 0a53 4545 2041 any data..SEE A\n+000069a0: 4c53 4f0a 2020 2020 202a 6e6f 7465 2052 LSO. *note R\n+000069b0: 6563 6569 7665 2028 7072 6f63 6564 7572 eceive (procedur\n+000069c0: 6529 3a3a 2c0a 2020 2020 202a 6e6f 7465 e)::,. *note\n+000069d0: 2052 6563 6569 7665 5f53 6f6d 6520 2870 Receive_Some (p\n+000069e0: 726f 6365 6475 7265 293a 3a2c 0a20 2020 rocedure)::,. \n+000069f0: 2020 2a6e 6f74 6520 4765 745f 4c69 6e65 *note Get_Line\n+00006a00: 2028 6675 6e63 7469 6f6e 293a 3a2c 0a20 (function)::,. \n+00006a10: 2020 2020 2a6e 6f74 6520 4765 745f 4c69 *note Get_Li\n+00006a20: 6e65 2028 7072 6f63 6564 7572 6529 3a3a ne (procedure)::\n+00006a30: 2e0a 0a1f 0a46 696c 653a 2061 6461 736f .....File: adaso\n+00006a40: 636b 6574 732e 696e 666f 2c20 204e 6f64 ckets.info, Nod\n+00006a50: 653a 2052 6563 6569 7665 2028 7072 6f63 e: Receive (proc\n+00006a60: 6564 7572 6529 2c20 204e 6578 743a 2052 edure), Next: R\n+00006a70: 6563 6569 7665 5f53 6f6d 6520 2870 726f eceive_Some (pro\n+00006a80: 6365 6475 7265 292c 2020 5072 6576 3a20 cedure), Prev: \n+00006a90: 5265 6365 6976 6520 2866 756e 6374 696f Receive (functio\n+00006aa0: 6e29 2c20 2055 703a 2041 6363 6570 745f n), Up: Accept_\n+00006ab0: 536f 636b 6574 2028 7072 6f63 6564 7572 Socket (procedur\n+00006ac0: 6529 0a0a 5265 6365 6976 6520 2870 726f e)..Receive (pro\n+00006ad0: 6365 6475 7265 290a 2d2d 2d2d 2d2d 2d2d cedure).--------\n+00006ae0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 5552 -----------..PUR\n+00006af0: 504f 5345 0a20 2020 2020 5265 6365 6976 POSE. Receiv\n+00006b00: 6520 7261 7720 6461 7461 206f 7665 7220 e raw data over \n+00006b10: 6120 736f 636b 6574 0a50 524f 544f 5459 a socket.PROTOTY\n+00006b20: 5045 0a20 2020 2020 202d 2d20 536f 636b PE. -- Sock\n+00006b30: 6574 732e 5265 6365 6976 653a 2070 726f ets.Receive: pro\n+00006b40: 6365 6475 7265 2052 6563 6569 7665 2028 cedure Receive (\n+00006b50: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n+00006b60: 4644 2743 6c61 7373 3b0a 2020 2020 2020 FD'Class;. \n+00006b70: 2020 2020 2020 2020 2044 4154 4120 3a20 DATA : \n+00006b80: 6f75 7420 4164 612e 5374 7265 616d 732e out Ada.Streams.\n+00006b90: 5374 7265 616d 5f45 6c65 6d65 6e74 5f41 Stream_Element_A\n+00006ba0: 7272 6179 293b 0a0a 5041 5241 4d45 5445 rray);..PARAMETE\n+00006bb0: 5253 0a20 2020 2020 534f 434b 4554 2020 RS. SOCKET \n+00006bc0: 2020 2069 6e20 2020 2020 2020 2020 496e in In\n+00006bd0: 6974 6961 6c69 7a65 6420 616e 6420 626f itialized and bo\n+00006be0: 756e 6420 6f72 2063 6f6e 6e65 6374 6564 und or connected\n+00006bf0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+00006c00: 2020 2020 2020 2020 2020 2020 736f 636b sock\n+00006c10: 6574 206f 626a 6563 740a 2020 2020 2044 et object. D\n+00006c20: 4154 4120 2020 2020 2020 6f75 7420 2020 ATA out \n+00006c30: 2020 2020 2049 6e63 6f6d 696e 6720 6461 Incoming da\n+00006c40: 7461 2062 7566 6665 720a 0a44 4553 4352 ta buffer..DESCR\n+00006c50: 4950 5449 4f4e 0a20 2020 2020 5468 6973 IPTION. This\n+00006c60: 2070 726f 6365 6475 7265 2072 6563 6569 procedure recei\n+00006c70: 7665 7320 6461 7461 2066 726f 6d20 6120 ves data from a \n+00006c80: 626f 756e 6420 5544 5020 736f 636b 6574 bound UDP socket\n+00006c90: 206f 7220 6120 636f 6e6e 6563 7465 640a or a connected.\n+00006ca0: 2020 2020 2054 4350 2073 6f63 6b65 742e TCP socket.\n+00006cb0: 2020 4974 2077 696c 6c20 626c 6f63 6b20 It will block \n+00006cc0: 756e 7469 6c20 7468 6520 4441 5441 2072 until the DATA r\n+00006cd0: 6563 6570 7469 6f6e 2062 7566 6665 7220 eception buffer \n+00006ce0: 6861 7320 6265 656e 0a20 2020 2020 746f has been. to\n+00006cf0: 7461 6c6c 7920 6669 6c6c 6564 2e0a 0a45 tally filled...E\n+00006d00: 5843 4550 5449 4f4e 530a 2020 2020 2027 XCEPTIONS. '\n+00006d10: 436f 6e6e 6563 7469 6f6e 5f43 6c6f 7365 Connection_Close\n+00006d20: 6427 5065 6572 2068 6173 2063 6c6f 7365 d'Peer has close\n+00006d30: 6420 7468 6520 636f 6e6e 6563 7469 6f6e d the connection\n+00006d40: 2062 6566 6f72 650a 2020 2020 2020 2020 before. \n+00006d50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00006d60: 2744 6174 6127 4c65 6e67 7468 2720 6279 'Data'Length' by\n+00006d70: 7465 730a 2020 2020 2020 2020 2020 2020 tes. \n+00006d80: 2020 2020 2020 2020 2020 2020 7765 7265 were\n+00006d90: 2072 6563 6569 7665 640a 0a53 4545 2041 received..SEE A\n+00006da0: 4c53 4f0a 2020 2020 202a 6e6f 7465 2047 LSO. *note G\n+00006db0: 6574 5f4c 696e 6520 2866 756e 6374 696f et_Line (functio\n+00006dc0: 6e29 3a3a 2c0a 2020 2020 202a 6e6f 7465 n)::,. *note\n+00006dd0: 2047 6574 5f4c 696e 6520 2870 726f 6365 Get_Line (proce\n+00006de0: 6475 7265 293a 3a2c 0a20 2020 2020 2a6e dure)::,. *n\n+00006df0: 6f74 6520 5265 6365 6976 6520 2866 756e ote Receive (fun\n+00006e00: 6374 696f 6e29 3a3a 2c0a 2020 2020 202a ction)::,. *\n+00006e10: 6e6f 7465 2052 6563 6569 7665 5f53 6f6d note Receive_Som\n+00006e20: 6520 2870 726f 6365 6475 7265 293a 3a2e e (procedure)::.\n+00006e30: 0a0a 1f0a 4669 6c65 3a20 6164 6173 6f63 ....File: adasoc\n+00006e40: 6b65 7473 2e69 6e66 6f2c 2020 4e6f 6465 kets.info, Node\n+00006e50: 3a20 5265 6365 6976 655f 536f 6d65 2028 : Receive_Some (\n+00006e60: 7072 6f63 6564 7572 6529 2c20 204e 6578 procedure), Nex\n+00006e70: 743a 2053 656e 6420 2870 726f 6365 6475 t: Send (procedu\n+00006e80: 7265 292c 2020 5072 6576 3a20 5265 6365 re), Prev: Rece\n+00006e90: 6976 6520 2870 726f 6365 6475 7265 292c ive (procedure),\n+00006ea0: 2020 5570 3a20 4163 6365 7074 5f53 6f63 Up: Accept_Soc\n+00006eb0: 6b65 7420 2870 726f 6365 6475 7265 290a ket (procedure).\n+00006ec0: 0a52 6563 6569 7665 5f53 6f6d 6520 2870 .Receive_Some (p\n+00006ed0: 726f 6365 6475 7265 290a 2d2d 2d2d 2d2d rocedure).------\n+00006ee0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+00006ef0: 2d2d 0a0a 5055 5250 4f53 450a 2020 2020 --..PURPOSE. \n+00006f00: 2052 6563 6569 7665 2072 6177 2064 6174 Receive raw dat\n+00006f10: 6120 6f76 6572 2061 2073 6f63 6b65 740a a over a socket.\n+00006f20: 5052 4f54 4f54 5950 450a 2020 2020 2020 PROTOTYPE. \n+00006f30: 2d2d 2053 6f63 6b65 7473 2e52 6563 6569 -- Sockets.Recei\n+00006f40: 7665 5f53 6f6d 653a 2070 726f 6365 6475 ve_Some: procedu\n+00006f50: 7265 2052 6563 6569 7665 5f53 6f6d 650a re Receive_Some.\n+00006f60: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+00006f70: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n+00006f80: 4644 2743 6c61 7373 3b0a 2020 2020 2020 FD'Class;. \n+00006f90: 2020 2020 2020 2020 2044 4154 4120 3a20 DATA : \n+00006fa0: 6f75 7420 4164 612e 5374 7265 616d 732e out Ada.Streams.\n+00006fb0: 5374 7265 616d 5f45 6c65 6d65 6e74 5f41 Stream_Element_A\n+00006fc0: 7272 6179 3b0a 2020 2020 2020 2020 2020 rray;. \n+00006fd0: 2020 2020 204c 4153 5420 3a20 6f75 7420 LAST : out \n+00006fe0: 4164 612e 5374 7265 616d 732e 5374 7265 Ada.Streams.Stre\n+00006ff0: 616d 5f45 6c65 6d65 6e74 5f4f 6666 7365 am_Element_Offse\n+00007000: 7429 3b0a 0a50 4152 414d 4554 4552 530a t);..PARAMETERS.\n+00007010: 2020 2020 2053 4f43 4b45 5420 2020 2020 SOCKET \n+00007020: 696e 2020 2020 2020 2020 2049 6e69 7469 in Initi\n+00007030: 616c 697a 6564 2061 6e64 2062 6f75 6e64 alized and bound\n+00007040: 206f 7220 636f 6e6e 6563 7465 640a 2020 or connected. \n+00007050: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00007060: 2020 2020 2020 2020 2073 6f63 6b65 7420 socket \n+00007070: 6f62 6a65 6374 0a20 2020 2020 4441 5441 object. DATA\n+00007080: 2020 2020 2020 206f 7574 2020 2020 2020 out \n+00007090: 2020 496e 636f 6d69 6e67 2064 6174 6120 Incoming data \n+000070a0: 6275 6666 6572 0a20 2020 2020 4c41 5354 buffer. LAST\n+000070b0: 2020 2020 2020 206f 7574 2020 2020 2020 out \n+000070c0: 2020 496e 6465 7820 6f66 206c 6173 7420 Index of last \n+000070d0: 656c 656d 656e 7420 706c 6163 6564 2069 element placed i\n+000070e0: 6e74 6f20 4441 5441 0a0a 4445 5343 5249 nto DATA..DESCRI\n+000070f0: 5054 494f 4e0a 2020 2020 2054 6869 7320 PTION. This \n+00007100: 7072 6f63 6564 7572 6520 7265 6365 6976 procedure receiv\n+00007110: 6573 2064 6174 6120 6672 6f6d 2061 2062 es data from a b\n+00007120: 6f75 6e64 2055 4450 2073 6f63 6b65 7420 ound UDP socket \n+00007130: 6f72 2061 2063 6f6e 6e65 6374 6564 0a20 or a connected. \n+00007140: 2020 2020 5443 5020 736f 636b 6574 2e20 TCP socket. \n+00007150: 2041 7320 736f 6f6e 2061 7320 6174 206c As soon as at l\n+00007160: 6561 7374 206f 6e65 2062 7974 6520 6861 east one byte ha\n+00007170: 7320 6265 656e 2072 6561 642c 2069 7420 s been read, it \n+00007180: 7265 7475 726e 730a 2020 2020 2077 6974 returns. wit\n+00007190: 6820 4c41 5354 2073 6574 2074 6f20 7468 h LAST set to th\n+000071a0: 6520 696e 6465 7820 6f66 2074 6865 206c e index of the l\n+000071b0: 6174 6573 7420 7772 6974 7465 6e20 656c atest written el\n+000071c0: 656d 656e 7420 6f66 2044 4154 412e 0a0a ement of DATA...\n+000071d0: 4558 4345 5054 494f 4e53 0a20 2020 2020 EXCEPTIONS. \n+000071e0: 2743 6f6e 6e65 6374 696f 6e5f 436c 6f73 'Connection_Clos\n+000071f0: 6564 2750 6565 7220 6861 7320 636c 6f73 ed'Peer has clos\n+00007200: 6564 2074 6865 2063 6f6e 6e65 6374 696f ed the connectio\n+00007210: 6e20 6265 666f 7265 0a20 2020 2020 2020 n before. \n+00007220: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00007230: 2073 656e 6469 6e67 2061 6e79 2064 6174 sending any dat\n+00007240: 610a 0a53 4545 2041 4c53 4f0a 2020 2020 a..SEE ALSO. \n+00007250: 202a 6e6f 7465 2047 6574 5f4c 696e 6520 *note Get_Line \n+00007260: 2866 756e 6374 696f 6e29 3a3a 2c0a 2020 (function)::,. \n+00007270: 2020 202a 6e6f 7465 2047 6574 5f4c 696e *note Get_Lin\n+00007280: 6520 2870 726f 6365 6475 7265 293a 3a2c e (procedure)::,\n+00007290: 0a20 2020 2020 2a6e 6f74 6520 5265 6365 . *note Rece\n+000072a0: 6976 6520 2866 756e 6374 696f 6e29 3a3a ive (function)::\n+000072b0: 2c0a 2020 2020 202a 6e6f 7465 2052 6563 ,. *note Rec\n+000072c0: 6569 7665 2028 7072 6f63 6564 7572 6529 eive (procedure)\n+000072d0: 3a3a 2e0a 0a1f 0a46 696c 653a 2061 6461 ::.....File: ada\n+000072e0: 736f 636b 6574 732e 696e 666f 2c20 204e sockets.info, N\n+000072f0: 6f64 653a 2053 656e 6420 2870 726f 6365 ode: Send (proce\n+00007300: 6475 7265 292c 2020 4e65 7874 3a20 5365 dure), Next: Se\n+00007310: 745f 4275 6666 6572 2028 7072 6f63 6564 t_Buffer (proced\n+00007320: 7572 6529 2c20 2050 7265 763a 2052 6563 ure), Prev: Rec\n+00007330: 6569 7665 5f53 6f6d 6520 2870 726f 6365 eive_Some (proce\n+00007340: 6475 7265 292c 2020 5570 3a20 4163 6365 dure), Up: Acce\n+00007350: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n+00007360: 6475 7265 290a 0a53 656e 6420 2870 726f dure)..Send (pro\n+00007370: 6365 6475 7265 290a 2d2d 2d2d 2d2d 2d2d cedure).--------\n+00007380: 2d2d 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 --------..PURPOS\n+00007390: 450a 2020 2020 2053 656e 6420 7261 7720 E. Send raw \n+000073a0: 6461 7461 206f 7665 7220 6120 736f 636b data over a sock\n+000073b0: 6574 0a50 524f 544f 5459 5045 0a20 2020 et.PROTOTYPE. \n+000073c0: 2020 202d 2d20 536f 636b 6574 732e 5365 -- Sockets.Se\n+000073d0: 6e64 3a20 7072 6f63 6564 7572 6520 5365 nd: procedure Se\n+000073e0: 6e64 2028 534f 434b 4554 203a 2053 6f63 nd (SOCKET : Soc\n+000073f0: 6b65 745f 4644 3b0a 2020 2020 2020 2020 ket_FD;. \n+00007400: 2020 2020 2020 2044 4154 4120 3a20 6f75 DATA : ou\n+00007410: 7420 4164 612e 5374 7265 616d 732e 5374 t Ada.Streams.St\n+00007420: 7265 616d 5f45 6c65 6d65 6e74 5f41 7272 ream_Element_Arr\n+00007430: 6179 293b 0a0a 5041 5241 4d45 5445 5253 ay);..PARAMETERS\n+00007440: 0a20 2020 2020 534f 434b 4554 2020 2020 . SOCKET \n+00007450: 2069 6e20 2020 2020 2020 2020 496e 6974 in Init\n+00007460: 6961 6c69 7a65 6420 616e 6420 636f 6e6e ialized and conn\n+00007470: 6563 7465 6420 736f 636b 6574 206f 626a ected socket obj\n+00007480: 6563 740a 2020 2020 2044 4154 4120 2020 ect. DATA \n+00007490: 2020 2020 6f75 7420 2020 2020 2020 2044 out D\n+000074a0: 6174 6120 746f 2062 6520 7365 6e74 0a0a ata to be sent..\n+000074b0: 4445 5343 5249 5054 494f 4e0a 2020 2020 DESCRIPTION. \n+000074c0: 2054 6869 7320 7072 6f63 6564 7572 6520 This procedure \n+000074d0: 7365 6e64 7320 6461 7461 206f 7665 7220 sends data over \n+000074e0: 6120 636f 6e6e 6563 7465 6420 6f75 7467 a connected outg\n+000074f0: 6f69 6e67 2073 6f63 6b65 7420 6f72 206f oing socket or o\n+00007500: 7665 720a 2020 2020 2061 6e20 696e 636f ver. an inco\n+00007510: 6d69 6e67 2073 6f63 6b65 742e 0a0a 4558 ming socket...EX\n+00007520: 4345 5054 494f 4e53 0a20 2020 2020 2743 CEPTIONS. 'C\n+00007530: 6f6e 6e65 6374 696f 6e5f 436c 6f73 6564 onnection_Closed\n+00007540: 2750 6565 7220 6861 7320 7072 656d 6174 'Peer has premat\n+00007550: 7572 656c 7920 636c 6f73 6564 2074 6865 urely closed the\n+00007560: 2063 6f6e 6e65 6374 696f 6e0a 0a53 4545 connection..SEE\n+00007570: 2041 4c53 4f0a 2020 2020 202a 6e6f 7465 ALSO. *note\n+00007580: 2050 7574 2028 7072 6f63 6564 7572 6529 Put (procedure)\n+00007590: 3a3a 2c0a 2020 2020 202a 6e6f 7465 2050 ::,. *note P\n+000075a0: 7574 5f4c 696e 6520 2870 726f 6365 6475 ut_Line (procedu\n+000075b0: 7265 293a 3a2e 0a0a 1f0a 4669 6c65 3a20 re)::.....File: \n+000075c0: 6164 6173 6f63 6b65 7473 2e69 6e66 6f2c adasockets.info,\n+000075d0: 2020 4e6f 6465 3a20 5365 745f 4275 6666 Node: Set_Buff\n+000075e0: 6572 2028 7072 6f63 6564 7572 6529 2c20 er (procedure), \n+000075f0: 204e 6578 743a 2053 6574 736f 636b 6f70 Next: Setsockop\n+00007600: 7420 2870 726f 6365 6475 7265 292c 2020 t (procedure), \n+00007610: 5072 6576 3a20 5365 6e64 2028 7072 6f63 Prev: Send (proc\n+00007620: 6564 7572 6529 2c20 2055 703a 2041 6363 edure), Up: Acc\n+00007630: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n+00007640: 6564 7572 6529 0a0a 5365 745f 4275 6666 edure)..Set_Buff\n+00007650: 6572 2028 7072 6f63 6564 7572 6529 0a2d er (procedure).-\n+00007660: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+00007670: 2d2d 2d2d 2d0a 0a50 5552 504f 5345 0a20 -----..PURPOSE. \n+00007680: 2020 2020 496e 7374 616c 6c20 6120 6c69 Install a li\n+00007690: 6e65 2d6f 7269 656e 7465 6420 6275 6666 ne-oriented buff\n+000076a0: 6572 206f 6620 7468 6520 736f 636b 6574 er of the socket\n+000076b0: 206f 626a 6563 740a 5052 4f54 4f54 5950 object.PROTOTYP\n+000076c0: 450a 2020 2020 2020 2d2d 2053 6f63 6b65 E. -- Socke\n+000076d0: 7473 2e53 6574 5f42 7566 6665 723a 2070 ts.Set_Buffer: p\n+000076e0: 726f 6365 6475 7265 2053 6574 5f42 7566 rocedure Set_Buf\n+000076f0: 6665 720a 2020 2020 2020 2020 2020 2020 fer. \n+00007700: 2020 2028 534f 434b 4554 203a 2053 6f63 (SOCKET : Soc\n+00007710: 6b65 745f 4644 2743 6c61 7373 3b20 4c45 ket_FD'Class; LE\n+00007720: 4e47 5448 203a 2050 6f73 6974 6976 6520 NGTH : Positive \n+00007730: 3a3d 2031 3530 3029 3b0a 0a50 4152 414d := 1500);..PARAM\n+00007740: 4554 4552 530a 2020 2020 2053 4f43 4b45 ETERS. SOCKE\n+00007750: 5420 2020 2020 696e 2020 2020 2020 2020 T in \n+00007760: 2049 6e69 7469 616c 697a 6564 2061 6e64 Initialized and\n+00007770: 2063 6f6e 6e65 6374 6564 2073 6f63 6b65 connected socke\n+00007780: 7420 6f62 6a65 6374 0a20 2020 2020 4c45 t object. LE\n+00007790: 4e47 5448 2020 2020 2069 6e20 2020 2020 NGTH in \n+000077a0: 2020 2020 5369 7a65 2069 6e20 6279 7465 Size in byte\n+000077b0: 7320 6f66 2074 6865 206e 6577 6c79 2069 s of the newly i\n+000077c0: 6e73 7461 6c6c 6564 0a20 2020 2020 2020 nstalled. \n+000077d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000077e0: 2020 2020 6275 6666 6572 0a0a 4445 5343 buffer..DESC\n+000077f0: 5249 5054 494f 4e0a 2020 2020 2054 6869 RIPTION. Thi\n+00007800: 7320 7072 6f63 6564 7572 6520 7075 7473 s procedure puts\n+00007810: 2074 6865 2073 6f63 6b65 7420 6f62 6a65 the socket obje\n+00007820: 6374 2069 6e20 6275 6666 6572 6564 206d ct in buffered m\n+00007830: 6f64 652e 2020 4966 2074 6865 0a20 2020 ode. If the. \n+00007840: 2020 736f 636b 6574 2077 6173 2061 6c72 socket was alr\n+00007850: 6561 6479 2062 7566 6665 7265 642c 2074 eady buffered, t\n+00007860: 6865 2063 6f6e 7465 6e74 206f 6620 7468 he content of th\n+00007870: 6520 7072 6576 696f 7573 2062 7566 6665 e previous buffe\n+00007880: 720a 2020 2020 2077 696c 6c20 6265 206c r. will be l\n+00007890: 6f73 742e 2020 5468 6520 6275 6666 6572 ost. The buffer\n+000078a0: 6564 206d 6f64 6520 6f6e 6c79 2061 6666 ed mode only aff\n+000078b0: 6563 7473 2063 6861 7261 6374 6572 2d20 ects character- \n+000078c0: 616e 640a 2020 2020 206c 696e 652d 6f72 and. line-or\n+000078d0: 6965 6e74 6564 2072 6561 6420 6f70 6572 iented read oper\n+000078e0: 6174 696f 6e20 7375 6368 2061 7320 2a6e ation such as *n\n+000078f0: 6f74 6520 4765 7420 2866 756e 6374 696f ote Get (functio\n+00007900: 6e29 3a3a 2c20 2a6e 6f74 650a 2020 2020 n)::, *note. \n+00007910: 2047 6574 5f43 6861 7220 2866 756e 6374 Get_Char (funct\n+00007920: 696f 6e29 3a3a 2c20 616e 6420 2a6e 6f74 ion)::, and *not\n+00007930: 6520 4765 745f 4c69 6e65 2028 6675 6e63 e Get_Line (func\n+00007940: 7469 6f6e 293a 3a2e 2020 4f74 6865 720a tion)::. Other.\n+00007950: 2020 2020 2072 6563 6570 7469 6f6e 2073 reception s\n+00007960: 7562 7072 6f67 7261 6d73 2077 696c 6c20 ubprograms will \n+00007970: 6e6f 7420 6675 6e63 7469 6f6e 2070 726f not function pro\n+00007980: 7065 726c 7920 6966 2062 7566 6665 7265 perly if buffere\n+00007990: 6420 6d6f 6465 0a20 2020 2020 6973 2075 d mode. is u\n+000079a0: 7365 6420 6174 2074 6865 2073 616d 6520 sed at the same \n+000079b0: 7469 6d65 2e0a 0a20 2020 2020 5468 6520 time... The \n+000079c0: 7369 7a65 206f 6620 7468 6520 6275 6666 size of the buff\n+000079d0: 6572 2068 6173 2074 6f20 6265 2067 7265 er has to be gre\n+000079e0: 6174 6572 2074 6861 6e20 7468 6520 6269 ater than the bi\n+000079f0: 6767 6573 7420 706f 7373 6962 6c65 0a20 ggest possible. \n+00007a00: 2020 2020 7061 636b 6574 2073 656e 7420 packet sent \n+00007a10: 6279 2074 6865 2072 656d 6f74 6520 686f by the remote ho\n+00007a20: 7374 2c20 6f74 6865 7277 6973 6520 6461 st, otherwise da\n+00007a30: 7461 206c 6f73 7320 6d61 7920 6f63 6375 ta loss may occu\n+00007a40: 722e 0a0a 5345 4520 414c 534f 0a20 2020 r...SEE ALSO. \n+00007a50: 2020 2a6e 6f74 6520 556e 7365 745f 4275 *note Unset_Bu\n+00007a60: 6666 6572 2028 7072 6f63 6564 7572 6529 ffer (procedure)\n+00007a70: 3a3a 2e0a 0a1f 0a46 696c 653a 2061 6461 ::.....File: ada\n+00007a80: 736f 636b 6574 732e 696e 666f 2c20 204e sockets.info, N\n+00007a90: 6f64 653a 2053 6574 736f 636b 6f70 7420 ode: Setsockopt \n+00007aa0: 2870 726f 6365 6475 7265 292c 2020 4e65 (procedure), Ne\n+00007ab0: 7874 3a20 5368 7574 646f 776e 2028 7072 xt: Shutdown (pr\n+00007ac0: 6f63 6564 7572 6529 2c20 2050 7265 763a ocedure), Prev:\n+00007ad0: 2053 6574 5f42 7566 6665 7220 2870 726f Set_Buffer (pro\n+00007ae0: 6365 6475 7265 292c 2020 5570 3a20 4163 cedure), Up: Ac\n+00007af0: 6365 7074 5f53 6f63 6b65 7420 2870 726f cept_Socket (pro\n+00007b00: 6365 6475 7265 290a 0a53 6574 736f 636b cedure)..Setsock\n+00007b10: 6f70 7420 2870 726f 6365 6475 7265 290a opt (procedure).\n+00007b20: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+00007b30: 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 450a ------..PURPOSE.\n+00007b40: 2020 2020 2053 6574 2061 2073 6f63 6b65 Set a socke\n+00007b50: 7420 6f70 7469 6f6e 0a50 524f 544f 5459 t option.PROTOTY\n+00007b60: 5045 0a20 2020 2020 202d 2d20 536f 636b PE. -- Sock\n+00007b70: 6574 732e 5365 7473 6f63 6b6f 7074 3a20 ets.Setsockopt: \n+00007b80: 7072 6f63 6564 7572 6520 5365 7473 6f63 procedure Setsoc\n+00007b90: 6b6f 7074 2028 534f 434b 4554 203a 2053 kopt (SOCKET : S\n+00007ba0: 6f63 6b65 745f 4644 3b0a 2020 2020 2020 ocket_FD;. \n+00007bb0: 2020 2020 2020 2020 204c 4556 454c 203a LEVEL :\n+00007bc0: 2053 6f63 6b65 745f 4c65 7665 6c20 3a3d Socket_Level :=\n+00007bd0: 2053 4f4c 5f53 4f43 4b45 543b 0a20 2020 SOL_SOCKET;. \n+00007be0: 2020 2020 2020 2020 2020 2020 4f50 544e OPTN\n+00007bf0: 414d 4520 3a20 536f 636b 6574 5f4f 7074 AME : Socket_Opt\n+00007c00: 696f 6e3b 204f 5054 5641 4c20 3a20 496e ion; OPTVAL : In\n+00007c10: 7465 6765 7229 3b0a 0a50 4152 414d 4554 teger);..PARAMET\n+00007c20: 4552 530a 2020 2020 2053 4f43 4b45 5420 ERS. SOCKET \n+00007c30: 2020 2020 696e 2020 2020 2020 2020 2049 in I\n+00007c40: 6e69 7469 616c 697a 6564 2061 6e64 2062 nitialized and b\n+00007c50: 6f75 6e64 2073 6f63 6b65 7420 6f62 6a65 ound socket obje\n+00007c60: 6374 0a20 2020 2020 4c45 5645 4c20 2020 ct. LEVEL \n+00007c70: 2020 2069 6e20 2020 2020 2020 2020 5072 in Pr\n+00007c80: 6f74 6f63 6f6c 206c 6576 656c 0a20 2020 otocol level. \n+00007c90: 2020 4f50 544e 414d 4520 2020 2069 6e20 OPTNAME in \n+00007ca0: 2020 2020 2020 2020 4f70 7469 6f6e 206e Option n\n+00007cb0: 616d 650a 2020 2020 204f 5054 5641 4c20 ame. OPTVAL \n+00007cc0: 2020 2020 696e 2020 2020 2020 2020 204f in O\n+00007cd0: 7074 696f 6e20 7661 6c75 650a 0a44 4553 ption value..DES\n+00007ce0: 4352 4950 5449 4f4e 0a20 2020 2020 5468 CRIPTION. Th\n+00007cf0: 6973 2070 726f 6365 6475 7265 2073 6574 is procedure set\n+00007d00: 7320 6f70 7469 6f6e 7320 6170 706c 6963 s options applic\n+00007d10: 6162 6c65 2074 6f20 6120 736f 636b 6574 able to a socket\n+00007d20: 2e20 2050 6c65 6173 6520 7365 650a 2020 . Please see. \n+00007d30: 2020 2079 6f75 7220 6f70 6572 6174 696e your operatin\n+00007d40: 6720 7379 7374 656d 206d 616e 7561 6c20 g system manual \n+00007d50: 666f 7220 7573 6162 6c65 206c 6576 656c for usable level\n+00007d60: 7320 616e 6420 6f70 7469 6f6e 732e 0a0a s and options...\n+00007d70: 2020 2020 2054 776f 206c 6576 656c 7320 Two levels \n+00007d80: 6172 6520 6465 6669 6e65 643a 2027 534f are defined: 'SO\n+00007d90: 4c5f 534f 434b 4554 2720 2874 6865 2064 L_SOCKET' (the d\n+00007da0: 6566 6175 6c74 2920 616e 640a 2020 2020 efault) and. \n+00007db0: 2027 4950 5052 4f54 4f5f 4950 272e 2020 'IPPROTO_IP'. \n+00007dc0: 5468 6520 6f70 7469 6f6e 7320 6172 6520 The options are \n+00007dd0: 2753 4f5f 5245 5553 4541 4444 5227 2c20 'SO_REUSEADDR', \n+00007de0: 2753 4f5f 5245 5553 4550 4f52 5427 2c0a 'SO_REUSEPORT',.\n+00007df0: 2020 2020 2027 4950 5f4d 554c 5449 4341 'IP_MULTICA\n+00007e00: 5354 5f54 544c 272c 2027 4950 5f41 4444 ST_TTL', 'IP_ADD\n+00007e10: 5f4d 454d 4245 5253 4849 5027 2c20 2749 _MEMBERSHIP', 'I\n+00007e20: 505f 4452 4f50 5f4d 454d 4245 5253 4849 P_DROP_MEMBERSHI\n+00007e30: 5027 2c0a 2020 2020 2027 4950 5f4d 554c P',. 'IP_MUL\n+00007e40: 5449 4341 5354 5f4c 4f4f 5027 2c20 2753 TICAST_LOOP', 'S\n+00007e50: 4f5f 534e 4442 5546 2720 616e 6420 2749 O_SNDBUF' and 'I\n+00007e60: 505f 5243 5642 5546 272e 0a0a 2020 2020 P_RCVBUF'... \n+00007e70: 204e 6f74 6520 7468 6174 2075 6e6c 696b Note that unlik\n+00007e80: 6520 7468 6569 7220 4320 6c61 6e67 7561 e their C langua\n+00007e90: 6765 2063 6f75 6e74 6572 7061 7274 2c20 ge counterpart, \n+00007ea0: 2747 6574 736f 636b 6f70 7427 2061 6e64 'Getsockopt' and\n+00007eb0: 0a20 2020 2020 2753 6574 736f 636b 6f70 . 'Setsockop\n+00007ec0: 7427 2064 6f20 6e6f 7420 7265 7175 6972 t' do not requir\n+00007ed0: 6520 616e 2065 7874 7261 2070 6172 616d e an extra param\n+00007ee0: 6574 6572 2072 6570 7265 7365 6e74 696e eter representin\n+00007ef0: 6720 7468 650a 2020 2020 206c 656e 6774 g the. lengt\n+00007f00: 6820 696e 2062 7974 6573 206f 6620 7468 h in bytes of th\n+00007f10: 6520 6f70 7469 6f6e 2076 616c 7565 2e20 e option value. \n+00007f20: 2041 6461 536f 636b 6574 7320 6e6f 7773 AdaSockets nows\n+00007f30: 2074 6865 2072 6967 6874 0a20 2020 2020 the right. \n+00007f40: 7369 7a65 2066 6f72 2065 7665 7279 206f size for every o\n+00007f50: 7074 696f 6e2e 0a0a 5345 4520 414c 534f ption...SEE ALSO\n+00007f60: 0a20 2020 2020 2a6e 6f74 6520 4765 7473 . *note Gets\n+00007f70: 6f63 6b6f 7074 2028 7072 6f63 6564 7572 ockopt (procedur\n+00007f80: 6529 3a3a 2e0a 0a1f 0a46 696c 653a 2061 e)::.....File: a\n+00007f90: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n+00007fa0: 204e 6f64 653a 2053 6875 7464 6f77 6e20 Node: Shutdown \n+00007fb0: 2870 726f 6365 6475 7265 292c 2020 4e65 (procedure), Ne\n+00007fc0: 7874 3a20 536f 636b 6574 2028 7072 6f63 xt: Socket (proc\n+00007fd0: 6564 7572 6529 2c20 2050 7265 763a 2053 edure), Prev: S\n+00007fe0: 6574 736f 636b 6f70 7420 2870 726f 6365 etsockopt (proce\n+00007ff0: 6475 7265 292c 2020 5570 3a20 4163 6365 dure), Up: Acce\n+00008000: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n+00008010: 6475 7265 290a 0a53 6875 7464 6f77 6e20 dure)..Shutdown \n+00008020: 2870 726f 6365 6475 7265 290a 2d2d 2d2d (procedure).----\n+00008030: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+00008040: 0a0a 5055 5250 4f53 450a 2020 2020 2053 ..PURPOSE. S\n+00008050: 6875 7464 6f77 6e20 6120 736f 636b 6574 hutdown a socket\n+00008060: 0a50 524f 544f 5459 5045 0a20 2020 2020 .PROTOTYPE. \n+00008070: 202d 2d20 536f 636b 6574 732e 5368 7574 -- Sockets.Shut\n+00008080: 646f 776e 3a20 7072 6f63 6564 7572 6520 down: procedure \n+00008090: 5368 7574 646f 776e 0a20 2020 2020 2020 Shutdown. \n+000080a0: 2020 2020 2020 2020 2853 4f43 4b45 5420 (SOCKET \n+000080b0: 3a20 696e 206f 7574 2053 6f63 6b65 745f : in out Socket_\n+000080c0: 4644 3b20 484f 5720 3a20 5368 7574 646f FD; HOW : Shutdo\n+000080d0: 776e 5f54 7970 6520 3a3d 2042 6f74 6829 wn_Type := Both)\n+000080e0: 3b0a 0a50 4152 414d 4554 4552 530a 2020 ;..PARAMETERS. \n+000080f0: 2020 2053 4f43 4b45 5420 2020 2020 696e SOCKET in\n+00008100: 206f 7574 2020 2020 2053 6f63 6b65 7420 out Socket \n+00008110: 6f62 6a65 6374 2074 6f20 7368 7574 646f object to shutdo\n+00008120: 776e 0a20 2020 2020 484f 5720 2020 2020 wn. HOW \n+00008130: 2020 2069 6e20 2020 2020 2020 2020 4469 in Di\n+00008140: 7265 6374 696f 6e20 746f 2073 6875 7464 rection to shutd\n+00008150: 6f77 6e0a 0a44 4553 4352 4950 5449 4f4e own..DESCRIPTION\n+00008160: 0a20 2020 2020 5468 6973 2070 726f 6365 . This proce\n+00008170: 6475 7265 2073 6875 7464 6f77 6e73 2065 dure shutdowns e\n+00008180: 6974 6865 7220 6469 7265 6374 696f 6e20 ither direction \n+00008190: 6f66 2074 6865 2073 6f63 6b65 742e 2020 of the socket. \n+000081a0: 484f 5720 6361 6e0a 2020 2020 2074 616b HOW can. tak\n+000081b0: 6520 7468 6520 7661 6c75 6520 2753 656e e the value 'Sen\n+000081c0: 6427 2c20 2752 6563 6569 7665 2720 6f72 d', 'Receive' or\n+000081d0: 2027 426f 7468 272e 0a0a 5345 4520 414c 'Both'...SEE AL\n+000081e0: 534f 0a20 2020 2020 2a6e 6f74 6520 536f SO. *note So\n+000081f0: 636b 6574 2028 7072 6f63 6564 7572 6529 cket (procedure)\n+00008200: 3a3a 2e0a 0a1f 0a46 696c 653a 2061 6461 ::.....File: ada\n+00008210: 736f 636b 6574 732e 696e 666f 2c20 204e sockets.info, N\n+00008220: 6f64 653a 2053 6f63 6b65 7420 2870 726f ode: Socket (pro\n+00008230: 6365 6475 7265 292c 2020 4e65 7874 3a20 cedure), Next: \n+00008240: 556e 7365 745f 4275 6666 6572 2028 7072 Unset_Buffer (pr\n+00008250: 6f63 6564 7572 6529 2c20 2050 7265 763a ocedure), Prev:\n+00008260: 2053 6875 7464 6f77 6e20 2870 726f 6365 Shutdown (proce\n+00008270: 6475 7265 292c 2020 5570 3a20 4163 6365 dure), Up: Acce\n+00008280: 7074 5f53 6f63 6b65 7420 2870 726f 6365 pt_Socket (proce\n+00008290: 6475 7265 290a 0a53 6f63 6b65 7420 2870 dure)..Socket (p\n+000082a0: 726f 6365 6475 7265 290a 2d2d 2d2d 2d2d rocedure).------\n+000082b0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 ------------..PU\n+000082c0: 5250 4f53 450a 2020 2020 2043 7265 6174 RPOSE. Creat\n+000082d0: 6520 6120 736f 636b 6574 206f 6620 7468 e a socket of th\n+000082e0: 6520 6769 7665 6e20 6d6f 6465 0a50 524f e given mode.PRO\n+000082f0: 544f 5459 5045 0a20 2020 2020 202d 2d20 TOTYPE. -- \n+00008300: 536f 636b 6574 732e 536f 636b 6574 3a20 Sockets.Socket: \n+00008310: 7072 6f63 6564 7572 6520 536f 636b 6574 procedure Socket\n+00008320: 2028 534f 434b 4554 203a 206f 7574 2053 (SOCKET : out S\n+00008330: 6f63 6b65 745f 4644 3b0a 2020 2020 2020 ocket_FD;. \n+00008340: 2020 2020 2020 2020 2044 4f4d 4149 4e20 DOMAIN \n+00008350: 3a20 536f 636b 6574 5f44 6f6d 6169 6e20 : Socket_Domain \n+00008360: 3a3d 2050 465f 494e 4554 3b0a 2020 2020 := PF_INET;. \n+00008370: 2020 2020 2020 2020 2020 2054 5950 203a TYP :\n+00008380: 2053 6f63 6b65 745f 5479 7065 203a 3d20 Socket_Type := \n+00008390: 534f 434b 5f53 5452 4541 4d29 3b0a 0a50 SOCK_STREAM);..P\n+000083a0: 4152 414d 4554 4552 530a 2020 2020 2053 ARAMETERS. S\n+000083b0: 4f43 4b45 5420 2020 2020 6f75 7420 2020 OCKET out \n+000083c0: 2020 2020 2053 6f63 6b65 7420 6f62 6a65 Socket obje\n+000083d0: 6374 2074 6f20 696e 6974 6961 6c69 7a65 ct to initialize\n+000083e0: 0a20 2020 2020 444f 4d41 494e 2020 2020 . DOMAIN \n+000083f0: 2069 6e20 2020 2020 2020 2020 5072 6f74 in Prot\n+00008400: 6f63 6f6c 2066 616d 696c 790a 2020 2020 ocol family. \n+00008410: 2054 5950 2020 2020 2020 2020 696e 2020 TYP in \n+00008420: 2020 2020 2020 204b 696e 6420 6f66 2073 Kind of s\n+00008430: 6f63 6b65 7473 0a0a 4445 5343 5249 5054 ockets..DESCRIPT\n+00008440: 494f 4e0a 2020 2020 2054 6869 7320 7072 ION. This pr\n+00008450: 6f63 6564 7572 6520 696e 6974 6961 6c69 ocedure initiali\n+00008460: 7a65 7320 6120 6e65 7720 736f 636b 6574 zes a new socket\n+00008470: 206f 626a 6563 7420 6279 2072 6573 6572 object by reser\n+00008480: 7669 6e67 2061 2066 696c 650a 2020 2020 ving a file. \n+00008490: 2064 6573 6372 6970 746f 7220 746f 2074 descriptor to t\n+000084a0: 6865 206f 7065 7261 7469 6e67 2073 7973 he operating sys\n+000084b0: 7465 6d2e 2020 466f 7220 6261 636b 7761 tem. For backwa\n+000084c0: 7264 2063 6f6d 7061 7469 6269 6c69 7479 rd compatibility\n+000084d0: 0a20 2020 2020 7769 7468 206f 6c64 6572 . with older\n+000084e0: 2076 6572 7369 6f6e 7320 6f66 2074 6869 versions of thi\n+000084f0: 7320 6c69 6272 6172 792c 2027 4146 5f49 s library, 'AF_I\n+00008500: 4e45 5427 2069 7320 7374 696c 6c20 6163 NET' is still ac\n+00008510: 6365 7074 6564 2061 730a 2020 2020 2061 cepted as. a\n+00008520: 2076 616c 7565 2062 7574 2073 686f 756c value but shoul\n+00008530: 6420 6265 2072 6570 6c61 6365 6420 6173 d be replaced as\n+00008540: 2073 6f6f 6e20 6173 2070 6f73 7369 626c soon as possibl\n+00008550: 6520 7769 7468 2074 6865 2070 726f 7065 e with the prope\n+00008560: 720a 2020 2020 2027 5046 5f49 4e45 5427 r. 'PF_INET'\n+00008570: 2e20 2055 7369 6e67 2027 534f 434b 5f53 . Using 'SOCK_S\n+00008580: 5452 4541 4d27 2066 6f72 2074 6865 2054 TREAM' for the T\n+00008590: 5950 2061 7267 756d 656e 7420 7769 6c6c YP argument will\n+000085a0: 2063 7265 6174 6520 610a 2020 2020 2054 create a. T\n+000085b0: 4350 2073 6f63 6b65 7420 7768 696c 6520 CP socket while \n+000085c0: 6120 2753 4f43 4b5f 4447 5241 4d27 2077 a 'SOCK_DGRAM' w\n+000085d0: 696c 6c20 6372 6561 7465 2061 2055 4450 ill create a UDP\n+000085e0: 206f 6e65 2e0a 0a45 5841 4d50 4c45 0a20 one...EXAMPLE. \n+000085f0: 2020 2020 2020 2020 2064 6563 6c61 7265 declare\n+00008600: 0a20 2020 2020 2020 2020 2020 2020 536f . So\n+00008610: 636b 203a 2053 6f63 6b65 745f 4644 3b0a ck : Socket_FD;.\n+00008620: 2020 2020 2020 2020 2020 6265 6769 6e0a begin.\n+00008630: 2020 2020 2020 2020 2020 2020 202d 2d20 -- \n+00008640: 4372 6561 7465 2061 2054 4350 2073 6f63 Create a TCP soc\n+00008650: 6b65 740a 2020 2020 2020 2020 2020 2020 ket. \n+00008660: 2053 6f63 6b65 7420 2853 6f63 6b2c 2050 Socket (Sock, P\n+00008670: 465f 494e 4554 2c20 534f 434b 5f53 5452 F_INET, SOCK_STR\n+00008680: 4541 4d29 3b0a 2020 2020 2020 2020 2020 EAM);. \n+00008690: 2020 202d 2d20 5065 7266 6f72 6d20 736f -- Perform so\n+000086a0: 6d65 206f 7065 7261 7469 6f6e 7320 6f6e me operations on\n+000086b0: 2073 6f63 6b65 740a 2020 2020 2020 2020 socket. \n+000086c0: 2020 2020 205b 2e2e 2e5d 0a20 2020 2020 [...]. \n+000086d0: 2020 2020 2020 2020 2d2d 2053 6875 7464 -- Shutd\n+000086e0: 6f77 6e20 7468 6520 736f 636b 6574 2069 own the socket i\n+000086f0: 6e20 626f 7468 2064 6972 6563 7469 6f6e n both direction\n+00008700: 730a 2020 2020 2020 2020 2020 2020 2053 s. S\n+00008710: 6875 7464 6f77 6e20 2853 6f63 6b2c 2042 hutdown (Sock, B\n+00008720: 6f74 6829 3b0a 2020 2020 2020 2020 2020 oth);. \n+00008730: 656e 643b 0a0a 5345 4520 414c 534f 0a20 end;..SEE ALSO. \n+00008740: 2020 2020 2a6e 6f74 6520 5368 7574 646f *note Shutdo\n+00008750: 776e 2028 7072 6f63 6564 7572 6529 3a3a wn (procedure)::\n+00008760: 2e0a 0a1f 0a46 696c 653a 2061 6461 736f .....File: adaso\n+00008770: 636b 6574 732e 696e 666f 2c20 204e 6f64 ckets.info, Nod\n+00008780: 653a 2055 6e73 6574 5f42 7566 6665 7220 e: Unset_Buffer \n+00008790: 2870 726f 6365 6475 7265 292c 2020 5072 (procedure), Pr\n+000087a0: 6576 3a20 536f 636b 6574 2028 7072 6f63 ev: Socket (proc\n+000087b0: 6564 7572 6529 2c20 2055 703a 2041 6363 edure), Up: Acc\n+000087c0: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n+000087d0: 6564 7572 6529 0a0a 556e 7365 745f 4275 edure)..Unset_Bu\n+000087e0: 6666 6572 2028 7072 6f63 6564 7572 6529 ffer (procedure)\n+000087f0: 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d .---------------\n+00008800: 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 5552 504f ---------..PURPO\n+00008810: 5345 0a20 2020 2020 4465 696e 7374 616c SE. Deinstal\n+00008820: 6c20 7468 6520 6c69 6e65 2d6f 7269 656e l the line-orien\n+00008830: 7465 6420 6275 6666 6572 206f 6620 7468 ted buffer of th\n+00008840: 6520 736f 636b 6574 206f 626a 6563 740a e socket object.\n+00008850: 5052 4f54 4f54 5950 450a 2020 2020 2020 PROTOTYPE. \n+00008860: 2d2d 2053 6f63 6b65 7473 2e55 6e73 6574 -- Sockets.Unset\n+00008870: 5f42 7566 6665 723a 2070 726f 6365 6475 _Buffer: procedu\n+00008880: 7265 2055 6e73 6574 5f42 7566 6665 720a re Unset_Buffer.\n+00008890: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+000088a0: 534f 434b 4554 203a 2053 6f63 6b65 745f SOCKET : Socket_\n+000088b0: 4644 2743 6c61 7373 293b 0a0a 5041 5241 FD'Class);..PARA\n+000088c0: 4d45 5445 5253 0a20 2020 2020 534f 434b METERS. SOCK\n+000088d0: 4554 2020 2020 2069 6e20 2020 2020 2020 ET in \n+000088e0: 2020 496e 6974 6961 6c69 7a65 6420 616e Initialized an\n+000088f0: 6420 636f 6e6e 6563 7465 6420 736f 636b d connected sock\n+00008900: 6574 206f 626a 6563 740a 0a44 4553 4352 et object..DESCR\n+00008910: 4950 5449 4f4e 0a20 2020 2020 5468 6973 IPTION. This\n+00008920: 2070 726f 6365 6475 7265 2064 6569 6e73 procedure deins\n+00008930: 7461 6c6c 7320 7468 6520 6275 6666 6572 talls the buffer\n+00008940: 2070 7265 7669 6f75 736c 7920 696e 7374 previously inst\n+00008950: 616c 6c65 6420 6279 202a 6e6f 7465 0a20 alled by *note. \n+00008960: 2020 2020 5365 745f 4275 6666 6572 2028 Set_Buffer (\n+00008970: 7072 6f63 6564 7572 6529 3a3a 2e20 2049 procedure)::. I\n+00008980: 6620 616e 7920 6461 7461 2069 7320 7374 f any data is st\n+00008990: 696c 6c20 7072 6573 656e 7420 696e 2074 ill present in t\n+000089a0: 6865 0a20 2020 2020 6275 6666 6572 2c20 he. buffer, \n+000089b0: 6974 2077 696c 6c20 6265 206c 6f73 742e it will be lost.\n+000089c0: 2020 546f 2061 766f 6964 2074 6869 7320 To avoid this \n+000089d0: 7369 7475 6174 696f 6e2c 2074 6865 2062 situation, the b\n+000089e0: 7566 6665 7220 6361 6e0a 2020 2020 2062 uffer can. b\n+000089f0: 6520 666c 7573 6865 6420 6279 2063 616c e flushed by cal\n+00008a00: 6c69 6e67 202a 6e6f 7465 2047 6574 2028 ling *note Get (\n+00008a10: 6675 6e63 7469 6f6e 293a 3a2e 0a0a 1f0a function)::.....\n+00008a20: 4669 6c65 3a20 6164 6173 6f63 6b65 7473 File: adasockets\n+00008a30: 2e69 6e66 6f2c 2020 4e6f 6465 3a20 536f .info, Node: So\n+00008a40: 636b 6574 732e 4d75 6c74 6963 6173 7420 ckets.Multicast \n+00008a50: 7061 636b 6167 652c 2020 4e65 7874 3a20 package, Next: \n+00008a60: 536f 636b 6574 732e 4e61 6d69 6e67 2070 Sockets.Naming p\n+00008a70: 6163 6b61 6765 2c20 2050 7265 763a 2053 ackage, Prev: S\n+00008a80: 6f63 6b65 7473 2070 6163 6b61 6765 2c20 ockets package, \n+00008a90: 2055 703a 2054 6f70 0a0a 3520 536f 636b Up: Top..5 Sock\n+00008aa0: 6574 732e 4d75 6c74 6963 6173 7420 7061 ets.Multicast pa\n+00008ab0: 636b 6167 650a 2a2a 2a2a 2a2a 2a2a 2a2a ckage.**********\n+00008ac0: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a ****************\n+00008ad0: 2a0a 0a54 6865 2027 536f 636b 6574 732e *..The 'Sockets.\n+00008ae0: 4d75 6c74 6963 6173 7427 2061 6c6c 6f77 Multicast' allow\n+00008af0: 7320 7468 6520 6372 6561 7469 6f6e 206f s the creation o\n+00008b00: 6620 4950 206d 756c 7469 6361 7374 2073 f IP multicast s\n+00008b10: 6f63 6b65 7473 2e0a 0a20 2d2d 2053 6f63 ockets... -- Soc\n+00008b20: 6b65 7473 2e4d 756c 7469 6361 7374 2e4d kets.Multicast.M\n+00008b30: 756c 7469 6361 7374 5f53 6f63 6b65 745f ulticast_Socket_\n+00008b40: 4644 3a20 7479 7065 204d 756c 7469 6361 FD: type Multica\n+00008b50: 7374 5f53 6f63 6b65 745f 4644 2069 730a st_Socket_FD is.\n+00008b60: 2020 2020 2020 2020 2020 6e65 7720 536f new So\n+00008b70: 636b 6574 5f46 4420 7769 7468 2070 7269 cket_FD with pri\n+00008b80: 7661 7465 3b0a 2020 2020 2054 6865 2027 vate;. The '\n+00008b90: 4d75 6c74 6963 6173 745f 536f 636b 6574 Multicast_Socket\n+00008ba0: 5f46 4427 2074 6167 6765 6420 7479 7065 _FD' tagged type\n+00008bb0: 2064 6572 6976 6573 2066 726f 6d20 7468 derives from th\n+00008bc0: 6520 2753 6f63 6b65 745f 4644 270a 2020 e 'Socket_FD'. \n+00008bd0: 2020 2074 7970 652e 2020 4974 2067 6574 type. It get\n+00008be0: 7320 696e 6974 6961 6c69 7a65 6420 6279 s initialized by\n+00008bf0: 2063 616c 6c69 6e67 202a 6e6f 7465 2043 calling *note C\n+00008c00: 7265 6174 655f 4d75 6c74 6963 6173 745f reate_Multicast_\n+00008c10: 536f 636b 6574 0a20 2020 2020 2866 756e Socket. (fun\n+00008c20: 6374 696f 6e29 3a3a 2e20 2041 6e20 756e ction)::. An un\n+00008c30: 696e 6974 6961 6c69 7a65 6420 274d 756c initialized 'Mul\n+00008c40: 7469 6361 7374 5f53 6f63 6b65 745f 4644 ticast_Socket_FD\n+00008c50: 2720 6361 6e20 6265 0a20 2020 2020 7375 ' can be. su\n+00008c60: 6363 6573 6675 6c6c 7920 636f 6d70 6172 ccesfully compar\n+00008c70: 6564 2074 6f20 274e 756c 6c5f 4d75 6c74 ed to 'Null_Mult\n+00008c80: 6963 6173 745f 536f 636b 6574 5f46 4427 icast_Socket_FD'\n+00008c90: 2e0a 0a2a 204d 656e 753a 0a0a 2a20 4372 ...* Menu:..* Cr\n+00008ca0: 6561 7465 5f4d 756c 7469 6361 7374 5f53 eate_Multicast_S\n+00008cb0: 6f63 6b65 7420 2866 756e 6374 696f 6e29 ocket (function)\n+00008cc0: 3a3a 0a20 2020 2020 2020 2020 2020 2020 ::. \n+00008cd0: 2020 2020 2020 2020 2020 2043 7265 6174 Creat\n+00008ce0: 6520 616e 2049 5020 6d75 6c74 6963 6173 e an IP multicas\n+00008cf0: 7420 736f 636b 6574 0a2a 2043 7265 6174 t socket.* Creat\n+00008d00: 655f 4d75 6c74 6963 6173 745f 536f 636b e_Multicast_Sock\n+00008d10: 6574 2028 6675 6e63 7469 6f6e 293a 3a0a et (function)::.\n+00008d20: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00008d30: 2020 2020 2020 2020 4372 6561 7465 2061 Create a\n+00008d40: 6e20 4950 206d 756c 7469 6361 7374 2073 n IP multicast s\n+00008d50: 6f63 6b65 740a 0a1f 0a46 696c 653a 2061 ocket....File: a\n+00008d60: 6461 736f 636b 6574 732e 696e 666f 2c20 dasockets.info, \n+00008d70: 204e 6f64 653a 2043 7265 6174 655f 4d75 Node: Create_Mu\n+00008d80: 6c74 6963 6173 745f 536f 636b 6574 2028 lticast_Socket (\n+00008d90: 6675 6e63 7469 6f6e 292c 2020 4e65 7874 function), Next\n+00008da0: 3a20 4372 6561 7465 5f4d 756c 7469 6361 : Create_Multica\n+00008db0: 7374 5f53 6f63 6b65 7420 2866 756e 6374 st_Socket (funct\n+00008dc0: 696f 6e29 2c20 2050 7265 763a 2043 7265 ion), Prev: Cre\n+00008dd0: 6174 655f 4d75 6c74 6963 6173 745f 536f ate_Multicast_So\n+00008de0: 636b 6574 2028 6675 6e63 7469 6f6e 292c cket (function),\n+00008df0: 2020 5570 3a20 536f 636b 6574 732e 4d75 Up: Sockets.Mu\n+00008e00: 6c74 6963 6173 7420 7061 636b 6167 650a lticast package.\n+00008e10: 0a43 7265 6174 655f 4d75 6c74 6963 6173 .Create_Multicas\n+00008e20: 745f 536f 636b 6574 2028 6675 6e63 7469 t_Socket (functi\n+00008e30: 6f6e 290a 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d on).============\n+00008e40: 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d ================\n+00008e50: 3d3d 3d3d 3d3d 0a0a 5055 5250 4f53 450a ======..PURPOSE.\n+00008e60: 2020 2020 2043 7265 6174 6520 616e 2049 Create an I\n+00008e70: 5020 6d75 6c74 6963 6173 7420 736f 636b P multicast sock\n+00008e80: 6574 0a50 524f 544f 5459 5045 0a20 2020 et.PROTOTYPE. \n+00008e90: 2020 202d 2d20 536f 636b 6574 732e 4d75 -- Sockets.Mu\n+00008ea0: 6c74 6963 6173 742e 4372 6561 7465 5f4d lticast.Create_M\n+00008eb0: 756c 7469 6361 7374 5f53 6f63 6b65 743a ulticast_Socket:\n+00008ec0: 2066 756e 6374 696f 6e0a 2020 2020 2020 function. \n+00008ed0: 2020 2020 2020 2020 2043 7265 6174 655f Create_\n+00008ee0: 4d75 6c74 6963 6173 745f 536f 636b 6574 Multicast_Socket\n+00008ef0: 2028 4752 4f55 5020 3a20 5374 7269 6e67 (GROUP : String\n+00008f00: 3b20 504f 5254 203a 204e 6174 7572 616c ; PORT : Natural\n+00008f10: 3b0a 2020 2020 2020 2020 2020 2020 2020 ;. \n+00008f20: 2054 544c 203a 2050 6f73 6974 6976 6520 TTL : Positive \n+00008f30: 3a3d 2031 363b 2053 454c 465f 4c4f 4f50 := 16; SELF_LOOP\n+00008f40: 203a 2042 6f6f 6c65 616e 203a 3d20 5472 : Boolean := Tr\n+00008f50: 7565 3b0a 2020 2020 2020 2020 2020 2020 ue;. \n+00008f60: 2020 204c 4f43 414c 5f49 4620 3a20 5374 LOCAL_IF : St\n+00008f70: 7269 6e67 203a 3d20 302e 302e 302e 3029 ring := 0.0.0.0)\n+00008f80: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+00008f90: 7265 7475 726e 204d 756c 7469 6361 7374 return Multicast\n+00008fa0: 5f53 6f63 6b65 745f 4644 3b0a 0a50 4152 _Socket_FD;..PAR\n+00008fb0: 414d 4554 4552 530a 2020 2020 2047 524f AMETERS. GRO\n+00008fc0: 5550 2020 2020 2020 696e 2020 2020 2020 UP in \n+00008fd0: 2020 2049 5020 6164 6472 6573 7320 6f66 IP address of\n+00008fe0: 2074 6865 206d 756c 7469 6361 7374 2067 the multicast g\n+00008ff0: 726f 7570 2074 6f0a 2020 2020 2020 2020 roup to. \n+00009000: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00009010: 2020 206a 6f69 6e0a 2020 2020 2050 4f52 join. POR\n+00009020: 5420 2020 2020 2020 696e 2020 2020 2020 T in \n+00009030: 2020 2050 6f72 7420 6f66 2074 6865 206d Port of the m\n+00009040: 756c 7469 6361 7374 2067 726f 7570 2074 ulticast group t\n+00009050: 6f20 6a6f 696e 0a20 2020 2020 5454 4c20 o join. TTL \n+00009060: 2020 2020 2020 2069 6e20 2020 2020 2020 in \n+00009070: 2020 5469 6d65 2d74 6f2d 6c69 7665 206f Time-to-live o\n+00009080: 6620 7365 6e74 2070 6163 6b65 7473 0a20 f sent packets. \n+00009090: 2020 2020 5345 4c46 5f4c 4f4f 5020 2069 SELF_LOOP i\n+000090a0: 6e20 2020 2020 2020 2020 5368 6f75 6c64 n Should\n+000090b0: 2074 6865 2073 6f63 6b65 7420 7265 6365 the socket rece\n+000090c0: 6976 6520 7468 6520 7061 636b 6574 730a ive the packets.\n+000090d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000090e0: 2020 2020 2020 2020 2020 2073 656e 7420 sent \n+000090f0: 6672 6f6d 2074 6865 206c 6f63 616c 2068 from the local h\n+00009100: 6f73 743f 0a20 2020 2020 4c4f 4341 4c5f ost?. LOCAL_\n+00009110: 4946 2020 2069 6e20 2020 2020 2020 2020 IF in \n+00009120: 4164 6472 6573 7320 6f66 2074 6865 206c Address of the l\n+00009130: 6f63 616c 2069 6e74 6572 6661 6365 2074 ocal interface t\n+00009140: 6f20 7573 650a 0a52 4554 5552 4e20 5641 o use..RETURN VA\n+00009150: 4c55 450a 2020 2020 2054 6865 206e 6577 LUE. The new\n+00009160: 2069 6e69 7469 616c 697a 6564 206d 756c initialized mul\n+00009170: 7469 6361 7374 2073 6f63 6b65 740a 0a44 ticast socket..D\n+00009180: 4553 4352 4950 5449 4f4e 0a20 2020 2020 ESCRIPTION. \n+00009190: 5468 6973 2066 756e 6374 696f 6e20 6372 This function cr\n+000091a0: 6561 7465 7320 616e 2049 5020 6d75 6c74 eates an IP mult\n+000091b0: 6963 6173 7420 736f 636b 6574 2061 7474 icast socket att\n+000091c0: 6163 6865 6420 746f 2061 2067 6976 656e ached to a given\n+000091d0: 0a20 2020 2020 6772 6f75 702c 2069 6465 . group, ide\n+000091e0: 6e74 6966 6965 6420 6279 2069 7473 2063 ntified by its c\n+000091f0: 6c61 7373 2045 2049 5020 6164 6472 6573 lass E IP addres\n+00009200: 7320 616e 6420 706f 7274 2e0a 0a20 2020 s and port... \n+00009210: 2020 4265 2063 6172 6566 756c 2077 6865 Be careful whe\n+00009220: 6e20 6368 6f6f 7369 6e67 2074 6865 2054 n choosing the T\n+00009230: 544c 2070 6172 616d 6574 6572 206f 6620 TL parameter of \n+00009240: 796f 7572 2049 5020 6d75 6c74 6963 6173 your IP multicas\n+00009250: 740a 2020 2020 2073 6f63 6b65 742e 2020 t. socket. \n+00009260: 4d6f 7374 2049 5020 6d75 6c74 6963 6173 Most IP multicas\n+00009270: 7420 726f 7574 6572 7320 646f 2069 6d70 t routers do imp\n+00009280: 6c65 6d65 6e74 2074 6872 6573 686f 6c64 lement threshold\n+00009290: 2d62 6173 6564 0a20 2020 2020 6669 6c74 -based. filt\n+000092a0: 6572 696e 6720 616e 6420 7769 6c6c 206e ering and will n\n+000092b0: 6f74 206c 6574 2049 5020 6d75 6c74 6963 ot let IP multic\n+000092c0: 6173 7420 7061 636b 6574 7320 6c65 6176 ast packets leav\n+000092d0: 6520 796f 7572 0a20 2020 2020 6f72 6761 e your. orga\n+000092e0: 6e69 7a61 7469 6f6e 2069 6620 7468 6520 nization if the \n+000092f0: 5454 4c20 6f6e 2074 6865 206c 6173 7420 TTL on the last \n+00009300: 726f 7574 6572 2069 7320 736d 616c 6c65 router is smalle\n+00009310: 7220 7468 616e 2031 362e 0a0a 2020 2020 r than 16... \n+00009320: 2049 6620 3020 6973 2067 6976 656e 2066 If 0 is given f\n+00009330: 6f72 2074 6865 2050 6f72 742c 2061 206c or the Port, a l\n+00009340: 6f63 616c 206f 6e65 2077 696c 6c20 6265 ocal one will be\n+00009350: 2063 686f 7365 6e2e 2020 4974 2063 616e chosen. It can\n+00009360: 0a20 2020 2020 7468 656e 206c 6174 6572 . then later\n+00009370: 2062 6520 7265 7472 6965 7665 6420 7573 be retrieved us\n+00009380: 696e 6720 4765 745f 536f 636b 5f50 6f72 ing Get_Sock_Por\n+00009390: 742e 0a0a 4558 414d 504c 450a 2020 2020 t...EXAMPLE. \n+000093a0: 2020 2020 2020 6465 636c 6172 650a 2020 declare. \n+000093b0: 2020 2020 2020 2020 2020 2053 6f63 6b20 Sock \n+000093c0: 2020 2020 3a20 536f 636b 6574 5f46 443b : Socket_FD;\n+000093d0: 0a20 2020 2020 2020 2020 2020 2020 496e . In\n+000093e0: 636f 6d69 6e67 203a 2053 6f63 6b65 745f coming : Socket_\n+000093f0: 4644 3b0a 2020 2020 2020 2020 2020 6265 FD;. be\n+00009400: 6769 6e0a 2020 2020 2020 2020 2020 2020 gin. \n+00009410: 202d 2d20 4372 6561 7465 2061 2054 4350 -- Create a TCP\n+00009420: 2073 6f63 6b65 7420 6c69 7374 656e 696e socket listenin\n+00009430: 6720 6f6e 206c 6f63 616c 2070 6f72 7420 g on local port \n+00009440: 3431 3631 0a20 2020 2020 2020 2020 2020 4161. \n+00009450: 2020 536f 636b 6574 2028 536f 636b 2c20 Socket (Sock, \n+00009460: 5046 5f49 4e45 542c 2053 4f43 4b5f 5354 PF_INET, SOCK_ST\n+00009470: 5245 414d 293b 0a20 2020 2020 2020 2020 REAM);. \n+00009480: 2020 2020 4269 6e64 2028 536f 636b 2c20 Bind (Sock, \n+00009490: 3431 3631 293b 0a20 2020 2020 2020 2020 4161);. \n+000094a0: 2020 2020 4c69 7374 656e 2028 536f 636b Listen (Sock\n+000094b0: 2c20 3329 3b0a 2020 2020 2020 2020 2020 , 3);. \n+000094c0: 2020 202d 2d20 4f6e 652d 636f 6e6e 6563 -- One-connec\n+000094d0: 7469 6f6e 2d61 742d 612d 7469 6d65 2073 tion-at-a-time s\n+000094e0: 6572 7665 7220 2833 206d 6179 2062 6520 erver (3 may be \n+000094f0: 7065 6e64 696e 6729 0a20 2020 2020 2020 pending). \n+00009500: 2020 2020 2020 6c6f 6f70 0a20 2020 2020 loop. \n+00009510: 2020 2020 2020 2020 2020 202d 2d20 5761 -- Wa\n+00009520: 6974 2066 6f72 2061 206e 6577 2063 6f6e it for a new con\n+00009530: 6e65 6374 696f 6e20 616e 6420 6163 6365 nection and acce\n+00009540: 7074 2069 740a 2020 2020 2020 2020 2020 pt it. \n+00009550: 2020 2020 2020 4163 6365 7074 5f53 6f63 Accept_Soc\n+00009560: 6b65 7420 2853 6f63 6b2c 2049 6e63 6f6d ket (Sock, Incom\n+00009570: 696e 6729 3b0a 2020 2020 2020 2020 2020 ing);. \n+00009580: 2020 2020 2020 2d2d 2044 6f20 736f 6d65 -- Do some\n+00009590: 2064 6961 6c6f 6720 7769 7468 2074 6865 dialog with the\n+000095a0: 2072 656d 6f74 6520 686f 7374 0a20 2020 remote host. \n+000095b0: 2020 2020 2020 2020 2020 2020 2044 6f5f Do_\n+000095c0: 536f 6d65 5f44 6961 6c6f 6720 2849 6e63 Some_Dialog (Inc\n+000095d0: 6f6d 696e 6729 3b0a 2020 2020 2020 2020 oming);. \n+000095e0: 2020 2020 2020 2020 2d2d 2043 6c6f 7365 -- Close\n+000095f0: 2069 6e63 6f6d 696e 6720 736f 636b 6574 incoming socket\n+00009600: 2061 6e64 2077 6169 7420 666f 7220 6e65 and wait for ne\n+00009610: 7874 2063 6f6e 6e65 6374 696f 6e0a 2020 xt connection. \n+00009620: 2020 2020 2020 2020 2020 2020 2020 5368 Sh\n+00009630: 7574 646f 776e 2028 496e 636f 6d69 6e67 utdown (Incoming\n+00009640: 293b 0a20 2020 2020 2020 2020 2020 2020 );. \n+00009650: 656e 6420 6c6f 6f70 3b0a 2020 2020 2020 end loop;. \n+00009660: 2020 2020 656e 643b 0a0a 5345 4520 414c end;..SEE AL\n+00009670: 534f 0a20 2020 2020 2a6e 6f74 6520 5365 SO. *note Se\n+00009680: 6e64 2028 7072 6f63 6564 7572 6529 3a3a nd (procedure)::\n+00009690: 2c0a 2020 2020 202a 6e6f 7465 2053 6875 ,. *note Shu\n+000096a0: 7464 6f77 6e20 2870 726f 6365 6475 7265 tdown (procedure\n+000096b0: 293a 3a2e 0a0a 2a20 4d65 6e75 3a0a 0a2a )::...* Menu:..*\n+000096c0: 203a 3a0a 0a43 7265 6174 655f 4d75 6c74 ::..Create_Mult\n+000096d0: 6963 6173 745f 536f 636b 6574 2028 6675 icast_Socket (fu\n+000096e0: 6e63 7469 6f6e 290a 2d2d 2d2d 2d2d 2d2d nction).--------\n+000096f0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+00009700: 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 5250 ----------..PURP\n+00009710: 4f53 450a 2020 2020 2043 7265 6174 6520 OSE. Create \n+00009720: 616e 2049 5020 6d75 6c74 6963 6173 7420 an IP multicast \n+00009730: 736f 636b 6574 0a50 524f 544f 5459 5045 socket.PROTOTYPE\n+00009740: 0a20 2020 2020 202d 2d20 536f 636b 6574 . -- Socket\n+00009750: 732e 4d75 6c74 6963 6173 742e 4372 6561 s.Multicast.Crea\n+00009760: 7465 5f4d 756c 7469 6361 7374 5f53 6f63 te_Multicast_Soc\n+00009770: 6b65 743a 2066 756e 6374 696f 6e0a 2020 ket: function. \n+00009780: 2020 2020 2020 2020 2020 2020 2043 7265 Cre\n+00009790: 6174 655f 4d75 6c74 6963 6173 745f 536f ate_Multicast_So\n+000097a0: 636b 6574 2028 4752 4f55 5020 3a20 5374 cket (GROUP : St\n+000097b0: 7269 6e67 3b20 504f 5254 203a 2050 6f73 ring; PORT : Pos\n+000097c0: 6974 6976 653b 0a20 2020 2020 2020 2020 itive;. \n+000097d0: 2020 2020 2020 4c4f 4341 4c5f 504f 5254 LOCAL_PORT\n+000097e0: 203a 204e 6174 7572 616c 3b20 5454 4c20 : Natural; TTL \n+000097f0: 3a20 506f 7369 7469 7665 203a 3d20 3136 : Positive := 16\n+00009800: 3b0a 2020 2020 2020 2020 2020 2020 2020 ;. \n+00009810: 204c 4f43 414c 5f49 4620 3a20 5374 7269 LOCAL_IF : Stri\n+00009820: 6e67 203a 3d20 302e 302e 302e 3029 0a20 ng := 0.0.0.0). \n+00009830: 2020 2020 2020 2020 2020 2020 2020 7265 re\n+00009840: 7475 726e 204d 756c 7469 6361 7374 5f53 turn Multicast_S\n+00009850: 6f63 6b65 745f 4644 3b0a 0a50 4152 414d ocket_FD;..PARAM\n+00009860: 4554 4552 530a 2020 2020 2047 524f 5550 ETERS. GROUP\n+00009870: 2020 2020 2020 696e 2020 2020 2020 2020 in \n+00009880: 2049 5020 6164 6472 6573 7320 6f66 2074 IP address of t\n+00009890: 6865 206d 756c 7469 6361 7374 2067 726f he multicast gro\n+000098a0: 7570 2074 6f0a 2020 2020 2020 2020 2020 up to. \n+000098b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000098c0: 206a 6f69 6e0a 2020 2020 2050 4f52 5420 join. PORT \n+000098d0: 2020 2020 2020 696e 2020 2020 2020 2020 in \n+000098e0: 2050 6f72 7420 6f66 2074 6865 206d 756c Port of the mul\n+000098f0: 7469 6361 7374 2067 726f 7570 2074 6f20 ticast group to \n+00009900: 6a6f 696e 0a20 2020 2020 4c4f 4341 4c5f join. LOCAL_\n+00009910: 504f 5254 2069 6e20 2020 2020 2020 2020 PORT in \n+00009920: 4c6f 6361 6c20 706f 7274 206e 756d 6265 Local port numbe\n+00009930: 7220 746f 2075 7365 0a20 2020 2020 5454 r to use. TT\n+00009940: 4c20 2020 2020 2020 2069 6e20 2020 2020 L in \n+00009950: 2020 2020 5469 6d65 2d74 6f2d 6c69 7665 Time-to-live\n+00009960: 206f 6620 7365 6e74 2070 6163 6b65 7473 of sent packets\n+00009970: 0a20 2020 2020 4c4f 4341 4c5f 4946 2020 . LOCAL_IF \n+00009980: 2069 6e20 2020 2020 2020 2020 4164 6472 in Addr\n+00009990: 6573 7320 6f66 2074 6865 206c 6f63 616c ess of the local\n+000099a0: 2069 6e74 6572 6661 6365 2074 6f20 7573 interface to us\n+000099b0: 650a 0a52 4554 5552 4e20 5641 4c55 450a e..RETURN VALUE.\n+000099c0: 2020 2020 2054 6865 206e 6577 2069 6e69 The new ini\n+000099d0: 7469 616c 697a 6564 206d 756c 7469 6361 tialized multica\n+000099e0: 7374 2073 6f63 6b65 740a 0a44 4553 4352 st socket..DESCR\n+000099f0: 4950 5449 4f4e 0a20 2020 2020 5468 6973 IPTION. This\n+00009a00: 2066 756e 6374 696f 6e20 6372 6561 7465 function create\n+00009a10: 7320 616e 2049 5020 6d75 6c74 6963 6173 s an IP multicas\n+00009a20: 7420 736f 636b 6574 2061 7474 6163 6865 t socket attache\n+00009a30: 6420 746f 2061 2067 6976 656e 0a20 2020 d to a given. \n+00009a40: 2020 6772 6f75 702c 2069 6465 6e74 6966 group, identif\n+00009a50: 6965 6420 6279 2069 7473 2063 6c61 7373 ied by its class\n+00009a60: 2045 2049 5020 6164 6472 6573 7320 616e E IP address an\n+00009a70: 6420 706f 7274 2e20 2049 660a 2020 2020 d port. If. \n+00009a80: 204c 6f63 616c 5f50 6f72 7420 6973 2030 Local_Port is 0\n+00009a90: 2c20 6120 6672 6565 2070 6f72 7420 7769 , a free port wi\n+00009aa0: 6c6c 2061 7574 6f6d 6174 6963 616c 6c79 ll automatically\n+00009ab0: 2062 6520 6368 6f73 656e 2062 7920 796f be chosen by yo\n+00009ac0: 7572 0a20 2020 2020 6f70 6572 6174 696e ur. operatin\n+00009ad0: 6720 7379 7374 656d 2e0a 0a20 2020 2020 g system... \n+00009ae0: 5468 6973 2066 756e 6374 696f 6e20 7368 This function sh\n+00009af0: 6f75 6c64 2062 6520 7573 6564 2077 6865 ould be used whe\n+00009b00: 6e20 796f 7520 7761 6e74 2074 6f20 7365 n you want to se\n+00009b10: 6e64 2070 6163 6b65 7473 2074 6f20 610a nd packets to a.\n+00009b20: 2020 2020 206d 756c 7469 6361 7374 2067 multicast g\n+00009b30: 726f 7570 2077 6974 686f 7574 2072 6563 roup without rec\n+00009b40: 6569 7669 6e67 2061 6e79 2070 6163 6b65 eiving any packe\n+00009b50: 7420 796f 7572 7365 6c66 2e0a 0a45 5841 t yourself...EXA\n+00009b60: 4d50 4c45 0a20 2020 2020 2020 2020 2064 MPLE. d\n+00009b70: 6563 6c61 7265 0a20 2020 2020 2020 2020 eclare. \n+00009b80: 2020 2020 536f 636b 203a 2053 6f63 6b65 Sock : Socke\n+00009b90: 745f 4644 3b0a 2020 2020 2020 2020 2020 t_FD;. \n+00009ba0: 6265 6769 6e0a 2020 2020 2020 2020 2020 begin. \n+00009bb0: 2020 202d 2d20 4372 6561 7465 2061 2054 -- Create a T\n+00009bc0: 4350 2073 6f63 6b65 740a 2020 2020 2020 CP socket. \n+00009bd0: 2020 2020 2020 2053 6f63 6b65 7420 2853 Socket (S\n+00009be0: 6f63 6b2c 2050 465f 494e 4554 2c20 534f ock, PF_INET, SO\n+00009bf0: 434b 5f53 5452 4541 4d29 3b0a 2020 2020 CK_STREAM);. \n+00009c00: 2020 2020 2020 2020 202d 2d20 436f 6e6e -- Conn\n+00009c10: 6563 7420 6974 2074 6f20 7266 6331 3134 ect it to rfc114\n+00009c20: 392e 6e65 7427 7320 6d61 696c 2073 6572 9.net's mail ser\n+00009c30: 7665 720a 2020 2020 2020 2020 2020 2020 ver. \n+00009c40: 2043 6f6e 6e65 6374 2028 536f 636b 2c20 Connect (Sock, \n+00009c50: 226d 6169 6c2e 7266 6331 3134 392e 6e65 \"mail.rfc1149.ne\n+00009c60: 7422 2c20 3235 293b 0a20 2020 2020 2020 t\", 25);. \n+00009c70: 2020 2020 2020 2d2d 2044 6f20 6120 6d61 -- Do a ma\n+00009c80: 696c 2074 7261 6e73 6163 7469 6f6e 2074 il transaction t\n+00009c90: 6865 6e20 636c 6f73 6520 7468 6520 736f hen close the so\n+00009ca0: 636b 6574 0a20 2020 2020 2020 2020 2020 cket. \n+00009cb0: 2020 5b2e 2e2e 5d0a 2020 2020 2020 2020 [...]. \n+00009cc0: 2020 656e 643b 0a0a 5345 4520 414c 534f end;..SEE ALSO\n+00009cd0: 0a20 2020 2020 2a6e 6f74 6520 5365 6e64 . *note Send\n+00009ce0: 2028 7072 6f63 6564 7572 6529 3a3a 2c0a (procedure)::,.\n+00009cf0: 2020 2020 202a 6e6f 7465 2053 6875 7464 *note Shutd\n+00009d00: 6f77 6e20 2870 726f 6365 6475 7265 293a own (procedure):\n+00009d10: 3a2e 0a0a 1f0a 4669 6c65 3a20 6164 6173 :.....File: adas\n+00009d20: 6f63 6b65 7473 2e69 6e66 6f2c 2020 4e6f ockets.info, No\n+00009d30: 6465 3a20 536f 636b 6574 732e 4e61 6d69 de: Sockets.Nami\n+00009d40: 6e67 2070 6163 6b61 6765 2c20 204e 6578 ng package, Nex\n+00009d50: 743a 2043 6f6e 7472 6962 7574 6f72 732c t: Contributors,\n+00009d60: 2020 5072 6576 3a20 536f 636b 6574 732e Prev: Sockets.\n+00009d70: 4d75 6c74 6963 6173 7420 7061 636b 6167 Multicast packag\n+00009d80: 652c 2020 5570 3a20 546f 700a 0a36 2053 e, Up: Top..6 S\n+00009d90: 6f63 6b65 7473 2e4e 616d 696e 6720 7061 ockets.Naming pa\n+00009da0: 636b 6167 650a 2a2a 2a2a 2a2a 2a2a 2a2a ckage.**********\n+00009db0: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 0a0a **************..\n+00009dc0: 5468 6520 2753 6f63 6b65 7473 2e4e 616d The 'Sockets.Nam\n+00009dd0: 696e 6727 2070 6163 6b61 6765 2063 6f6e ing' package con\n+00009de0: 7461 696e 7320 7479 7065 7320 616e 6420 tains types and \n+00009df0: 6865 6c70 6572 2066 756e 6374 696f 6e73 helper functions\n+00009e00: 206e 6565 6465 640a 746f 206d 616e 6970 needed.to manip\n+00009e10: 756c 6174 6520 496e 7465 726e 6574 2068 ulate Internet h\n+00009e20: 6f73 7420 6e61 6d65 7320 616e 6420 6164 ost names and ad\n+00009e30: 6472 6573 7365 732e 0a0a 202d 2d20 536f dresses... -- So\n+00009e40: 636b 6574 732e 4e61 6d69 6e67 2e41 6464 ckets.Naming.Add\n+00009e50: 7265 7373 3a20 7479 7065 2041 6464 7265 ress: type Addre\n+00009e60: 7373 2069 7320 7265 636f 7264 0a20 2020 ss is record. \n+00009e70: 2020 2020 2020 2020 2048 312c 2048 322c H1, H2,\n+00009e80: 2048 332c 2048 3420 3a20 4164 6472 6573 H3, H4 : Addres\n+00009e90: 735f 436f 6d70 6f6e 656e 743b 0a20 2020 s_Component;. \n+00009ea0: 2020 2020 2020 2065 6e64 2072 6563 6f72 end recor\n+00009eb0: 643b 0a20 2020 2020 5468 6973 2074 7970 d;. This typ\n+00009ec0: 6520 7265 7072 6573 656e 7473 2061 6e20 e represents an \n+00009ed0: 4950 7634 2061 6464 7265 7373 2077 6974 IPv4 address wit\n+00009ee0: 6820 2748 3127 2062 6569 6e67 2074 6865 h 'H1' being the\n+00009ef0: 2066 6972 7374 0a20 2020 2020 6f63 7465 first. octe\n+00009f00: 7420 616e 6420 2748 3427 2074 6865 206c t and 'H4' the l\n+00009f10: 6173 7420 6f6e 652e 2020 466f 7220 6578 ast one. For ex\n+00009f20: 616d 706c 652c 2031 3337 2e31 3934 2e31 ample, 137.194.1\n+00009f30: 3631 2e32 2069 730a 2020 2020 2072 6570 61.2 is. rep\n+00009f40: 7265 7365 6e74 6564 2062 7920 2748 313d resented by 'H1=\n+00009f50: 3133 372c 2048 323d 3139 342c 2048 333d 137, H2=194, H3=\n+00009f60: 3136 312c 2048 343d 3227 2e0a 0a20 2d2d 161, H4=2'... --\n+00009f70: 2053 6f63 6b65 7473 2e4e 616d 696e 672e Sockets.Naming.\n+00009f80: 4164 6472 6573 735f 4172 7261 793a 2074 Address_Array: t\n+00009f90: 7970 6520 4164 6472 6573 735f 4172 7261 ype Address_Arra\n+00009fa0: 7920 6973 2061 7272 6179 2028 506f 7369 y is array (Posi\n+00009fb0: 7469 7665 0a20 2020 2020 2020 2020 2072 tive. r\n+00009fc0: 616e 6765 203c 3e29 206f 6620 4164 6472 ange <>) of Addr\n+00009fd0: 6573 733b 0a20 2020 2020 4865 6c70 6572 ess;. Helper\n+00009fe0: 2074 7970 650a 0a20 2d2d 2053 6f63 6b65 type.. -- Socke\n+00009ff0: 7473 2e4e 616d 696e 672e 4164 6472 6573 ts.Naming.Addres\n+0000a000: 735f 436f 6d70 6f6e 656e 743a 2074 7970 s_Component: typ\n+0000a010: 6520 4164 6472 6573 735f 436f 6d70 6f6e e Address_Compon\n+0000a020: 656e 7420 6973 204e 6174 7572 616c 0a20 ent is Natural. \n+0000a030: 2020 2020 2020 2020 2072 616e 6765 2030 range 0\n+0000a040: 202e 2e20 3235 353b 0a20 2020 2020 4865 .. 255;. He\n+0000a050: 6c70 6572 2074 7970 650a 0a20 2d2d 2053 lper type.. -- S\n+0000a060: 6f63 6b65 7473 2e4e 616d 696e 672e 486f ockets.Naming.Ho\n+0000a070: 7374 5f45 6e74 7279 3a20 7479 7065 2048 st_Entry: type H\n+0000a080: 6f73 745f 456e 7472 7920 284e 5f41 6c69 ost_Entry (N_Ali\n+0000a090: 6173 6573 2c20 4e5f 4164 6472 6573 7365 ases, N_Addresse\n+0000a0a0: 7320 3a0a 2020 2020 2020 2020 2020 4e61 s :. Na\n+0000a0b0: 7475 7261 6c29 2069 7320 6e65 7720 4164 tural) is new Ad\n+0000a0c0: 612e 4669 6e61 6c69 7a61 7469 6f6e 2e43 a.Finalization.C\n+0000a0d0: 6f6e 7472 6f6c 6c65 6420 7769 7468 2072 ontrolled with r\n+0000a0e0: 6563 6f72 640a 2020 2020 2020 2020 2020 ecord. \n+0000a0f0: 2020 204e 616d 6520 3a20 5374 7269 6e67 Name : String\n+0000a100: 5f41 6363 6573 733b 0a20 2020 2020 2020 _Access;. \n+0000a110: 2020 2020 2020 416c 6961 7365 7320 3a20 Aliases : \n+0000a120: 5374 7269 6e67 5f41 7272 6179 2028 3120 String_Array (1 \n+0000a130: 2e2e 204e 5f41 6c69 6173 6573 293b 0a20 .. N_Aliases);. \n+0000a140: 2020 2020 2020 2020 2020 2020 4164 6472 Addr\n+0000a150: 6573 7365 7320 3a20 4164 6472 6573 735f esses : Address_\n+0000a160: 4172 7261 7920 2831 202e 2e20 4e5f 4164 Array (1 .. N_Ad\n+0000a170: 6472 6573 7365 7329 3b0a 2020 2020 2020 dresses);. \n+0000a180: 2020 2020 656e 6420 7265 636f 7264 3b0a end record;.\n+0000a190: 2020 2020 2054 6865 2027 486f 7374 5f45 The 'Host_E\n+0000a1a0: 6e74 7279 2720 7479 7065 2068 6f6c 6473 ntry' type holds\n+0000a1b0: 2061 2073 6574 206f 6620 6e61 6d65 7320 a set of names \n+0000a1c0: 616e 6420 4950 2061 6464 7265 7373 6573 and IP addresses\n+0000a1d0: 0a20 2020 2020 6173 736f 6369 6174 6564 . associated\n+0000a1e0: 2077 6974 6820 6120 686f 7374 2e20 2045 with a host. E\n+0000a1f0: 6163 6820 686f 7374 2063 616e 2068 6176 ach host can hav\n+0000a200: 6520 7365 7665 7261 6c20 4950 2061 6464 e several IP add\n+0000a210: 7265 7373 2061 730a 2020 2020 2077 656c ress as. wel\n+0000a220: 6c20 6173 2073 6576 6572 616c 2061 6c69 l as several ali\n+0000a230: 6173 6573 2e0a 0a20 2d2d 2053 6f63 6b65 ases... -- Socke\n+0000a240: 7473 2e4e 616d 696e 672e 5374 7269 6e67 ts.Naming.String\n+0000a250: 5f41 6363 6573 733a 2074 7970 6520 5374 _Access: type St\n+0000a260: 7269 6e67 5f41 6363 6573 7320 6973 2061 ring_Access is a\n+0000a270: 6363 6573 7320 5374 7269 6e67 3b0a 2020 ccess String;. \n+0000a280: 2020 2048 656c 7065 7220 7479 7065 0a0a Helper type..\n+0000a290: 202d 2d20 536f 636b 6574 732e 4e61 6d69 -- Sockets.Nami\n+0000a2a0: 6e67 2e53 7472 696e 675f 4172 7261 793a ng.String_Array:\n+0000a2b0: 2074 7970 6520 5374 7269 6e67 5f41 7272 type String_Arr\n+0000a2c0: 6179 2069 7320 6172 7261 7920 2850 6f73 ay is array (Pos\n+0000a2d0: 6974 6976 650a 2020 2020 2020 2020 2020 itive. \n+0000a2e0: 7261 6e67 6520 3c3e 2920 6f66 2053 7472 range <>) of Str\n+0000a2f0: 696e 675f 4163 6365 7373 3b0a 2020 2020 ing_Access;. \n+0000a300: 2048 656c 7065 7220 7479 7065 0a0a 2a20 Helper type..* \n+0000a310: 4d65 6e75 3a0a 0a2a 2041 6464 7265 7373 Menu:..* Address\n+0000a320: 5f4f 6620 2866 756e 6374 696f 6e29 3a3a _Of (function)::\n+0000a330: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000a340: 2020 2020 2020 2020 2047 6574 2074 6865 Get the\n+0000a350: 2049 5020 6164 6472 6573 7320 6f66 2061 IP address of a\n+0000a360: 2068 6f73 740a 2a20 416e 795f 4164 6472 host.* Any_Addr\n+0000a370: 6573 7320 2866 756e 6374 696f 6e29 3a3a ess (function)::\n+0000a380: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000a390: 2020 2020 2020 2020 2053 7065 6369 616c Special\n+0000a3a0: 2061 6464 7265 7373 2072 6570 7265 7365 address represe\n+0000a3b0: 6e74 696e 6720 616e 7920 6164 6472 6573 nting any addres\n+0000a3c0: 7320 6f6e 2074 6865 206c 6f63 616c 2068 s on the local h\n+0000a3d0: 6f73 740a 2a20 4765 745f 5065 6572 5f41 ost.* Get_Peer_A\n+0000a3e0: 6464 7220 2866 756e 6374 696f 6e29 3a3a ddr (function)::\n+0000a3f0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000a400: 2020 2020 2020 2020 2052 6574 7269 6576 Retriev\n+0000a410: 6520 4950 2061 6464 7265 7373 206f 6620 e IP address of \n+0000a420: 7265 6d6f 7465 2068 6f73 740a 2a20 4765 remote host.* Ge\n+0000a430: 745f 5065 6572 5f50 6f72 7420 2866 756e t_Peer_Port (fun\n+0000a440: 6374 696f 6e29 3a3a 0a20 2020 2020 2020 ction)::. \n+0000a450: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000a460: 2052 6574 7269 6576 6520 706f 7274 2075 Retrieve port u\n+0000a470: 7365 6420 6279 2072 656d 6f74 6520 686f sed by remote ho\n+0000a480: 7374 0a2a 2047 6574 5f53 6f63 6b5f 4164 st.* Get_Sock_Ad\n+0000a490: 6472 2028 6675 6e63 7469 6f6e 293a 3a0a dr (function)::.\n+0000a4a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000a4b0: 2020 2020 2020 2020 5265 7472 6965 7665 Retrieve\n+0000a4c0: 2049 5020 6164 6472 6573 7320 6f66 206c IP address of l\n+0000a4d0: 6f63 616c 2068 6f73 740a 2a20 4765 745f ocal host.* Get_\n+0000a4e0: 536f 636b 5f50 6f72 7420 2866 756e 6374 Sock_Port (funct\n+0000a4f0: 696f 6e29 3a3a 0a20 2020 2020 2020 2020 ion)::. \n+0000a500: 2020 2020 2020 2020 2020 2020 2020 2052 R\n+0000a510: 6574 7269 6576 6520 706f 7274 2075 7365 etrieve port use\n+0000a520: 6420 6279 206c 6f63 616c 2068 6f73 740a d by local host.\n+0000a530: 2a20 486f 7374 5f4e 616d 6520 2866 756e * Host_Name (fun\n+0000a540: 6374 696f 6e29 3a3a 0a20 2020 2020 2020 ction)::. \n+0000a550: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000a560: 2047 6574 2074 6865 206e 616d 6520 6f66 Get the name of\n+0000a570: 2074 6865 2063 7572 7265 6e74 2068 6f73 the current hos\n+0000a580: 740a 2a20 496d 6167 6520 2866 756e 6374 t.* Image (funct\n+0000a590: 696f 6e29 3a3a 2020 2020 4d61 6b65 2061 ion):: Make a\n+0000a5a0: 2073 7472 696e 6720 6672 6f6d 2061 6e20 string from an \n+0000a5b0: 6164 6472 6573 730a 2a20 496e 666f 5f4f address.* Info_O\n+0000a5c0: 665f 4e61 6d65 5f4f 725f 4950 2028 6675 f_Name_Or_IP (fu\n+0000a5d0: 6e63 7469 6f6e 293a 3a0a 2020 2020 2020 nction)::. \n+0000a5e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000a5f0: 2020 4765 7420 6164 6472 6573 7365 7320 Get addresses \n+0000a600: 616e 6420 6e61 6d65 7320 6f66 2061 2068 and names of a h\n+0000a610: 6f73 740a 2a20 4973 5f49 505f 4164 6472 ost.* Is_IP_Addr\n+0000a620: 6573 7320 2866 756e 6374 696f 6e29 3a3a ess (function)::\n+0000a630: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000a640: 2020 2020 2020 2020 2043 6865 636b 2069 Check i\n+0000a650: 6620 6769 7665 6e20 7374 7269 6e67 2069 f given string i\n+0000a660: 7320 6120 7661 6c69 6420 4950 2061 6464 s a valid IP add\n+0000a670: 7265 7373 0a2a 204e 616d 655f 4f66 2028 ress.* Name_Of (\n+0000a680: 6675 6e63 7469 6f6e 293a 3a20 204f 6666 function):: Off\n+0000a690: 6963 6961 6c20 6e61 6d65 206f 6620 7468 icial name of th\n+0000a6a0: 6520 686f 7374 0a2a 2056 616c 7565 2028 e host.* Value (\n+0000a6b0: 6675 6e63 7469 6f6e 293a 3a20 2020 2054 function):: T\n+0000a6c0: 7261 6e73 666f 726d 2061 2073 7472 696e ransform a strin\n+0000a6d0: 6720 696e 746f 2061 6e20 6164 6472 6573 g into an addres\n+0000a6e0: 730a 0a1f 0a46 696c 653a 2061 6461 736f s....File: adaso\n+0000a6f0: 636b 6574 732e 696e 666f 2c20 204e 6f64 ckets.info, Nod\n+0000a700: 653a 2041 6464 7265 7373 5f4f 6620 2866 e: Address_Of (f\n+0000a710: 756e 6374 696f 6e29 2c20 204e 6578 743a unction), Next:\n+0000a720: 2041 6e79 5f41 6464 7265 7373 2028 6675 Any_Address (fu\n+0000a730: 6e63 7469 6f6e 292c 2020 5570 3a20 536f nction), Up: So\n+0000a740: 636b 6574 732e 4e61 6d69 6e67 2070 6163 ckets.Naming pac\n+0000a750: 6b61 6765 0a0a 4164 6472 6573 735f 4f66 kage..Address_Of\n+0000a760: 2028 6675 6e63 7469 6f6e 290a 3d3d 3d3d (function).====\n+0000a770: 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d 3d3d ================\n+0000a780: 3d0a 0a50 5552 504f 5345 0a20 2020 2020 =..PURPOSE. \n+0000a790: 4765 7420 7468 6520 4950 2061 6464 7265 Get the IP addre\n+0000a7a0: 7373 206f 6620 6120 686f 7374 0a50 524f ss of a host.PRO\n+0000a7b0: 544f 5459 5045 0a20 2020 2020 202d 2d20 TOTYPE. -- \n+0000a7c0: 536f 636b 6574 732e 4e61 6d69 6e67 2e41 Sockets.Naming.A\n+0000a7d0: 6464 7265 7373 5f4f 663a 2066 756e 6374 ddress_Of: funct\n+0000a7e0: 696f 6e20 4164 6472 6573 735f 4f66 0a20 ion Address_Of. \n+0000a7f0: 2020 2020 2020 2020 2020 2020 2020 2853 (S\n+0000a800: 4f4d 4554 4849 4e47 203a 2053 7472 696e OMETHING : Strin\n+0000a810: 6729 0a20 2020 2020 2020 2020 2020 2020 g). \n+0000a820: 2020 7265 7475 726e 2041 6464 7265 7373 return Address\n+0000a830: 3b0a 0a50 4152 414d 4554 4552 530a 2020 ;..PARAMETERS. \n+0000a840: 2020 2053 4f4d 4554 4849 4e47 2020 696e SOMETHING in\n+0000a850: 2020 2020 2020 2020 2048 6f73 7420 6e61 Host na\n+0000a860: 6d65 206f 7220 4950 2061 6464 7265 7373 me or IP address\n+0000a870: 0a0a 5245 5455 524e 2056 414c 5545 0a20 ..RETURN VALUE. \n+0000a880: 2020 2020 4950 7634 2061 6464 7265 7373 IPv4 address\n+0000a890: 0a0a 4558 4345 5054 494f 4e53 0a20 2020 ..EXCEPTIONS. \n+0000a8a0: 2020 274e 616d 696e 675f 4572 726f 7227 'Naming_Error'\n+0000a8b0: 2020 2020 204e 6f20 696e 666f 726d 6174 No informat\n+0000a8c0: 696f 6e20 6176 6169 6c61 626c 6520 666f ion available fo\n+0000a8d0: 7220 7468 6973 206e 616d 6520 6f72 0a20 r this name or. \n+0000a8e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000a8f0: 2020 2020 2020 2061 6464 7265 7373 0a0a address..\n+0000a900: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n+0000a910: 6f74 6520 4e61 6d65 5f4f 6620 2866 756e ote Name_Of (fun\n+0000a920: 6374 696f 6e29 3a3a 2e0a 0a2a 204d 656e ction)::...* Men\n+0000a930: 753a 0a0a 2a20 416e 795f 4164 6472 6573 u:..* Any_Addres\n+0000a940: 7320 2866 756e 6374 696f 6e29 3a3a 0a2a s (function)::.*\n+0000a950: 2047 6574 5f50 6565 725f 4164 6472 2028 Get_Peer_Addr (\n+0000a960: 6675 6e63 7469 6f6e 293a 3a0a 2a20 4765 function)::.* Ge\n+0000a970: 745f 5065 6572 5f50 6f72 7420 2866 756e t_Peer_Port (fun\n+0000a980: 6374 696f 6e29 3a3a 0a2a 2047 6574 5f53 ction)::.* Get_S\n+0000a990: 6f63 6b5f 4164 6472 2028 6675 6e63 7469 ock_Addr (functi\n+0000a9a0: 6f6e 293a 3a0a 2a20 4765 745f 536f 636b on)::.* Get_Sock\n+0000a9b0: 5f50 6f72 7420 2866 756e 6374 696f 6e29 _Port (function)\n+0000a9c0: 3a3a 0a2a 2048 6f73 745f 4e61 6d65 2028 ::.* Host_Name (\n+0000a9d0: 6675 6e63 7469 6f6e 293a 3a0a 2a20 496d function)::.* Im\n+0000a9e0: 6167 6520 2866 756e 6374 696f 6e29 3a3a age (function)::\n+0000a9f0: 0a2a 2049 6e66 6f5f 4f66 5f4e 616d 655f .* Info_Of_Name_\n+0000aa00: 4f72 5f49 5020 2866 756e 6374 696f 6e29 Or_IP (function)\n+0000aa10: 3a3a 0a2a 2049 735f 4950 5f41 6464 7265 ::.* Is_IP_Addre\n+0000aa20: 7373 2028 6675 6e63 7469 6f6e 293a 3a0a ss (function)::.\n+0000aa30: 2a20 4e61 6d65 5f4f 6620 2866 756e 6374 * Name_Of (funct\n+0000aa40: 696f 6e29 3a3a 0a2a 2056 616c 7565 2028 ion)::.* Value (\n+0000aa50: 6675 6e63 7469 6f6e 293a 3a0a 0a1f 0a46 function)::....F\n+0000aa60: 696c 653a 2061 6461 736f 636b 6574 732e ile: adasockets.\n+0000aa70: 696e 666f 2c20 204e 6f64 653a 2041 6e79 info, Node: Any\n+0000aa80: 5f41 6464 7265 7373 2028 6675 6e63 7469 _Address (functi\n+0000aa90: 6f6e 292c 2020 4e65 7874 3a20 4765 745f on), Next: Get_\n+0000aaa0: 5065 6572 5f41 6464 7220 2866 756e 6374 Peer_Addr (funct\n+0000aab0: 696f 6e29 2c20 2050 7265 763a 2041 6464 ion), Prev: Add\n+0000aac0: 7265 7373 5f4f 6620 2866 756e 6374 696f ress_Of (functio\n+0000aad0: 6e29 2c20 2055 703a 2041 6464 7265 7373 n), Up: Address\n+0000aae0: 5f4f 6620 2866 756e 6374 696f 6e29 0a0a _Of (function)..\n+0000aaf0: 416e 795f 4164 6472 6573 7320 2866 756e Any_Address (fun\n+0000ab00: 6374 696f 6e29 0a2d 2d2d 2d2d 2d2d 2d2d ction).---------\n+0000ab10: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 -------------..P\n+0000ab20: 5552 504f 5345 0a20 2020 2020 5370 6563 URPOSE. Spec\n+0000ab30: 6961 6c20 6164 6472 6573 7320 7265 7072 ial address repr\n+0000ab40: 6573 656e 7469 6e67 2061 6e79 2061 6464 esenting any add\n+0000ab50: 7265 7373 206f 6e20 7468 6520 6c6f 6361 ress on the loca\n+0000ab60: 6c20 686f 7374 0a50 524f 544f 5459 5045 l host.PROTOTYPE\n+0000ab70: 0a20 2020 2020 202d 2d20 536f 636b 6574 . -- Socket\n+0000ab80: 732e 4e61 6d69 6e67 2e41 6e79 5f41 6464 s.Naming.Any_Add\n+0000ab90: 7265 7373 3a20 6675 6e63 7469 6f6e 2041 ress: function A\n+0000aba0: 6e79 5f41 6464 7265 7373 0a0a 5245 5455 ny_Address..RETU\n+0000abb0: 524e 2056 414c 5545 0a20 2020 2020 4571 RN VALUE. Eq\n+0000abc0: 7569 7661 6c65 6e74 2074 6f20 2749 4e41 uivalent to 'INA\n+0000abd0: 4444 525f 414e 5927 2069 6e20 7468 6520 DDR_ANY' in the \n+0000abe0: 4320 7072 6f67 7261 6d6d 696e 6720 6c61 C programming la\n+0000abf0: 6e67 7561 6765 0a0a 1f0a 4669 6c65 3a20 nguage....File: \n+0000ac00: 6164 6173 6f63 6b65 7473 2e69 6e66 6f2c adasockets.info,\n+0000ac10: 2020 4e6f 6465 3a20 4765 745f 5065 6572 Node: Get_Peer\n+0000ac20: 5f41 6464 7220 2866 756e 6374 696f 6e29 _Addr (function)\n+0000ac30: 2c20 204e 6578 743a 2047 6574 5f50 6565 , Next: Get_Pee\n+0000ac40: 725f 506f 7274 2028 6675 6e63 7469 6f6e r_Port (function\n+0000ac50: 292c 2020 5072 6576 3a20 416e 795f 4164 ), Prev: Any_Ad\n+0000ac60: 6472 6573 7320 2866 756e 6374 696f 6e29 dress (function)\n+0000ac70: 2c20 2055 703a 2041 6464 7265 7373 5f4f , Up: Address_O\n+0000ac80: 6620 2866 756e 6374 696f 6e29 0a0a 4765 f (function)..Ge\n+0000ac90: 745f 5065 6572 5f41 6464 7220 2866 756e t_Peer_Addr (fun\n+0000aca0: 6374 696f 6e29 0a2d 2d2d 2d2d 2d2d 2d2d ction).---------\n+0000acb0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a ---------------.\n+0000acc0: 0a50 5552 504f 5345 0a20 2020 2020 5265 .PURPOSE. Re\n+0000acd0: 7472 6965 7665 2049 5020 6164 6472 6573 trieve IP addres\n+0000ace0: 7320 6f66 2072 656d 6f74 6520 686f 7374 s of remote host\n+0000acf0: 0a50 524f 544f 5459 5045 0a20 2020 2020 .PROTOTYPE. \n+0000ad00: 202d 2d20 536f 636b 6574 732e 4e61 6d69 -- Sockets.Nami\n+0000ad10: 6e67 2e47 6574 5f50 6565 725f 4164 6472 ng.Get_Peer_Addr\n+0000ad20: 3a20 6675 6e63 7469 6f6e 2047 6574 5f50 : function Get_P\n+0000ad30: 6565 725f 4164 6472 0a20 2020 2020 2020 eer_Addr. \n+0000ad40: 2020 2020 2020 2020 2853 4f43 4b45 5420 (SOCKET \n+0000ad50: 3a20 536f 636b 6574 5f46 4429 0a20 2020 : Socket_FD). \n+0000ad60: 2020 2020 2020 2020 2020 2020 7265 7475 retu\n+0000ad70: 726e 2041 6464 7265 7373 3b0a 0a50 4152 rn Address;..PAR\n+0000ad80: 414d 4554 4552 530a 2020 2020 2053 4f43 AMETERS. SOC\n+0000ad90: 4b45 5420 2020 2020 696e 2020 2020 2020 KET in \n+0000ada0: 2020 2043 6f6e 6e65 6374 6564 2073 6f63 Connected soc\n+0000adb0: 6b65 7420 6f62 6a65 6374 0a0a 5245 5455 ket object..RETU\n+0000adc0: 524e 2056 414c 5545 0a20 2020 2020 5065 RN VALUE. Pe\n+0000add0: 6572 2061 6464 7265 7373 0a0a 5345 4520 er address..SEE \n+0000ade0: 414c 534f 0a20 2020 2020 2a6e 6f74 6520 ALSO. *note \n+0000adf0: 4765 745f 5065 6572 5f50 6f72 7420 2866 Get_Peer_Port (f\n+0000ae00: 756e 6374 696f 6e29 3a3a 2c0a 2020 2020 unction)::,. \n+0000ae10: 202a 6e6f 7465 2047 6574 5f53 6f63 6b5f *note Get_Sock_\n+0000ae20: 4164 6472 2028 6675 6e63 7469 6f6e 293a Addr (function):\n+0000ae30: 3a2e 0a0a 1f0a 4669 6c65 3a20 6164 6173 :.....File: adas\n+0000ae40: 6f63 6b65 7473 2e69 6e66 6f2c 2020 4e6f ockets.info, No\n+0000ae50: 6465 3a20 4765 745f 5065 6572 5f50 6f72 de: Get_Peer_Por\n+0000ae60: 7420 2866 756e 6374 696f 6e29 2c20 204e t (function), N\n+0000ae70: 6578 743a 2047 6574 5f53 6f63 6b5f 4164 ext: Get_Sock_Ad\n+0000ae80: 6472 2028 6675 6e63 7469 6f6e 292c 2020 dr (function), \n+0000ae90: 5072 6576 3a20 4765 745f 5065 6572 5f41 Prev: Get_Peer_A\n+0000aea0: 6464 7220 2866 756e 6374 696f 6e29 2c20 ddr (function), \n+0000aeb0: 2055 703a 2041 6464 7265 7373 5f4f 6620 Up: Address_Of \n+0000aec0: 2866 756e 6374 696f 6e29 0a0a 4765 745f (function)..Get_\n+0000aed0: 5065 6572 5f50 6f72 7420 2866 756e 6374 Peer_Port (funct\n+0000aee0: 696f 6e29 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d ion).-----------\n+0000aef0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 -------------..P\n+0000af00: 5552 504f 5345 0a20 2020 2020 5265 7472 URPOSE. Retr\n+0000af10: 6965 7665 2070 6f72 7420 7573 6564 2062 ieve port used b\n+0000af20: 7920 7265 6d6f 7465 2068 6f73 740a 5052 y remote host.PR\n+0000af30: 4f54 4f54 5950 450a 2020 2020 2020 2d2d OTOTYPE. --\n+0000af40: 2053 6f63 6b65 7473 2e4e 616d 696e 672e Sockets.Naming.\n+0000af50: 4765 745f 5065 6572 5f50 6f72 743a 2066 Get_Peer_Port: f\n+0000af60: 756e 6374 696f 6e20 4765 745f 5065 6572 unction Get_Peer\n+0000af70: 5f50 6f72 740a 2020 2020 2020 2020 2020 _Port. \n+0000af80: 2020 2020 2028 534f 434b 4554 203a 2053 (SOCKET : S\n+0000af90: 6f63 6b65 745f 4644 290a 2020 2020 2020 ocket_FD). \n+0000afa0: 2020 2020 2020 2020 2072 6574 7572 6e20 return \n+0000afb0: 506f 7369 7469 7665 3b0a 0a50 4152 414d Positive;..PARAM\n+0000afc0: 4554 4552 530a 2020 2020 2053 4f43 4b45 ETERS. SOCKE\n+0000afd0: 5420 2020 2020 696e 2020 2020 2020 2020 T in \n+0000afe0: 2043 6f6e 6e65 6374 6564 2073 6f63 6b65 Connected socke\n+0000aff0: 7420 6f62 6a65 6374 0a0a 5245 5455 524e t object..RETURN\n+0000b000: 2056 414c 5545 0a20 2020 2020 506f 7274 VALUE. Port\n+0000b010: 2075 7365 6420 6f6e 2074 6865 2072 656d used on the rem\n+0000b020: 6f74 6520 686f 7374 0a0a 5345 4520 414c ote host..SEE AL\n+0000b030: 534f 0a20 2020 2020 2a6e 6f74 6520 4765 SO. *note Ge\n+0000b040: 745f 536f 636b 5f50 6f72 7420 2866 756e t_Sock_Port (fun\n+0000b050: 6374 696f 6e29 3a3a 2c0a 2020 2020 202a ction)::,. *\n+0000b060: 6e6f 7465 2047 6574 5f50 6565 725f 4164 note Get_Peer_Ad\n+0000b070: 6472 2028 6675 6e63 7469 6f6e 293a 3a2e dr (function)::.\n+0000b080: 0a0a 1f0a 4669 6c65 3a20 6164 6173 6f63 ....File: adasoc\n+0000b090: 6b65 7473 2e69 6e66 6f2c 2020 4e6f 6465 kets.info, Node\n+0000b0a0: 3a20 4765 745f 536f 636b 5f41 6464 7220 : Get_Sock_Addr \n+0000b0b0: 2866 756e 6374 696f 6e29 2c20 204e 6578 (function), Nex\n+0000b0c0: 743a 2047 6574 5f53 6f63 6b5f 506f 7274 t: Get_Sock_Port\n+0000b0d0: 2028 6675 6e63 7469 6f6e 292c 2020 5072 (function), Pr\n+0000b0e0: 6576 3a20 4765 745f 5065 6572 5f50 6f72 ev: Get_Peer_Por\n+0000b0f0: 7420 2866 756e 6374 696f 6e29 2c20 2055 t (function), U\n+0000b100: 703a 2041 6464 7265 7373 5f4f 6620 2866 p: Address_Of (f\n+0000b110: 756e 6374 696f 6e29 0a0a 4765 745f 536f unction)..Get_So\n+0000b120: 636b 5f41 6464 7220 2866 756e 6374 696f ck_Addr (functio\n+0000b130: 6e29 0a2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d n).-------------\n+0000b140: 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 5552 -----------..PUR\n+0000b150: 504f 5345 0a20 2020 2020 5265 7472 6965 POSE. Retrie\n+0000b160: 7665 2049 5020 6164 6472 6573 7320 6f66 ve IP address of\n+0000b170: 206c 6f63 616c 2068 6f73 740a 5052 4f54 local host.PROT\n+0000b180: 4f54 5950 450a 2020 2020 2020 2d2d 2053 OTYPE. -- S\n+0000b190: 6f63 6b65 7473 2e4e 616d 696e 672e 4765 ockets.Naming.Ge\n+0000b1a0: 745f 536f 636b 5f41 6464 723a 2066 756e t_Sock_Addr: fun\n+0000b1b0: 6374 696f 6e20 4765 745f 536f 636b 5f41 ction Get_Sock_A\n+0000b1c0: 6464 720a 2020 2020 2020 2020 2020 2020 ddr. \n+0000b1d0: 2020 2028 534f 434b 4554 203a 2053 6f63 (SOCKET : Soc\n+0000b1e0: 6b65 745f 4644 290a 2020 2020 2020 2020 ket_FD). \n+0000b1f0: 2020 2020 2020 2072 6574 7572 6e20 4164 return Ad\n+0000b200: 6472 6573 733b 0a0a 5041 5241 4d45 5445 dress;..PARAMETE\n+0000b210: 5253 0a20 2020 2020 534f 434b 4554 2020 RS. SOCKET \n+0000b220: 2020 2069 6e20 2020 2020 2020 2020 436f in Co\n+0000b230: 6e6e 6563 7465 6420 736f 636b 6574 206f nnected socket o\n+0000b240: 626a 6563 740a 0a52 4554 5552 4e20 5641 bject..RETURN VA\n+0000b250: 4c55 450a 2020 2020 2041 6464 7265 7373 LUE. Address\n+0000b260: 206f 6620 6c6f 6361 6c20 696e 7465 7266 of local interf\n+0000b270: 6163 6520 7573 6564 0a0a 5345 4520 414c ace used..SEE AL\n+0000b280: 534f 0a20 2020 2020 2a6e 6f74 6520 4765 SO. *note Ge\n+0000b290: 745f 536f 636b 5f50 6f72 7420 2866 756e t_Sock_Port (fun\n+0000b2a0: 6374 696f 6e29 3a3a 2c0a 2020 2020 202a ction)::,. *\n+0000b2b0: 6e6f 7465 2047 6574 5f50 6565 725f 4164 note Get_Peer_Ad\n+0000b2c0: 6472 2028 6675 6e63 7469 6f6e 293a 3a2e dr (function)::.\n+0000b2d0: 0a0a 1f0a 4669 6c65 3a20 6164 6173 6f63 ....File: adasoc\n+0000b2e0: 6b65 7473 2e69 6e66 6f2c 2020 4e6f 6465 kets.info, Node\n+0000b2f0: 3a20 4765 745f 536f 636b 5f50 6f72 7420 : Get_Sock_Port \n+0000b300: 2866 756e 6374 696f 6e29 2c20 204e 6578 (function), Nex\n+0000b310: 743a 2048 6f73 745f 4e61 6d65 2028 6675 t: Host_Name (fu\n+0000b320: 6e63 7469 6f6e 292c 2020 5072 6576 3a20 nction), Prev: \n+0000b330: 4765 745f 536f 636b 5f41 6464 7220 2866 Get_Sock_Addr (f\n+0000b340: 756e 6374 696f 6e29 2c20 2055 703a 2041 unction), Up: A\n+0000b350: 6464 7265 7373 5f4f 6620 2866 756e 6374 ddress_Of (funct\n+0000b360: 696f 6e29 0a0a 4765 745f 536f 636b 5f50 ion)..Get_Sock_P\n+0000b370: 6f72 7420 2866 756e 6374 696f 6e29 0a2d ort (function).-\n+0000b380: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+0000b390: 2d2d 2d2d 2d2d 2d0a 0a50 5552 504f 5345 -------..PURPOSE\n+0000b3a0: 0a20 2020 2020 5265 7472 6965 7665 2070 . Retrieve p\n+0000b3b0: 6f72 7420 7573 6564 2062 7920 6c6f 6361 ort used by loca\n+0000b3c0: 6c20 686f 7374 0a50 524f 544f 5459 5045 l host.PROTOTYPE\n+0000b3d0: 0a20 2020 2020 202d 2d20 536f 636b 6574 . -- Socket\n+0000b3e0: 732e 4e61 6d69 6e67 2e47 6574 5f53 6f63 s.Naming.Get_Soc\n+0000b3f0: 6b5f 506f 7274 3a20 6675 6e63 7469 6f6e k_Port: function\n+0000b400: 2047 6574 5f53 6f63 6b5f 506f 7274 0a20 Get_Sock_Port. \n+0000b410: 2020 2020 2020 2020 2020 2020 2020 2853 (S\n+0000b420: 4f43 4b45 5420 3a20 536f 636b 6574 5f46 OCKET : Socket_F\n+0000b430: 4429 0a20 2020 2020 2020 2020 2020 2020 D). \n+0000b440: 2020 7265 7475 726e 2050 6f73 6974 6976 return Positiv\n+0000b450: 653b 0a0a 5041 5241 4d45 5445 5253 0a20 e;..PARAMETERS. \n+0000b460: 2020 2020 534f 434b 4554 2020 2020 2069 SOCKET i\n+0000b470: 6e20 2020 2020 2020 2020 436f 6e6e 6563 n Connec\n+0000b480: 7465 6420 736f 636b 6574 206f 626a 6563 ted socket objec\n+0000b490: 740a 0a52 4554 5552 4e20 5641 4c55 450a t..RETURN VALUE.\n+0000b4a0: 2020 2020 2050 6f72 7420 7573 6564 206f Port used o\n+0000b4b0: 6e20 7468 6520 6c6f 6361 6c20 686f 7374 n the local host\n+0000b4c0: 0a0a 5345 4520 414c 534f 0a20 2020 2020 ..SEE ALSO. \n+0000b4d0: 2a6e 6f74 6520 4765 745f 5065 6572 5f50 *note Get_Peer_P\n+0000b4e0: 6f72 7420 2866 756e 6374 696f 6e29 3a3a ort (function)::\n+0000b4f0: 2c0a 2020 2020 202a 6e6f 7465 2047 6574 ,. *note Get\n+0000b500: 5f53 6f63 6b5f 4164 6472 2028 6675 6e63 _Sock_Addr (func\n+0000b510: 7469 6f6e 293a 3a2e 0a0a 1f0a 4669 6c65 tion)::.....File\n+0000b520: 3a20 6164 6173 6f63 6b65 7473 2e69 6e66 : adasockets.inf\n+0000b530: 6f2c 2020 4e6f 6465 3a20 486f 7374 5f4e o, Node: Host_N\n+0000b540: 616d 6520 2866 756e 6374 696f 6e29 2c20 ame (function), \n+0000b550: 204e 6578 743a 2049 6d61 6765 2028 6675 Next: Image (fu\n+0000b560: 6e63 7469 6f6e 292c 2020 5072 6576 3a20 nction), Prev: \n+0000b570: 4765 745f 536f 636b 5f50 6f72 7420 2866 Get_Sock_Port (f\n+0000b580: 756e 6374 696f 6e29 2c20 2055 703a 2041 unction), Up: A\n+0000b590: 6464 7265 7373 5f4f 6620 2866 756e 6374 ddress_Of (funct\n+0000b5a0: 696f 6e29 0a0a 486f 7374 5f4e 616d 6520 ion)..Host_Name \n+0000b5b0: 2866 756e 6374 696f 6e29 0a2d 2d2d 2d2d (function).-----\n+0000b5c0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a ---------------.\n+0000b5d0: 0a50 5552 504f 5345 0a20 2020 2020 4765 .PURPOSE. Ge\n+0000b5e0: 7420 7468 6520 6e61 6d65 206f 6620 7468 t the name of th\n+0000b5f0: 6520 6375 7272 656e 7420 686f 7374 0a50 e current host.P\n+0000b600: 524f 544f 5459 5045 0a20 2020 2020 202d ROTOTYPE. -\n+0000b610: 2d20 536f 636b 6574 732e 4e61 6d69 6e67 - Sockets.Naming\n+0000b620: 2e48 6f73 745f 4e61 6d65 3a20 6675 6e63 .Host_Name: func\n+0000b630: 7469 6f6e 2048 6f73 745f 4e61 6d65 0a0a tion Host_Name..\n+0000b640: 5245 5455 524e 2056 414c 5545 0a20 2020 RETURN VALUE. \n+0000b650: 2020 4e61 6d65 206f 6620 7468 6520 6375 Name of the cu\n+0000b660: 7272 656e 7420 686f 7374 0a0a 4445 5343 rrent host..DESC\n+0000b670: 5249 5054 494f 4e0a 2020 2020 2054 6869 RIPTION. Thi\n+0000b680: 7320 6675 6e63 7469 6f6e 2072 6574 7572 s function retur\n+0000b690: 6e73 2074 6865 206e 616d 6520 6f66 2074 ns the name of t\n+0000b6a0: 6865 2063 7572 7265 6e74 2068 6f73 742e he current host.\n+0000b6b0: 2020 4465 7065 6e64 696e 6720 6f6e 0a20 Depending on. \n+0000b6c0: 2020 2020 7468 6520 6c6f 6361 6c20 636f the local co\n+0000b6d0: 6e66 6967 7572 6174 696f 6e2c 2069 7420 nfiguration, it \n+0000b6e0: 6d61 7920 6f72 206d 6179 206e 6f74 2062 may or may not b\n+0000b6f0: 6520 6120 6675 6c6c 7920 7175 616c 6966 e a fully qualif\n+0000b700: 6965 640a 2020 2020 2064 6f6d 6169 6e20 ied. domain \n+0000b710: 6e61 6d65 2028 4651 444e 292e 0a0a 1f0a name (FQDN).....\n+0000b720: 4669 6c65 3a20 6164 6173 6f63 6b65 7473 File: adasockets\n+0000b730: 2e69 6e66 6f2c 2020 4e6f 6465 3a20 496d .info, Node: Im\n+0000b740: 6167 6520 2866 756e 6374 696f 6e29 2c20 age (function), \n+0000b750: 204e 6578 743a 2049 6e66 6f5f 4f66 5f4e Next: Info_Of_N\n+0000b760: 616d 655f 4f72 5f49 5020 2866 756e 6374 ame_Or_IP (funct\n+0000b770: 696f 6e29 2c20 2050 7265 763a 2048 6f73 ion), Prev: Hos\n+0000b780: 745f 4e61 6d65 2028 6675 6e63 7469 6f6e t_Name (function\n+0000b790: 292c 2020 5570 3a20 4164 6472 6573 735f ), Up: Address_\n+0000b7a0: 4f66 2028 6675 6e63 7469 6f6e 290a 0a49 Of (function)..I\n+0000b7b0: 6d61 6765 2028 6675 6e63 7469 6f6e 290a mage (function).\n+0000b7c0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+0000b7d0: 0a0a 5055 5250 4f53 450a 2020 2020 204d ..PURPOSE. M\n+0000b7e0: 616b 6520 6120 7374 7269 6e67 2066 726f ake a string fro\n+0000b7f0: 6d20 616e 2061 6464 7265 7373 0a50 524f m an address.PRO\n+0000b800: 544f 5459 5045 0a20 2020 2020 202d 2d20 TOTYPE. -- \n+0000b810: 536f 636b 6574 732e 4e61 6d69 6e67 2e49 Sockets.Naming.I\n+0000b820: 6d61 6765 3a20 6675 6e63 7469 6f6e 2049 mage: function I\n+0000b830: 6d61 6765 2028 4144 4420 3a20 4164 6472 mage (ADD : Addr\n+0000b840: 6573 7329 0a20 2020 2020 2020 2020 2020 ess). \n+0000b850: 2020 2020 7265 7475 726e 2053 7472 696e return Strin\n+0000b860: 673b 0a0a 5041 5241 4d45 5445 5253 0a20 g;..PARAMETERS. \n+0000b870: 2020 2020 4144 4420 2020 2020 2020 2069 ADD i\n+0000b880: 6e20 2020 2020 2020 2020 4950 2061 6464 n IP add\n+0000b890: 7265 7373 0a0a 5245 5455 524e 2056 414c ress..RETURN VAL\n+0000b8a0: 5545 0a20 2020 2020 5374 7269 6e67 2072 UE. String r\n+0000b8b0: 6570 7265 7365 6e74 6174 696f 6e20 6f66 epresentation of\n+0000b8c0: 2074 6865 2049 5020 6164 6472 6573 730a the IP address.\n+0000b8d0: 0a53 4545 2041 4c53 4f0a 2020 2020 202a .SEE ALSO. *\n+0000b8e0: 6e6f 7465 2056 616c 7565 2028 6675 6e63 note Value (func\n+0000b8f0: 7469 6f6e 293a 3a2e 0a0a 1f0a 4669 6c65 tion)::.....File\n+0000b900: 3a20 6164 6173 6f63 6b65 7473 2e69 6e66 : adasockets.inf\n+0000b910: 6f2c 2020 4e6f 6465 3a20 496e 666f 5f4f o, Node: Info_O\n+0000b920: 665f 4e61 6d65 5f4f 725f 4950 2028 6675 f_Name_Or_IP (fu\n+0000b930: 6e63 7469 6f6e 292c 2020 4e65 7874 3a20 nction), Next: \n+0000b940: 4973 5f49 505f 4164 6472 6573 7320 2866 Is_IP_Address (f\n+0000b950: 756e 6374 696f 6e29 2c20 2050 7265 763a unction), Prev:\n+0000b960: 2049 6d61 6765 2028 6675 6e63 7469 6f6e Image (function\n+0000b970: 292c 2020 5570 3a20 4164 6472 6573 735f ), Up: Address_\n+0000b980: 4f66 2028 6675 6e63 7469 6f6e 290a 0a49 Of (function)..I\n+0000b990: 6e66 6f5f 4f66 5f4e 616d 655f 4f72 5f49 nfo_Of_Name_Or_I\n+0000b9a0: 5020 2866 756e 6374 696f 6e29 0a2d 2d2d P (function).---\n+0000b9b0: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+0000b9c0: 2d2d 2d2d 2d2d 2d2d 2d2d 0a0a 5055 5250 ----------..PURP\n+0000b9d0: 4f53 450a 2020 2020 2047 6574 2061 6464 OSE. Get add\n+0000b9e0: 7265 7373 6573 2061 6e64 206e 616d 6573 resses and names\n+0000b9f0: 206f 6620 6120 686f 7374 0a50 524f 544f of a host.PROTO\n+0000ba00: 5459 5045 0a20 2020 2020 202d 2d20 536f TYPE. -- So\n+0000ba10: 636b 6574 732e 4e61 6d69 6e67 2e49 6e66 ckets.Naming.Inf\n+0000ba20: 6f5f 4f66 5f4e 616d 655f 4f72 5f49 503a o_Of_Name_Or_IP:\n+0000ba30: 2066 756e 6374 696f 6e20 496e 666f 5f4f function Info_O\n+0000ba40: 665f 4e61 6d65 5f4f 725f 4950 0a20 2020 f_Name_Or_IP. \n+0000ba50: 2020 2020 2020 2020 2020 2020 2853 4f4d (SOM\n+0000ba60: 4554 4849 4e47 203a 2053 7472 696e 6729 ETHING : String)\n+0000ba70: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000ba80: 7265 7475 726e 2048 6f73 745f 456e 7472 return Host_Entr\n+0000ba90: 793b 0a0a 5041 5241 4d45 5445 5253 0a20 y;..PARAMETERS. \n+0000baa0: 2020 2020 534f 4d45 5448 494e 4720 2069 SOMETHING i\n+0000bab0: 6e20 2020 2020 2020 2020 486f 7374 206e n Host n\n+0000bac0: 616d 6520 6f72 2049 5020 6164 6472 6573 ame or IP addres\n+0000bad0: 730a 0a52 4554 5552 4e20 5641 4c55 450a s..RETURN VALUE.\n+0000bae0: 2020 2020 2043 6f72 7265 7370 6f6e 6469 Correspondi\n+0000baf0: 6e67 2068 6f73 7420 656e 7472 790a 0a44 ng host entry..D\n+0000bb00: 4553 4352 4950 5449 4f4e 0a20 2020 2020 ESCRIPTION. \n+0000bb10: 5468 6973 2066 756e 6374 696f 6e20 6578 This function ex\n+0000bb20: 7472 6163 7473 2061 6c6c 2074 6865 206e tracts all the n\n+0000bb30: 616d 6573 2061 6e64 2061 6464 7265 7373 ames and address\n+0000bb40: 6573 2066 726f 6d20 7468 6520 6e61 6d69 es from the nami\n+0000bb50: 6e67 0a20 2020 2020 7365 7276 6963 652e ng. service.\n+0000bb60: 0a0a 4558 4345 5054 494f 4e53 0a20 2020 ..EXCEPTIONS. \n+0000bb70: 2020 274e 616d 696e 675f 4572 726f 7227 'Naming_Error'\n+0000bb80: 2020 2020 204e 6f20 696e 666f 726d 6174 No informat\n+0000bb90: 696f 6e20 6176 6169 6c61 626c 6520 666f ion available fo\n+0000bba0: 7220 7468 6973 206e 616d 6520 6f72 0a20 r this name or. \n+0000bbb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000bbc0: 2020 2020 2020 2061 6464 7265 7373 0a0a address..\n+0000bbd0: 1f0a 4669 6c65 3a20 6164 6173 6f63 6b65 ..File: adasocke\n+0000bbe0: 7473 2e69 6e66 6f2c 2020 4e6f 6465 3a20 ts.info, Node: \n+0000bbf0: 4973 5f49 505f 4164 6472 6573 7320 2866 Is_IP_Address (f\n+0000bc00: 756e 6374 696f 6e29 2c20 204e 6578 743a unction), Next:\n+0000bc10: 204e 616d 655f 4f66 2028 6675 6e63 7469 Name_Of (functi\n+0000bc20: 6f6e 292c 2020 5072 6576 3a20 496e 666f on), Prev: Info\n+0000bc30: 5f4f 665f 4e61 6d65 5f4f 725f 4950 2028 _Of_Name_Or_IP (\n+0000bc40: 6675 6e63 7469 6f6e 292c 2020 5570 3a20 function), Up: \n+0000bc50: 4164 6472 6573 735f 4f66 2028 6675 6e63 Address_Of (func\n+0000bc60: 7469 6f6e 290a 0a49 735f 4950 5f41 6464 tion)..Is_IP_Add\n+0000bc70: 7265 7373 2028 6675 6e63 7469 6f6e 290a ress (function).\n+0000bc80: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d ----------------\n+0000bc90: 2d2d 2d2d 2d2d 2d2d 0a0a 5055 5250 4f53 --------..PURPOS\n+0000bca0: 450a 2020 2020 2043 6865 636b 2069 6620 E. Check if \n+0000bcb0: 6769 7665 6e20 7374 7269 6e67 2069 7320 given string is \n+0000bcc0: 6120 7661 6c69 6420 4950 2061 6464 7265 a valid IP addre\n+0000bcd0: 7373 0a50 524f 544f 5459 5045 0a20 2020 ss.PROTOTYPE. \n+0000bce0: 2020 202d 2d20 536f 636b 6574 732e 4e61 -- Sockets.Na\n+0000bcf0: 6d69 6e67 2e49 735f 4950 5f41 6464 7265 ming.Is_IP_Addre\n+0000bd00: 7373 3a20 6675 6e63 7469 6f6e 2049 735f ss: function Is_\n+0000bd10: 4950 5f41 6464 7265 7373 0a20 2020 2020 IP_Address. \n+0000bd20: 2020 2020 2020 2020 2020 2853 4f4d 4554 (SOMET\n+0000bd30: 4849 4e47 203a 2053 7472 696e 6729 0a20 HING : String). \n+0000bd40: 2020 2020 2020 2020 2020 2020 2020 7265 re\n+0000bd50: 7475 726e 2042 6f6f 6c65 616e 3b0a 0a50 turn Boolean;..P\n+0000bd60: 4152 414d 4554 4552 530a 2020 2020 2053 ARAMETERS. S\n+0000bd70: 4f4d 4554 4849 4e47 2020 696e 2020 2020 OMETHING in \n+0000bd80: 2020 2020 2053 7472 696e 6720 746f 2063 String to c\n+0000bd90: 6865 636b 0a0a 5245 5455 524e 2056 414c heck..RETURN VAL\n+0000bda0: 5545 0a20 2020 2020 2754 7275 6527 2069 UE. 'True' i\n+0000bdb0: 6620 534f 4d45 5448 494e 4720 6973 2061 f SOMETHING is a\n+0000bdc0: 6e20 4950 2061 6464 7265 7373 0a0a 1f0a n IP address....\n+0000bdd0: 4669 6c65 3a20 6164 6173 6f63 6b65 7473 File: adasockets\n+0000bde0: 2e69 6e66 6f2c 2020 4e6f 6465 3a20 4e61 .info, Node: Na\n+0000bdf0: 6d65 5f4f 6620 2866 756e 6374 696f 6e29 me_Of (function)\n+0000be00: 2c20 204e 6578 743a 2056 616c 7565 2028 , Next: Value (\n+0000be10: 6675 6e63 7469 6f6e 292c 2020 5072 6576 function), Prev\n+0000be20: 3a20 4973 5f49 505f 4164 6472 6573 7320 : Is_IP_Address \n+0000be30: 2866 756e 6374 696f 6e29 2c20 2055 703a (function), Up:\n+0000be40: 2041 6464 7265 7373 5f4f 6620 2866 756e Address_Of (fun\n+0000be50: 6374 696f 6e29 0a0a 4e61 6d65 5f4f 6620 ction)..Name_Of \n+0000be60: 2866 756e 6374 696f 6e29 0a2d 2d2d 2d2d (function).-----\n+0000be70: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a 0a50 -------------..P\n+0000be80: 5552 504f 5345 0a20 2020 2020 4f66 6669 URPOSE. Offi\n+0000be90: 6369 616c 206e 616d 6520 6f66 2074 6865 cial name of the\n+0000bea0: 2068 6f73 740a 5052 4f54 4f54 5950 450a host.PROTOTYPE.\n+0000beb0: 2020 2020 2020 2d2d 2053 6f63 6b65 7473 -- Sockets\n+0000bec0: 2e4e 616d 696e 672e 4e61 6d65 5f4f 663a .Naming.Name_Of:\n+0000bed0: 2066 756e 6374 696f 6e20 4e61 6d65 5f4f function Name_O\n+0000bee0: 6620 2853 4f4d 4554 4849 4e47 203a 2053 f (SOMETHING : S\n+0000bef0: 7472 696e 6729 0a20 2020 2020 2020 2020 tring). \n+0000bf00: 2020 2020 2020 7265 7475 726e 2053 7472 return Str\n+0000bf10: 696e 673b 0a0a 5041 5241 4d45 5445 5253 ing;..PARAMETERS\n+0000bf20: 0a20 2020 2020 534f 4d45 5448 494e 4720 . SOMETHING \n+0000bf30: 2069 6e20 2020 2020 2020 2020 486f 7374 in Host\n+0000bf40: 206e 616d 6520 6f72 2049 5020 6164 6472 name or IP addr\n+0000bf50: 6573 730a 0a52 4554 5552 4e20 5641 4c55 ess..RETURN VALU\n+0000bf60: 450a 2020 2020 204e 616d 6520 6f66 2074 E. Name of t\n+0000bf70: 6865 2068 6f73 740a 0a45 5843 4550 5449 he host..EXCEPTI\n+0000bf80: 4f4e 530a 2020 2020 2027 4e61 6d69 6e67 ONS. 'Naming\n+0000bf90: 5f45 7272 6f72 2720 2020 2020 4e6f 2069 _Error' No i\n+0000bfa0: 6e66 6f72 6d61 7469 6f6e 2061 7661 696c nformation avail\n+0000bfb0: 6162 6c65 2066 6f72 2074 6869 7320 6e61 able for this na\n+0000bfc0: 6d65 206f 720a 2020 2020 2020 2020 2020 me or. \n+0000bfd0: 2020 2020 2020 2020 2020 2020 2020 6164 ad\n+0000bfe0: 6472 6573 730a 0a53 4545 2041 4c53 4f0a dress..SEE ALSO.\n+0000bff0: 2020 2020 202a 6e6f 7465 2041 6464 7265 *note Addre\n+0000c000: 7373 5f4f 6620 2866 756e 6374 696f 6e29 ss_Of (function)\n+0000c010: 3a3a 2e0a 0a1f 0a46 696c 653a 2061 6461 ::.....File: ada\n+0000c020: 736f 636b 6574 732e 696e 666f 2c20 204e sockets.info, N\n+0000c030: 6f64 653a 2056 616c 7565 2028 6675 6e63 ode: Value (func\n+0000c040: 7469 6f6e 292c 2020 5072 6576 3a20 4e61 tion), Prev: Na\n+0000c050: 6d65 5f4f 6620 2866 756e 6374 696f 6e29 me_Of (function)\n+0000c060: 2c20 2055 703a 2041 6464 7265 7373 5f4f , Up: Address_O\n+0000c070: 6620 2866 756e 6374 696f 6e29 0a0a 5661 f (function)..Va\n+0000c080: 6c75 6520 2866 756e 6374 696f 6e29 0a2d lue (function).-\n+0000c090: 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d2d 2d0a ---------------.\n+0000c0a0: 0a50 5552 504f 5345 0a20 2020 2020 5472 .PURPOSE. Tr\n+0000c0b0: 616e 7366 6f72 6d20 6120 7374 7269 6e67 ansform a string\n+0000c0c0: 2069 6e74 6f20 616e 2061 6464 7265 7373 into an address\n+0000c0d0: 0a50 524f 544f 5459 5045 0a20 2020 2020 .PROTOTYPE. \n+0000c0e0: 202d 2d20 536f 636b 6574 732e 4e61 6d69 -- Sockets.Nami\n+0000c0f0: 6e67 2e56 616c 7565 3a20 6675 6e63 7469 ng.Value: functi\n+0000c100: 6f6e 2056 616c 7565 2028 4144 4420 3a20 on Value (ADD : \n+0000c110: 5374 7269 6e67 290a 2020 2020 2020 2020 String). \n+0000c120: 2020 2020 2020 2072 6574 7572 6e20 4164 return Ad\n+0000c130: 6472 6573 733b 0a0a 5041 5241 4d45 5445 dress;..PARAMETE\n+0000c140: 5253 0a20 2020 2020 4144 4420 2020 2020 RS. ADD \n+0000c150: 2020 2069 6e20 2020 2020 2020 2020 5465 in Te\n+0000c160: 7874 7561 6c20 7265 7072 6573 656e 7461 xtual representa\n+0000c170: 7469 6f6e 206f 6620 616e 2049 5020 6164 tion of an IP ad\n+0000c180: 6472 6573 730a 0a52 4554 5552 4e20 5641 dress..RETURN VA\n+0000c190: 4c55 450a 2020 2020 2043 6f72 7265 7370 LUE. Corresp\n+0000c1a0: 6f6e 6469 6e67 2041 6464 7265 7373 0a0a onding Address..\n+0000c1b0: 5345 4520 414c 534f 0a20 2020 2020 2a6e SEE ALSO. *n\n+0000c1c0: 6f74 6520 496d 6167 6520 2866 756e 6374 ote Image (funct\n+0000c1d0: 696f 6e29 3a3a 2e0a 0a1f 0a46 696c 653a ion)::.....File:\n+0000c1e0: 2061 6461 736f 636b 6574 732e 696e 666f adasockets.info\n+0000c1f0: 2c20 204e 6f64 653a 2043 6f6e 7472 6962 , Node: Contrib\n+0000c200: 7574 6f72 732c 2020 4e65 7874 3a20 5265 utors, Next: Re\n+0000c210: 736f 7572 6365 7320 6f6e 2074 6865 2049 sources on the I\n+0000c220: 6e74 6572 6e65 742c 2020 5072 6576 3a20 nternet, Prev: \n+0000c230: 536f 636b 6574 732e 4e61 6d69 6e67 2070 Sockets.Naming p\n+0000c240: 6163 6b61 6765 2c20 2055 703a 2054 6f70 ackage, Up: Top\n+0000c250: 0a0a 4170 7065 6e64 6978 2041 2043 6f6e ..Appendix A Con\n+0000c260: 7472 6962 7574 6f72 730a 2a2a 2a2a 2a2a tributors.******\n+0000c270: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a ****************\n+0000c280: 2a0a 0a41 6461 536f 636b 6574 7320 6861 *..AdaSockets ha\n+0000c290: 7320 6265 656e 206f 7269 6769 6e61 6c6c s been originall\n+0000c2a0: 7920 6465 7665 6c6f 7070 6564 2062 7920 y developped by \n+0000c2b0: 5361 6d75 656c 2054 6172 6469 6575 2077 Samuel Tardieu w\n+0000c2c0: 686f 2073 7469 6c6c 0a6d 6169 6e74 6169 ho still.maintai\n+0000c2d0: 6e73 2069 742e 2020 486f 7765 7665 722c ns it. However,\n+0000c2e0: 2074 6865 2066 6f6c 6c6f 7769 6e67 2070 the following p\n+0000c2f0: 656f 706c 6520 6861 7665 206d 6164 6520 eople have made \n+0000c300: 6372 7563 6961 6c0a 636f 6e74 7269 6275 crucial.contribu\n+0000c310: 7469 6f6e 7320 746f 2041 6461 536f 636b tions to AdaSock\n+0000c320: 6574 732c 2062 6520 7468 6579 206e 6577 ets, be they new\n+0000c330: 2063 6f64 652c 2062 7567 2066 6978 6573 code, bug fixes\n+0000c340: 206f 7220 706f 7274 696e 6720 746f 0a6e or porting to.n\n+0000c350: 6577 206f 7065 7261 7469 6e67 2073 7973 ew operating sys\n+0000c360: 7465 6d73 3a0a 0a20 2020 2a20 446d 6974 tems:.. * Dmit\n+0000c370: 7269 7920 416e 6973 696d 6b6f 7620 283c riy Anisimkov (<\n+0000c380: 616e 6973 696d 6b6f 7640 7961 686f 6f2e anisimkov@yahoo.\n+0000c390: 636f 6d3e 290a 2020 202a 2041 6c61 6e20 com>). * Alan \n+0000c3a0: 4261 726e 6573 2028 3c62 6172 6e65 7361 Barnes (). \n+0000c3c0: 2020 2a20 4a75 616e 6d61 2042 6172 7261 * Juanma Barra\n+0000c3d0: 6e71 7565 726f 2028 3c6c 656b 7475 4074 nquero (). * B\n+0000c3f0: 6f62 6279 2044 2e20 4272 7961 6e74 2028 obby D. Bryant (\n+0000c400: 3c62 6462 7279 616e 7440 6d61 696c 2e75 ). *\n+0000c420: 2053 616e 6465 7220 436f 7820 283c 7361 Sander Cox (). * Sune\n+0000c450: 2046 616c 6b20 283c 7375 6e65 2e66 616c Falk (). \n+0000c470: 2020 2a20 4775 696c 6c61 756d 6520 466f * Guillaume Fo\n+0000c480: 6c69 6172 6420 283c 6775 6966 6f40 7761 liard (). * \n+0000c4a0: 4c61 7572 656e 7420 4775 6572 6279 2028 Laurent Guerby (\n+0000c4b0: 3c67 7565 7262 7940 636c 7562 2d69 6e74 ). * \n+0000c4d0: 4461 7669 6420 4a2e 204b 7269 7374 6f6c David J. Kristol\n+0000c4e0: 6120 283c 4461 7669 6439 3530 3337 4061 a (). * Do\n+0000c500: 6d69 6e69 6b20 4d61 646f 6e20 283c 646f minik Madon ().\n+0000c520: 2020 202a 2050 6173 6361 6c20 4f62 7279 * Pascal Obry\n+0000c530: 2028 3c70 2e6f 6272 7940 7761 6e61 646f (). * Nico\n+0000c550: 6c61 7320 4f6c 6c69 6e67 6572 2028 3c4e las Ollinger (). \n+0000c580: 202a 2053 7470 6861 6e65 2050 6174 7572 * Stphane Patur\n+0000c590: 6561 7520 283c 7370 6174 7572 6561 406d eau (). \n+0000c5c0: 2a20 5468 6f6d 6173 2051 7569 6e6f 7420 * Thomas Quinot \n+0000c5d0: 283c 7468 6f6d 6173 4063 7569 7672 652e (). *\n+0000c5f0: 2050 7265 6265 6e20 5261 6e64 686f 6c20 Preben Randhol \n+0000c600: 283c 7261 6e64 686f 6c40 7076 762e 6f72 (). * Maxim R\n+0000c620: 657a 6e69 6b20 283c 6d61 7831 406d 6261 eznik (). *\n+0000c640: 204a 6f65 6c20 5368 6572 7269 6c6c 2028 Joel Sherrill (\n+0000c650: 3c6a 6f65 6c2e 7368 6572 7269 6c6c 406f ). \n+0000c670: 2a20 5361 6d75 656c 2054 6172 6469 6575 * Samuel Tardieu\n+0000c680: 2028 3c73 616d 4072 6663 3131 3439 2e6e ().. If you \n+0000c6a0: 6665 656c 2074 6861 7420 796f 7520 6861 feel that you ha\n+0000c6b0: 7665 2062 6565 6e20 666f 7267 6f74 7465 ve been forgotte\n+0000c6c0: 6e2c 2070 6c65 6173 6520 7365 6e64 206d n, please send m\n+0000c6d0: 6520 6120 6d61 696c 2073 6f0a 7468 6174 e a mail so.that\n+0000c6e0: 2049 2063 616e 2066 6978 2069 7420 696e I can fix it in\n+0000c6f0: 2074 6865 206e 6578 7420 7665 7273 696f the next versio\n+0000c700: 6e2e 0a0a 2020 202a 4e6f 7465 2052 6573 n... *Note Res\n+0000c710: 6f75 7263 6573 206f 6e20 7468 6520 496e ources on the In\n+0000c720: 7465 726e 6574 3a3a 2c20 666f 7220 686f ternet::, for ho\n+0000c730: 7720 746f 2063 6f6e 7472 6962 7574 652e w to contribute.\n+0000c740: 0a0a 1f0a 4669 6c65 3a20 6164 6173 6f63 ....File: adasoc\n+0000c750: 6b65 7473 2e69 6e66 6f2c 2020 4e6f 6465 kets.info, Node\n+0000c760: 3a20 5265 736f 7572 6365 7320 6f6e 2074 : Resources on t\n+0000c770: 6865 2049 6e74 6572 6e65 742c 2020 4e65 he Internet, Ne\n+0000c780: 7874 3a20 496e 6465 782c 2020 5072 6576 xt: Index, Prev\n+0000c790: 3a20 436f 6e74 7269 6275 746f 7273 2c20 : Contributors, \n+0000c7a0: 2055 703a 2054 6f70 0a0a 4170 7065 6e64 Up: Top..Append\n+0000c7b0: 6978 2042 2052 6573 6f75 7263 6573 206f ix B Resources o\n+0000c7c0: 6e20 7468 6520 496e 7465 726e 6574 0a2a n the Internet.*\n+0000c7d0: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a ****************\n+0000c7e0: 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a 2a2a ****************\n+0000c7f0: 2a2a 2a0a 0a54 6865 206c 6174 6573 7420 ***..The latest \n+0000c800: 7665 7273 696f 6e20 6f66 2041 6461 536f version of AdaSo\n+0000c810: 636b 6574 7320 6361 6e20 616c 7761 7973 ckets can always\n+0000c820: 2062 6520 666f 756e 6420 6174 3a0a 0a20 be found at:.. \n+0000c830: 2020 2020 2020 2020 2020 2020 2020 3c68 .. You \n+0000c870: 6361 6e20 7265 706f 7274 2069 7373 7565 can report issue\n+0000c880: 7320 6f72 2073 7562 6d69 7420 7175 6573 s or submit ques\n+0000c890: 7469 6f6e 7320 6f6e 2047 6974 4875 6227 tions on GitHub'\n+0000c8a0: 7320 6973 7375 6520 7472 6163 6b65 720a s issue tracker.\n+0000c8b0: 6174 3a0a 0a20 2020 2020 2020 2020 3c68 at:.. ....File: adas\n+0000c900: 6f63 6b65 7473 2e69 6e66 6f2c 2020 4e6f ockets.info, No\n+0000c910: 6465 3a20 496e 6465 782c 2020 5072 6576 de: Index, Prev\n+0000c920: 3a20 5265 736f 7572 6365 7320 6f6e 2074 : Resources on t\n+0000c930: 6865 2049 6e74 6572 6e65 742c 2020 5570 he Internet, Up\n+0000c940: 3a20 546f 700a 0a49 6e64 6578 0a2a 2a2a : Top..Index.***\n+0000c950: 2a2a 0a0a 0008 5b69 6e64 6578 0008 5d0a **....[index..].\n+0000c960: 2a20 4d65 6e75 3a0a 0a2a 2041 6363 6570 * Menu:..* Accep\n+0000c970: 7469 6e67 2061 206e 6577 2063 6f6e 6e65 ting a new conne\n+0000c980: 6374 696f 6e3a 2020 2020 2020 2020 2020 ction: \n+0000c990: 2020 4163 6365 7074 5f53 6f63 6b65 7420 Accept_Socket \n+0000c9a0: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n+0000c9b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000c9c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000c9d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c9e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000c9f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ca00: 2020 2028 6c69 6e65 2020 3929 0a2a 2041 (line 9).* A\n-0000ca10: 465f 494e 4554 3a20 2020 2020 2020 2020 F_INET: \n-0000ca20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ca30: 2020 2020 2020 536f 636b 6574 2028 7072 Socket (pr\n-0000ca40: 6f63 6564 7572 6529 2e20 2020 286c 696e ocedure). (lin\n-0000ca50: 6520 3139 290a 2a20 416e 795f 4164 6472 e 19).* Any_Addr\n-0000ca60: 6573 733a 2020 2020 2020 2020 2020 2020 ess: \n-0000ca70: 2020 2020 2020 2020 2020 2020 2020 2041 A\n-0000ca80: 6e79 5f41 6464 7265 7373 2028 6675 6e63 ny_Address (func\n-0000ca90: 7469 6f6e 292e 0a20 2020 2020 2020 2020 tion).. \n-0000caa0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000cab0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000cac0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000cad0: 2020 2020 2020 286c 696e 6520 2039 290a (line 9).\n-0000cae0: 2a20 4173 7369 676e 696e 6720 6120 6c6f * Assigning a lo\n-0000caf0: 6361 6c20 706f 7274 3a20 2020 2020 2020 cal port: \n-0000cb00: 2020 2020 2020 2020 2042 696e 6420 2870 Bind (p\n-0000cb10: 726f 6365 6475 7265 292e 2020 2020 2028 rocedure). (\n-0000cb20: 6c69 6e65 2020 3629 0a2a 2042 696e 643a line 6).* Bind:\n-0000cb30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000cb40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000cb50: 2020 4269 6e64 2028 7072 6f63 6564 7572 Bind (procedur\n-0000cb60: 6529 2e20 2020 2020 286c 696e 6520 2039 e). (line 9\n-0000cb70: 290a 2a20 4269 6e64 696e 6720 6120 736f ).* Binding a so\n-0000cb80: 636b 6574 3a20 2020 2020 2020 2020 2020 cket: \n-0000cb90: 2020 2020 2020 2020 2020 2042 696e 6420 Bind \n-0000cba0: 2870 726f 6365 6475 7265 292e 2020 2020 (procedure). \n-0000cbb0: 2028 6c69 6e65 2020 3629 0a2a 2042 6f74 (line 6).* Bot\n-0000cbc0: 683a 2020 2020 2020 2020 2020 2020 2020 h: \n-0000cbd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000cbe0: 2020 2020 5368 7574 646f 776e 2028 7072 Shutdown (pr\n-0000cbf0: 6f63 6564 7572 6529 2e20 286c 696e 6520 ocedure). (line \n-0000cc00: 3137 290a 2a20 436c 6f73 696e 6720 6120 17).* Closing a \n-0000cc10: 736f 636b 6574 3a20 2020 2020 2020 2020 socket: \n-0000cc20: 2020 2020 2020 2020 2020 2020 2053 6875 Shu\n-0000cc30: 7464 6f77 6e20 2870 726f 6365 6475 7265 tdown (procedure\n-0000cc40: 292e 2028 6c69 6e65 2020 3629 0a2a 2043 ). (line 6).* C\n-0000cc50: 6f6d 7061 7261 6973 6f6e 2077 6974 6820 omparaison with \n-0000cc60: 474e 4154 2e53 6f63 6b65 7473 3a20 2020 GNAT.Sockets: \n-0000cc70: 2020 2020 2020 5768 6174 2069 7320 4164 What is Ad\n-0000cc80: 6153 6f63 6b65 7473 3f2e 2020 286c 696e aSockets?. (lin\n-0000cc90: 6520 2036 290a 2a20 436f 6e6e 6563 743a e 6).* Connect:\n-0000cca0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ccb0: 2020 2020 2020 2020 2020 2020 2020 2043 C\n-0000ccc0: 6f6e 6e65 6374 2028 7072 6f63 6564 7572 onnect (procedur\n-0000ccd0: 6529 2e20 2028 6c69 6e65 2020 3929 0a2a e). (line 9).*\n-0000cce0: 2043 6f6e 6e65 6374 696e 6720 6120 736f Connecting a so\n-0000ccf0: 636b 6574 3a20 2020 2020 2020 2020 2020 cket: \n-0000cd00: 2020 2020 2020 2020 436f 6e6e 6563 7420 Connect \n-0000cd10: 2870 726f 6365 6475 7265 292e 2020 286c (procedure). (l\n-0000cd20: 696e 6520 2036 290a 2a20 436f 6e6e 6563 ine 6).* Connec\n-0000cd30: 7469 6f6e 5f43 6c6f 7365 643a 2020 2020 tion_Closed: \n-0000cd40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000cd50: 2047 6574 2028 6675 6e63 7469 6f6e 292e Get (function).\n-0000cd60: 2020 2020 2020 2028 6c69 6e65 2033 3429 (line 34)\n-0000cd70: 0a2a 2043 6f6e 6e65 6374 696f 6e5f 436c .* Connection_Cl\n-0000cd80: 6f73 6564 203c 313e 3a20 2020 2020 2020 osed <1>: \n-0000cd90: 2020 2020 2020 2020 2020 4765 745f 4368 Get_Ch\n-0000cda0: 6172 2028 6675 6e63 7469 6f6e 292e 2020 ar (function). \n-0000cdb0: 286c 696e 6520 3233 290a 2a20 436f 6e6e (line 23).* Conn\n-0000cdc0: 6563 7469 6f6e 5f43 6c6f 7365 6420 3c32 ection_Closed <2\n-0000cdd0: 3e3a 2020 2020 2020 2020 2020 2020 2020 >: \n-0000cde0: 2020 2047 6574 5f4c 696e 6520 2866 756e Get_Line (fun\n-0000cdf0: 6374 696f 6e29 2e20 2028 6c69 6e65 2033 ction). (line 3\n-0000ce00: 3229 0a2a 2043 6f6e 6e65 6374 696f 6e5f 2).* Connection_\n-0000ce10: 436c 6f73 6564 203c 333e 3a20 2020 2020 Closed <3>: \n-0000ce20: 2020 2020 2020 2020 2020 2020 4765 745f Get_\n-0000ce30: 4c69 6e65 2028 7072 6f63 6564 7572 6529 Line (procedure)\n-0000ce40: 2e20 286c 696e 6520 3237 290a 2a20 436f . (line 27).* Co\n-0000ce50: 6e6e 6563 7469 6f6e 5f43 6c6f 7365 6420 nnection_Closed \n-0000ce60: 3c34 3e3a 2020 2020 2020 2020 2020 2020 <4>: \n-0000ce70: 2020 2020 204e 6577 5f4c 696e 6520 2870 New_Line (p\n-0000ce80: 726f 6365 6475 7265 292e 2028 6c69 6e65 rocedure). (line\n-0000ce90: 2032 3029 0a2a 2043 6f6e 6e65 6374 696f 20).* Connectio\n-0000cea0: 6e5f 436c 6f73 6564 203c 353e 3a20 2020 n_Closed <5>: \n-0000ceb0: 2020 2020 2020 2020 2020 2020 2020 5075 Pu\n-0000cec0: 7420 2870 726f 6365 6475 7265 292e 2020 t (procedure). \n-0000ced0: 2020 2020 286c 696e 6520 3231 290a 2a20 (line 21).* \n-0000cee0: 436f 6e6e 6563 7469 6f6e 5f43 6c6f 7365 Connection_Close\n-0000cef0: 6420 3c36 3e3a 2020 2020 2020 2020 2020 d <6>: \n-0000cf00: 2020 2020 2020 2050 7574 5f4c 696e 6520 Put_Line \n-0000cf10: 2870 726f 6365 6475 7265 292e 2028 6c69 (procedure). (li\n-0000cf20: 6e65 2032 3129 0a2a 2043 6f6e 6e65 6374 ne 21).* Connect\n-0000cf30: 696f 6e5f 436c 6f73 6564 203c 373e 3a20 ion_Closed <7>: \n+0000c9e0: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+0000c9f0: 6520 2036 290a 2a20 4163 6365 7074 5f53 e 6).* Accept_S\n+0000ca00: 6f63 6b65 743a 2020 2020 2020 2020 2020 ocket: \n+0000ca10: 2020 2020 2020 2020 2020 2020 2020 2041 A\n+0000ca20: 6363 6570 745f 536f 636b 6574 2028 7072 ccept_Socket (pr\n+0000ca30: 6f63 6564 7572 6529 2e0a 2020 2020 2020 ocedure).. \n+0000ca40: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ca50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ca60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ca70: 2020 2020 2020 2020 2028 6c69 6e65 2020 (line \n+0000ca80: 3929 0a2a 2041 6461 2e53 7472 6561 6d73 9).* Ada.Streams\n+0000ca90: 2e53 7472 6561 6d5f 456c 656d 656e 745f .Stream_Element_\n+0000caa0: 4172 7261 793a 2020 2020 2020 5261 7720 Array: Raw \n+0000cab0: 6461 7461 206d 616e 6970 756c 6174 696f data manipulatio\n+0000cac0: 6e2e 0a20 2020 2020 2020 2020 2020 2020 n.. \n+0000cad0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cae0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000caf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cb00: 2020 286c 696e 6520 2036 290a 2a20 4164 (line 6).* Ad\n+0000cb10: 612e 5374 7265 616d 732e 5374 7265 616d a.Streams.Stream\n+0000cb20: 5f45 6c65 6d65 6e74 5f41 7272 6179 203c _Element_Array <\n+0000cb30: 313e 3a20 2052 6563 6569 7665 2028 6675 1>: Receive (fu\n+0000cb40: 6e63 7469 6f6e 292e 2020 2028 6c69 6e65 nction). (line\n+0000cb50: 2032 3229 0a2a 2041 6461 2e53 7472 6561 22).* Ada.Strea\n+0000cb60: 6d73 2e53 7472 6561 6d5f 456c 656d 656e ms.Stream_Elemen\n+0000cb70: 745f 4172 7261 7920 3c32 3e3a 2020 5265 t_Array <2>: Re\n+0000cb80: 6365 6976 6520 2870 726f 6365 6475 7265 ceive (procedure\n+0000cb90: 292e 2020 286c 696e 6520 3138 290a 2a20 ). (line 18).* \n+0000cba0: 4164 612e 5374 7265 616d 732e 5374 7265 Ada.Streams.Stre\n+0000cbb0: 616d 5f45 6c65 6d65 6e74 5f41 7272 6179 am_Element_Array\n+0000cbc0: 203c 333e 3a20 2052 6563 6569 7665 5f53 <3>: Receive_S\n+0000cbd0: 6f6d 6520 2870 726f 6365 6475 7265 292e ome (procedure).\n+0000cbe0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000cbf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cc00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cc10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cc20: 286c 696e 6520 3231 290a 2a20 4164 612e (line 21).* Ada.\n+0000cc30: 5374 7265 616d 732e 5374 7265 616d 5f45 Streams.Stream_E\n+0000cc40: 6c65 6d65 6e74 5f41 7272 6179 203c 343e lement_Array <4>\n+0000cc50: 3a20 2053 656e 6420 2870 726f 6365 6475 : Send (procedu\n+0000cc60: 7265 292e 2020 2020 2028 6c69 6e65 2031 re). (line 1\n+0000cc70: 3729 0a2a 2041 6461 2e53 7472 6561 6d73 7).* Ada.Streams\n+0000cc80: 2e53 7472 6561 6d5f 456c 656d 656e 745f .Stream_Element_\n+0000cc90: 436f 756e 743a 2020 2020 2020 5265 6365 Count: Rece\n+0000cca0: 6976 6520 2866 756e 6374 696f 6e29 2e20 ive (function). \n+0000ccb0: 2020 286c 696e 6520 3232 290a 2a20 4164 (line 22).* Ad\n+0000ccc0: 612e 5374 7265 616d 732e 5374 7265 616d a.Streams.Stream\n+0000ccd0: 5f45 6c65 6d65 6e74 5f43 6f75 6e74 203c _Element_Count <\n+0000cce0: 313e 3a20 2052 6563 6569 7665 5f53 6f6d 1>: Receive_Som\n+0000ccf0: 6520 2870 726f 6365 6475 7265 292e 0a20 e (procedure).. \n+0000cd00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cd10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cd20: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cd30: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000cd40: 696e 6520 3231 290a 2a20 4164 6153 6f63 ine 21).* AdaSoc\n+0000cd50: 6b65 7473 2070 7265 7365 6e74 6174 696f kets presentatio\n+0000cd60: 6e3a 2020 2020 2020 2020 2020 2020 2020 n: \n+0000cd70: 2057 6861 7420 6973 2041 6461 536f 636b What is AdaSock\n+0000cd80: 6574 733f 2e20 2028 6c69 6e65 2020 3629 ets?. (line 6)\n+0000cd90: 0a2a 2041 6464 7265 7373 3a20 2020 2020 .* Address: \n+0000cda0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cdb0: 2020 2020 2020 2020 2020 536f 636b 6574 Socket\n+0000cdc0: 732e 4e61 6d69 6e67 2070 6163 6b61 6765 s.Naming package\n+0000cdd0: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n+0000cde0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cdf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ce00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ce10: 2028 6c69 6e65 2020 3929 0a2a 2041 6464 (line 9).* Add\n+0000ce20: 7265 7373 5f41 7272 6179 3a20 2020 2020 ress_Array: \n+0000ce30: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ce40: 2020 2020 536f 636b 6574 732e 4e61 6d69 Sockets.Nami\n+0000ce50: 6e67 2070 6163 6b61 6765 2e0a 2020 2020 ng package.. \n+0000ce60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ce70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ce80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ce90: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n+0000cea0: 2031 3629 0a2a 2041 6464 7265 7373 5f43 16).* Address_C\n+0000ceb0: 6f6d 706f 6e65 6e74 3a20 2020 2020 2020 omponent: \n+0000cec0: 2020 2020 2020 2020 2020 2020 2020 536f So\n+0000ced0: 636b 6574 732e 4e61 6d69 6e67 2070 6163 ckets.Naming pac\n+0000cee0: 6b61 6765 2e0a 2020 2020 2020 2020 2020 kage.. \n+0000cef0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cf00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cf10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cf20: 2020 2020 2028 6c69 6e65 2032 3029 0a2a (line 20).*\n+0000cf30: 2041 6464 7265 7373 5f4f 663a 2020 2020 Address_Of: \n 0000cf40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000cf50: 5265 6365 6976 6520 2866 756e 6374 696f Receive (functio\n-0000cf60: 6e29 2e20 2020 286c 696e 6520 3330 290a n). (line 30).\n-0000cf70: 2a20 436f 6e6e 6563 7469 6f6e 5f43 6c6f * Connection_Clo\n-0000cf80: 7365 6420 3c38 3e3a 2020 2020 2020 2020 sed <8>: \n-0000cf90: 2020 2020 2020 2020 2052 6563 6569 7665 Receive\n-0000cfa0: 2028 7072 6f63 6564 7572 6529 2e20 2028 (procedure). (\n-0000cfb0: 6c69 6e65 2032 3529 0a2a 2043 6f6e 6e65 line 25).* Conne\n-0000cfc0: 6374 696f 6e5f 436c 6f73 6564 203c 393e ction_Closed <9>\n-0000cfd0: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n-0000cfe0: 2020 5265 6365 6976 655f 536f 6d65 2028 Receive_Some (\n-0000cff0: 7072 6f63 6564 7572 6529 2e0a 2020 2020 procedure).. \n-0000d000: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cf50: 2020 2020 2020 2020 4164 6472 6573 735f Address_\n+0000cf60: 4f66 2028 6675 6e63 7469 6f6e 292e 0a20 Of (function).. \n+0000cf70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cf80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cf90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cfa0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000cfb0: 696e 6520 2039 290a 2a20 4146 5f49 4e45 ine 9).* AF_INE\n+0000cfc0: 543a 2020 2020 2020 2020 2020 2020 2020 T: \n+0000cfd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000cfe0: 2053 6f63 6b65 7420 2870 726f 6365 6475 Socket (procedu\n+0000cff0: 7265 292e 2020 2028 6c69 6e65 2031 3929 re). (line 19)\n+0000d000: 0a2a 2041 6e79 5f41 6464 7265 7373 3a20 .* Any_Address: \n 0000d010: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d020: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d030: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-0000d040: 2032 3729 0a2a 2043 6f6e 6e65 6374 696f 27).* Connectio\n-0000d050: 6e5f 436c 6f73 6564 203c 3130 3e3a 2020 n_Closed <10>: \n-0000d060: 2020 2020 2020 2020 2020 2020 2020 5365 Se\n-0000d070: 6e64 2028 7072 6f63 6564 7572 6529 2e20 nd (procedure). \n-0000d080: 2020 2020 286c 696e 6520 3231 290a 2a20 (line 21).* \n-0000d090: 436f 6e6e 6563 7469 6f6e 5f52 6566 7573 Connection_Refus\n-0000d0a0: 6564 3a20 2020 2020 2020 2020 2020 2020 ed: \n-0000d0b0: 2020 2020 2020 2043 6f6e 6e65 6374 2028 Connect (\n-0000d0c0: 7072 6f63 6564 7572 6529 2e20 2028 6c69 procedure). (li\n-0000d0d0: 6e65 2032 3529 0a2a 2043 6f6e 7472 6962 ne 25).* Contrib\n-0000d0e0: 7574 696e 673a 2020 2020 2020 2020 2020 uting: \n-0000d0f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d100: 436f 6e74 7269 6275 746f 7273 2e20 2020 Contributors. \n-0000d110: 2020 2020 2020 286c 696e 6520 2036 290a (line 6).\n-0000d120: 2a20 436f 6e74 7269 6275 7469 6e67 203c * Contributing <\n-0000d130: 313e 3a20 2020 2020 2020 2020 2020 2020 1>: \n-0000d140: 2020 2020 2020 2020 2052 6573 6f75 7263 Resourc\n-0000d150: 6573 206f 6e20 7468 6520 496e 7465 726e es on the Intern\n-0000d160: 6574 2e0a 2020 2020 2020 2020 2020 2020 et.. \n+0000d020: 2020 2020 2020 2020 2020 416e 795f 4164 Any_Ad\n+0000d030: 6472 6573 7320 2866 756e 6374 696f 6e29 dress (function)\n+0000d040: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n+0000d050: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d060: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d070: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d080: 2028 6c69 6e65 2020 3929 0a2a 2041 7373 (line 9).* Ass\n+0000d090: 6967 6e69 6e67 2061 206c 6f63 616c 2070 igning a local p\n+0000d0a0: 6f72 743a 2020 2020 2020 2020 2020 2020 ort: \n+0000d0b0: 2020 2020 4269 6e64 2028 7072 6f63 6564 Bind (proced\n+0000d0c0: 7572 6529 2e20 2020 2020 286c 696e 6520 ure). (line \n+0000d0d0: 2036 290a 2a20 4269 6e64 3a20 2020 2020 6).* Bind: \n+0000d0e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d0f0: 2020 2020 2020 2020 2020 2020 2042 696e Bin\n+0000d100: 6420 2870 726f 6365 6475 7265 292e 2020 d (procedure). \n+0000d110: 2020 2028 6c69 6e65 2020 3929 0a2a 2042 (line 9).* B\n+0000d120: 696e 6469 6e67 2061 2073 6f63 6b65 743a inding a socket:\n+0000d130: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d140: 2020 2020 2020 4269 6e64 2028 7072 6f63 Bind (proc\n+0000d150: 6564 7572 6529 2e20 2020 2020 286c 696e edure). (lin\n+0000d160: 6520 2036 290a 2a20 426f 7468 3a20 2020 e 6).* Both: \n 0000d170: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d180: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d190: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d1a0: 2020 2028 6c69 6e65 2020 3629 0a2a 2043 (line 6).* C\n-0000d1b0: 523a 2020 2020 2020 2020 2020 2020 2020 R: \n-0000d1c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d1d0: 2020 2020 2020 4765 745f 4c69 6e65 2028 Get_Line (\n-0000d1e0: 6675 6e63 7469 6f6e 292e 2020 286c 696e function). (lin\n-0000d1f0: 6520 3231 290a 2a20 4352 203c 313e 3a20 e 21).* CR <1>: \n-0000d200: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d210: 2020 2020 2020 2020 2020 2020 2020 2047 G\n-0000d220: 6574 5f4c 696e 6520 2870 726f 6365 6475 et_Line (procedu\n-0000d230: 7265 292e 2028 6c69 6e65 2031 3829 0a2a re). (line 18).*\n-0000d240: 2043 5220 3c32 3e3a 2020 2020 2020 2020 CR <2>: \n+0000d180: 2020 2020 2020 2020 2020 2020 2020 2053 S\n+0000d190: 6875 7464 6f77 6e20 2870 726f 6365 6475 hutdown (procedu\n+0000d1a0: 7265 292e 2028 6c69 6e65 2031 3729 0a2a re). (line 17).*\n+0000d1b0: 2043 6c6f 7369 6e67 2061 2073 6f63 6b65 Closing a socke\n+0000d1c0: 743a 2020 2020 2020 2020 2020 2020 2020 t: \n+0000d1d0: 2020 2020 2020 2020 5368 7574 646f 776e Shutdown\n+0000d1e0: 2028 7072 6f63 6564 7572 6529 2e20 286c (procedure). (l\n+0000d1f0: 696e 6520 2036 290a 2a20 436f 6d70 6172 ine 6).* Compar\n+0000d200: 6169 736f 6e20 7769 7468 2047 4e41 542e aison with GNAT.\n+0000d210: 536f 636b 6574 733a 2020 2020 2020 2020 Sockets: \n+0000d220: 2057 6861 7420 6973 2041 6461 536f 636b What is AdaSock\n+0000d230: 6574 733f 2e20 2028 6c69 6e65 2020 3629 ets?. (line 6)\n+0000d240: 0a2a 2043 6f6e 6e65 6374 3a20 2020 2020 .* Connect: \n 0000d250: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d260: 2020 2020 2020 2020 4e65 775f 4c69 6e65 New_Line\n-0000d270: 2028 7072 6f63 6564 7572 6529 2e20 286c (procedure). (l\n-0000d280: 696e 6520 3137 290a 2a20 4372 6561 7465 ine 17).* Create\n-0000d290: 5f4d 756c 7469 6361 7374 5f53 6f63 6b65 _Multicast_Socke\n-0000d2a0: 743a 2020 2020 2020 2020 2020 2020 2020 t: \n-0000d2b0: 2053 6574 7469 6e67 2075 7020 6d75 6c74 Setting up mult\n-0000d2c0: 6963 6173 7420 736f 636b 6574 732e 0a20 icast sockets.. \n-0000d2d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d2e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d2f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d300: 2020 2020 2020 2020 2020 2020 2020 286c (l\n-0000d310: 696e 6520 3136 290a 2a20 4372 6561 7465 ine 16).* Create\n-0000d320: 5f4d 756c 7469 6361 7374 5f53 6f63 6b65 _Multicast_Socke\n-0000d330: 7420 3c31 3e3a 2020 2020 2020 2020 2020 t <1>: \n-0000d340: 2043 7265 6174 655f 4d75 6c74 6963 6173 Create_Multicas\n-0000d350: 745f 536f 636b 6574 2028 6675 6e63 7469 t_Socket (functi\n-0000d360: 6f6e 292e 0a20 2020 2020 2020 2020 2020 on).. \n-0000d370: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d380: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d390: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d3a0: 2020 2020 286c 696e 6520 2039 290a 2a20 (line 9).* \n-0000d3b0: 4372 6561 7465 5f4d 756c 7469 6361 7374 Create_Multicast\n-0000d3c0: 5f53 6f63 6b65 7420 3c32 3e3a 2020 2020 _Socket <2>: \n-0000d3d0: 2020 2020 2020 202e 2020 2020 2020 2020 . \n-0000d3e0: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-0000d3f0: 6e65 2035 3629 0a2a 2043 7265 6174 696e ne 56).* Creatin\n-0000d400: 6720 6120 6d75 6c74 6963 6173 7420 736f g a multicast so\n-0000d410: 636b 6574 3a20 2020 2020 2020 2020 2020 cket: \n-0000d420: 5365 7474 696e 6720 7570 206d 756c 7469 Setting up multi\n-0000d430: 6361 7374 2073 6f63 6b65 7473 2e0a 2020 cast sockets.. \n-0000d440: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d450: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d460: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d470: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-0000d480: 6e65 2020 3629 0a2a 2043 7265 6174 696e ne 6).* Creatin\n-0000d490: 6720 6120 6d75 6c74 6963 6173 7420 736f g a multicast so\n-0000d4a0: 636b 6574 203c 313e 3a20 2020 2020 2020 cket <1>: \n-0000d4b0: 4372 6561 7465 5f4d 756c 7469 6361 7374 Create_Multicast\n-0000d4c0: 5f53 6f63 6b65 7420 2866 756e 6374 696f _Socket (functio\n-0000d4d0: 6e29 2e0a 2020 2020 2020 2020 2020 2020 n).. \n-0000d4e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d4f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d500: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d510: 2020 2028 6c69 6e65 2020 3629 0a2a 2043 (line 6).* C\n-0000d520: 7265 6174 696e 6720 6120 6d75 6c74 6963 reating a multic\n-0000d530: 6173 7420 736f 636b 6574 203c 323e 3a20 ast socket <2>: \n-0000d540: 2020 2020 2020 2e20 2020 2020 2020 2020 . \n-0000d550: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n-0000d560: 6520 3533 290a 2a20 4372 6561 7469 6e67 e 53).* Creating\n-0000d570: 2061 2073 6572 7665 723a 2020 2020 2020 a server: \n-0000d580: 2020 2020 2020 2020 2020 2020 2020 2042 B\n-0000d590: 696e 6420 2870 726f 6365 6475 7265 292e ind (procedure).\n-0000d5a0: 2020 2020 2028 6c69 6e65 2020 3629 0a2a (line 6).*\n-0000d5b0: 2043 7265 6174 696e 6720 6120 736f 636b Creating a sock\n-0000d5c0: 6574 3a20 2020 2020 2020 2020 2020 2020 et: \n-0000d5d0: 2020 2020 2020 2020 5365 7474 696e 6720 Setting \n-0000d5e0: 7570 2075 6e69 6361 7374 2073 6f63 6b65 up unicast socke\n-0000d5f0: 7473 2e0a 2020 2020 2020 2020 2020 2020 ts.. \n-0000d600: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d610: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d620: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d630: 2020 2028 6c69 6e65 2020 3629 0a2a 2043 (line 6).* C\n-0000d640: 7265 6174 696e 6720 6120 736f 636b 6574 reating a socket\n-0000d650: 203c 313e 3a20 2020 2020 2020 2020 2020 <1>: \n-0000d660: 2020 2020 2020 536f 636b 6574 2028 7072 Socket (pr\n-0000d670: 6f63 6564 7572 6529 2e20 2020 286c 696e ocedure). (lin\n-0000d680: 6520 2036 290a 2a20 4372 6561 7469 6e67 e 6).* Creating\n-0000d690: 2061 2073 6f63 6b65 7420 3c32 3e3a 2020 a socket <2>: \n-0000d6a0: 2020 2020 2020 2020 2020 2020 2020 2043 C\n-0000d6b0: 7265 6174 655f 4d75 6c74 6963 6173 745f reate_Multicast_\n-0000d6c0: 536f 636b 6574 2028 6675 6e63 7469 6f6e Socket (function\n-0000d6d0: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n+0000d260: 2020 2020 2020 2020 2020 436f 6e6e 6563 Connec\n+0000d270: 7420 2870 726f 6365 6475 7265 292e 2020 t (procedure). \n+0000d280: 286c 696e 6520 2039 290a 2a20 436f 6e6e (line 9).* Conn\n+0000d290: 6563 7469 6e67 2061 2073 6f63 6b65 743a ecting a socket:\n+0000d2a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d2b0: 2020 2043 6f6e 6e65 6374 2028 7072 6f63 Connect (proc\n+0000d2c0: 6564 7572 6529 2e20 2028 6c69 6e65 2020 edure). (line \n+0000d2d0: 3629 0a2a 2043 6f6e 6e65 6374 696f 6e5f 6).* Connection_\n+0000d2e0: 436c 6f73 6564 3a20 2020 2020 2020 2020 Closed: \n+0000d2f0: 2020 2020 2020 2020 2020 2020 4765 7420 Get \n+0000d300: 2866 756e 6374 696f 6e29 2e20 2020 2020 (function). \n+0000d310: 2020 286c 696e 6520 3334 290a 2a20 436f (line 34).* Co\n+0000d320: 6e6e 6563 7469 6f6e 5f43 6c6f 7365 6420 nnection_Closed \n+0000d330: 3c31 3e3a 2020 2020 2020 2020 2020 2020 <1>: \n+0000d340: 2020 2020 2047 6574 5f43 6861 7220 2866 Get_Char (f\n+0000d350: 756e 6374 696f 6e29 2e20 2028 6c69 6e65 unction). (line\n+0000d360: 2032 3329 0a2a 2043 6f6e 6e65 6374 696f 23).* Connectio\n+0000d370: 6e5f 436c 6f73 6564 203c 323e 3a20 2020 n_Closed <2>: \n+0000d380: 2020 2020 2020 2020 2020 2020 2020 4765 Ge\n+0000d390: 745f 4c69 6e65 2028 6675 6e63 7469 6f6e t_Line (function\n+0000d3a0: 292e 2020 286c 696e 6520 3332 290a 2a20 ). (line 32).* \n+0000d3b0: 436f 6e6e 6563 7469 6f6e 5f43 6c6f 7365 Connection_Close\n+0000d3c0: 6420 3c33 3e3a 2020 2020 2020 2020 2020 d <3>: \n+0000d3d0: 2020 2020 2020 2047 6574 5f4c 696e 6520 Get_Line \n+0000d3e0: 2870 726f 6365 6475 7265 292e 2028 6c69 (procedure). (li\n+0000d3f0: 6e65 2032 3729 0a2a 2043 6f6e 6e65 6374 ne 27).* Connect\n+0000d400: 696f 6e5f 436c 6f73 6564 203c 343e 3a20 ion_Closed <4>: \n+0000d410: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d420: 4e65 775f 4c69 6e65 2028 7072 6f63 6564 New_Line (proced\n+0000d430: 7572 6529 2e20 286c 696e 6520 3230 290a ure). (line 20).\n+0000d440: 2a20 436f 6e6e 6563 7469 6f6e 5f43 6c6f * Connection_Clo\n+0000d450: 7365 6420 3c35 3e3a 2020 2020 2020 2020 sed <5>: \n+0000d460: 2020 2020 2020 2020 2050 7574 2028 7072 Put (pr\n+0000d470: 6f63 6564 7572 6529 2e20 2020 2020 2028 ocedure). (\n+0000d480: 6c69 6e65 2032 3129 0a2a 2043 6f6e 6e65 line 21).* Conne\n+0000d490: 6374 696f 6e5f 436c 6f73 6564 203c 363e ction_Closed <6>\n+0000d4a0: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+0000d4b0: 2020 5075 745f 4c69 6e65 2028 7072 6f63 Put_Line (proc\n+0000d4c0: 6564 7572 6529 2e20 286c 696e 6520 3231 edure). (line 21\n+0000d4d0: 290a 2a20 436f 6e6e 6563 7469 6f6e 5f43 ).* Connection_C\n+0000d4e0: 6c6f 7365 6420 3c37 3e3a 2020 2020 2020 losed <7>: \n+0000d4f0: 2020 2020 2020 2020 2020 2052 6563 6569 Recei\n+0000d500: 7665 2028 6675 6e63 7469 6f6e 292e 2020 ve (function). \n+0000d510: 2028 6c69 6e65 2033 3029 0a2a 2043 6f6e (line 30).* Con\n+0000d520: 6e65 6374 696f 6e5f 436c 6f73 6564 203c nection_Closed <\n+0000d530: 383e 3a20 2020 2020 2020 2020 2020 2020 8>: \n+0000d540: 2020 2020 5265 6365 6976 6520 2870 726f Receive (pro\n+0000d550: 6365 6475 7265 292e 2020 286c 696e 6520 cedure). (line \n+0000d560: 3235 290a 2a20 436f 6e6e 6563 7469 6f6e 25).* Connection\n+0000d570: 5f43 6c6f 7365 6420 3c39 3e3a 2020 2020 _Closed <9>: \n+0000d580: 2020 2020 2020 2020 2020 2020 2052 6563 Rec\n+0000d590: 6569 7665 5f53 6f6d 6520 2870 726f 6365 eive_Some (proce\n+0000d5a0: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n+0000d5b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d5c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d5d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d5e0: 2020 2020 2020 286c 696e 6520 3237 290a (line 27).\n+0000d5f0: 2a20 436f 6e6e 6563 7469 6f6e 5f43 6c6f * Connection_Clo\n+0000d600: 7365 6420 3c31 303e 3a20 2020 2020 2020 sed <10>: \n+0000d610: 2020 2020 2020 2020 2053 656e 6420 2870 Send (p\n+0000d620: 726f 6365 6475 7265 292e 2020 2020 2028 rocedure). (\n+0000d630: 6c69 6e65 2032 3129 0a2a 2043 6f6e 6e65 line 21).* Conne\n+0000d640: 6374 696f 6e5f 5265 6675 7365 643a 2020 ction_Refused: \n+0000d650: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d660: 2020 436f 6e6e 6563 7420 2870 726f 6365 Connect (proce\n+0000d670: 6475 7265 292e 2020 286c 696e 6520 3235 dure). (line 25\n+0000d680: 290a 2a20 436f 6e74 7269 6275 7469 6e67 ).* Contributing\n+0000d690: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+0000d6a0: 2020 2020 2020 2020 2020 2043 6f6e 7472 Contr\n+0000d6b0: 6962 7574 6f72 732e 2020 2020 2020 2020 ibutors. \n+0000d6c0: 2028 6c69 6e65 2020 3629 0a2a 2043 6f6e (line 6).* Con\n+0000d6d0: 7472 6962 7574 696e 6720 3c31 3e3a 2020 tributing <1>: \n 0000d6e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d6f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d700: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d710: 2020 286c 696e 6520 2036 290a 2a20 4372 (line 6).* Cr\n-0000d720: 6561 7469 6e67 2061 2073 6f63 6b65 7420 eating a socket \n-0000d730: 3c33 3e3a 2020 2020 2020 2020 2020 2020 <3>: \n-0000d740: 2020 2020 202e 2020 2020 2020 2020 2020 . \n-0000d750: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-0000d760: 2035 3329 0a2a 2043 7265 6174 696e 6720 53).* Creating \n-0000d770: 6120 5443 5020 736f 636b 6574 3a20 2020 a TCP socket: \n-0000d780: 2020 2020 2020 2020 2020 2020 2020 5365 Se\n-0000d790: 7474 696e 6720 7570 2075 6e69 6361 7374 tting up unicast\n-0000d7a0: 2073 6f63 6b65 7473 2e0a 2020 2020 2020 sockets.. \n+0000d6f0: 2020 2020 5265 736f 7572 6365 7320 6f6e Resources on\n+0000d700: 2074 6865 2049 6e74 6572 6e65 742e 0a20 the Internet.. \n+0000d710: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d720: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d730: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d740: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000d750: 696e 6520 2036 290a 2a20 4352 3a20 2020 ine 6).* CR: \n+0000d760: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d770: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d780: 2047 6574 5f4c 696e 6520 2866 756e 6374 Get_Line (funct\n+0000d790: 696f 6e29 2e20 2028 6c69 6e65 2032 3129 ion). (line 21)\n+0000d7a0: 0a2a 2043 5220 3c31 3e3a 2020 2020 2020 .* CR <1>: \n 0000d7b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d7c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d7d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d7e0: 2020 2020 2020 2020 2028 6c69 6e65 2020 (line \n-0000d7f0: 3629 0a2a 2043 7265 6174 696e 6720 6120 6).* Creating a \n-0000d800: 5544 5020 736f 636b 6574 3a20 2020 2020 UDP socket: \n-0000d810: 2020 2020 2020 2020 2020 2020 5365 7474 Sett\n-0000d820: 696e 6720 7570 2075 6e69 6361 7374 2073 ing up unicast s\n-0000d830: 6f63 6b65 7473 2e0a 2020 2020 2020 2020 ockets.. \n-0000d840: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d850: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d860: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d870: 2020 2020 2020 2028 6c69 6e65 2020 3629 (line 6)\n-0000d880: 0a2a 2043 7265 6174 696e 6720 6120 756e .* Creating a un\n-0000d890: 6963 6173 7420 736f 636b 6574 3a20 2020 icast socket: \n-0000d8a0: 2020 2020 2020 2020 2020 5365 7474 696e Settin\n-0000d8b0: 6720 7570 2075 6e69 6361 7374 2073 6f63 g up unicast soc\n-0000d8c0: 6b65 7473 2e0a 2020 2020 2020 2020 2020 kets.. \n-0000d8d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d8e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d8f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d900: 2020 2020 2028 6c69 6e65 2020 3629 0a2a (line 6).*\n-0000d910: 2045 7374 6162 6c69 7368 696e 6720 6120 Establishing a \n-0000d920: 6c69 7374 656e 2071 7565 7565 3a20 2020 listen queue: \n-0000d930: 2020 2020 2020 2020 4c69 7374 656e 2028 Listen (\n-0000d940: 7072 6f63 6564 7572 6529 2e20 2020 286c procedure). (l\n-0000d950: 696e 6520 2036 290a 2a20 4669 6e64 696e ine 6).* Findin\n-0000d960: 6720 4164 6153 6f63 6b65 7473 206f 6e20 g AdaSockets on \n-0000d970: 7468 6520 496e 7465 726e 6574 3a20 2020 the Internet: \n-0000d980: 2052 6573 6f75 7263 6573 206f 6e20 7468 Resources on th\n-0000d990: 6520 496e 7465 726e 6574 2e0a 2020 2020 e Internet.. \n-0000d9a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d9b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d9c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000d9d0: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-0000d9e0: 2020 3629 0a2a 2047 6574 3a20 2020 2020 6).* Get: \n+0000d7c0: 2020 2020 2020 2020 2020 4765 745f 4c69 Get_Li\n+0000d7d0: 6e65 2028 7072 6f63 6564 7572 6529 2e20 ne (procedure). \n+0000d7e0: 286c 696e 6520 3138 290a 2a20 4352 203c (line 18).* CR <\n+0000d7f0: 323e 3a20 2020 2020 2020 2020 2020 2020 2>: \n+0000d800: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d810: 2020 204e 6577 5f4c 696e 6520 2870 726f New_Line (pro\n+0000d820: 6365 6475 7265 292e 2028 6c69 6e65 2031 cedure). (line 1\n+0000d830: 3729 0a2a 2043 7265 6174 655f 4d75 6c74 7).* Create_Mult\n+0000d840: 6963 6173 745f 536f 636b 6574 3a20 2020 icast_Socket: \n+0000d850: 2020 2020 2020 2020 2020 2020 5365 7474 Sett\n+0000d860: 696e 6720 7570 206d 756c 7469 6361 7374 ing up multicast\n+0000d870: 2073 6f63 6b65 7473 2e0a 2020 2020 2020 sockets.. \n+0000d880: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d890: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d8a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d8b0: 2020 2020 2020 2020 2028 6c69 6e65 2031 (line 1\n+0000d8c0: 3629 0a2a 2043 7265 6174 655f 4d75 6c74 6).* Create_Mult\n+0000d8d0: 6963 6173 745f 536f 636b 6574 203c 313e icast_Socket <1>\n+0000d8e0: 3a20 2020 2020 2020 2020 2020 4372 6561 : Crea\n+0000d8f0: 7465 5f4d 756c 7469 6361 7374 5f53 6f63 te_Multicast_Soc\n+0000d900: 6b65 7420 2866 756e 6374 696f 6e29 2e0a ket (function)..\n+0000d910: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d920: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d930: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000d940: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+0000d950: 6c69 6e65 2020 3929 0a2a 2043 7265 6174 line 9).* Creat\n+0000d960: 655f 4d75 6c74 6963 6173 745f 536f 636b e_Multicast_Sock\n+0000d970: 6574 203c 323e 3a20 2020 2020 2020 2020 et <2>: \n+0000d980: 2020 2e20 2020 2020 2020 2020 2020 2020 . \n+0000d990: 2020 2020 2020 2020 286c 696e 6520 3733 (line 73\n+0000d9a0: 290a 2a20 4372 6561 7469 6e67 2061 206d ).* Creating a m\n+0000d9b0: 756c 7469 6361 7374 2073 6f63 6b65 743a ulticast socket:\n+0000d9c0: 2020 2020 2020 2020 2020 2053 6574 7469 Setti\n+0000d9d0: 6e67 2075 7020 6d75 6c74 6963 6173 7420 ng up multicast \n+0000d9e0: 736f 636b 6574 732e 0a20 2020 2020 2020 sockets.. \n 0000d9f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000da00: 2020 2020 2020 2020 2020 2020 2020 4765 Ge\n-0000da10: 7420 2866 756e 6374 696f 6e29 2e20 2020 t (function). \n-0000da20: 2020 2020 286c 696e 6520 2039 290a 2a20 (line 9).* \n-0000da30: 4765 7473 6f63 6b6f 7074 3a20 2020 2020 Getsockopt: \n-0000da40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000da50: 2020 2020 2020 2047 6574 736f 636b 6f70 Getsockop\n-0000da60: 7420 2870 726f 6365 6475 7265 292e 0a20 t (procedure).. \n-0000da70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000da00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000da10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000da20: 2020 2020 2020 2020 286c 696e 6520 2036 (line 6\n+0000da30: 290a 2a20 4372 6561 7469 6e67 2061 206d ).* Creating a m\n+0000da40: 756c 7469 6361 7374 2073 6f63 6b65 7420 ulticast socket \n+0000da50: 3c31 3e3a 2020 2020 2020 2043 7265 6174 <1>: Creat\n+0000da60: 655f 4d75 6c74 6963 6173 745f 536f 636b e_Multicast_Sock\n+0000da70: 6574 2028 6675 6e63 7469 6f6e 292e 0a20 et (function).. \n 0000da80: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000da90: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000daa0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n-0000dab0: 696e 6520 2039 290a 2a20 4765 745f 4368 ine 9).* Get_Ch\n-0000dac0: 6172 3a20 2020 2020 2020 2020 2020 2020 ar: \n-0000dad0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dae0: 2047 6574 5f43 6861 7220 2866 756e 6374 Get_Char (funct\n-0000daf0: 696f 6e29 2e20 2028 6c69 6e65 2020 3929 ion). (line 9)\n-0000db00: 0a2a 2047 6574 5f4c 696e 653a 2020 2020 .* Get_Line: \n-0000db10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000db20: 2020 2020 2020 2020 2020 4765 745f 4c69 Get_Li\n-0000db30: 6e65 2028 6675 6e63 7469 6f6e 292e 2020 ne (function). \n-0000db40: 286c 696e 6520 2039 290a 2a20 4765 745f (line 9).* Get_\n-0000db50: 4c69 6e65 203c 313e 3a20 2020 2020 2020 Line <1>: \n-0000db60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000db70: 2020 2047 6574 5f4c 696e 6520 2870 726f Get_Line (pro\n-0000db80: 6365 6475 7265 292e 2028 6c69 6e65 2020 cedure). (line \n-0000db90: 3929 0a2a 2047 6574 5f50 6565 725f 4164 9).* Get_Peer_Ad\n-0000dba0: 6472 3a20 2020 2020 2020 2020 2020 2020 dr: \n-0000dbb0: 2020 2020 2020 2020 2020 2020 4765 745f Get_\n-0000dbc0: 5065 6572 5f41 6464 7220 2866 756e 6374 Peer_Addr (funct\n-0000dbd0: 696f 6e29 2e0a 2020 2020 2020 2020 2020 ion).. \n-0000dbe0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dbf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000daa0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dab0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000dac0: 696e 6520 2036 290a 2a20 4372 6561 7469 ine 6).* Creati\n+0000dad0: 6e67 2061 206d 756c 7469 6361 7374 2073 ng a multicast s\n+0000dae0: 6f63 6b65 7420 3c32 3e3a 2020 2020 2020 ocket <2>: \n+0000daf0: 202e 2020 2020 2020 2020 2020 2020 2020 . \n+0000db00: 2020 2020 2020 2028 6c69 6e65 2037 3029 (line 70)\n+0000db10: 0a2a 2043 7265 6174 696e 6720 6120 7365 .* Creating a se\n+0000db20: 7276 6572 3a20 2020 2020 2020 2020 2020 rver: \n+0000db30: 2020 2020 2020 2020 2020 4269 6e64 2028 Bind (\n+0000db40: 7072 6f63 6564 7572 6529 2e20 2020 2020 procedure). \n+0000db50: 286c 696e 6520 2036 290a 2a20 4372 6561 (line 6).* Crea\n+0000db60: 7469 6e67 2061 2073 6f63 6b65 743a 2020 ting a socket: \n+0000db70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000db80: 2020 2053 6574 7469 6e67 2075 7020 756e Setting up un\n+0000db90: 6963 6173 7420 736f 636b 6574 732e 0a20 icast sockets.. \n+0000dba0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dbb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dbc0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dbd0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000dbe0: 696e 6520 2036 290a 2a20 4372 6561 7469 ine 6).* Creati\n+0000dbf0: 6e67 2061 2073 6f63 6b65 7420 3c31 3e3a ng a socket <1>:\n 0000dc00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dc10: 2020 2020 2028 6c69 6e65 2020 3929 0a2a (line 9).*\n-0000dc20: 2047 6574 5f50 6565 725f 506f 7274 3a20 Get_Peer_Port: \n-0000dc30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dc40: 2020 2020 2020 2020 4765 745f 5065 6572 Get_Peer\n-0000dc50: 5f50 6f72 7420 2866 756e 6374 696f 6e29 _Port (function)\n-0000dc60: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-0000dc70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dc10: 2053 6f63 6b65 7420 2870 726f 6365 6475 Socket (procedu\n+0000dc20: 7265 292e 2020 2028 6c69 6e65 2020 3629 re). (line 6)\n+0000dc30: 0a2a 2043 7265 6174 696e 6720 6120 736f .* Creating a so\n+0000dc40: 636b 6574 203c 323e 3a20 2020 2020 2020 cket <2>: \n+0000dc50: 2020 2020 2020 2020 2020 4372 6561 7465 Create\n+0000dc60: 5f4d 756c 7469 6361 7374 5f53 6f63 6b65 _Multicast_Socke\n+0000dc70: 7420 2866 756e 6374 696f 6e29 2e0a 2020 t (function).. \n 0000dc80: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000dc90: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dca0: 2028 6c69 6e65 2020 3929 0a2a 2047 6574 (line 9).* Get\n-0000dcb0: 5f52 6563 6569 7665 5f51 7565 7565 5f53 _Receive_Queue_S\n-0000dcc0: 697a 653a 2020 2020 2020 2020 2020 2020 ize: \n-0000dcd0: 2020 2020 4765 745f 5265 6365 6976 655f Get_Receive_\n-0000dce0: 5175 6575 655f 5369 7a65 2028 6675 6e63 Queue_Size (func\n-0000dcf0: 7469 6f6e 292e 0a20 2020 2020 2020 2020 tion).. \n-0000dd00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dd10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dd20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dd30: 2020 2020 2020 286c 696e 6520 2039 290a (line 9).\n-0000dd40: 2a20 4765 745f 5365 6e64 5f51 7565 7565 * Get_Send_Queue\n-0000dd50: 5f53 697a 653a 2020 2020 2020 2020 2020 _Size: \n-0000dd60: 2020 2020 2020 2020 2047 6574 5f53 656e Get_Sen\n-0000dd70: 645f 5175 6575 655f 5369 7a65 2028 6675 d_Queue_Size (fu\n-0000dd80: 6e63 7469 6f6e 292e 0a20 2020 2020 2020 nction).. \n-0000dd90: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dda0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ddb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ddc0: 2020 2020 2020 2020 286c 696e 6520 2039 (line 9\n-0000ddd0: 290a 2a20 4765 745f 536f 636b 5f41 6464 ).* Get_Sock_Add\n-0000dde0: 723a 2020 2020 2020 2020 2020 2020 2020 r: \n-0000ddf0: 2020 2020 2020 2020 2020 2047 6574 5f53 Get_S\n-0000de00: 6f63 6b5f 4164 6472 2028 6675 6e63 7469 ock_Addr (functi\n-0000de10: 6f6e 292e 0a20 2020 2020 2020 2020 2020 on).. \n-0000de20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000de30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000de40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000de50: 2020 2020 286c 696e 6520 2039 290a 2a20 (line 9).* \n-0000de60: 4765 745f 536f 636b 5f50 6f72 743a 2020 Get_Sock_Port: \n-0000de70: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000de80: 2020 2020 2020 2047 6574 5f53 6f63 6b5f Get_Sock_\n-0000de90: 506f 7274 2028 6675 6e63 7469 6f6e 292e Port (function).\n-0000dea0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-0000deb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dec0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ded0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dee0: 286c 696e 6520 2039 290a 2a20 4772 6f75 (line 9).* Grou\n-0000def0: 7020 636f 6d6d 756e 6963 6174 696f 6e3a p communication:\n-0000df00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000df10: 2020 2053 6574 7469 6e67 2075 7020 6d75 Setting up mu\n-0000df20: 6c74 6963 6173 7420 736f 636b 6574 732e lticast sockets.\n-0000df30: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-0000df40: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dca0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dcb0: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n+0000dcc0: 6e65 2020 3629 0a2a 2043 7265 6174 696e ne 6).* Creatin\n+0000dcd0: 6720 6120 736f 636b 6574 203c 333e 3a20 g a socket <3>: \n+0000dce0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dcf0: 2e20 2020 2020 2020 2020 2020 2020 2020 . \n+0000dd00: 2020 2020 2020 286c 696e 6520 3730 290a (line 70).\n+0000dd10: 2a20 4372 6561 7469 6e67 2061 2054 4350 * Creating a TCP\n+0000dd20: 2073 6f63 6b65 743a 2020 2020 2020 2020 socket: \n+0000dd30: 2020 2020 2020 2020 2053 6574 7469 6e67 Setting\n+0000dd40: 2075 7020 756e 6963 6173 7420 736f 636b up unicast sock\n+0000dd50: 6574 732e 0a20 2020 2020 2020 2020 2020 ets.. \n+0000dd60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dd70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dd80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dd90: 2020 2020 286c 696e 6520 2036 290a 2a20 (line 6).* \n+0000dda0: 4372 6561 7469 6e67 2061 2055 4450 2073 Creating a UDP s\n+0000ddb0: 6f63 6b65 743a 2020 2020 2020 2020 2020 ocket: \n+0000ddc0: 2020 2020 2020 2053 6574 7469 6e67 2075 Setting u\n+0000ddd0: 7020 756e 6963 6173 7420 736f 636b 6574 p unicast socket\n+0000dde0: 732e 0a20 2020 2020 2020 2020 2020 2020 s.. \n+0000ddf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000de00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000de10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000de20: 2020 286c 696e 6520 2036 290a 2a20 4372 (line 6).* Cr\n+0000de30: 6561 7469 6e67 2061 2075 6e69 6361 7374 eating a unicast\n+0000de40: 2073 6f63 6b65 743a 2020 2020 2020 2020 socket: \n+0000de50: 2020 2020 2053 6574 7469 6e67 2075 7020 Setting up \n+0000de60: 756e 6963 6173 7420 736f 636b 6574 732e unicast sockets.\n+0000de70: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000de80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000de90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dea0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000deb0: 286c 696e 6520 2036 290a 2a20 4573 7461 (line 6).* Esta\n+0000dec0: 626c 6973 6869 6e67 2061 206c 6973 7465 blishing a liste\n+0000ded0: 6e20 7175 6575 653a 2020 2020 2020 2020 n queue: \n+0000dee0: 2020 204c 6973 7465 6e20 2870 726f 6365 Listen (proce\n+0000def0: 6475 7265 292e 2020 2028 6c69 6e65 2020 dure). (line \n+0000df00: 3629 0a2a 2046 696e 6469 6e67 2041 6461 6).* Finding Ada\n+0000df10: 536f 636b 6574 7320 6f6e 2074 6865 2049 Sockets on the I\n+0000df20: 6e74 6572 6e65 743a 2020 2020 5265 736f nternet: Reso\n+0000df30: 7572 6365 7320 6f6e 2074 6865 2049 6e74 urces on the Int\n+0000df40: 6572 6e65 742e 0a20 2020 2020 2020 2020 ernet.. \n 0000df50: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000df60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000df70: 286c 696e 6520 2036 290a 2a20 4861 6e64 (line 6).* Hand\n-0000df80: 6c69 6e67 2061 206e 6577 2063 6f6e 6e65 ling a new conne\n-0000df90: 6374 696f 6e3a 2020 2020 2020 2020 2020 ction: \n-0000dfa0: 2020 2041 6363 6570 745f 536f 636b 6574 Accept_Socket\n-0000dfb0: 2028 7072 6f63 6564 7572 6529 2e0a 2020 (procedure).. \n-0000dfc0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dfd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dfe0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000dff0: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-0000e000: 6e65 2020 3629 0a2a 2048 6f73 745f 456e ne 6).* Host_En\n-0000e010: 7472 793a 2020 2020 2020 2020 2020 2020 try: \n+0000df70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000df80: 2020 2020 2020 286c 696e 6520 2036 290a (line 6).\n+0000df90: 2a20 4765 743a 2020 2020 2020 2020 2020 * Get: \n+0000dfa0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000dfb0: 2020 2020 2020 2020 2047 6574 2028 6675 Get (fu\n+0000dfc0: 6e63 7469 6f6e 292e 2020 2020 2020 2028 nction). (\n+0000dfd0: 6c69 6e65 2020 3929 0a2a 2047 6574 736f line 9).* Getso\n+0000dfe0: 636b 6f70 743a 2020 2020 2020 2020 2020 ckopt: \n+0000dff0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e000: 2020 4765 7473 6f63 6b6f 7074 2028 7072 Getsockopt (pr\n+0000e010: 6f63 6564 7572 6529 2e0a 2020 2020 2020 ocedure).. \n 0000e020: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e030: 536f 636b 6574 732e 4e61 6d69 6e67 2070 Sockets.Naming p\n-0000e040: 6163 6b61 6765 2e0a 2020 2020 2020 2020 ackage.. \n-0000e050: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e060: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e030: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e040: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e050: 2020 2020 2020 2020 2028 6c69 6e65 2020 (line \n+0000e060: 3929 0a2a 2047 6574 5f43 6861 723a 2020 9).* Get_Char: \n 0000e070: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e080: 2020 2020 2020 2028 6c69 6e65 2032 3429 (line 24)\n-0000e090: 0a2a 2048 6f73 745f 4e61 6d65 3a20 2020 .* Host_Name: \n-0000e0a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e0b0: 2020 2020 2020 2020 2020 486f 7374 5f4e Host_N\n-0000e0c0: 616d 6520 2866 756e 6374 696f 6e29 2e20 ame (function). \n-0000e0d0: 286c 696e 6520 2039 290a 2a20 496d 6167 (line 9).* Imag\n-0000e0e0: 653a 2020 2020 2020 2020 2020 2020 2020 e: \n-0000e0f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e100: 2020 2049 6d61 6765 2028 6675 6e63 7469 Image (functi\n-0000e110: 6f6e 292e 2020 2020 2028 6c69 6e65 2020 on). (line \n-0000e120: 3929 0a2a 2049 6e66 6f5f 4f66 5f4e 616d 9).* Info_Of_Nam\n-0000e130: 655f 4f72 5f49 503a 2020 2020 2020 2020 e_Or_IP: \n-0000e140: 2020 2020 2020 2020 2020 2020 496e 666f Info\n-0000e150: 5f4f 665f 4e61 6d65 5f4f 725f 4950 2028 _Of_Name_Or_IP (\n-0000e160: 6675 6e63 7469 6f6e 292e 0a20 2020 2020 function).. \n-0000e170: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e180: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e080: 2020 2020 2020 2020 2020 2020 4765 745f Get_\n+0000e090: 4368 6172 2028 6675 6e63 7469 6f6e 292e Char (function).\n+0000e0a0: 2020 286c 696e 6520 2039 290a 2a20 4765 (line 9).* Ge\n+0000e0b0: 745f 4c69 6e65 3a20 2020 2020 2020 2020 t_Line: \n+0000e0c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e0d0: 2020 2020 2047 6574 5f4c 696e 6520 2866 Get_Line (f\n+0000e0e0: 756e 6374 696f 6e29 2e20 2028 6c69 6e65 unction). (line\n+0000e0f0: 2020 3929 0a2a 2047 6574 5f4c 696e 6520 9).* Get_Line \n+0000e100: 3c31 3e3a 2020 2020 2020 2020 2020 2020 <1>: \n+0000e110: 2020 2020 2020 2020 2020 2020 2020 4765 Ge\n+0000e120: 745f 4c69 6e65 2028 7072 6f63 6564 7572 t_Line (procedur\n+0000e130: 6529 2e20 286c 696e 6520 2039 290a 2a20 e). (line 9).* \n+0000e140: 4765 745f 5065 6572 5f41 6464 723a 2020 Get_Peer_Addr: \n+0000e150: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e160: 2020 2020 2020 2047 6574 5f50 6565 725f Get_Peer_\n+0000e170: 4164 6472 2028 6675 6e63 7469 6f6e 292e Addr (function).\n+0000e180: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n 0000e190: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e1a0: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n-0000e1b0: 2039 290a 2a20 496e 7374 616c 6c69 6e67 9).* Installing\n-0000e1c0: 2041 6461 536f 636b 6574 733a 2020 2020 AdaSockets: \n-0000e1d0: 2020 2020 2020 2020 2020 2020 2049 6e73 Ins\n-0000e1e0: 7461 6c6c 696e 6720 4164 6153 6f63 6b65 talling AdaSocke\n-0000e1f0: 7473 2e0a 2020 2020 2020 2020 2020 2020 ts.. \n-0000e200: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e1a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e1b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e1c0: 286c 696e 6520 2039 290a 2a20 4765 745f (line 9).* Get_\n+0000e1d0: 5065 6572 5f50 6f72 743a 2020 2020 2020 Peer_Port: \n+0000e1e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e1f0: 2020 2047 6574 5f50 6565 725f 506f 7274 Get_Peer_Port\n+0000e200: 2028 6675 6e63 7469 6f6e 292e 0a20 2020 (function).. \n 0000e210: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000e220: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e230: 2020 2028 6c69 6e65 2020 3629 0a2a 2049 (line 6).* I\n-0000e240: 5050 524f 544f 5f49 503a 2020 2020 2020 PPROTO_IP: \n-0000e250: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e260: 2020 2020 2020 4765 7473 6f63 6b6f 7074 Getsockopt\n-0000e270: 2028 7072 6f63 6564 7572 6529 2e0a 2020 (procedure).. \n-0000e280: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e290: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e2a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e2b0: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-0000e2c0: 6e65 2032 3029 0a2a 2049 5050 524f 544f ne 20).* IPPROTO\n-0000e2d0: 5f49 5020 3c31 3e3a 2020 2020 2020 2020 _IP <1>: \n-0000e2e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e2f0: 5365 7473 6f63 6b6f 7074 2028 7072 6f63 Setsockopt (proc\n-0000e300: 6564 7572 6529 2e0a 2020 2020 2020 2020 edure).. \n-0000e310: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e320: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e330: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e340: 2020 2020 2020 2028 6c69 6e65 2032 3029 (line 20)\n-0000e350: 0a2a 2049 505f 4144 445f 4d45 4d42 4552 .* IP_ADD_MEMBER\n-0000e360: 5348 4950 3a20 2020 2020 2020 2020 2020 SHIP: \n-0000e370: 2020 2020 2020 2020 2020 4765 7473 6f63 Getsoc\n-0000e380: 6b6f 7074 2028 7072 6f63 6564 7572 6529 kopt (procedure)\n-0000e390: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-0000e3a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e3b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e230: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e240: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+0000e250: 6520 2039 290a 2a20 4765 745f 5265 6365 e 9).* Get_Rece\n+0000e260: 6976 655f 5175 6575 655f 5369 7a65 3a20 ive_Queue_Size: \n+0000e270: 2020 2020 2020 2020 2020 2020 2020 2047 G\n+0000e280: 6574 5f52 6563 6569 7665 5f51 7565 7565 et_Receive_Queue\n+0000e290: 5f53 697a 6520 2866 756e 6374 696f 6e29 _Size (function)\n+0000e2a0: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n+0000e2b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e2c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e2d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e2e0: 2028 6c69 6e65 2020 3929 0a2a 2047 6574 (line 9).* Get\n+0000e2f0: 5f53 656e 645f 5175 6575 655f 5369 7a65 _Send_Queue_Size\n+0000e300: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+0000e310: 2020 2020 4765 745f 5365 6e64 5f51 7565 Get_Send_Que\n+0000e320: 7565 5f53 697a 6520 2866 756e 6374 696f ue_Size (functio\n+0000e330: 6e29 2e0a 2020 2020 2020 2020 2020 2020 n).. \n+0000e340: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e350: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e360: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e370: 2020 2028 6c69 6e65 2020 3929 0a2a 2047 (line 9).* G\n+0000e380: 6574 5f53 6f63 6b5f 4164 6472 3a20 2020 et_Sock_Addr: \n+0000e390: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e3a0: 2020 2020 2020 4765 745f 536f 636b 5f41 Get_Sock_A\n+0000e3b0: 6464 7220 2866 756e 6374 696f 6e29 2e0a ddr (function)..\n 0000e3c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e3d0: 2028 6c69 6e65 2032 3029 0a2a 2049 505f (line 20).* IP_\n-0000e3e0: 4144 445f 4d45 4d42 4552 5348 4950 203c ADD_MEMBERSHIP <\n-0000e3f0: 313e 3a20 2020 2020 2020 2020 2020 2020 1>: \n-0000e400: 2020 2020 5365 7473 6f63 6b6f 7074 2028 Setsockopt (\n-0000e410: 7072 6f63 6564 7572 6529 2e0a 2020 2020 procedure).. \n+0000e3d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e3e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e3f0: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+0000e400: 6c69 6e65 2020 3929 0a2a 2047 6574 5f53 line 9).* Get_S\n+0000e410: 6f63 6b5f 506f 7274 3a20 2020 2020 2020 ock_Port: \n 0000e420: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e430: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e440: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e450: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-0000e460: 2032 3029 0a2a 2049 505f 4452 4f50 5f4d 20).* IP_DROP_M\n-0000e470: 454d 4245 5253 4849 503a 2020 2020 2020 EMBERSHIP: \n-0000e480: 2020 2020 2020 2020 2020 2020 2020 4765 Ge\n-0000e490: 7473 6f63 6b6f 7074 2028 7072 6f63 6564 tsockopt (proced\n-0000e4a0: 7572 6529 2e0a 2020 2020 2020 2020 2020 ure).. \n-0000e4b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e4c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e4d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e4e0: 2020 2020 2028 6c69 6e65 2032 3029 0a2a (line 20).*\n-0000e4f0: 2049 505f 4452 4f50 5f4d 454d 4245 5253 IP_DROP_MEMBERS\n-0000e500: 4849 5020 3c31 3e3a 2020 2020 2020 2020 HIP <1>: \n-0000e510: 2020 2020 2020 2020 5365 7473 6f63 6b6f Setsocko\n-0000e520: 7074 2028 7072 6f63 6564 7572 6529 2e0a pt (procedure)..\n-0000e530: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e540: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e550: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e560: 2020 2020 2020 2020 2020 2020 2020 2028 (\n-0000e570: 6c69 6e65 2032 3029 0a2a 2049 505f 4d55 line 20).* IP_MU\n-0000e580: 4c54 4943 4153 545f 4c4f 4f50 3a20 2020 LTICAST_LOOP: \n+0000e430: 2020 4765 745f 536f 636b 5f50 6f72 7420 Get_Sock_Port \n+0000e440: 2866 756e 6374 696f 6e29 2e0a 2020 2020 (function).. \n+0000e450: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e460: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e470: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e480: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n+0000e490: 2020 3929 0a2a 2047 726f 7570 2063 6f6d 9).* Group com\n+0000e4a0: 6d75 6e69 6361 7469 6f6e 3a20 2020 2020 munication: \n+0000e4b0: 2020 2020 2020 2020 2020 2020 2020 5365 Se\n+0000e4c0: 7474 696e 6720 7570 206d 756c 7469 6361 tting up multica\n+0000e4d0: 7374 2073 6f63 6b65 7473 2e0a 2020 2020 st sockets.. \n+0000e4e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e4f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e500: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e510: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n+0000e520: 2020 3629 0a2a 2048 616e 646c 696e 6720 6).* Handling \n+0000e530: 6120 6e65 7720 636f 6e6e 6563 7469 6f6e a new connection\n+0000e540: 3a20 2020 2020 2020 2020 2020 2020 4163 : Ac\n+0000e550: 6365 7074 5f53 6f63 6b65 7420 2870 726f cept_Socket (pro\n+0000e560: 6365 6475 7265 292e 0a20 2020 2020 2020 cedure).. \n+0000e570: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e580: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000e590: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e5a0: 2020 4765 7473 6f63 6b6f 7074 2028 7072 Getsockopt (pr\n-0000e5b0: 6f63 6564 7572 6529 2e0a 2020 2020 2020 ocedure).. \n+0000e5a0: 2020 2020 2020 2020 286c 696e 6520 2036 (line 6\n+0000e5b0: 290a 2a20 486f 7374 5f45 6e74 7279 3a20 ).* Host_Entry: \n 0000e5c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e5d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e5e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e5f0: 2020 2020 2020 2020 2028 6c69 6e65 2032 (line 2\n-0000e600: 3029 0a2a 2049 505f 4d55 4c54 4943 4153 0).* IP_MULTICAS\n-0000e610: 545f 4c4f 4f50 203c 313e 3a20 2020 2020 T_LOOP <1>: \n-0000e620: 2020 2020 2020 2020 2020 2020 5365 7473 Sets\n-0000e630: 6f63 6b6f 7074 2028 7072 6f63 6564 7572 ockopt (procedur\n-0000e640: 6529 2e0a 2020 2020 2020 2020 2020 2020 e).. \n+0000e5d0: 2020 2020 2020 2020 2020 2053 6f63 6b65 Socke\n+0000e5e0: 7473 2e4e 616d 696e 6720 7061 636b 6167 ts.Naming packag\n+0000e5f0: 652e 0a20 2020 2020 2020 2020 2020 2020 e.. \n+0000e600: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e610: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e620: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e630: 2020 286c 696e 6520 3234 290a 2a20 486f (line 24).* Ho\n+0000e640: 7374 5f4e 616d 653a 2020 2020 2020 2020 st_Name: \n 0000e650: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e660: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e670: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e680: 2020 2028 6c69 6e65 2032 3029 0a2a 2049 (line 20).* I\n-0000e690: 505f 4d55 4c54 4943 4153 545f 5454 4c3a P_MULTICAST_TTL:\n-0000e6a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e6b0: 2020 2020 2020 4765 7473 6f63 6b6f 7074 Getsockopt\n-0000e6c0: 2028 7072 6f63 6564 7572 6529 2e0a 2020 (procedure).. \n-0000e6d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e6e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e6f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e700: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-0000e710: 6e65 2032 3029 0a2a 2049 505f 4d55 4c54 ne 20).* IP_MULT\n-0000e720: 4943 4153 545f 5454 4c20 3c31 3e3a 2020 ICAST_TTL <1>: \n+0000e660: 2020 2020 2048 6f73 745f 4e61 6d65 2028 Host_Name (\n+0000e670: 6675 6e63 7469 6f6e 292e 2028 6c69 6e65 function). (line\n+0000e680: 2020 3929 0a2a 2049 6d61 6765 3a20 2020 9).* Image: \n+0000e690: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e6a0: 2020 2020 2020 2020 2020 2020 2020 496d Im\n+0000e6b0: 6167 6520 2866 756e 6374 696f 6e29 2e20 age (function). \n+0000e6c0: 2020 2020 286c 696e 6520 2039 290a 2a20 (line 9).* \n+0000e6d0: 496e 666f 5f4f 665f 4e61 6d65 5f4f 725f Info_Of_Name_Or_\n+0000e6e0: 4950 3a20 2020 2020 2020 2020 2020 2020 IP: \n+0000e6f0: 2020 2020 2020 2049 6e66 6f5f 4f66 5f4e Info_Of_N\n+0000e700: 616d 655f 4f72 5f49 5020 2866 756e 6374 ame_Or_IP (funct\n+0000e710: 696f 6e29 2e0a 2020 2020 2020 2020 2020 ion).. \n+0000e720: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000e730: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e740: 5365 7473 6f63 6b6f 7074 2028 7072 6f63 Setsockopt (proc\n-0000e750: 6564 7572 6529 2e0a 2020 2020 2020 2020 edure).. \n-0000e760: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e770: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e780: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e790: 2020 2020 2020 2028 6c69 6e65 2032 3029 (line 20)\n-0000e7a0: 0a2a 2049 735f 4950 5f41 6464 7265 7373 .* Is_IP_Address\n-0000e7b0: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n-0000e7c0: 2020 2020 2020 2020 2020 4973 5f49 505f Is_IP_\n-0000e7d0: 4164 6472 6573 7320 2866 756e 6374 696f Address (functio\n-0000e7e0: 6e29 2e0a 2020 2020 2020 2020 2020 2020 n).. \n-0000e7f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e740: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e750: 2020 2020 2028 6c69 6e65 2020 3929 0a2a (line 9).*\n+0000e760: 2049 6e73 7461 6c6c 696e 6720 4164 6153 Installing AdaS\n+0000e770: 6f63 6b65 7473 3a20 2020 2020 2020 2020 ockets: \n+0000e780: 2020 2020 2020 2020 496e 7374 616c 6c69 Installi\n+0000e790: 6e67 2041 6461 536f 636b 6574 732e 0a20 ng AdaSockets.. \n+0000e7a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e7b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e7c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e7d0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000e7e0: 696e 6520 2036 290a 2a20 4950 5052 4f54 ine 6).* IPPROT\n+0000e7f0: 4f5f 4950 3a20 2020 2020 2020 2020 2020 O_IP: \n 0000e800: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e810: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e820: 2020 2028 6c69 6e65 2020 3929 0a2a 204c (line 9).* L\n-0000e830: 463a 2020 2020 2020 2020 2020 2020 2020 F: \n+0000e810: 2047 6574 736f 636b 6f70 7420 2870 726f Getsockopt (pro\n+0000e820: 6365 6475 7265 292e 0a20 2020 2020 2020 cedure).. \n+0000e830: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000e840: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e850: 2020 2020 2020 4765 745f 4c69 6e65 2028 Get_Line (\n-0000e860: 6675 6e63 7469 6f6e 292e 2020 286c 696e function). (lin\n-0000e870: 6520 3231 290a 2a20 4c46 203c 313e 3a20 e 21).* LF <1>: \n-0000e880: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e890: 2020 2020 2020 2020 2020 2020 2020 2047 G\n-0000e8a0: 6574 5f4c 696e 6520 2870 726f 6365 6475 et_Line (procedu\n-0000e8b0: 7265 292e 2028 6c69 6e65 2031 3829 0a2a re). (line 18).*\n-0000e8c0: 204c 4620 3c32 3e3a 2020 2020 2020 2020 LF <2>: \n+0000e850: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e860: 2020 2020 2020 2020 286c 696e 6520 3230 (line 20\n+0000e870: 290a 2a20 4950 5052 4f54 4f5f 4950 203c ).* IPPROTO_IP <\n+0000e880: 313e 3a20 2020 2020 2020 2020 2020 2020 1>: \n+0000e890: 2020 2020 2020 2020 2020 2053 6574 736f Setso\n+0000e8a0: 636b 6f70 7420 2870 726f 6365 6475 7265 ckopt (procedure\n+0000e8b0: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n+0000e8c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000e8d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e8e0: 2020 2020 2020 2020 4e65 775f 4c69 6e65 New_Line\n-0000e8f0: 2028 7072 6f63 6564 7572 6529 2e20 286c (procedure). (l\n-0000e900: 696e 6520 3137 290a 2a20 4c69 7374 656e ine 17).* Listen\n-0000e910: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n-0000e920: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e930: 204c 6973 7465 6e20 2870 726f 6365 6475 Listen (procedu\n-0000e940: 7265 292e 2020 2028 6c69 6e65 2020 3929 re). (line 9)\n-0000e950: 0a2a 204c 6973 7465 6e20 7175 6575 653a .* Listen queue:\n+0000e8e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e8f0: 2020 286c 696e 6520 3230 290a 2a20 4950 (line 20).* IP\n+0000e900: 5f41 4444 5f4d 454d 4245 5253 4849 503a _ADD_MEMBERSHIP:\n+0000e910: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e920: 2020 2020 2047 6574 736f 636b 6f70 7420 Getsockopt \n+0000e930: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n+0000e940: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000e950: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000e960: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000e970: 2020 2020 2020 2020 2020 4c69 7374 656e Listen\n-0000e980: 2028 7072 6f63 6564 7572 6529 2e20 2020 (procedure). \n-0000e990: 286c 696e 6520 2036 290a 2a20 4d61 6e69 (line 6).* Mani\n-0000e9a0: 7075 6c61 7469 6e67 2073 6f63 6b65 7420 pulating socket \n-0000e9b0: 6f70 7469 6f6e 733a 2020 2020 2020 2020 options: \n-0000e9c0: 2020 2047 6574 736f 636b 6f70 7420 2870 Getsockopt (p\n-0000e9d0: 726f 6365 6475 7265 292e 0a20 2020 2020 rocedure).. \n+0000e970: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+0000e980: 6520 3230 290a 2a20 4950 5f41 4444 5f4d e 20).* IP_ADD_M\n+0000e990: 454d 4245 5253 4849 5020 3c31 3e3a 2020 EMBERSHIP <1>: \n+0000e9a0: 2020 2020 2020 2020 2020 2020 2020 2053 S\n+0000e9b0: 6574 736f 636b 6f70 7420 2870 726f 6365 etsockopt (proce\n+0000e9c0: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n+0000e9d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000e9e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000e9f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ea00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ea10: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n-0000ea20: 2036 290a 2a20 4d61 6e69 7075 6c61 7469 6).* Manipulati\n-0000ea30: 6e67 2073 6f63 6b65 7420 6f70 7469 6f6e ng socket option\n-0000ea40: 7320 3c31 3e3a 2020 2020 2020 2053 6574 s <1>: Set\n-0000ea50: 736f 636b 6f70 7420 2870 726f 6365 6475 sockopt (procedu\n-0000ea60: 7265 292e 0a20 2020 2020 2020 2020 2020 re).. \n+0000ea00: 2020 2020 2020 286c 696e 6520 3230 290a (line 20).\n+0000ea10: 2a20 4950 5f44 524f 505f 4d45 4d42 4552 * IP_DROP_MEMBER\n+0000ea20: 5348 4950 3a20 2020 2020 2020 2020 2020 SHIP: \n+0000ea30: 2020 2020 2020 2020 2047 6574 736f 636b Getsock\n+0000ea40: 6f70 7420 2870 726f 6365 6475 7265 292e opt (procedure).\n+0000ea50: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000ea60: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000ea70: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000ea80: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ea90: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000eaa0: 2020 2020 286c 696e 6520 2036 290a 2a20 (line 6).* \n-0000eab0: 4d62 6f6e 653a 2020 2020 2020 2020 2020 Mbone: \n-0000eac0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ead0: 2020 2020 2020 2053 6574 7469 6e67 2075 Setting u\n-0000eae0: 7020 6d75 6c74 6963 6173 7420 736f 636b p multicast sock\n-0000eaf0: 6574 732e 0a20 2020 2020 2020 2020 2020 ets.. \n+0000ea90: 286c 696e 6520 3230 290a 2a20 4950 5f44 (line 20).* IP_D\n+0000eaa0: 524f 505f 4d45 4d42 4552 5348 4950 203c ROP_MEMBERSHIP <\n+0000eab0: 313e 3a20 2020 2020 2020 2020 2020 2020 1>: \n+0000eac0: 2020 2053 6574 736f 636b 6f70 7420 2870 Setsockopt (p\n+0000ead0: 726f 6365 6475 7265 292e 0a20 2020 2020 rocedure).. \n+0000eae0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000eaf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000eb00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000eb10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000eb20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000eb30: 2020 2020 286c 696e 6520 2036 290a 2a20 (line 6).* \n-0000eb40: 4d75 6c74 6963 6173 7420 736f 636b 6574 Multicast socket\n-0000eb50: 733a 2020 2020 2020 2020 2020 2020 2020 s: \n-0000eb60: 2020 2020 2020 2053 6574 7469 6e67 2075 Setting u\n-0000eb70: 7020 6d75 6c74 6963 6173 7420 736f 636b p multicast sock\n-0000eb80: 6574 732e 0a20 2020 2020 2020 2020 2020 ets.. \n+0000eb10: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n+0000eb20: 3230 290a 2a20 4950 5f4d 554c 5449 4341 20).* IP_MULTICA\n+0000eb30: 5354 5f4c 4f4f 503a 2020 2020 2020 2020 ST_LOOP: \n+0000eb40: 2020 2020 2020 2020 2020 2020 2047 6574 Get\n+0000eb50: 736f 636b 6f70 7420 2870 726f 6365 6475 sockopt (procedu\n+0000eb60: 7265 292e 0a20 2020 2020 2020 2020 2020 re).. \n+0000eb70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000eb80: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000eb90: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000eba0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ebb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ebc0: 2020 2020 286c 696e 6520 2036 290a 2a20 (line 6).* \n-0000ebd0: 4d75 6c74 6963 6173 745f 536f 636b 6574 Multicast_Socket\n-0000ebe0: 5f46 443a 2020 2020 2020 2020 2020 2020 _FD: \n-0000ebf0: 2020 2020 2020 2053 6574 7469 6e67 2075 Setting u\n-0000ec00: 7020 6d75 6c74 6963 6173 7420 736f 636b p multicast sock\n-0000ec10: 6574 732e 0a20 2020 2020 2020 2020 2020 ets.. \n-0000ec20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ec30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ec40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ec50: 2020 2020 286c 696e 6520 3136 290a 2a20 (line 16).* \n-0000ec60: 4d75 6c74 6963 6173 745f 536f 636b 6574 Multicast_Socket\n-0000ec70: 5f46 4420 3c31 3e3a 2020 2020 2020 2020 _FD <1>: \n-0000ec80: 2020 2020 2020 2053 6f63 6b65 7473 2e4d Sockets.M\n-0000ec90: 756c 7469 6361 7374 2070 6163 6b61 6765 ulticast package\n-0000eca0: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-0000ecb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ecc0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ecd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ece0: 2028 6c69 6e65 2020 3829 0a2a 204e 616d (line 8).* Nam\n-0000ecf0: 655f 4f66 3a20 2020 2020 2020 2020 2020 e_Of: \n-0000ed00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ed10: 2020 2020 4e61 6d65 5f4f 6620 2866 756e Name_Of (fun\n-0000ed20: 6374 696f 6e29 2e20 2020 286c 696e 6520 ction). (line \n-0000ed30: 2039 290a 2a20 4e61 6d69 6e67 5f45 7272 9).* Naming_Err\n-0000ed40: 6f72 3a20 2020 2020 2020 2020 2020 2020 or: \n-0000ed50: 2020 2020 2020 2020 2020 2020 2041 6464 Add\n-0000ed60: 7265 7373 5f4f 6620 2866 756e 6374 696f ress_Of (functio\n-0000ed70: 6e29 2e0a 2020 2020 2020 2020 2020 2020 n).. \n-0000ed80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000eba0: 2020 2020 286c 696e 6520 3230 290a 2a20 (line 20).* \n+0000ebb0: 4950 5f4d 554c 5449 4341 5354 5f4c 4f4f IP_MULTICAST_LOO\n+0000ebc0: 5020 3c31 3e3a 2020 2020 2020 2020 2020 P <1>: \n+0000ebd0: 2020 2020 2020 2053 6574 736f 636b 6f70 Setsockop\n+0000ebe0: 7420 2870 726f 6365 6475 7265 292e 0a20 t (procedure).. \n+0000ebf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ec00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ec10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ec20: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000ec30: 696e 6520 3230 290a 2a20 4950 5f4d 554c ine 20).* IP_MUL\n+0000ec40: 5449 4341 5354 5f54 544c 3a20 2020 2020 TICAST_TTL: \n+0000ec50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ec60: 2047 6574 736f 636b 6f70 7420 2870 726f Getsockopt (pro\n+0000ec70: 6365 6475 7265 292e 0a20 2020 2020 2020 cedure).. \n+0000ec80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ec90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000eca0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ecb0: 2020 2020 2020 2020 286c 696e 6520 3230 (line 20\n+0000ecc0: 290a 2a20 4950 5f4d 554c 5449 4341 5354 ).* IP_MULTICAST\n+0000ecd0: 5f54 544c 203c 313e 3a20 2020 2020 2020 _TTL <1>: \n+0000ece0: 2020 2020 2020 2020 2020 2053 6574 736f Setso\n+0000ecf0: 636b 6f70 7420 2870 726f 6365 6475 7265 ckopt (procedure\n+0000ed00: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n+0000ed10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ed20: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ed30: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ed40: 2020 286c 696e 6520 3230 290a 2a20 4973 (line 20).* Is\n+0000ed50: 5f49 505f 4164 6472 6573 733a 2020 2020 _IP_Address: \n+0000ed60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ed70: 2020 2020 2049 735f 4950 5f41 6464 7265 Is_IP_Addre\n+0000ed80: 7373 2028 6675 6e63 7469 6f6e 292e 0a20 ss (function).. \n 0000ed90: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000eda0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000edb0: 2020 2028 6c69 6e65 2032 3129 0a2a 204e (line 21).* N\n-0000edc0: 616d 696e 675f 4572 726f 7220 3c31 3e3a aming_Error <1>:\n-0000edd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ede0: 2020 2020 2020 496e 666f 5f4f 665f 4e61 Info_Of_Na\n-0000edf0: 6d65 5f4f 725f 4950 2028 6675 6e63 7469 me_Or_IP (functi\n-0000ee00: 6f6e 292e 0a20 2020 2020 2020 2020 2020 on).. \n-0000ee10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ee20: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000edb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000edc0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000edd0: 696e 6520 2039 290a 2a20 4c46 3a20 2020 ine 9).* LF: \n+0000ede0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000edf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ee00: 2047 6574 5f4c 696e 6520 2866 756e 6374 Get_Line (funct\n+0000ee10: 696f 6e29 2e20 2028 6c69 6e65 2032 3129 ion). (line 21)\n+0000ee20: 0a2a 204c 4620 3c31 3e3a 2020 2020 2020 .* LF <1>: \n 0000ee30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ee40: 2020 2020 286c 696e 6520 3235 290a 2a20 (line 25).* \n-0000ee50: 4e61 6d69 6e67 5f45 7272 6f72 203c 323e Naming_Error <2>\n-0000ee60: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n-0000ee70: 2020 2020 2020 204e 616d 655f 4f66 2028 Name_Of (\n-0000ee80: 6675 6e63 7469 6f6e 292e 2020 2028 6c69 function). (li\n-0000ee90: 6e65 2032 3029 0a2a 204e 6577 5f4c 696e ne 20).* New_Lin\n-0000eea0: 653a 2020 2020 2020 2020 2020 2020 2020 e: \n-0000eeb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000eec0: 4e65 775f 4c69 6e65 2028 7072 6f63 6564 New_Line (proced\n-0000eed0: 7572 6529 2e20 286c 696e 6520 2039 290a ure). (line 9).\n-0000eee0: 2a20 5046 5f49 4e45 543a 2020 2020 2020 * PF_INET: \n-0000eef0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ef00: 2020 2020 2020 2020 2053 6f63 6b65 7420 Socket \n-0000ef10: 2870 726f 6365 6475 7265 292e 2020 2028 (procedure). (\n-0000ef20: 6c69 6e65 2031 3929 0a2a 2050 7574 3a20 line 19).* Put: \n-0000ef30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ef40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ef50: 2020 5075 7420 2870 726f 6365 6475 7265 Put (procedure\n-0000ef60: 292e 2020 2020 2020 286c 696e 6520 2039 ). (line 9\n-0000ef70: 290a 2a20 5075 745f 4c69 6e65 3a20 2020 ).* Put_Line: \n-0000ef80: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ef90: 2020 2020 2020 2020 2020 2050 7574 5f4c Put_L\n-0000efa0: 696e 6520 2870 726f 6365 6475 7265 292e ine (procedure).\n-0000efb0: 2028 6c69 6e65 2020 3929 0a2a 2052 6177 (line 9).* Raw\n-0000efc0: 2064 6174 6120 6d61 6e69 7075 6c61 7469 data manipulati\n-0000efd0: 6f6e 3a20 2020 2020 2020 2020 2020 2020 on: \n-0000efe0: 2020 2020 5261 7720 6461 7461 206d 616e Raw data man\n-0000eff0: 6970 756c 6174 696f 6e2e 0a20 2020 2020 ipulation.. \n-0000f000: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ee40: 2020 2020 2020 2020 2020 4765 745f 4c69 Get_Li\n+0000ee50: 6e65 2028 7072 6f63 6564 7572 6529 2e20 ne (procedure). \n+0000ee60: 286c 696e 6520 3138 290a 2a20 4c46 203c (line 18).* LF <\n+0000ee70: 323e 3a20 2020 2020 2020 2020 2020 2020 2>: \n+0000ee80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ee90: 2020 204e 6577 5f4c 696e 6520 2870 726f New_Line (pro\n+0000eea0: 6365 6475 7265 292e 2028 6c69 6e65 2031 cedure). (line 1\n+0000eeb0: 3729 0a2a 204c 6973 7465 6e3a 2020 2020 7).* Listen: \n+0000eec0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000eed0: 2020 2020 2020 2020 2020 2020 4c69 7374 List\n+0000eee0: 656e 2028 7072 6f63 6564 7572 6529 2e20 en (procedure). \n+0000eef0: 2020 286c 696e 6520 2039 290a 2a20 4c69 (line 9).* Li\n+0000ef00: 7374 656e 2071 7565 7565 3a20 2020 2020 sten queue: \n+0000ef10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ef20: 2020 2020 204c 6973 7465 6e20 2870 726f Listen (pro\n+0000ef30: 6365 6475 7265 292e 2020 2028 6c69 6e65 cedure). (line\n+0000ef40: 2020 3629 0a2a 204d 616e 6970 756c 6174 6).* Manipulat\n+0000ef50: 696e 6720 736f 636b 6574 206f 7074 696f ing socket optio\n+0000ef60: 6e73 3a20 2020 2020 2020 2020 2020 4765 ns: Ge\n+0000ef70: 7473 6f63 6b6f 7074 2028 7072 6f63 6564 tsockopt (proced\n+0000ef80: 7572 6529 2e0a 2020 2020 2020 2020 2020 ure).. \n+0000ef90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000efa0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000efb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000efc0: 2020 2020 2028 6c69 6e65 2020 3629 0a2a (line 6).*\n+0000efd0: 204d 616e 6970 756c 6174 696e 6720 736f Manipulating so\n+0000efe0: 636b 6574 206f 7074 696f 6e73 203c 313e cket options <1>\n+0000eff0: 3a20 2020 2020 2020 5365 7473 6f63 6b6f : Setsocko\n+0000f000: 7074 2028 7072 6f63 6564 7572 6529 2e0a pt (procedure)..\n 0000f010: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000f020: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f030: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n-0000f040: 2036 290a 2a20 5265 6365 6976 653a 2020 6).* Receive: \n-0000f050: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f060: 2020 2020 2020 2020 2020 2020 2052 6563 Rec\n-0000f070: 6569 7665 2028 6675 6e63 7469 6f6e 292e eive (function).\n-0000f080: 2020 2028 6c69 6e65 2020 3929 0a2a 2052 (line 9).* R\n-0000f090: 6563 6569 7665 203c 313e 3a20 2020 2020 eceive <1>: \n+0000f030: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f040: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+0000f050: 6c69 6e65 2020 3629 0a2a 204d 626f 6e65 line 6).* Mbone\n+0000f060: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+0000f070: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f080: 2020 5365 7474 696e 6720 7570 206d 756c Setting up mul\n+0000f090: 7469 6361 7374 2073 6f63 6b65 7473 2e0a ticast sockets..\n 0000f0a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f0b0: 2020 2020 2020 5265 6365 6976 6520 2870 Receive (p\n-0000f0c0: 726f 6365 6475 7265 292e 2020 286c 696e rocedure). (lin\n-0000f0d0: 6520 2039 290a 2a20 5265 6365 6976 6520 e 9).* Receive \n-0000f0e0: 3c32 3e3a 2020 2020 2020 2020 2020 2020 <2>: \n-0000f0f0: 2020 2020 2020 2020 2020 2020 2020 2053 S\n-0000f100: 6875 7464 6f77 6e20 2870 726f 6365 6475 hutdown (procedu\n-0000f110: 7265 292e 2028 6c69 6e65 2031 3729 0a2a re). (line 17).*\n-0000f120: 2052 6563 6569 7665 5f53 6f6d 653a 2020 Receive_Some: \n+0000f0b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f0c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f0d0: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+0000f0e0: 6c69 6e65 2020 3629 0a2a 204d 756c 7469 line 6).* Multi\n+0000f0f0: 6361 7374 2073 6f63 6b65 7473 3a20 2020 cast sockets: \n+0000f100: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f110: 2020 5365 7474 696e 6720 7570 206d 756c Setting up mul\n+0000f120: 7469 6361 7374 2073 6f63 6b65 7473 2e0a ticast sockets..\n 0000f130: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f140: 2020 2020 2020 2020 5265 6365 6976 655f Receive_\n-0000f150: 536f 6d65 2028 7072 6f63 6564 7572 6529 Some (procedure)\n-0000f160: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-0000f170: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f180: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f140: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f150: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f160: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+0000f170: 6c69 6e65 2020 3629 0a2a 204d 756c 7469 line 6).* Multi\n+0000f180: 6361 7374 5f53 6f63 6b65 745f 4644 3a20 cast_Socket_FD: \n 0000f190: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f1a0: 2028 6c69 6e65 2020 3929 0a2a 2052 6563 (line 9).* Rec\n-0000f1b0: 6569 7669 6e67 2064 6174 613a 2020 2020 eiving data: \n+0000f1a0: 2020 5365 7474 696e 6720 7570 206d 756c Setting up mul\n+0000f1b0: 7469 6361 7374 2073 6f63 6b65 7473 2e0a ticast sockets..\n 0000f1c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f1d0: 2020 2020 5365 6e64 696e 6720 616e 6420 Sending and \n-0000f1e0: 7265 6365 6976 696e 6720 6461 7461 2e0a receiving data..\n-0000f1f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f200: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f210: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f220: 2020 2020 2020 2020 2020 2020 2020 2028 (\n-0000f230: 6c69 6e65 2020 3629 0a2a 2052 6563 6569 line 6).* Recei\n-0000f240: 7669 6e67 2064 6174 6120 3c31 3e3a 2020 ving data <1>: \n+0000f1d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f1e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f1f0: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+0000f200: 6c69 6e65 2031 3629 0a2a 204d 756c 7469 line 16).* Multi\n+0000f210: 6361 7374 5f53 6f63 6b65 745f 4644 203c cast_Socket_FD <\n+0000f220: 313e 3a20 2020 2020 2020 2020 2020 2020 1>: \n+0000f230: 2020 536f 636b 6574 732e 4d75 6c74 6963 Sockets.Multic\n+0000f240: 6173 7420 7061 636b 6167 652e 0a20 2020 ast package.. \n 0000f250: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f260: 2020 4765 7420 2866 756e 6374 696f 6e29 Get (function)\n-0000f270: 2e20 2020 2020 2020 286c 696e 6520 2036 . (line 6\n-0000f280: 290a 2a20 5265 6365 6976 696e 6720 6461 ).* Receiving da\n-0000f290: 7461 203c 323e 3a20 2020 2020 2020 2020 ta <2>: \n-0000f2a0: 2020 2020 2020 2020 2020 2047 6574 5f43 Get_C\n-0000f2b0: 6861 7220 2866 756e 6374 696f 6e29 2e20 har (function). \n-0000f2c0: 2028 6c69 6e65 2020 3629 0a2a 2052 6563 (line 6).* Rec\n-0000f2d0: 6569 7669 6e67 2064 6174 6120 3c33 3e3a eiving data <3>:\n-0000f2e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f2f0: 2020 2020 4765 745f 4c69 6e65 2028 6675 Get_Line (fu\n-0000f300: 6e63 7469 6f6e 292e 2020 286c 696e 6520 nction). (line \n-0000f310: 2036 290a 2a20 5265 6365 6976 696e 6720 6).* Receiving \n-0000f320: 6461 7461 203c 343e 3a20 2020 2020 2020 data <4>: \n-0000f330: 2020 2020 2020 2020 2020 2020 2047 6574 Get\n-0000f340: 5f4c 696e 6520 2870 726f 6365 6475 7265 _Line (procedure\n-0000f350: 292e 2028 6c69 6e65 2020 3629 0a2a 2052 ). (line 6).* R\n-0000f360: 6563 6569 7669 6e67 2064 6174 6120 3c35 eceiving data <5\n-0000f370: 3e3a 2020 2020 2020 2020 2020 2020 2020 >: \n-0000f380: 2020 2020 2020 4765 745f 5265 6365 6976 Get_Receiv\n-0000f390: 655f 5175 6575 655f 5369 7a65 2028 6675 e_Queue_Size (fu\n-0000f3a0: 6e63 7469 6f6e 292e 0a20 2020 2020 2020 nction).. \n+0000f260: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f270: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f280: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+0000f290: 6520 2038 290a 2a20 4e61 6d65 5f4f 663a e 8).* Name_Of:\n+0000f2a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f2b0: 2020 2020 2020 2020 2020 2020 2020 204e N\n+0000f2c0: 616d 655f 4f66 2028 6675 6e63 7469 6f6e ame_Of (function\n+0000f2d0: 292e 2020 2028 6c69 6e65 2020 3929 0a2a ). (line 9).*\n+0000f2e0: 204e 616d 696e 675f 4572 726f 723a 2020 Naming_Error: \n+0000f2f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f300: 2020 2020 2020 2020 4164 6472 6573 735f Address_\n+0000f310: 4f66 2028 6675 6e63 7469 6f6e 292e 0a20 Of (function).. \n+0000f320: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f330: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f340: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f350: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+0000f360: 696e 6520 3231 290a 2a20 4e61 6d69 6e67 ine 21).* Naming\n+0000f370: 5f45 7272 6f72 203c 313e 3a20 2020 2020 _Error <1>: \n+0000f380: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f390: 2049 6e66 6f5f 4f66 5f4e 616d 655f 4f72 Info_Of_Name_Or\n+0000f3a0: 5f49 5020 2866 756e 6374 696f 6e29 2e0a _IP (function)..\n 0000f3b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000f3c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000f3d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f3e0: 2020 2020 2020 2020 286c 696e 6520 2036 (line 6\n-0000f3f0: 290a 2a20 5265 6365 6976 696e 6720 6461 ).* Receiving da\n-0000f400: 7461 203c 363e 3a20 2020 2020 2020 2020 ta <6>: \n-0000f410: 2020 2020 2020 2020 2020 2052 6563 6569 Recei\n-0000f420: 7665 2028 6675 6e63 7469 6f6e 292e 2020 ve (function). \n-0000f430: 2028 6c69 6e65 2020 3629 0a2a 2052 6563 (line 6).* Rec\n-0000f440: 6569 7669 6e67 2064 6174 6120 3c37 3e3a eiving data <7>:\n+0000f3e0: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+0000f3f0: 6c69 6e65 2032 3529 0a2a 204e 616d 696e line 25).* Namin\n+0000f400: 675f 4572 726f 7220 3c32 3e3a 2020 2020 g_Error <2>: \n+0000f410: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f420: 2020 4e61 6d65 5f4f 6620 2866 756e 6374 Name_Of (funct\n+0000f430: 696f 6e29 2e20 2020 286c 696e 6520 3230 ion). (line 20\n+0000f440: 290a 2a20 4e65 775f 4c69 6e65 3a20 2020 ).* New_Line: \n 0000f450: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f460: 2020 2020 5265 6365 6976 6520 2870 726f Receive (pro\n-0000f470: 6365 6475 7265 292e 2020 286c 696e 6520 cedure). (line \n-0000f480: 2036 290a 2a20 5265 6365 6976 696e 6720 6).* Receiving \n-0000f490: 6461 7461 203c 383e 3a20 2020 2020 2020 data <8>: \n-0000f4a0: 2020 2020 2020 2020 2020 2020 2052 6563 Rec\n-0000f4b0: 6569 7665 5f53 6f6d 6520 2870 726f 6365 eive_Some (proce\n-0000f4c0: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n-0000f4d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f460: 2020 2020 2020 2020 2020 204e 6577 5f4c New_L\n+0000f470: 696e 6520 2870 726f 6365 6475 7265 292e ine (procedure).\n+0000f480: 2028 6c69 6e65 2020 3929 0a2a 2050 465f (line 9).* PF_\n+0000f490: 494e 4554 3a20 2020 2020 2020 2020 2020 INET: \n+0000f4a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f4b0: 2020 2020 536f 636b 6574 2028 7072 6f63 Socket (proc\n+0000f4c0: 6564 7572 6529 2e20 2020 286c 696e 6520 edure). (line \n+0000f4d0: 3139 290a 2a20 5075 743a 2020 2020 2020 19).* Put: \n 0000f4e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f4f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f500: 2020 2020 2020 286c 696e 6520 2036 290a (line 6).\n-0000f510: 2a20 5265 6365 6976 696e 6720 6461 7461 * Receiving data\n-0000f520: 203c 393e 3a20 2020 2020 2020 2020 2020 <9>: \n-0000f530: 2020 2020 2020 2020 2053 6574 5f42 7566 Set_Buf\n-0000f540: 6665 7220 2870 726f 6365 6475 7265 292e fer (procedure).\n-0000f550: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-0000f560: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f570: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f580: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f590: 286c 696e 6520 2036 290a 2a20 5265 706f (line 6).* Repo\n-0000f5a0: 7274 696e 6720 6120 6275 673a 2020 2020 rting a bug: \n+0000f4f0: 2020 2020 2020 2020 2020 2020 2050 7574 Put\n+0000f500: 2028 7072 6f63 6564 7572 6529 2e20 2020 (procedure). \n+0000f510: 2020 2028 6c69 6e65 2020 3929 0a2a 2050 (line 9).* P\n+0000f520: 7574 5f4c 696e 653a 2020 2020 2020 2020 ut_Line: \n+0000f530: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f540: 2020 2020 2020 5075 745f 4c69 6e65 2028 Put_Line (\n+0000f550: 7072 6f63 6564 7572 6529 2e20 286c 696e procedure). (lin\n+0000f560: 6520 2039 290a 2a20 5261 7720 6461 7461 e 9).* Raw data\n+0000f570: 206d 616e 6970 756c 6174 696f 6e3a 2020 manipulation: \n+0000f580: 2020 2020 2020 2020 2020 2020 2020 2052 R\n+0000f590: 6177 2064 6174 6120 6d61 6e69 7075 6c61 aw data manipula\n+0000f5a0: 7469 6f6e 2e0a 2020 2020 2020 2020 2020 tion.. \n 0000f5b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f5c0: 2020 2052 6573 6f75 7263 6573 206f 6e20 Resources on \n-0000f5d0: 7468 6520 496e 7465 726e 6574 2e0a 2020 the Internet.. \n-0000f5e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f5f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f5c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f5d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f5e0: 2020 2020 2028 6c69 6e65 2020 3629 0a2a (line 6).*\n+0000f5f0: 2052 6563 6569 7665 3a20 2020 2020 2020 Receive: \n 0000f600: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f610: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-0000f620: 6e65 2020 3629 0a2a 2052 6570 7265 7365 ne 6).* Represe\n-0000f630: 6e74 696e 6720 4950 2061 6464 7265 7373 nting IP address\n-0000f640: 6573 3a20 2020 2020 2020 2020 2020 2020 es: \n-0000f650: 496d 6167 6520 2866 756e 6374 696f 6e29 Image (function)\n-0000f660: 2e20 2020 2020 286c 696e 6520 2036 290a . (line 6).\n-0000f670: 2a20 5265 7072 6573 656e 7469 6e67 2049 * Representing I\n-0000f680: 5020 6164 6472 6573 7365 7320 3c31 3e3a P addresses <1>:\n-0000f690: 2020 2020 2020 2020 2056 616c 7565 2028 Value (\n-0000f6a0: 6675 6e63 7469 6f6e 292e 2020 2020 2028 function). (\n-0000f6b0: 6c69 6e65 2020 3629 0a2a 2052 6574 7269 line 6).* Retri\n-0000f6c0: 6576 696e 6720 736f 636b 6574 206f 7074 eving socket opt\n-0000f6d0: 696f 6e73 3a20 2020 2020 2020 2020 2020 ions: \n-0000f6e0: 2020 4765 7473 6f63 6b6f 7074 2028 7072 Getsockopt (pr\n-0000f6f0: 6f63 6564 7572 6529 2e0a 2020 2020 2020 ocedure).. \n-0000f700: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f610: 2020 2020 2020 2020 5265 6365 6976 6520 Receive \n+0000f620: 2866 756e 6374 696f 6e29 2e20 2020 286c (function). (l\n+0000f630: 696e 6520 2039 290a 2a20 5265 6365 6976 ine 9).* Receiv\n+0000f640: 6520 3c31 3e3a 2020 2020 2020 2020 2020 e <1>: \n+0000f650: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f660: 2052 6563 6569 7665 2028 7072 6f63 6564 Receive (proced\n+0000f670: 7572 6529 2e20 2028 6c69 6e65 2020 3929 ure). (line 9)\n+0000f680: 0a2a 2052 6563 6569 7665 203c 323e 3a20 .* Receive <2>: \n+0000f690: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f6a0: 2020 2020 2020 2020 2020 5368 7574 646f Shutdo\n+0000f6b0: 776e 2028 7072 6f63 6564 7572 6529 2e20 wn (procedure). \n+0000f6c0: 286c 696e 6520 3137 290a 2a20 5265 6365 (line 17).* Rece\n+0000f6d0: 6976 655f 536f 6d65 3a20 2020 2020 2020 ive_Some: \n+0000f6e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f6f0: 2020 2052 6563 6569 7665 5f53 6f6d 6520 Receive_Some \n+0000f700: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n 0000f710: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000f720: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f730: 2020 2020 2020 2020 2028 6c69 6e65 2020 (line \n-0000f740: 3629 0a2a 2053 656e 643a 2020 2020 2020 6).* Send: \n-0000f750: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f760: 2020 2020 2020 2020 2020 2020 5365 6e64 Send\n-0000f770: 2028 7072 6f63 6564 7572 6529 2e20 2020 (procedure). \n-0000f780: 2020 286c 696e 6520 2039 290a 2a20 5365 (line 9).* Se\n-0000f790: 6e64 203c 313e 3a20 2020 2020 2020 2020 nd <1>: \n+0000f730: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f740: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+0000f750: 6520 2039 290a 2a20 5265 6365 6976 696e e 9).* Receivin\n+0000f760: 6720 6461 7461 3a20 2020 2020 2020 2020 g data: \n+0000f770: 2020 2020 2020 2020 2020 2020 2020 2053 S\n+0000f780: 656e 6469 6e67 2061 6e64 2072 6563 6569 ending and recei\n+0000f790: 7669 6e67 2064 6174 612e 0a20 2020 2020 ving data.. \n 0000f7a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f7b0: 2020 2020 2053 6875 7464 6f77 6e20 2870 Shutdown (p\n-0000f7c0: 726f 6365 6475 7265 292e 2028 6c69 6e65 rocedure). (line\n-0000f7d0: 2031 3729 0a2a 2053 656e 6469 6e67 2064 17).* Sending d\n-0000f7e0: 6174 613a 2020 2020 2020 2020 2020 2020 ata: \n-0000f7f0: 2020 2020 2020 2020 2020 2020 2020 5365 Se\n-0000f800: 6e64 696e 6720 616e 6420 7265 6365 6976 nding and receiv\n-0000f810: 696e 6720 6461 7461 2e0a 2020 2020 2020 ing data.. \n-0000f820: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f830: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f840: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f850: 2020 2020 2020 2020 2028 6c69 6e65 2020 (line \n-0000f860: 3629 0a2a 2053 656e 6469 6e67 2064 6174 6).* Sending dat\n-0000f870: 6120 3c31 3e3a 2020 2020 2020 2020 2020 a <1>: \n-0000f880: 2020 2020 2020 2020 2020 2020 4765 745f Get_\n-0000f890: 5365 6e64 5f51 7565 7565 5f53 697a 6520 Send_Queue_Size \n-0000f8a0: 2866 756e 6374 696f 6e29 2e0a 2020 2020 (function).. \n-0000f8b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f8c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f8d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f8e0: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-0000f8f0: 2020 3629 0a2a 2053 656e 6469 6e67 2064 6).* Sending d\n-0000f900: 6174 6120 3c32 3e3a 2020 2020 2020 2020 ata <2>: \n-0000f910: 2020 2020 2020 2020 2020 2020 2020 4e65 Ne\n-0000f920: 775f 4c69 6e65 2028 7072 6f63 6564 7572 w_Line (procedur\n-0000f930: 6529 2e20 286c 696e 6520 2036 290a 2a20 e). (line 6).* \n-0000f940: 5365 6e64 696e 6720 6461 7461 203c 333e Sending data <3>\n-0000f950: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n-0000f960: 2020 2020 2020 2050 7574 2028 7072 6f63 Put (proc\n-0000f970: 6564 7572 6529 2e20 2020 2020 2028 6c69 edure). (li\n-0000f980: 6e65 2020 3629 0a2a 2053 656e 6469 6e67 ne 6).* Sending\n-0000f990: 2064 6174 6120 3c34 3e3a 2020 2020 2020 data <4>: \n-0000f9a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000f9b0: 5075 745f 4c69 6e65 2028 7072 6f63 6564 Put_Line (proced\n-0000f9c0: 7572 6529 2e20 286c 696e 6520 2036 290a ure). (line 6).\n-0000f9d0: 2a20 5365 6e64 696e 6720 6461 7461 203c * Sending data <\n-0000f9e0: 353e 3a20 2020 2020 2020 2020 2020 2020 5>: \n-0000f9f0: 2020 2020 2020 2020 2053 656e 6420 2870 Send (p\n-0000fa00: 726f 6365 6475 7265 292e 2020 2020 2028 rocedure). (\n-0000fa10: 6c69 6e65 2020 3629 0a2a 2053 656e 6469 line 6).* Sendi\n-0000fa20: 6e67 2070 6174 6368 6573 3a20 2020 2020 ng patches: \n-0000fa30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fa40: 2020 5265 736f 7572 6365 7320 6f6e 2074 Resources on t\n-0000fa50: 6865 2049 6e74 6572 6e65 742e 0a20 2020 he Internet.. \n-0000fa60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fa70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f7b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f7c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f7d0: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n+0000f7e0: 2036 290a 2a20 5265 6365 6976 696e 6720 6).* Receiving \n+0000f7f0: 6461 7461 203c 313e 3a20 2020 2020 2020 data <1>: \n+0000f800: 2020 2020 2020 2020 2020 2020 2047 6574 Get\n+0000f810: 2028 6675 6e63 7469 6f6e 292e 2020 2020 (function). \n+0000f820: 2020 2028 6c69 6e65 2020 3629 0a2a 2052 (line 6).* R\n+0000f830: 6563 6569 7669 6e67 2064 6174 6120 3c32 eceiving data <2\n+0000f840: 3e3a 2020 2020 2020 2020 2020 2020 2020 >: \n+0000f850: 2020 2020 2020 4765 745f 4368 6172 2028 Get_Char (\n+0000f860: 6675 6e63 7469 6f6e 292e 2020 286c 696e function). (lin\n+0000f870: 6520 2036 290a 2a20 5265 6365 6976 696e e 6).* Receivin\n+0000f880: 6720 6461 7461 203c 333e 3a20 2020 2020 g data <3>: \n+0000f890: 2020 2020 2020 2020 2020 2020 2020 2047 G\n+0000f8a0: 6574 5f4c 696e 6520 2866 756e 6374 696f et_Line (functio\n+0000f8b0: 6e29 2e20 2028 6c69 6e65 2020 3629 0a2a n). (line 6).*\n+0000f8c0: 2052 6563 6569 7669 6e67 2064 6174 6120 Receiving data \n+0000f8d0: 3c34 3e3a 2020 2020 2020 2020 2020 2020 <4>: \n+0000f8e0: 2020 2020 2020 2020 4765 745f 4c69 6e65 Get_Line\n+0000f8f0: 2028 7072 6f63 6564 7572 6529 2e20 286c (procedure). (l\n+0000f900: 696e 6520 2036 290a 2a20 5265 6365 6976 ine 6).* Receiv\n+0000f910: 696e 6720 6461 7461 203c 353e 3a20 2020 ing data <5>: \n+0000f920: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f930: 2047 6574 5f52 6563 6569 7665 5f51 7565 Get_Receive_Que\n+0000f940: 7565 5f53 697a 6520 2866 756e 6374 696f ue_Size (functio\n+0000f950: 6e29 2e0a 2020 2020 2020 2020 2020 2020 n).. \n+0000f960: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f970: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f980: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000f990: 2020 2028 6c69 6e65 2020 3629 0a2a 2052 (line 6).* R\n+0000f9a0: 6563 6569 7669 6e67 2064 6174 6120 3c36 eceiving data <6\n+0000f9b0: 3e3a 2020 2020 2020 2020 2020 2020 2020 >: \n+0000f9c0: 2020 2020 2020 5265 6365 6976 6520 2866 Receive (f\n+0000f9d0: 756e 6374 696f 6e29 2e20 2020 286c 696e unction). (lin\n+0000f9e0: 6520 2036 290a 2a20 5265 6365 6976 696e e 6).* Receivin\n+0000f9f0: 6720 6461 7461 203c 373e 3a20 2020 2020 g data <7>: \n+0000fa00: 2020 2020 2020 2020 2020 2020 2020 2052 R\n+0000fa10: 6563 6569 7665 2028 7072 6f63 6564 7572 eceive (procedur\n+0000fa20: 6529 2e20 2028 6c69 6e65 2020 3629 0a2a e). (line 6).*\n+0000fa30: 2052 6563 6569 7669 6e67 2064 6174 6120 Receiving data \n+0000fa40: 3c38 3e3a 2020 2020 2020 2020 2020 2020 <8>: \n+0000fa50: 2020 2020 2020 2020 5265 6365 6976 655f Receive_\n+0000fa60: 536f 6d65 2028 7072 6f63 6564 7572 6529 Some (procedure)\n+0000fa70: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n 0000fa80: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fa90: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n-0000faa0: 6520 2036 290a 2a20 5365 7473 6f63 6b6f e 6).* Setsocko\n-0000fab0: 7074 3a20 2020 2020 2020 2020 2020 2020 pt: \n-0000fac0: 2020 2020 2020 2020 2020 2020 2020 2053 S\n-0000fad0: 6574 736f 636b 6f70 7420 2870 726f 6365 etsockopt (proce\n-0000fae0: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n-0000faf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fa90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000faa0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fab0: 2028 6c69 6e65 2020 3629 0a2a 2052 6563 (line 6).* Rec\n+0000fac0: 6569 7669 6e67 2064 6174 6120 3c39 3e3a eiving data <9>:\n+0000fad0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fae0: 2020 2020 5365 745f 4275 6666 6572 2028 Set_Buffer (\n+0000faf0: 7072 6f63 6564 7572 6529 2e0a 2020 2020 procedure).. \n 0000fb00: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000fb10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fb20: 2020 2020 2020 286c 696e 6520 2039 290a (line 9).\n-0000fb30: 2a20 5365 7474 696e 6720 736f 636b 6574 * Setting socket\n-0000fb40: 206f 7074 696f 6e73 3a20 2020 2020 2020 options: \n-0000fb50: 2020 2020 2020 2020 2053 6574 736f 636b Setsock\n-0000fb60: 6f70 7420 2870 726f 6365 6475 7265 292e opt (procedure).\n-0000fb70: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-0000fb80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fb20: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fb30: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n+0000fb40: 2020 3629 0a2a 2052 6563 6569 7669 6e67 6).* Receiving\n+0000fb50: 2064 6174 6120 3c31 303e 3a20 2020 2020 data <10>: \n+0000fb60: 2020 2020 2020 2020 2020 2020 2020 556e Un\n+0000fb70: 7365 745f 4275 6666 6572 2028 7072 6f63 set_Buffer (proc\n+0000fb80: 6564 7572 6529 2e0a 2020 2020 2020 2020 edure).. \n 0000fb90: 2020 2020 2020 2020 2020 2020 2020 2020 \n 0000fba0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fbb0: 286c 696e 6520 2036 290a 2a20 5365 745f (line 6).* Set_\n-0000fbc0: 4275 6666 6572 3a20 2020 2020 2020 2020 Buffer: \n-0000fbd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fbe0: 2020 2053 6574 5f42 7566 6665 7220 2870 Set_Buffer (p\n-0000fbf0: 726f 6365 6475 7265 292e 0a20 2020 2020 rocedure).. \n-0000fc00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fc10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fbb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fbc0: 2020 2020 2020 2028 6c69 6e65 2020 3629 (line 6)\n+0000fbd0: 0a2a 2052 6570 6f72 7469 6e67 2061 2062 .* Reporting a b\n+0000fbe0: 7567 3a20 2020 2020 2020 2020 2020 2020 ug: \n+0000fbf0: 2020 2020 2020 2020 2020 5265 736f 7572 Resour\n+0000fc00: 6365 7320 6f6e 2074 6865 2049 6e74 6572 ces on the Inter\n+0000fc10: 6e65 742e 0a20 2020 2020 2020 2020 2020 net.. \n 0000fc20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fc30: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n-0000fc40: 2039 290a 2a20 5368 7574 646f 776e 3a20 9).* Shutdown: \n-0000fc50: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fc60: 2020 2020 2020 2020 2020 2020 2053 6875 Shu\n-0000fc70: 7464 6f77 6e20 2870 726f 6365 6475 7265 tdown (procedure\n-0000fc80: 292e 2028 6c69 6e65 2020 3929 0a2a 2053 ). (line 9).* S\n-0000fc90: 6f63 6b65 743a 2020 2020 2020 2020 2020 ocket: \n-0000fca0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fcb0: 2020 2020 2020 5365 7474 696e 6720 7570 Setting up\n-0000fcc0: 2075 6e69 6361 7374 2073 6f63 6b65 7473 unicast sockets\n-0000fcd0: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-0000fce0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fcf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fd00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fd10: 2028 6c69 6e65 2020 3629 0a2a 2053 6f63 (line 6).* Soc\n-0000fd20: 6b65 7420 3c31 3e3a 2020 2020 2020 2020 ket <1>: \n-0000fd30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fd40: 2020 2020 536f 636b 6574 2028 7072 6f63 Socket (proc\n-0000fd50: 6564 7572 6529 2e20 2020 286c 696e 6520 edure). (line \n-0000fd60: 2039 290a 2a20 536f 636b 6574 2073 6875 9).* Socket shu\n-0000fd70: 7464 6f77 6e3a 2020 2020 2020 2020 2020 tdown: \n-0000fd80: 2020 2020 2020 2020 2020 2020 2053 6875 Shu\n-0000fd90: 7464 6f77 6e20 2870 726f 6365 6475 7265 tdown (procedure\n-0000fda0: 292e 2028 6c69 6e65 2020 3629 0a2a 2053 ). (line 6).* S\n-0000fdb0: 6f63 6b65 7473 2e41 6363 6570 745f 536f ockets.Accept_So\n-0000fdc0: 636b 6574 3a20 2020 2020 2020 2020 2020 cket: \n-0000fdd0: 2020 2020 2020 4163 6365 7074 5f53 6f63 Accept_Soc\n-0000fde0: 6b65 7420 2870 726f 6365 6475 7265 292e ket (procedure).\n-0000fdf0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-0000fe00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fe10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fc30: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fc40: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fc50: 2020 2020 286c 696e 6520 2036 290a 2a20 (line 6).* \n+0000fc60: 5265 7072 6573 656e 7469 6e67 2049 5020 Representing IP \n+0000fc70: 6164 6472 6573 7365 733a 2020 2020 2020 addresses: \n+0000fc80: 2020 2020 2020 2049 6d61 6765 2028 6675 Image (fu\n+0000fc90: 6e63 7469 6f6e 292e 2020 2020 2028 6c69 nction). (li\n+0000fca0: 6e65 2020 3629 0a2a 2052 6570 7265 7365 ne 6).* Represe\n+0000fcb0: 6e74 696e 6720 4950 2061 6464 7265 7373 nting IP address\n+0000fcc0: 6573 203c 313e 3a20 2020 2020 2020 2020 es <1>: \n+0000fcd0: 5661 6c75 6520 2866 756e 6374 696f 6e29 Value (function)\n+0000fce0: 2e20 2020 2020 286c 696e 6520 2036 290a . (line 6).\n+0000fcf0: 2a20 5265 7472 6965 7669 6e67 2073 6f63 * Retrieving soc\n+0000fd00: 6b65 7420 6f70 7469 6f6e 733a 2020 2020 ket options: \n+0000fd10: 2020 2020 2020 2020 2047 6574 736f 636b Getsock\n+0000fd20: 6f70 7420 2870 726f 6365 6475 7265 292e opt (procedure).\n+0000fd30: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000fd40: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fd50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fd60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fd70: 286c 696e 6520 2036 290a 2a20 5365 6e64 (line 6).* Send\n+0000fd80: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+0000fd90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fda0: 2020 2053 656e 6420 2870 726f 6365 6475 Send (procedu\n+0000fdb0: 7265 292e 2020 2020 2028 6c69 6e65 2020 re). (line \n+0000fdc0: 3929 0a2a 2053 656e 6420 3c31 3e3a 2020 9).* Send <1>: \n+0000fdd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fde0: 2020 2020 2020 2020 2020 2020 5368 7574 Shut\n+0000fdf0: 646f 776e 2028 7072 6f63 6564 7572 6529 down (procedure)\n+0000fe00: 2e20 286c 696e 6520 3137 290a 2a20 5365 . (line 17).* Se\n+0000fe10: 6e64 696e 6720 6461 7461 3a20 2020 2020 nding data: \n 0000fe20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fe30: 286c 696e 6520 3131 290a 2a20 536f 636b (line 11).* Sock\n-0000fe40: 6574 732e 4269 6e64 3a20 2020 2020 2020 ets.Bind: \n-0000fe50: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fe60: 2020 2042 696e 6420 2870 726f 6365 6475 Bind (procedu\n-0000fe70: 7265 292e 2020 2020 2028 6c69 6e65 2031 re). (line 1\n-0000fe80: 3129 0a2a 2053 6f63 6b65 7473 2e43 6f6e 1).* Sockets.Con\n-0000fe90: 6e65 6374 3a20 2020 2020 2020 2020 2020 nect: \n-0000fea0: 2020 2020 2020 2020 2020 2020 436f 6e6e Conn\n-0000feb0: 6563 7420 2870 726f 6365 6475 7265 292e ect (procedure).\n-0000fec0: 2020 286c 696e 6520 3131 290a 2a20 536f (line 11).* So\n-0000fed0: 636b 6574 732e 4765 743a 2020 2020 2020 ckets.Get: \n-0000fee0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000fef0: 2020 2020 2047 6574 2028 6675 6e63 7469 Get (functi\n-0000ff00: 6f6e 292e 2020 2020 2020 2028 6c69 6e65 on). (line\n-0000ff10: 2031 3129 0a2a 2053 6f63 6b65 7473 2e47 11).* Sockets.G\n-0000ff20: 6574 736f 636b 6f70 743a 2020 2020 2020 etsockopt: \n-0000ff30: 2020 2020 2020 2020 2020 2020 2020 4765 Ge\n-0000ff40: 7473 6f63 6b6f 7074 2028 7072 6f63 6564 tsockopt (proced\n-0000ff50: 7572 6529 2e0a 2020 2020 2020 2020 2020 ure).. \n-0000ff60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ff70: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ff80: 2020 2020 2020 2020 2020 2020 2020 2020 \n-0000ff90: 2020 2020 2028 6c69 6e65 2031 3229 0a2a (line 12).*\n-0000ffa0: 2053 6f63 6b65 7473 2e47 6574 5f43 6861 Sockets.Get_Cha\n-0000ffb0: 723a 2020 2020 2020 2020 2020 2020 2020 r: \n-0000ffc0: 2020 2020 2020 2020 4765 745f 4368 6172 Get_Char\n-0000ffd0: 2028 6675 6e63 7469 6f6e 292e 2020 286c (function). (l\n-0000ffe0: 696e 6520 3131 290a 2a20 536f 636b 6574 ine 11).* Socket\n-0000fff0: 732e 4765 745f 4c69 6e65 3a20 2020 2020 s.Get_Line: \n-00010000: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010010: 2047 6574 5f4c 696e 6520 2866 756e 6374 Get_Line (funct\n-00010020: 696f 6e29 2e20 2028 6c69 6e65 2031 3229 ion). (line 12)\n-00010030: 0a2a 2053 6f63 6b65 7473 2e47 6574 5f4c .* Sockets.Get_L\n-00010040: 696e 6520 3c31 3e3a 2020 2020 2020 2020 ine <1>: \n-00010050: 2020 2020 2020 2020 2020 4765 745f 4c69 Get_Li\n-00010060: 6e65 2028 7072 6f63 6564 7572 6529 2e20 ne (procedure). \n-00010070: 286c 696e 6520 3131 290a 2a20 536f 636b (line 11).* Sock\n-00010080: 6574 732e 4765 745f 5265 6365 6976 655f ets.Get_Receive_\n-00010090: 5175 6575 655f 5369 7a65 3a20 2020 2020 Queue_Size: \n-000100a0: 2020 2047 6574 5f52 6563 6569 7665 5f51 Get_Receive_Q\n-000100b0: 7565 7565 5f53 697a 6520 2866 756e 6374 ueue_Size (funct\n-000100c0: 696f 6e29 2e0a 2020 2020 2020 2020 2020 ion).. \n-000100d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000100e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fe30: 2020 2020 2053 656e 6469 6e67 2061 6e64 Sending and\n+0000fe40: 2072 6563 6569 7669 6e67 2064 6174 612e receiving data.\n+0000fe50: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+0000fe60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fe70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fe80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fe90: 286c 696e 6520 2036 290a 2a20 5365 6e64 (line 6).* Send\n+0000fea0: 696e 6720 6461 7461 203c 313e 3a20 2020 ing data <1>: \n+0000feb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000fec0: 2020 2047 6574 5f53 656e 645f 5175 6575 Get_Send_Queu\n+0000fed0: 655f 5369 7a65 2028 6675 6e63 7469 6f6e e_Size (function\n+0000fee0: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n+0000fef0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ff00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ff10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ff20: 2020 286c 696e 6520 2036 290a 2a20 5365 (line 6).* Se\n+0000ff30: 6e64 696e 6720 6461 7461 203c 323e 3a20 nding data <2>: \n+0000ff40: 2020 2020 2020 2020 2020 2020 2020 2020 \n+0000ff50: 2020 2020 204e 6577 5f4c 696e 6520 2870 New_Line (p\n+0000ff60: 726f 6365 6475 7265 292e 2028 6c69 6e65 rocedure). (line\n+0000ff70: 2020 3629 0a2a 2053 656e 6469 6e67 2064 6).* Sending d\n+0000ff80: 6174 6120 3c33 3e3a 2020 2020 2020 2020 ata <3>: \n+0000ff90: 2020 2020 2020 2020 2020 2020 2020 5075 Pu\n+0000ffa0: 7420 2870 726f 6365 6475 7265 292e 2020 t (procedure). \n+0000ffb0: 2020 2020 286c 696e 6520 2036 290a 2a20 (line 6).* \n+0000ffc0: 5365 6e64 696e 6720 6461 7461 203c 343e Sending data <4>\n+0000ffd0: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+0000ffe0: 2020 2020 2020 2050 7574 5f4c 696e 6520 Put_Line \n+0000fff0: 2870 726f 6365 6475 7265 292e 2028 6c69 (procedure). (li\n+00010000: 6e65 2020 3629 0a2a 2053 656e 6469 6e67 ne 6).* Sending\n+00010010: 2064 6174 6120 3c35 3e3a 2020 2020 2020 data <5>: \n+00010020: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010030: 5365 6e64 2028 7072 6f63 6564 7572 6529 Send (procedure)\n+00010040: 2e20 2020 2020 286c 696e 6520 2036 290a . (line 6).\n+00010050: 2a20 5365 6e64 696e 6720 7061 7463 6865 * Sending patche\n+00010060: 733a 2020 2020 2020 2020 2020 2020 2020 s: \n+00010070: 2020 2020 2020 2020 2052 6573 6f75 7263 Resourc\n+00010080: 6573 206f 6e20 7468 6520 496e 7465 726e es on the Intern\n+00010090: 6574 2e0a 2020 2020 2020 2020 2020 2020 et.. \n+000100a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000100b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000100c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000100d0: 2020 2028 6c69 6e65 2020 3629 0a2a 2053 (line 6).* S\n+000100e0: 6574 736f 636b 6f70 743a 2020 2020 2020 etsockopt: \n 000100f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010100: 2020 2020 2028 6c69 6e65 2031 3229 0a2a (line 12).*\n-00010110: 2053 6f63 6b65 7473 2e47 6574 5f53 656e Sockets.Get_Sen\n-00010120: 645f 5175 6575 655f 5369 7a65 3a20 2020 d_Queue_Size: \n-00010130: 2020 2020 2020 2020 4765 745f 5365 6e64 Get_Send\n-00010140: 5f51 7565 7565 5f53 697a 6520 2866 756e _Queue_Size (fun\n-00010150: 6374 696f 6e29 2e0a 2020 2020 2020 2020 ction).. \n-00010160: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010170: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010100: 2020 2020 2020 5365 7473 6f63 6b6f 7074 Setsockopt\n+00010110: 2028 7072 6f63 6564 7572 6529 2e0a 2020 (procedure).. \n+00010120: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010130: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010140: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010150: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n+00010160: 6e65 2020 3929 0a2a 2053 6574 7469 6e67 ne 9).* Setting\n+00010170: 2073 6f63 6b65 7420 6f70 7469 6f6e 733a socket options:\n 00010180: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010190: 2020 2020 2020 2028 6c69 6e65 2031 3229 (line 12)\n-000101a0: 0a2a 2053 6f63 6b65 7473 2e49 5050 524f .* Sockets.IPPRO\n-000101b0: 544f 5f49 503a 2020 2020 2020 2020 2020 TO_IP: \n-000101c0: 2020 2020 2020 2020 2020 4765 7473 6f63 Getsoc\n-000101d0: 6b6f 7074 2028 7072 6f63 6564 7572 6529 kopt (procedure)\n-000101e0: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-000101f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010190: 5365 7473 6f63 6b6f 7074 2028 7072 6f63 Setsockopt (proc\n+000101a0: 6564 7572 6529 2e0a 2020 2020 2020 2020 edure).. \n+000101b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000101c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000101d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000101e0: 2020 2020 2020 2028 6c69 6e65 2020 3629 (line 6)\n+000101f0: 0a2a 2053 6574 5f42 7566 6665 723a 2020 .* Set_Buffer: \n 00010200: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010210: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010220: 2028 6c69 6e65 2032 3029 0a2a 2053 6f63 (line 20).* Soc\n-00010230: 6b65 7473 2e49 5050 524f 544f 5f49 5020 kets.IPPROTO_IP \n-00010240: 3c31 3e3a 2020 2020 2020 2020 2020 2020 <1>: \n-00010250: 2020 2020 5365 7473 6f63 6b6f 7074 2028 Setsockopt (\n-00010260: 7072 6f63 6564 7572 6529 2e0a 2020 2020 procedure).. \n-00010270: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010280: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010210: 2020 2020 2020 2020 2020 5365 745f 4275 Set_Bu\n+00010220: 6666 6572 2028 7072 6f63 6564 7572 6529 ffer (procedure)\n+00010230: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n+00010240: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010250: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010260: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010270: 2028 6c69 6e65 2020 3929 0a2a 2053 6875 (line 9).* Shu\n+00010280: 7464 6f77 6e3a 2020 2020 2020 2020 2020 tdown: \n 00010290: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000102a0: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-000102b0: 2032 3029 0a2a 2053 6f63 6b65 7473 2e49 20).* Sockets.I\n-000102c0: 505f 4144 445f 4d45 4d42 4552 5348 4950 P_ADD_MEMBERSHIP\n-000102d0: 3a20 2020 2020 2020 2020 2020 2020 4765 : Ge\n-000102e0: 7473 6f63 6b6f 7074 2028 7072 6f63 6564 tsockopt (proced\n-000102f0: 7572 6529 2e0a 2020 2020 2020 2020 2020 ure).. \n-00010300: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000102a0: 2020 2020 5368 7574 646f 776e 2028 7072 Shutdown (pr\n+000102b0: 6f63 6564 7572 6529 2e20 286c 696e 6520 ocedure). (line \n+000102c0: 2039 290a 2a20 536f 636b 6574 3a20 2020 9).* Socket: \n+000102d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000102e0: 2020 2020 2020 2020 2020 2020 2053 6574 Set\n+000102f0: 7469 6e67 2075 7020 756e 6963 6173 7420 ting up unicast \n+00010300: 736f 636b 6574 732e 0a20 2020 2020 2020 sockets.. \n 00010310: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00010320: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010330: 2020 2020 2028 6c69 6e65 2032 3029 0a2a (line 20).*\n-00010340: 2053 6f63 6b65 7473 2e49 505f 4144 445f Sockets.IP_ADD_\n-00010350: 4d45 4d42 4552 5348 4950 203c 313e 3a20 MEMBERSHIP <1>: \n-00010360: 2020 2020 2020 2020 5365 7473 6f63 6b6f Setsocko\n-00010370: 7074 2028 7072 6f63 6564 7572 6529 2e0a pt (procedure)..\n-00010380: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010390: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000103a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000103b0: 2020 2020 2020 2020 2020 2020 2020 2028 (\n-000103c0: 6c69 6e65 2032 3029 0a2a 2053 6f63 6b65 line 20).* Socke\n-000103d0: 7473 2e49 505f 4452 4f50 5f4d 454d 4245 ts.IP_DROP_MEMBE\n-000103e0: 5253 4849 503a 2020 2020 2020 2020 2020 RSHIP: \n-000103f0: 2020 4765 7473 6f63 6b6f 7074 2028 7072 Getsockopt (pr\n-00010400: 6f63 6564 7572 6529 2e0a 2020 2020 2020 ocedure).. \n-00010410: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010420: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010330: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010340: 2020 2020 2020 2020 286c 696e 6520 2036 (line 6\n+00010350: 290a 2a20 536f 636b 6574 203c 313e 3a20 ).* Socket <1>: \n+00010360: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010370: 2020 2020 2020 2020 2020 2053 6f63 6b65 Socke\n+00010380: 7420 2870 726f 6365 6475 7265 292e 2020 t (procedure). \n+00010390: 2028 6c69 6e65 2020 3929 0a2a 2053 6f63 (line 9).* Soc\n+000103a0: 6b65 7420 7368 7574 646f 776e 3a20 2020 ket shutdown: \n+000103b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000103c0: 2020 2020 5368 7574 646f 776e 2028 7072 Shutdown (pr\n+000103d0: 6f63 6564 7572 6529 2e20 286c 696e 6520 ocedure). (line \n+000103e0: 2036 290a 2a20 536f 636b 6574 732e 4163 6).* Sockets.Ac\n+000103f0: 6365 7074 5f53 6f63 6b65 743a 2020 2020 cept_Socket: \n+00010400: 2020 2020 2020 2020 2020 2020 2041 6363 Acc\n+00010410: 6570 745f 536f 636b 6574 2028 7072 6f63 ept_Socket (proc\n+00010420: 6564 7572 6529 2e0a 2020 2020 2020 2020 edure).. \n 00010430: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010440: 2020 2020 2020 2020 2028 6c69 6e65 2032 (line 2\n-00010450: 3029 0a2a 2053 6f63 6b65 7473 2e49 505f 0).* Sockets.IP_\n-00010460: 4452 4f50 5f4d 454d 4245 5253 4849 5020 DROP_MEMBERSHIP \n-00010470: 3c31 3e3a 2020 2020 2020 2020 5365 7473 <1>: Sets\n-00010480: 6f63 6b6f 7074 2028 7072 6f63 6564 7572 ockopt (procedur\n-00010490: 6529 2e0a 2020 2020 2020 2020 2020 2020 e).. \n-000104a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000104b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000104c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000104d0: 2020 2028 6c69 6e65 2032 3029 0a2a 2053 (line 20).* S\n-000104e0: 6f63 6b65 7473 2e49 505f 4d55 4c54 4943 ockets.IP_MULTIC\n-000104f0: 4153 545f 4c4f 4f50 3a20 2020 2020 2020 AST_LOOP: \n-00010500: 2020 2020 2020 4765 7473 6f63 6b6f 7074 Getsockopt\n-00010510: 2028 7072 6f63 6564 7572 6529 2e0a 2020 (procedure).. \n-00010520: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010530: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010540: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010550: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-00010560: 6e65 2032 3029 0a2a 2053 6f63 6b65 7473 ne 20).* Sockets\n-00010570: 2e49 505f 4d55 4c54 4943 4153 545f 4c4f .IP_MULTICAST_LO\n-00010580: 4f50 203c 313e 3a20 2020 2020 2020 2020 OP <1>: \n-00010590: 5365 7473 6f63 6b6f 7074 2028 7072 6f63 Setsockopt (proc\n-000105a0: 6564 7572 6529 2e0a 2020 2020 2020 2020 edure).. \n+00010440: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010450: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010460: 2020 2020 2020 2028 6c69 6e65 2031 3129 (line 11)\n+00010470: 0a2a 2053 6f63 6b65 7473 2e42 696e 643a .* Sockets.Bind:\n+00010480: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010490: 2020 2020 2020 2020 2020 4269 6e64 2028 Bind (\n+000104a0: 7072 6f63 6564 7572 6529 2e20 2020 2020 procedure). \n+000104b0: 286c 696e 6520 3131 290a 2a20 536f 636b (line 11).* Sock\n+000104c0: 6574 732e 436f 6e6e 6563 743a 2020 2020 ets.Connect: \n+000104d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000104e0: 2020 2043 6f6e 6e65 6374 2028 7072 6f63 Connect (proc\n+000104f0: 6564 7572 6529 2e20 2028 6c69 6e65 2031 edure). (line 1\n+00010500: 3129 0a2a 2053 6f63 6b65 7473 2e47 6574 1).* Sockets.Get\n+00010510: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+00010520: 2020 2020 2020 2020 2020 2020 4765 7420 Get \n+00010530: 2866 756e 6374 696f 6e29 2e20 2020 2020 (function). \n+00010540: 2020 286c 696e 6520 3131 290a 2a20 536f (line 11).* So\n+00010550: 636b 6574 732e 4765 7473 6f63 6b6f 7074 ckets.Getsockopt\n+00010560: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+00010570: 2020 2020 2047 6574 736f 636b 6f70 7420 Getsockopt \n+00010580: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n+00010590: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000105a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 000105b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000105c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000105d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000105e0: 2020 2020 2020 2028 6c69 6e65 2032 3029 (line 20)\n-000105f0: 0a2a 2053 6f63 6b65 7473 2e49 505f 4d55 .* Sockets.IP_MU\n-00010600: 4c54 4943 4153 545f 5454 4c3a 2020 2020 LTICAST_TTL: \n-00010610: 2020 2020 2020 2020 2020 4765 7473 6f63 Getsoc\n-00010620: 6b6f 7074 2028 7072 6f63 6564 7572 6529 kopt (procedure)\n-00010630: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-00010640: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010650: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010660: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010670: 2028 6c69 6e65 2032 3029 0a2a 2053 6f63 (line 20).* Soc\n-00010680: 6b65 7473 2e49 505f 4d55 4c54 4943 4153 kets.IP_MULTICAS\n-00010690: 545f 5454 4c20 3c31 3e3a 2020 2020 2020 T_TTL <1>: \n-000106a0: 2020 2020 5365 7473 6f63 6b6f 7074 2028 Setsockopt (\n-000106b0: 7072 6f63 6564 7572 6529 2e0a 2020 2020 procedure).. \n-000106c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000106d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000106e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000106f0: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-00010700: 2032 3029 0a2a 2053 6f63 6b65 7473 2e4c 20).* Sockets.L\n-00010710: 6973 7465 6e3a 2020 2020 2020 2020 2020 isten: \n-00010720: 2020 2020 2020 2020 2020 2020 2020 4c69 Li\n-00010730: 7374 656e 2028 7072 6f63 6564 7572 6529 sten (procedure)\n-00010740: 2e20 2020 286c 696e 6520 3131 290a 2a20 . (line 11).* \n-00010750: 536f 636b 6574 732e 4d75 6c74 6963 6173 Sockets.Multicas\n-00010760: 742e 4372 6561 7465 5f4d 756c 7469 6361 t.Create_Multica\n-00010770: 7374 5f53 6f63 6b65 743a 2053 6574 7469 st_Socket: Setti\n-00010780: 6e67 2075 7020 6d75 6c74 6963 6173 7420 ng up multicast \n-00010790: 736f 636b 6574 732e 0a20 2020 2020 2020 sockets.. \n+000105c0: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+000105d0: 6520 3132 290a 2a20 536f 636b 6574 732e e 12).* Sockets.\n+000105e0: 4765 745f 4368 6172 3a20 2020 2020 2020 Get_Char: \n+000105f0: 2020 2020 2020 2020 2020 2020 2020 2047 G\n+00010600: 6574 5f43 6861 7220 2866 756e 6374 696f et_Char (functio\n+00010610: 6e29 2e20 2028 6c69 6e65 2031 3129 0a2a n). (line 11).*\n+00010620: 2053 6f63 6b65 7473 2e47 6574 5f4c 696e Sockets.Get_Lin\n+00010630: 653a 2020 2020 2020 2020 2020 2020 2020 e: \n+00010640: 2020 2020 2020 2020 4765 745f 4c69 6e65 Get_Line\n+00010650: 2028 6675 6e63 7469 6f6e 292e 2020 286c (function). (l\n+00010660: 696e 6520 3132 290a 2a20 536f 636b 6574 ine 12).* Socket\n+00010670: 732e 4765 745f 4c69 6e65 203c 313e 3a20 s.Get_Line <1>: \n+00010680: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010690: 2047 6574 5f4c 696e 6520 2870 726f 6365 Get_Line (proce\n+000106a0: 6475 7265 292e 2028 6c69 6e65 2031 3129 dure). (line 11)\n+000106b0: 0a2a 2053 6f63 6b65 7473 2e47 6574 5f52 .* Sockets.Get_R\n+000106c0: 6563 6569 7665 5f51 7565 7565 5f53 697a eceive_Queue_Siz\n+000106d0: 653a 2020 2020 2020 2020 4765 745f 5265 e: Get_Re\n+000106e0: 6365 6976 655f 5175 6575 655f 5369 7a65 ceive_Queue_Size\n+000106f0: 2028 6675 6e63 7469 6f6e 292e 0a20 2020 (function).. \n+00010700: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010710: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010720: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010730: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+00010740: 6520 3132 290a 2a20 536f 636b 6574 732e e 12).* Sockets.\n+00010750: 4765 745f 5365 6e64 5f51 7565 7565 5f53 Get_Send_Queue_S\n+00010760: 697a 653a 2020 2020 2020 2020 2020 2047 ize: G\n+00010770: 6574 5f53 656e 645f 5175 6575 655f 5369 et_Send_Queue_Si\n+00010780: 7a65 2028 6675 6e63 7469 6f6e 292e 0a20 ze (function).. \n+00010790: 2020 2020 2020 2020 2020 2020 2020 2020 \n 000107a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 000107b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000107c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000107d0: 2020 2020 2020 2020 286c 696e 6520 3136 (line 16\n-000107e0: 290a 2a20 536f 636b 6574 732e 4d75 6c74 ).* Sockets.Mult\n-000107f0: 6963 6173 742e 4372 6561 7465 5f4d 756c icast.Create_Mul\n-00010800: 7469 6361 7374 5f53 6f63 6b65 7420 3c31 ticast_Socket <1\n-00010810: 3e3a 2043 7265 6174 655f 4d75 6c74 6963 >: Create_Multic\n-00010820: 6173 745f 536f 636b 6574 2028 6675 6e63 ast_Socket (func\n-00010830: 7469 6f6e 292e 0a20 2020 2020 2020 2020 tion).. \n+000107c0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+000107d0: 696e 6520 3132 290a 2a20 536f 636b 6574 ine 12).* Socket\n+000107e0: 732e 4950 5052 4f54 4f5f 4950 3a20 2020 s.IPPROTO_IP: \n+000107f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010800: 2047 6574 736f 636b 6f70 7420 2870 726f Getsockopt (pro\n+00010810: 6365 6475 7265 292e 0a20 2020 2020 2020 cedure).. \n+00010820: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010830: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00010840: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010850: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010860: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010870: 2020 2020 2020 286c 696e 6520 3134 290a (line 14).\n-00010880: 2a20 536f 636b 6574 732e 4d75 6c74 6963 * Sockets.Multic\n-00010890: 6173 742e 4372 6561 7465 5f4d 756c 7469 ast.Create_Multi\n-000108a0: 6361 7374 5f53 6f63 6b65 7420 3c32 3e3a cast_Socket <2>:\n-000108b0: 202e 2020 2020 2020 2020 2020 2020 2028 . (\n-000108c0: 6c69 6e65 2036 3129 0a2a 2053 6f63 6b65 line 61).* Socke\n-000108d0: 7473 2e4e 616d 696e 672e 4164 6472 6573 ts.Naming.Addres\n-000108e0: 735f 4f66 3a20 2020 2020 2020 2020 2020 s_Of: \n-000108f0: 2020 4164 6472 6573 735f 4f66 2028 6675 Address_Of (fu\n-00010900: 6e63 7469 6f6e 292e 0a20 2020 2020 2020 nction).. \n-00010910: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010920: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010850: 2020 2020 2020 2020 286c 696e 6520 3230 (line 20\n+00010860: 290a 2a20 536f 636b 6574 732e 4950 5052 ).* Sockets.IPPR\n+00010870: 4f54 4f5f 4950 203c 313e 3a20 2020 2020 OTO_IP <1>: \n+00010880: 2020 2020 2020 2020 2020 2053 6574 736f Setso\n+00010890: 636b 6f70 7420 2870 726f 6365 6475 7265 ckopt (procedure\n+000108a0: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n+000108b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000108c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000108d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000108e0: 2020 286c 696e 6520 3230 290a 2a20 536f (line 20).* So\n+000108f0: 636b 6574 732e 4950 5f41 4444 5f4d 454d ckets.IP_ADD_MEM\n+00010900: 4245 5253 4849 503a 2020 2020 2020 2020 BERSHIP: \n+00010910: 2020 2020 2047 6574 736f 636b 6f70 7420 Getsockopt \n+00010920: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n 00010930: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010940: 2020 2020 2020 2020 286c 696e 6520 3132 (line 12\n-00010950: 290a 2a20 536f 636b 6574 732e 4e61 6d69 ).* Sockets.Nami\n-00010960: 6e67 2e41 6e79 5f41 6464 7265 7373 3a20 ng.Any_Address: \n-00010970: 2020 2020 2020 2020 2020 2041 6e79 5f41 Any_A\n-00010980: 6464 7265 7373 2028 6675 6e63 7469 6f6e ddress (function\n-00010990: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n-000109a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000109b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010940: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010950: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010960: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+00010970: 6520 3230 290a 2a20 536f 636b 6574 732e e 20).* Sockets.\n+00010980: 4950 5f41 4444 5f4d 454d 4245 5253 4849 IP_ADD_MEMBERSHI\n+00010990: 5020 3c31 3e3a 2020 2020 2020 2020 2053 P <1>: S\n+000109a0: 6574 736f 636b 6f70 7420 2870 726f 6365 etsockopt (proce\n+000109b0: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n 000109c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000109d0: 2020 286c 696e 6520 3130 290a 2a20 536f (line 10).* So\n-000109e0: 636b 6574 732e 4e61 6d69 6e67 2e47 6574 ckets.Naming.Get\n-000109f0: 5f50 6565 725f 4164 6472 3a20 2020 2020 _Peer_Addr: \n-00010a00: 2020 2020 2047 6574 5f50 6565 725f 4164 Get_Peer_Ad\n-00010a10: 6472 2028 6675 6e63 7469 6f6e 292e 0a20 dr (function).. \n-00010a20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010a30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010a40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010a50: 2020 2020 2020 2020 2020 2020 2020 286c (l\n-00010a60: 696e 6520 3132 290a 2a20 536f 636b 6574 ine 12).* Socket\n-00010a70: 732e 4e61 6d69 6e67 2e47 6574 5f50 6565 s.Naming.Get_Pee\n-00010a80: 725f 506f 7274 3a20 2020 2020 2020 2020 r_Port: \n-00010a90: 2047 6574 5f50 6565 725f 506f 7274 2028 Get_Peer_Port (\n-00010aa0: 6675 6e63 7469 6f6e 292e 0a20 2020 2020 function).. \n-00010ab0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010ac0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000109d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000109e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000109f0: 2020 2020 2020 286c 696e 6520 3230 290a (line 20).\n+00010a00: 2a20 536f 636b 6574 732e 4950 5f44 524f * Sockets.IP_DRO\n+00010a10: 505f 4d45 4d42 4552 5348 4950 3a20 2020 P_MEMBERSHIP: \n+00010a20: 2020 2020 2020 2020 2047 6574 736f 636b Getsock\n+00010a30: 6f70 7420 2870 726f 6365 6475 7265 292e opt (procedure).\n+00010a40: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+00010a50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010a60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010a70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010a80: 286c 696e 6520 3230 290a 2a20 536f 636b (line 20).* Sock\n+00010a90: 6574 732e 4950 5f44 524f 505f 4d45 4d42 ets.IP_DROP_MEMB\n+00010aa0: 4552 5348 4950 203c 313e 3a20 2020 2020 ERSHIP <1>: \n+00010ab0: 2020 2053 6574 736f 636b 6f70 7420 2870 Setsockopt (p\n+00010ac0: 726f 6365 6475 7265 292e 0a20 2020 2020 rocedure).. \n 00010ad0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010ae0: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n-00010af0: 3132 290a 2a20 536f 636b 6574 732e 4e61 12).* Sockets.Na\n-00010b00: 6d69 6e67 2e47 6574 5f53 6f63 6b5f 4164 ming.Get_Sock_Ad\n-00010b10: 6472 3a20 2020 2020 2020 2020 2047 6574 dr: Get\n-00010b20: 5f53 6f63 6b5f 4164 6472 2028 6675 6e63 _Sock_Addr (func\n-00010b30: 7469 6f6e 292e 0a20 2020 2020 2020 2020 tion).. \n-00010b40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010b50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010ae0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010af0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010b00: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n+00010b10: 3230 290a 2a20 536f 636b 6574 732e 4950 20).* Sockets.IP\n+00010b20: 5f4d 554c 5449 4341 5354 5f4c 4f4f 503a _MULTICAST_LOOP:\n+00010b30: 2020 2020 2020 2020 2020 2020 2047 6574 Get\n+00010b40: 736f 636b 6f70 7420 2870 726f 6365 6475 sockopt (procedu\n+00010b50: 7265 292e 0a20 2020 2020 2020 2020 2020 re).. \n 00010b60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010b70: 2020 2020 2020 286c 696e 6520 3132 290a (line 12).\n-00010b80: 2a20 536f 636b 6574 732e 4e61 6d69 6e67 * Sockets.Naming\n-00010b90: 2e47 6574 5f53 6f63 6b5f 506f 7274 3a20 .Get_Sock_Port: \n-00010ba0: 2020 2020 2020 2020 2047 6574 5f53 6f63 Get_Soc\n-00010bb0: 6b5f 506f 7274 2028 6675 6e63 7469 6f6e k_Port (function\n-00010bc0: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n-00010bd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010b70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010b80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010b90: 2020 2020 286c 696e 6520 3230 290a 2a20 (line 20).* \n+00010ba0: 536f 636b 6574 732e 4950 5f4d 554c 5449 Sockets.IP_MULTI\n+00010bb0: 4341 5354 5f4c 4f4f 5020 3c31 3e3a 2020 CAST_LOOP <1>: \n+00010bc0: 2020 2020 2020 2053 6574 736f 636b 6f70 Setsockop\n+00010bd0: 7420 2870 726f 6365 6475 7265 292e 0a20 t (procedure).. \n 00010be0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00010bf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010c00: 2020 286c 696e 6520 3132 290a 2a20 536f (line 12).* So\n-00010c10: 636b 6574 732e 4e61 6d69 6e67 2e48 6f73 ckets.Naming.Hos\n-00010c20: 745f 4e61 6d65 3a20 2020 2020 2020 2020 t_Name: \n-00010c30: 2020 2020 2048 6f73 745f 4e61 6d65 2028 Host_Name (\n-00010c40: 6675 6e63 7469 6f6e 292e 2028 6c69 6e65 function). (line\n-00010c50: 2031 3029 0a2a 2053 6f63 6b65 7473 2e4e 10).* Sockets.N\n-00010c60: 616d 696e 672e 496d 6167 653a 2020 2020 aming.Image: \n-00010c70: 2020 2020 2020 2020 2020 2020 2020 496d Im\n-00010c80: 6167 6520 2866 756e 6374 696f 6e29 2e20 age (function). \n-00010c90: 2020 2020 286c 696e 6520 3131 290a 2a20 (line 11).* \n-00010ca0: 536f 636b 6574 732e 4e61 6d69 6e67 2e49 Sockets.Naming.I\n-00010cb0: 6e66 6f5f 4f66 5f4e 616d 655f 4f72 5f49 nfo_Of_Name_Or_I\n-00010cc0: 503a 2020 2020 2049 6e66 6f5f 4f66 5f4e P: Info_Of_N\n-00010cd0: 616d 655f 4f72 5f49 5020 2866 756e 6374 ame_Or_IP (funct\n-00010ce0: 696f 6e29 2e0a 2020 2020 2020 2020 2020 ion).. \n-00010cf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010c00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010c10: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+00010c20: 696e 6520 3230 290a 2a20 536f 636b 6574 ine 20).* Socket\n+00010c30: 732e 4950 5f4d 554c 5449 4341 5354 5f54 s.IP_MULTICAST_T\n+00010c40: 544c 3a20 2020 2020 2020 2020 2020 2020 TL: \n+00010c50: 2047 6574 736f 636b 6f70 7420 2870 726f Getsockopt (pro\n+00010c60: 6365 6475 7265 292e 0a20 2020 2020 2020 cedure).. \n+00010c70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010c80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010c90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010ca0: 2020 2020 2020 2020 286c 696e 6520 3230 (line 20\n+00010cb0: 290a 2a20 536f 636b 6574 732e 4950 5f4d ).* Sockets.IP_M\n+00010cc0: 554c 5449 4341 5354 5f54 544c 203c 313e ULTICAST_TTL <1>\n+00010cd0: 3a20 2020 2020 2020 2020 2053 6574 736f : Setso\n+00010ce0: 636b 6f70 7420 2870 726f 6365 6475 7265 ckopt (procedure\n+00010cf0: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n 00010d00: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00010d10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010d20: 2020 2020 2028 6c69 6e65 2031 3229 0a2a (line 12).*\n-00010d30: 2053 6f63 6b65 7473 2e4e 616d 696e 672e Sockets.Naming.\n-00010d40: 4973 5f49 505f 4164 6472 6573 733a 2020 Is_IP_Address: \n-00010d50: 2020 2020 2020 2020 4973 5f49 505f 4164 Is_IP_Ad\n-00010d60: 6472 6573 7320 2866 756e 6374 696f 6e29 dress (function)\n-00010d70: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-00010d80: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010d90: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010da0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010db0: 2028 6c69 6e65 2031 3229 0a2a 2053 6f63 (line 12).* Soc\n-00010dc0: 6b65 7473 2e4e 616d 696e 672e 4e61 6d65 kets.Naming.Name\n-00010dd0: 5f4f 663a 2020 2020 2020 2020 2020 2020 _Of: \n-00010de0: 2020 2020 4e61 6d65 5f4f 6620 2866 756e Name_Of (fun\n-00010df0: 6374 696f 6e29 2e20 2020 286c 696e 6520 ction). (line \n-00010e00: 3131 290a 2a20 536f 636b 6574 732e 4e61 11).* Sockets.Na\n-00010e10: 6d69 6e67 2e56 616c 7565 3a20 2020 2020 ming.Value: \n-00010e20: 2020 2020 2020 2020 2020 2020 2056 616c Val\n-00010e30: 7565 2028 6675 6e63 7469 6f6e 292e 2020 ue (function). \n-00010e40: 2020 2028 6c69 6e65 2031 3129 0a2a 2053 (line 11).* S\n-00010e50: 6f63 6b65 7473 2e4e 6577 5f4c 696e 653a ockets.New_Line:\n-00010e60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010e70: 2020 2020 2020 4e65 775f 4c69 6e65 2028 New_Line (\n-00010e80: 7072 6f63 6564 7572 6529 2e20 286c 696e procedure). (lin\n-00010e90: 6520 3131 290a 2a20 536f 636b 6574 732e e 11).* Sockets.\n-00010ea0: 5075 743a 2020 2020 2020 2020 2020 2020 Put: \n-00010eb0: 2020 2020 2020 2020 2020 2020 2020 2050 P\n-00010ec0: 7574 2028 7072 6f63 6564 7572 6529 2e20 ut (procedure). \n-00010ed0: 2020 2020 2028 6c69 6e65 2031 3129 0a2a (line 11).*\n-00010ee0: 2053 6f63 6b65 7473 2e50 7574 5f4c 696e Sockets.Put_Lin\n-00010ef0: 653a 2020 2020 2020 2020 2020 2020 2020 e: \n-00010f00: 2020 2020 2020 2020 5075 745f 4c69 6e65 Put_Line\n-00010f10: 2028 7072 6f63 6564 7572 6529 2e20 286c (procedure). (l\n-00010f20: 696e 6520 3131 290a 2a20 536f 636b 6574 ine 11).* Socket\n-00010f30: 732e 5265 6365 6976 653a 2020 2020 2020 s.Receive: \n+00010d20: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010d30: 2020 286c 696e 6520 3230 290a 2a20 536f (line 20).* So\n+00010d40: 636b 6574 732e 4c69 7374 656e 3a20 2020 ckets.Listen: \n+00010d50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010d60: 2020 2020 204c 6973 7465 6e20 2870 726f Listen (pro\n+00010d70: 6365 6475 7265 292e 2020 2028 6c69 6e65 cedure). (line\n+00010d80: 2031 3129 0a2a 2053 6f63 6b65 7473 2e4d 11).* Sockets.M\n+00010d90: 756c 7469 6361 7374 2e43 7265 6174 655f ulticast.Create_\n+00010da0: 4d75 6c74 6963 6173 745f 536f 636b 6574 Multicast_Socket\n+00010db0: 3a20 5365 7474 696e 6720 7570 206d 756c : Setting up mul\n+00010dc0: 7469 6361 7374 2073 6f63 6b65 7473 2e0a ticast sockets..\n+00010dd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010de0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010df0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010e00: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+00010e10: 6c69 6e65 2031 3629 0a2a 2053 6f63 6b65 line 16).* Socke\n+00010e20: 7473 2e4d 756c 7469 6361 7374 2e43 7265 ts.Multicast.Cre\n+00010e30: 6174 655f 4d75 6c74 6963 6173 745f 536f ate_Multicast_So\n+00010e40: 636b 6574 203c 313e 3a20 4372 6561 7465 cket <1>: Create\n+00010e50: 5f4d 756c 7469 6361 7374 5f53 6f63 6b65 _Multicast_Socke\n+00010e60: 7420 2866 756e 6374 696f 6e29 2e0a 2020 t (function).. \n+00010e70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010e80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010e90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010ea0: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n+00010eb0: 6e65 2031 3429 0a2a 2053 6f63 6b65 7473 ne 14).* Sockets\n+00010ec0: 2e4d 756c 7469 6361 7374 2e43 7265 6174 .Multicast.Creat\n+00010ed0: 655f 4d75 6c74 6963 6173 745f 536f 636b e_Multicast_Sock\n+00010ee0: 6574 203c 323e 3a20 2e20 2020 2020 2020 et <2>: . \n+00010ef0: 2020 2020 2020 286c 696e 6520 3738 290a (line 78).\n+00010f00: 2a20 536f 636b 6574 732e 4e61 6d69 6e67 * Sockets.Naming\n+00010f10: 2e41 6464 7265 7373 5f4f 663a 2020 2020 .Address_Of: \n+00010f20: 2020 2020 2020 2020 2041 6464 7265 7373 Address\n+00010f30: 5f4f 6620 2866 756e 6374 696f 6e29 2e0a _Of (function)..\n 00010f40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00010f50: 2052 6563 6569 7665 2028 6675 6e63 7469 Receive (functi\n-00010f60: 6f6e 292e 2020 2028 6c69 6e65 2031 3229 on). (line 12)\n-00010f70: 0a2a 2053 6f63 6b65 7473 2e52 6563 6569 .* Sockets.Recei\n-00010f80: 7665 203c 313e 3a20 2020 2020 2020 2020 ve <1>: \n-00010f90: 2020 2020 2020 2020 2020 5265 6365 6976 Receiv\n-00010fa0: 6520 2870 726f 6365 6475 7265 292e 2020 e (procedure). \n-00010fb0: 286c 696e 6520 3131 290a 2a20 536f 636b (line 11).* Sock\n-00010fc0: 6574 732e 5265 6365 6976 655f 536f 6d65 ets.Receive_Some\n-00010fd0: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n-00010fe0: 2020 2052 6563 6569 7665 5f53 6f6d 6520 Receive_Some \n-00010ff0: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n-00011000: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011010: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011020: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011030: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n-00011040: 6520 3133 290a 2a20 536f 636b 6574 732e e 13).* Sockets.\n-00011050: 5365 6e64 3a20 2020 2020 2020 2020 2020 Send: \n-00011060: 2020 2020 2020 2020 2020 2020 2020 2053 S\n-00011070: 656e 6420 2870 726f 6365 6475 7265 292e end (procedure).\n-00011080: 2020 2020 2028 6c69 6e65 2031 3129 0a2a (line 11).*\n-00011090: 2053 6f63 6b65 7473 2e53 6574 736f 636b Sockets.Setsock\n-000110a0: 6f70 743a 2020 2020 2020 2020 2020 2020 opt: \n-000110b0: 2020 2020 2020 2020 5365 7473 6f63 6b6f Setsocko\n-000110c0: 7074 2028 7072 6f63 6564 7572 6529 2e0a pt (procedure)..\n-000110d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000110e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010f50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010f60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010f70: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+00010f80: 6c69 6e65 2031 3229 0a2a 2053 6f63 6b65 line 12).* Socke\n+00010f90: 7473 2e4e 616d 696e 672e 416e 795f 4164 ts.Naming.Any_Ad\n+00010fa0: 6472 6573 733a 2020 2020 2020 2020 2020 dress: \n+00010fb0: 2020 416e 795f 4164 6472 6573 7320 2866 Any_Address (f\n+00010fc0: 756e 6374 696f 6e29 2e0a 2020 2020 2020 unction).. \n+00010fd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010fe0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00010ff0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011000: 2020 2020 2020 2020 2028 6c69 6e65 2031 (line 1\n+00011010: 3029 0a2a 2053 6f63 6b65 7473 2e4e 616d 0).* Sockets.Nam\n+00011020: 696e 672e 4765 745f 5065 6572 5f41 6464 ing.Get_Peer_Add\n+00011030: 723a 2020 2020 2020 2020 2020 4765 745f r: Get_\n+00011040: 5065 6572 5f41 6464 7220 2866 756e 6374 Peer_Addr (funct\n+00011050: 696f 6e29 2e0a 2020 2020 2020 2020 2020 ion).. \n+00011060: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011070: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011080: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011090: 2020 2020 2028 6c69 6e65 2031 3229 0a2a (line 12).*\n+000110a0: 2053 6f63 6b65 7473 2e4e 616d 696e 672e Sockets.Naming.\n+000110b0: 4765 745f 5065 6572 5f50 6f72 743a 2020 Get_Peer_Port: \n+000110c0: 2020 2020 2020 2020 4765 745f 5065 6572 Get_Peer\n+000110d0: 5f50 6f72 7420 2866 756e 6374 696f 6e29 _Port (function)\n+000110e0: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n 000110f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011100: 2020 2020 2020 2020 2020 2020 2020 2028 (\n-00011110: 6c69 6e65 2031 3229 0a2a 2053 6f63 6b65 line 12).* Socke\n-00011120: 7473 2e53 6574 5f42 7566 6665 723a 2020 ts.Set_Buffer: \n-00011130: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011140: 2020 5365 745f 4275 6666 6572 2028 7072 Set_Buffer (pr\n-00011150: 6f63 6564 7572 6529 2e0a 2020 2020 2020 ocedure).. \n-00011160: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011100: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011110: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011120: 2028 6c69 6e65 2031 3229 0a2a 2053 6f63 (line 12).* Soc\n+00011130: 6b65 7473 2e4e 616d 696e 672e 4765 745f kets.Naming.Get_\n+00011140: 536f 636b 5f41 6464 723a 2020 2020 2020 Sock_Addr: \n+00011150: 2020 2020 4765 745f 536f 636b 5f41 6464 Get_Sock_Add\n+00011160: 7220 2866 756e 6374 696f 6e29 2e0a 2020 r (function).. \n 00011170: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011180: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011190: 2020 2020 2020 2020 2028 6c69 6e65 2031 (line 1\n-000111a0: 3129 0a2a 2053 6f63 6b65 7473 2e53 6875 1).* Sockets.Shu\n-000111b0: 7464 6f77 6e3a 2020 2020 2020 2020 2020 tdown: \n-000111c0: 2020 2020 2020 2020 2020 2020 5368 7574 Shut\n-000111d0: 646f 776e 2028 7072 6f63 6564 7572 6529 down (procedure)\n-000111e0: 2e20 286c 696e 6520 3131 290a 2a20 536f . (line 11).* So\n-000111f0: 636b 6574 732e 536f 636b 6574 3a20 2020 ckets.Socket: \n+00011190: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000111a0: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n+000111b0: 6e65 2031 3229 0a2a 2053 6f63 6b65 7473 ne 12).* Sockets\n+000111c0: 2e4e 616d 696e 672e 4765 745f 536f 636b .Naming.Get_Sock\n+000111d0: 5f50 6f72 743a 2020 2020 2020 2020 2020 _Port: \n+000111e0: 4765 745f 536f 636b 5f50 6f72 7420 2866 Get_Sock_Port (f\n+000111f0: 756e 6374 696f 6e29 2e0a 2020 2020 2020 unction).. \n 00011200: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011210: 2020 2020 2053 6574 7469 6e67 2075 7020 Setting up \n-00011220: 756e 6963 6173 7420 736f 636b 6574 732e unicast sockets.\n-00011230: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-00011240: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011250: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011260: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011270: 286c 696e 6520 2036 290a 2a20 536f 636b (line 6).* Sock\n-00011280: 6574 732e 536f 636b 6574 203c 313e 3a20 ets.Socket <1>: \n-00011290: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000112a0: 2020 2053 6f63 6b65 7420 2870 726f 6365 Socket (proce\n-000112b0: 6475 7265 292e 2020 2028 6c69 6e65 2031 dure). (line 1\n-000112c0: 3229 0a2a 2053 6f63 6b65 7473 2e53 4f4c 2).* Sockets.SOL\n-000112d0: 5f53 4f43 4b45 543a 2020 2020 2020 2020 _SOCKET: \n-000112e0: 2020 2020 2020 2020 2020 2020 4765 7473 Gets\n-000112f0: 6f63 6b6f 7074 2028 7072 6f63 6564 7572 ockopt (procedur\n-00011300: 6529 2e0a 2020 2020 2020 2020 2020 2020 e).. \n-00011310: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011210: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011220: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011230: 2020 2020 2020 2020 2028 6c69 6e65 2031 (line 1\n+00011240: 3229 0a2a 2053 6f63 6b65 7473 2e4e 616d 2).* Sockets.Nam\n+00011250: 696e 672e 486f 7374 5f4e 616d 653a 2020 ing.Host_Name: \n+00011260: 2020 2020 2020 2020 2020 2020 486f 7374 Host\n+00011270: 5f4e 616d 6520 2866 756e 6374 696f 6e29 _Name (function)\n+00011280: 2e20 286c 696e 6520 3130 290a 2a20 536f . (line 10).* So\n+00011290: 636b 6574 732e 4e61 6d69 6e67 2e49 6d61 ckets.Naming.Ima\n+000112a0: 6765 3a20 2020 2020 2020 2020 2020 2020 ge: \n+000112b0: 2020 2020 2049 6d61 6765 2028 6675 6e63 Image (func\n+000112c0: 7469 6f6e 292e 2020 2020 2028 6c69 6e65 tion). (line\n+000112d0: 2031 3129 0a2a 2053 6f63 6b65 7473 2e4e 11).* Sockets.N\n+000112e0: 616d 696e 672e 496e 666f 5f4f 665f 4e61 aming.Info_Of_Na\n+000112f0: 6d65 5f4f 725f 4950 3a20 2020 2020 496e me_Or_IP: In\n+00011300: 666f 5f4f 665f 4e61 6d65 5f4f 725f 4950 fo_Of_Name_Or_IP\n+00011310: 2028 6675 6e63 7469 6f6e 292e 0a20 2020 (function).. \n 00011320: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011330: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011340: 2020 2028 6c69 6e65 2032 3029 0a2a 2053 (line 20).* S\n-00011350: 6f63 6b65 7473 2e53 4f4c 5f53 4f43 4b45 ockets.SOL_SOCKE\n-00011360: 5420 3c31 3e3a 2020 2020 2020 2020 2020 T <1>: \n-00011370: 2020 2020 2020 5365 7473 6f63 6b6f 7074 Setsockopt\n-00011380: 2028 7072 6f63 6564 7572 6529 2e0a 2020 (procedure).. \n-00011390: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000113a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011340: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011350: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+00011360: 6520 3132 290a 2a20 536f 636b 6574 732e e 12).* Sockets.\n+00011370: 4e61 6d69 6e67 2e49 735f 4950 5f41 6464 Naming.Is_IP_Add\n+00011380: 7265 7373 3a20 2020 2020 2020 2020 2049 ress: I\n+00011390: 735f 4950 5f41 6464 7265 7373 2028 6675 s_IP_Address (fu\n+000113a0: 6e63 7469 6f6e 292e 0a20 2020 2020 2020 nction).. \n 000113b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000113c0: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-000113d0: 6e65 2032 3029 0a2a 2053 6f63 6b65 7473 ne 20).* Sockets\n-000113e0: 2e53 4f5f 5243 5642 5546 3a20 2020 2020 .SO_RCVBUF: \n-000113f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011400: 4765 7473 6f63 6b6f 7074 2028 7072 6f63 Getsockopt (proc\n-00011410: 6564 7572 6529 2e0a 2020 2020 2020 2020 edure).. \n-00011420: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011430: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011440: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011450: 2020 2020 2020 2028 6c69 6e65 2032 3029 (line 20)\n-00011460: 0a2a 2053 6f63 6b65 7473 2e53 4f5f 5243 .* Sockets.SO_RC\n-00011470: 5642 5546 203c 313e 3a20 2020 2020 2020 VBUF <1>: \n-00011480: 2020 2020 2020 2020 2020 5365 7473 6f63 Setsoc\n-00011490: 6b6f 7074 2028 7072 6f63 6564 7572 6529 kopt (procedure)\n-000114a0: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n-000114b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000114c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000114d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000114e0: 2028 6c69 6e65 2032 3029 0a2a 2053 6f63 (line 20).* Soc\n-000114f0: 6b65 7473 2e53 4f5f 5245 5553 4541 4444 kets.SO_REUSEADD\n-00011500: 523a 2020 2020 2020 2020 2020 2020 2020 R: \n-00011510: 2020 2020 4765 7473 6f63 6b6f 7074 2028 Getsockopt (\n-00011520: 7072 6f63 6564 7572 6529 2e0a 2020 2020 procedure).. \n-00011530: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011540: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011550: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011560: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-00011570: 2032 3029 0a2a 2053 6f63 6b65 7473 2e53 20).* Sockets.S\n-00011580: 4f5f 5245 5553 4541 4444 5220 3c31 3e3a O_REUSEADDR <1>:\n-00011590: 2020 2020 2020 2020 2020 2020 2020 5365 Se\n-000115a0: 7473 6f63 6b6f 7074 2028 7072 6f63 6564 tsockopt (proced\n-000115b0: 7572 6529 2e0a 2020 2020 2020 2020 2020 ure).. \n+000113c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000113d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000113e0: 2020 2020 2020 2020 286c 696e 6520 3132 (line 12\n+000113f0: 290a 2a20 536f 636b 6574 732e 4e61 6d69 ).* Sockets.Nami\n+00011400: 6e67 2e4e 616d 655f 4f66 3a20 2020 2020 ng.Name_Of: \n+00011410: 2020 2020 2020 2020 2020 204e 616d 655f Name_\n+00011420: 4f66 2028 6675 6e63 7469 6f6e 292e 2020 Of (function). \n+00011430: 2028 6c69 6e65 2031 3129 0a2a 2053 6f63 (line 11).* Soc\n+00011440: 6b65 7473 2e4e 616d 696e 672e 5661 6c75 kets.Naming.Valu\n+00011450: 653a 2020 2020 2020 2020 2020 2020 2020 e: \n+00011460: 2020 2020 5661 6c75 6520 2866 756e 6374 Value (funct\n+00011470: 696f 6e29 2e20 2020 2020 286c 696e 6520 ion). (line \n+00011480: 3131 290a 2a20 536f 636b 6574 732e 4e65 11).* Sockets.Ne\n+00011490: 775f 4c69 6e65 3a20 2020 2020 2020 2020 w_Line: \n+000114a0: 2020 2020 2020 2020 2020 2020 204e 6577 New\n+000114b0: 5f4c 696e 6520 2870 726f 6365 6475 7265 _Line (procedure\n+000114c0: 292e 2028 6c69 6e65 2031 3129 0a2a 2053 ). (line 11).* S\n+000114d0: 6f63 6b65 7473 2e50 7574 3a20 2020 2020 ockets.Put: \n+000114e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000114f0: 2020 2020 2020 5075 7420 2870 726f 6365 Put (proce\n+00011500: 6475 7265 292e 2020 2020 2020 286c 696e dure). (lin\n+00011510: 6520 3131 290a 2a20 536f 636b 6574 732e e 11).* Sockets.\n+00011520: 5075 745f 4c69 6e65 3a20 2020 2020 2020 Put_Line: \n+00011530: 2020 2020 2020 2020 2020 2020 2020 2050 P\n+00011540: 7574 5f4c 696e 6520 2870 726f 6365 6475 ut_Line (procedu\n+00011550: 7265 292e 2028 6c69 6e65 2031 3129 0a2a re). (line 11).*\n+00011560: 2053 6f63 6b65 7473 2e52 6563 6569 7665 Sockets.Receive\n+00011570: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+00011580: 2020 2020 2020 2020 5265 6365 6976 6520 Receive \n+00011590: 2866 756e 6374 696f 6e29 2e20 2020 286c (function). (l\n+000115a0: 696e 6520 3132 290a 2a20 536f 636b 6574 ine 12).* Socket\n+000115b0: 732e 5265 6365 6976 6520 3c31 3e3a 2020 s.Receive <1>: \n 000115c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000115d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000115e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000115f0: 2020 2020 2028 6c69 6e65 2032 3029 0a2a (line 20).*\n-00011600: 2053 6f63 6b65 7473 2e53 4f5f 5245 5553 Sockets.SO_REUS\n-00011610: 4550 4f52 543a 2020 2020 2020 2020 2020 EPORT: \n-00011620: 2020 2020 2020 2020 4765 7473 6f63 6b6f Getsocko\n-00011630: 7074 2028 7072 6f63 6564 7572 6529 2e0a pt (procedure)..\n+000115d0: 2052 6563 6569 7665 2028 7072 6f63 6564 Receive (proced\n+000115e0: 7572 6529 2e20 2028 6c69 6e65 2031 3129 ure). (line 11)\n+000115f0: 0a2a 2053 6f63 6b65 7473 2e52 6563 6569 .* Sockets.Recei\n+00011600: 7665 5f53 6f6d 653a 2020 2020 2020 2020 ve_Some: \n+00011610: 2020 2020 2020 2020 2020 5265 6365 6976 Receiv\n+00011620: 655f 536f 6d65 2028 7072 6f63 6564 7572 e_Some (procedur\n+00011630: 6529 2e0a 2020 2020 2020 2020 2020 2020 e).. \n 00011640: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011650: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011660: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011670: 2020 2020 2020 2020 2020 2020 2020 2028 (\n-00011680: 6c69 6e65 2032 3029 0a2a 2053 6f63 6b65 line 20).* Socke\n-00011690: 7473 2e53 4f5f 5245 5553 4550 4f52 5420 ts.SO_REUSEPORT \n-000116a0: 3c31 3e3a 2020 2020 2020 2020 2020 2020 <1>: \n-000116b0: 2020 5365 7473 6f63 6b6f 7074 2028 7072 Setsockopt (pr\n-000116c0: 6f63 6564 7572 6529 2e0a 2020 2020 2020 ocedure).. \n-000116d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000116e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000116f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011700: 2020 2020 2020 2020 2028 6c69 6e65 2032 (line 2\n-00011710: 3029 0a2a 2053 6f63 6b65 7473 2e53 4f5f 0).* Sockets.SO_\n-00011720: 534e 4442 5546 3a20 2020 2020 2020 2020 SNDBUF: \n-00011730: 2020 2020 2020 2020 2020 2020 4765 7473 Gets\n-00011740: 6f63 6b6f 7074 2028 7072 6f63 6564 7572 ockopt (procedur\n-00011750: 6529 2e0a 2020 2020 2020 2020 2020 2020 e).. \n-00011760: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011770: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011780: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011790: 2020 2028 6c69 6e65 2032 3029 0a2a 2053 (line 20).* S\n-000117a0: 6f63 6b65 7473 2e53 4f5f 534e 4442 5546 ockets.SO_SNDBUF\n-000117b0: 203c 313e 3a20 2020 2020 2020 2020 2020 <1>: \n-000117c0: 2020 2020 2020 5365 7473 6f63 6b6f 7074 Setsockopt\n-000117d0: 2028 7072 6f63 6564 7572 6529 2e0a 2020 (procedure).. \n-000117e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011670: 2020 2028 6c69 6e65 2031 3329 0a2a 2053 (line 13).* S\n+00011680: 6f63 6b65 7473 2e53 656e 643a 2020 2020 ockets.Send: \n+00011690: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000116a0: 2020 2020 2020 5365 6e64 2028 7072 6f63 Send (proc\n+000116b0: 6564 7572 6529 2e20 2020 2020 286c 696e edure). (lin\n+000116c0: 6520 3131 290a 2a20 536f 636b 6574 732e e 11).* Sockets.\n+000116d0: 5365 7473 6f63 6b6f 7074 3a20 2020 2020 Setsockopt: \n+000116e0: 2020 2020 2020 2020 2020 2020 2020 2053 S\n+000116f0: 6574 736f 636b 6f70 7420 2870 726f 6365 etsockopt (proce\n+00011700: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n+00011710: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011720: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011730: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011740: 2020 2020 2020 286c 696e 6520 3132 290a (line 12).\n+00011750: 2a20 536f 636b 6574 732e 5365 745f 4275 * Sockets.Set_Bu\n+00011760: 6666 6572 3a20 2020 2020 2020 2020 2020 ffer: \n+00011770: 2020 2020 2020 2020 2053 6574 5f42 7566 Set_Buf\n+00011780: 6665 7220 2870 726f 6365 6475 7265 292e fer (procedure).\n+00011790: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+000117a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000117b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000117c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000117d0: 286c 696e 6520 3131 290a 2a20 536f 636b (line 11).* Sock\n+000117e0: 6574 732e 5368 7574 646f 776e 3a20 2020 ets.Shutdown: \n 000117f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011800: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011810: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-00011820: 6e65 2032 3029 0a2a 2053 6f63 6b65 745f ne 20).* Socket_\n-00011830: 4572 726f 723a 2020 2020 2020 2020 2020 Error: \n-00011840: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011850: 4269 6e64 2028 7072 6f63 6564 7572 6529 Bind (procedure)\n-00011860: 2e20 2020 2020 286c 696e 6520 3330 290a . (line 30).\n-00011870: 2a20 536f 636b 6574 5f45 7272 6f72 203c * Socket_Error <\n-00011880: 313e 3a20 2020 2020 2020 2020 2020 2020 1>: \n-00011890: 2020 2020 2020 2020 2043 6f6e 6e65 6374 Connect\n-000118a0: 2028 7072 6f63 6564 7572 6529 2e20 2028 (procedure). (\n-000118b0: 6c69 6e65 2032 3729 0a2a 2053 6f63 6b65 line 27).* Socke\n-000118c0: 745f 4644 3a20 2020 2020 2020 2020 2020 t_FD: \n-000118d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000118e0: 2020 5365 7474 696e 6720 7570 2075 6e69 Setting up uni\n-000118f0: 6361 7374 2073 6f63 6b65 7473 2e0a 2020 cast sockets.. \n-00011900: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011800: 2020 2053 6875 7464 6f77 6e20 2870 726f Shutdown (pro\n+00011810: 6365 6475 7265 292e 2028 6c69 6e65 2031 cedure). (line 1\n+00011820: 3129 0a2a 2053 6f63 6b65 7473 2e53 6f63 1).* Sockets.Soc\n+00011830: 6b65 743a 2020 2020 2020 2020 2020 2020 ket: \n+00011840: 2020 2020 2020 2020 2020 2020 5365 7474 Sett\n+00011850: 696e 6720 7570 2075 6e69 6361 7374 2073 ing up unicast s\n+00011860: 6f63 6b65 7473 2e0a 2020 2020 2020 2020 ockets.. \n+00011870: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011880: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011890: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000118a0: 2020 2020 2020 2028 6c69 6e65 2020 3629 (line 6)\n+000118b0: 0a2a 2053 6f63 6b65 7473 2e53 6f63 6b65 .* Sockets.Socke\n+000118c0: 7420 3c31 3e3a 2020 2020 2020 2020 2020 t <1>: \n+000118d0: 2020 2020 2020 2020 2020 536f 636b 6574 Socket\n+000118e0: 2028 7072 6f63 6564 7572 6529 2e20 2020 (procedure). \n+000118f0: 286c 696e 6520 3132 290a 2a20 536f 636b (line 12).* Sock\n+00011900: 6574 732e 534f 4c5f 534f 434b 4554 3a20 ets.SOL_SOCKET: \n 00011910: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011920: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011930: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n-00011940: 6e65 2020 3629 0a2a 2053 6f63 6b65 745f ne 6).* Socket_\n-00011950: 4644 203c 313e 3a20 2020 2020 2020 2020 FD <1>: \n+00011920: 2020 2047 6574 736f 636b 6f70 7420 2870 Getsockopt (p\n+00011930: 726f 6365 6475 7265 292e 0a20 2020 2020 rocedure).. \n+00011940: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011950: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011960: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011970: 536f 636b 6574 7320 7061 636b 6167 652e Sockets package.\n-00011980: 2020 2020 2020 286c 696e 6520 2039 290a (line 9).\n-00011990: 2a20 534f 434b 5f44 4752 414d 3a20 2020 * SOCK_DGRAM: \n-000119a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000119b0: 2020 2020 2020 2020 2053 6f63 6b65 7420 Socket \n-000119c0: 2870 726f 6365 6475 7265 292e 2020 2028 (procedure). (\n-000119d0: 6c69 6e65 2031 3929 0a2a 2053 4f43 4b5f line 19).* SOCK_\n-000119e0: 5354 5245 414d 3a20 2020 2020 2020 2020 STREAM: \n+00011970: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n+00011980: 3230 290a 2a20 536f 636b 6574 732e 534f 20).* Sockets.SO\n+00011990: 4c5f 534f 434b 4554 203c 313e 3a20 2020 L_SOCKET <1>: \n+000119a0: 2020 2020 2020 2020 2020 2020 2053 6574 Set\n+000119b0: 736f 636b 6f70 7420 2870 726f 6365 6475 sockopt (procedu\n+000119c0: 7265 292e 0a20 2020 2020 2020 2020 2020 re).. \n+000119d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000119e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 000119f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011a00: 2020 536f 636b 6574 2028 7072 6f63 6564 Socket (proced\n-00011a10: 7572 6529 2e20 2020 286c 696e 6520 3139 ure). (line 19\n-00011a20: 290a 2a20 534f 4c5f 534f 434b 4554 3a20 ).* SOL_SOCKET: \n-00011a30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011a40: 2020 2020 2020 2020 2020 2047 6574 736f Getso\n-00011a50: 636b 6f70 7420 2870 726f 6365 6475 7265 ckopt (procedure\n-00011a60: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n+00011a00: 2020 2020 286c 696e 6520 3230 290a 2a20 (line 20).* \n+00011a10: 536f 636b 6574 732e 534f 5f52 4356 4255 Sockets.SO_RCVBU\n+00011a20: 463a 2020 2020 2020 2020 2020 2020 2020 F: \n+00011a30: 2020 2020 2020 2047 6574 736f 636b 6f70 Getsockop\n+00011a40: 7420 2870 726f 6365 6475 7265 292e 0a20 t (procedure).. \n+00011a50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011a60: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011a70: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011a80: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011a90: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011aa0: 2020 286c 696e 6520 3230 290a 2a20 534f (line 20).* SO\n-00011ab0: 4c5f 534f 434b 4554 203c 313e 3a20 2020 L_SOCKET <1>: \n-00011ac0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011ad0: 2020 2020 2053 6574 736f 636b 6f70 7420 Setsockopt \n-00011ae0: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n+00011a80: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+00011a90: 696e 6520 3230 290a 2a20 536f 636b 6574 ine 20).* Socket\n+00011aa0: 732e 534f 5f52 4356 4255 4620 3c31 3e3a s.SO_RCVBUF <1>:\n+00011ab0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011ac0: 2053 6574 736f 636b 6f70 7420 2870 726f Setsockopt (pro\n+00011ad0: 6365 6475 7265 292e 0a20 2020 2020 2020 cedure).. \n+00011ae0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011af0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011b00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011b10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011b20: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n-00011b30: 6520 3230 290a 2a20 534f 5f52 4356 4255 e 20).* SO_RCVBU\n-00011b40: 463a 2020 2020 2020 2020 2020 2020 2020 F: \n-00011b50: 2020 2020 2020 2020 2020 2020 2020 2047 G\n-00011b60: 6574 736f 636b 6f70 7420 2870 726f 6365 etsockopt (proce\n-00011b70: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n+00011b10: 2020 2020 2020 2020 286c 696e 6520 3230 (line 20\n+00011b20: 290a 2a20 536f 636b 6574 732e 534f 5f52 ).* Sockets.SO_R\n+00011b30: 4555 5345 4144 4452 3a20 2020 2020 2020 EUSEADDR: \n+00011b40: 2020 2020 2020 2020 2020 2047 6574 736f Getso\n+00011b50: 636b 6f70 7420 2870 726f 6365 6475 7265 ckopt (procedure\n+00011b60: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n+00011b70: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011b80: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011b90: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011ba0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011bb0: 2020 2020 2020 286c 696e 6520 3230 290a (line 20).\n-00011bc0: 2a20 534f 5f52 4356 4255 4620 3c31 3e3a * SO_RCVBUF <1>:\n-00011bd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011be0: 2020 2020 2020 2020 2053 6574 736f 636b Setsock\n-00011bf0: 6f70 7420 2870 726f 6365 6475 7265 292e opt (procedure).\n-00011c00: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+00011ba0: 2020 286c 696e 6520 3230 290a 2a20 536f (line 20).* So\n+00011bb0: 636b 6574 732e 534f 5f52 4555 5345 4144 ckets.SO_REUSEAD\n+00011bc0: 4452 203c 313e 3a20 2020 2020 2020 2020 DR <1>: \n+00011bd0: 2020 2020 2053 6574 736f 636b 6f70 7420 Setsockopt \n+00011be0: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n+00011bf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011c00: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011c10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011c20: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011c30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011c40: 286c 696e 6520 3230 290a 2a20 534f 5f52 (line 20).* SO_R\n-00011c50: 4555 5345 4144 4452 3a20 2020 2020 2020 EUSEADDR: \n-00011c60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011c70: 2020 2047 6574 736f 636b 6f70 7420 2870 Getsockopt (p\n-00011c80: 726f 6365 6475 7265 292e 0a20 2020 2020 rocedure).. \n+00011c20: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n+00011c30: 6520 3230 290a 2a20 536f 636b 6574 732e e 20).* Sockets.\n+00011c40: 534f 5f52 4555 5345 504f 5254 3a20 2020 SO_REUSEPORT: \n+00011c50: 2020 2020 2020 2020 2020 2020 2020 2047 G\n+00011c60: 6574 736f 636b 6f70 7420 2870 726f 6365 etsockopt (proce\n+00011c70: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n+00011c80: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011c90: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011ca0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011cb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011cc0: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n-00011cd0: 3230 290a 2a20 534f 5f52 4555 5345 4144 20).* SO_REUSEAD\n-00011ce0: 4452 203c 313e 3a20 2020 2020 2020 2020 DR <1>: \n-00011cf0: 2020 2020 2020 2020 2020 2020 2053 6574 Set\n-00011d00: 736f 636b 6f70 7420 2870 726f 6365 6475 sockopt (procedu\n-00011d10: 7265 292e 0a20 2020 2020 2020 2020 2020 re).. \n+00011cb0: 2020 2020 2020 286c 696e 6520 3230 290a (line 20).\n+00011cc0: 2a20 536f 636b 6574 732e 534f 5f52 4555 * Sockets.SO_REU\n+00011cd0: 5345 504f 5254 203c 313e 3a20 2020 2020 SEPORT <1>: \n+00011ce0: 2020 2020 2020 2020 2053 6574 736f 636b Setsock\n+00011cf0: 6f70 7420 2870 726f 6365 6475 7265 292e opt (procedure).\n+00011d00: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+00011d10: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011d20: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011d30: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011d40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011d50: 2020 2020 286c 696e 6520 3230 290a 2a20 (line 20).* \n-00011d60: 534f 5f52 4555 5345 504f 5254 3a20 2020 SO_REUSEPORT: \n-00011d70: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011d80: 2020 2020 2020 2047 6574 736f 636b 6f70 Getsockop\n-00011d90: 7420 2870 726f 6365 6475 7265 292e 0a20 t (procedure).. \n+00011d40: 286c 696e 6520 3230 290a 2a20 536f 636b (line 20).* Sock\n+00011d50: 6574 732e 534f 5f53 4e44 4255 463a 2020 ets.SO_SNDBUF: \n+00011d60: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011d70: 2020 2047 6574 736f 636b 6f70 7420 2870 Getsockopt (p\n+00011d80: 726f 6365 6475 7265 292e 0a20 2020 2020 rocedure).. \n+00011d90: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011da0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011db0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011dc0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011dd0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n-00011de0: 696e 6520 3230 290a 2a20 534f 5f52 4555 ine 20).* SO_REU\n-00011df0: 5345 504f 5254 203c 313e 3a20 2020 2020 SEPORT <1>: \n-00011e00: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011e10: 2053 6574 736f 636b 6f70 7420 2870 726f Setsockopt (pro\n-00011e20: 6365 6475 7265 292e 0a20 2020 2020 2020 cedure).. \n+00011dc0: 2020 2020 2020 2020 2020 286c 696e 6520 (line \n+00011dd0: 3230 290a 2a20 536f 636b 6574 732e 534f 20).* Sockets.SO\n+00011de0: 5f53 4e44 4255 4620 3c31 3e3a 2020 2020 _SNDBUF <1>: \n+00011df0: 2020 2020 2020 2020 2020 2020 2053 6574 Set\n+00011e00: 736f 636b 6f70 7420 2870 726f 6365 6475 sockopt (procedu\n+00011e10: 7265 292e 0a20 2020 2020 2020 2020 2020 re).. \n+00011e20: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011e30: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011e40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011e50: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011e60: 2020 2020 2020 2020 286c 696e 6520 3230 (line 20\n-00011e70: 290a 2a20 534f 5f53 4e44 4255 463a 2020 ).* SO_SNDBUF: \n-00011e80: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011e90: 2020 2020 2020 2020 2020 2047 6574 736f Getso\n-00011ea0: 636b 6f70 7420 2870 726f 6365 6475 7265 ckopt (procedure\n-00011eb0: 292e 0a20 2020 2020 2020 2020 2020 2020 ).. \n+00011e50: 2020 2020 286c 696e 6520 3230 290a 2a20 (line 20).* \n+00011e60: 536f 636b 6574 732e 556e 7365 745f 4275 Sockets.Unset_Bu\n+00011e70: 6666 6572 3a20 2020 2020 2020 2020 2020 ffer: \n+00011e80: 2020 2020 2020 2055 6e73 6574 5f42 7566 Unset_Buf\n+00011e90: 6665 7220 2870 726f 6365 6475 7265 292e fer (procedure).\n+00011ea0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n+00011eb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011ec0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011ed0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011ee0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011ef0: 2020 286c 696e 6520 3230 290a 2a20 534f (line 20).* SO\n-00011f00: 5f53 4e44 4255 4620 3c31 3e3a 2020 2020 _SNDBUF <1>: \n-00011f10: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011f20: 2020 2020 2053 6574 736f 636b 6f70 7420 Setsockopt \n-00011f30: 2870 726f 6365 6475 7265 292e 0a20 2020 (procedure).. \n-00011f40: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011f50: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011f60: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00011f70: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n-00011f80: 6520 3230 290a 2a20 5374 7265 616d 5f45 e 20).* Stream_E\n-00011f90: 6c65 6d65 6e74 5f41 7272 6179 3a20 2020 lement_Array: \n-00011fa0: 2020 2020 2020 2020 2020 2020 2020 2052 R\n-00011fb0: 6177 2064 6174 6120 6d61 6e69 7075 6c61 aw data manipula\n-00011fc0: 7469 6f6e 2e0a 2020 2020 2020 2020 2020 tion.. \n+00011ee0: 286c 696e 6520 3131 290a 2a20 536f 636b (line 11).* Sock\n+00011ef0: 6574 5f45 7272 6f72 3a20 2020 2020 2020 et_Error: \n+00011f00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011f10: 2020 2042 696e 6420 2870 726f 6365 6475 Bind (procedu\n+00011f20: 7265 292e 2020 2020 2028 6c69 6e65 2033 re). (line 3\n+00011f30: 3029 0a2a 2053 6f63 6b65 745f 4572 726f 0).* Socket_Erro\n+00011f40: 7220 3c31 3e3a 2020 2020 2020 2020 2020 r <1>: \n+00011f50: 2020 2020 2020 2020 2020 2020 436f 6e6e Conn\n+00011f60: 6563 7420 2870 726f 6365 6475 7265 292e ect (procedure).\n+00011f70: 2020 286c 696e 6520 3237 290a 2a20 536f (line 27).* So\n+00011f80: 636b 6574 5f46 443a 2020 2020 2020 2020 cket_FD: \n+00011f90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00011fa0: 2020 2020 2053 6574 7469 6e67 2075 7020 Setting up \n+00011fb0: 756e 6963 6173 7420 736f 636b 6574 732e unicast sockets.\n+00011fc0: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n 00011fd0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011fe0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00011ff0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012000: 2020 2020 2028 6c69 6e65 2020 3629 0a2a (line 6).*\n-00012010: 2053 7472 6561 6d5f 456c 656d 656e 745f Stream_Element_\n-00012020: 4172 7261 7920 3c31 3e3a 2020 2020 2020 Array <1>: \n-00012030: 2020 2020 2020 2020 5265 6365 6976 6520 Receive \n-00012040: 2866 756e 6374 696f 6e29 2e20 2020 286c (function). (l\n-00012050: 696e 6520 3232 290a 2a20 5374 7265 616d ine 22).* Stream\n-00012060: 5f45 6c65 6d65 6e74 5f41 7272 6179 203c _Element_Array <\n-00012070: 323e 3a20 2020 2020 2020 2020 2020 2020 2>: \n-00012080: 2052 6563 6569 7665 2028 7072 6f63 6564 Receive (proced\n-00012090: 7572 6529 2e20 2028 6c69 6e65 2031 3829 ure). (line 18)\n-000120a0: 0a2a 2053 7472 6561 6d5f 456c 656d 656e .* Stream_Elemen\n-000120b0: 745f 4172 7261 7920 3c33 3e3a 2020 2020 t_Array <3>: \n-000120c0: 2020 2020 2020 2020 2020 5265 6365 6976 Receiv\n-000120d0: 655f 536f 6d65 2028 7072 6f63 6564 7572 e_Some (procedur\n-000120e0: 6529 2e0a 2020 2020 2020 2020 2020 2020 e).. \n-000120f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012100: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012110: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012120: 2020 2028 6c69 6e65 2032 3129 0a2a 2053 (line 21).* S\n-00012130: 7472 6561 6d5f 456c 656d 656e 745f 4172 tream_Element_Ar\n-00012140: 7261 7920 3c34 3e3a 2020 2020 2020 2020 ray <4>: \n-00012150: 2020 2020 2020 5365 6e64 2028 7072 6f63 Send (proc\n-00012160: 6564 7572 6529 2e20 2020 2020 286c 696e edure). (lin\n-00012170: 6520 3137 290a 2a20 5374 7265 616d 5f45 e 17).* Stream_E\n-00012180: 6c65 6d65 6e74 5f43 6f75 6e74 3a20 2020 lement_Count: \n-00012190: 2020 2020 2020 2020 2020 2020 2020 2052 R\n-000121a0: 6563 6569 7665 2028 6675 6e63 7469 6f6e eceive (function\n-000121b0: 292e 2020 2028 6c69 6e65 2032 3229 0a2a ). (line 22).*\n-000121c0: 2053 7472 6561 6d5f 456c 656d 656e 745f Stream_Element_\n-000121d0: 436f 756e 7420 3c31 3e3a 2020 2020 2020 Count <1>: \n-000121e0: 2020 2020 2020 2020 5265 6365 6976 655f Receive_\n-000121f0: 536f 6d65 2028 7072 6f63 6564 7572 6529 Some (procedure)\n-00012200: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n+00012000: 286c 696e 6520 2036 290a 2a20 536f 636b (line 6).* Sock\n+00012010: 6574 5f46 4420 3c31 3e3a 2020 2020 2020 et_FD <1>: \n+00012020: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012030: 2020 2053 6f63 6b65 7473 2070 6163 6b61 Sockets packa\n+00012040: 6765 2e20 2020 2020 2028 6c69 6e65 2020 ge. (line \n+00012050: 3929 0a2a 2053 4f43 4b5f 4447 5241 4d3a 9).* SOCK_DGRAM:\n+00012060: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012070: 2020 2020 2020 2020 2020 2020 536f 636b Sock\n+00012080: 6574 2028 7072 6f63 6564 7572 6529 2e20 et (procedure). \n+00012090: 2020 286c 696e 6520 3139 290a 2a20 534f (line 19).* SO\n+000120a0: 434b 5f53 5452 4541 4d3a 2020 2020 2020 CK_STREAM: \n+000120b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000120c0: 2020 2020 2053 6f63 6b65 7420 2870 726f Socket (pro\n+000120d0: 6365 6475 7265 292e 2020 2028 6c69 6e65 cedure). (line\n+000120e0: 2031 3929 0a2a 2053 4f4c 5f53 4f43 4b45 19).* SOL_SOCKE\n+000120f0: 543a 2020 2020 2020 2020 2020 2020 2020 T: \n+00012100: 2020 2020 2020 2020 2020 2020 2020 4765 Ge\n+00012110: 7473 6f63 6b6f 7074 2028 7072 6f63 6564 tsockopt (proced\n+00012120: 7572 6529 2e0a 2020 2020 2020 2020 2020 ure).. \n+00012130: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012140: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012150: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012160: 2020 2020 2028 6c69 6e65 2032 3029 0a2a (line 20).*\n+00012170: 2053 4f4c 5f53 4f43 4b45 5420 3c31 3e3a SOL_SOCKET <1>:\n+00012180: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012190: 2020 2020 2020 2020 5365 7473 6f63 6b6f Setsocko\n+000121a0: 7074 2028 7072 6f63 6564 7572 6529 2e0a pt (procedure)..\n+000121b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000121c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000121d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000121e0: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+000121f0: 6c69 6e65 2032 3029 0a2a 2053 4f5f 5243 line 20).* SO_RC\n+00012200: 5642 5546 3a20 2020 2020 2020 2020 2020 VBUF: \n 00012210: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012220: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012230: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012240: 2028 6c69 6e65 2032 3129 0a2a 2053 7472 (line 21).* Str\n-00012250: 696e 675f 4163 6365 7373 3a20 2020 2020 ing_Access: \n+00012220: 2020 4765 7473 6f63 6b6f 7074 2028 7072 Getsockopt (pr\n+00012230: 6f63 6564 7572 6529 2e0a 2020 2020 2020 ocedure).. \n+00012240: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012250: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00012260: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012270: 2020 2020 536f 636b 6574 732e 4e61 6d69 Sockets.Nami\n-00012280: 6e67 2070 6163 6b61 6765 2e0a 2020 2020 ng package.. \n-00012290: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000122a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000122b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000122c0: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n-000122d0: 2033 3429 0a2a 2053 7472 696e 675f 4172 34).* String_Ar\n-000122e0: 7261 793a 2020 2020 2020 2020 2020 2020 ray: \n-000122f0: 2020 2020 2020 2020 2020 2020 2020 536f So\n-00012300: 636b 6574 732e 4e61 6d69 6e67 2070 6163 ckets.Naming pac\n-00012310: 6b61 6765 2e0a 2020 2020 2020 2020 2020 kage.. \n+00012270: 2020 2020 2020 2020 2028 6c69 6e65 2032 (line 2\n+00012280: 3029 0a2a 2053 4f5f 5243 5642 5546 203c 0).* SO_RCVBUF <\n+00012290: 313e 3a20 2020 2020 2020 2020 2020 2020 1>: \n+000122a0: 2020 2020 2020 2020 2020 2020 5365 7473 Sets\n+000122b0: 6f63 6b6f 7074 2028 7072 6f63 6564 7572 ockopt (procedur\n+000122c0: 6529 2e0a 2020 2020 2020 2020 2020 2020 e).. \n+000122d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000122e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000122f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012300: 2020 2028 6c69 6e65 2032 3029 0a2a 2053 (line 20).* S\n+00012310: 4f5f 5245 5553 4541 4444 523a 2020 2020 O_REUSEADDR: \n 00012320: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012330: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012340: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012350: 2020 2020 2028 6c69 6e65 2033 3729 0a2a (line 37).*\n-00012360: 2053 7567 6765 7374 696e 6720 6120 6665 Suggesting a fe\n-00012370: 6174 7572 653a 2020 2020 2020 2020 2020 ature: \n-00012380: 2020 2020 2020 2020 5265 736f 7572 6365 Resource\n-00012390: 7320 6f6e 2074 6865 2049 6e74 6572 6e65 s on the Interne\n-000123a0: 742e 0a20 2020 2020 2020 2020 2020 2020 t.. \n+00012330: 2020 2020 2020 4765 7473 6f63 6b6f 7074 Getsockopt\n+00012340: 2028 7072 6f63 6564 7572 6529 2e0a 2020 (procedure).. \n+00012350: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012360: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012370: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012380: 2020 2020 2020 2020 2020 2020 2028 6c69 (li\n+00012390: 6e65 2032 3029 0a2a 2053 4f5f 5245 5553 ne 20).* SO_REUS\n+000123a0: 4541 4444 5220 3c31 3e3a 2020 2020 2020 EADDR <1>: \n 000123b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000123c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000123d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000123e0: 2020 286c 696e 6520 2036 290a 2a20 5443 (line 6).* TC\n-000123f0: 5020 736f 636b 6574 3a20 2020 2020 2020 P socket: \n+000123c0: 5365 7473 6f63 6b6f 7074 2028 7072 6f63 Setsockopt (proc\n+000123d0: 6564 7572 6529 2e0a 2020 2020 2020 2020 edure).. \n+000123e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000123f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00012400: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012410: 2020 2020 2053 6574 7469 6e67 2075 7020 Setting up \n-00012420: 756e 6963 6173 7420 736f 636b 6574 732e unicast sockets.\n-00012430: 0a20 2020 2020 2020 2020 2020 2020 2020 . \n-00012440: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012450: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012460: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012470: 286c 696e 6520 2036 290a 2a20 5544 5020 (line 6).* UDP \n-00012480: 736f 636b 6574 3a20 2020 2020 2020 2020 socket: \n+00012410: 2020 2020 2020 2028 6c69 6e65 2032 3029 (line 20)\n+00012420: 0a2a 2053 4f5f 5245 5553 4550 4f52 543a .* SO_REUSEPORT:\n+00012430: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012440: 2020 2020 2020 2020 2020 4765 7473 6f63 Getsoc\n+00012450: 6b6f 7074 2028 7072 6f63 6564 7572 6529 kopt (procedure)\n+00012460: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n+00012470: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012480: 2020 2020 2020 2020 2020 2020 2020 2020 \n 00012490: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000124a0: 2020 2053 6574 7469 6e67 2075 7020 756e Setting up un\n-000124b0: 6963 6173 7420 736f 636b 6574 732e 0a20 icast sockets.. \n+000124a0: 2028 6c69 6e65 2032 3029 0a2a 2053 4f5f (line 20).* SO_\n+000124b0: 5245 5553 4550 4f52 5420 3c31 3e3a 2020 REUSEPORT <1>: \n 000124c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000124d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000124e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000124f0: 2020 2020 2020 2020 2020 2020 2020 286c (l\n-00012500: 696e 6520 2036 290a 2a20 556e 6963 6173 ine 6).* Unicas\n-00012510: 7420 736f 636b 6574 733a 2020 2020 2020 t sockets: \n-00012520: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012530: 2053 6574 7469 6e67 2075 7020 756e 6963 Setting up unic\n-00012540: 6173 7420 736f 636b 6574 732e 0a20 2020 ast sockets.. \n-00012550: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012560: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012570: 2020 2020 2020 2020 2020 2020 2020 2020 \n-00012580: 2020 2020 2020 2020 2020 2020 286c 696e (lin\n-00012590: 6520 2036 290a 2a20 5661 6c75 653a 2020 e 6).* Value: \n+000124d0: 2020 2020 5365 7473 6f63 6b6f 7074 2028 Setsockopt (\n+000124e0: 7072 6f63 6564 7572 6529 2e0a 2020 2020 procedure).. \n+000124f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012500: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012510: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012520: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n+00012530: 2032 3029 0a2a 2053 4f5f 534e 4442 5546 20).* SO_SNDBUF\n+00012540: 3a20 2020 2020 2020 2020 2020 2020 2020 : \n+00012550: 2020 2020 2020 2020 2020 2020 2020 4765 Ge\n+00012560: 7473 6f63 6b6f 7074 2028 7072 6f63 6564 tsockopt (proced\n+00012570: 7572 6529 2e0a 2020 2020 2020 2020 2020 ure).. \n+00012580: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012590: 2020 2020 2020 2020 2020 2020 2020 2020 \n 000125a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n-000125b0: 2020 2020 2020 2020 2020 2020 2020 2056 V\n-000125c0: 616c 7565 2028 6675 6e63 7469 6f6e 292e alue (function).\n-000125d0: 2020 2020 2028 6c69 6e65 2020 3929 0a0a (line 9)..\n-000125e0: 0a1f 0a54 6167 2054 6162 6c65 3a0a 4e6f ...Tag Table:.No\n-000125f0: 6465 3a20 546f 707f 3831 370a 4e6f 6465 de: Top.817.Node\n-00012600: 3a20 5768 6174 2069 7320 4164 6153 6f63 : What is AdaSoc\n-00012610: 6b65 7473 3f7f 3133 3930 0a4e 6f64 653a kets?.1390.Node:\n-00012620: 2049 6e73 7461 6c6c 696e 6720 4164 6153 Installing AdaS\n-00012630: 6f63 6b65 7473 7f32 3238 330a 4e6f 6465 ockets.2283.Node\n-00012640: 3a20 5573 696e 6720 4164 6153 6f63 6b65 : Using AdaSocke\n-00012650: 7473 7f33 3237 300a 4e6f 6465 3a20 436f ts.3270.Node: Co\n-00012660: 6d70 696c 696e 6720 616e 2041 6461 2061 mpiling an Ada a\n-00012670: 7070 6c69 6361 7469 6f6e 7f33 3536 310a pplication.3561.\n-00012680: 4e6f 6465 3a20 5365 7474 696e 6720 7570 Node: Setting up\n-00012690: 2075 6e69 6361 7374 2073 6f63 6b65 7473 unicast sockets\n-000126a0: 7f34 3138 380a 4e6f 6465 3a20 5365 7474 .4188.Node: Sett\n-000126b0: 696e 6720 7570 206d 756c 7469 6361 7374 ing up multicast\n-000126c0: 2073 6f63 6b65 7473 7f35 3439 340a 4e6f sockets.5494.No\n-000126d0: 6465 3a20 5365 6e64 696e 6720 616e 6420 de: Sending and \n-000126e0: 7265 6365 6976 696e 6720 6461 7461 7f36 receiving data.6\n-000126f0: 3832 330a 4e6f 6465 3a20 5261 7720 6461 823.Node: Raw da\n-00012700: 7461 206d 616e 6970 756c 6174 696f 6e7f ta manipulation.\n-00012710: 3731 3835 0a4e 6f64 653a 2053 7472 696e 7185.Node: Strin\n-00012720: 672d 6f72 6965 6e74 6564 2065 7863 6861 g-oriented excha\n-00012730: 6e67 6573 7f37 3538 350a 4e6f 6465 3a20 nges.7585.Node: \n-00012740: 536f 636b 6574 7320 7061 636b 6167 657f Sockets package.\n-00012750: 3836 3832 0a4e 6f64 653a 2041 6363 6570 8682.Node: Accep\n-00012760: 745f 536f 636b 6574 2028 7072 6f63 6564 t_Socket (proced\n-00012770: 7572 6529 7f31 3039 3439 0a4e 6f64 653a ure).10949.Node:\n-00012780: 2042 696e 6420 2870 726f 6365 6475 7265 Bind (procedure\n-00012790: 297f 3133 3331 390a 4e6f 6465 3a20 436f ).13319.Node: Co\n-000127a0: 6e6e 6563 7420 2870 726f 6365 6475 7265 nnect (procedure\n-000127b0: 297f 3134 3539 320a 4e6f 6465 3a20 4765 ).14592.Node: Ge\n-000127c0: 7420 2866 756e 6374 696f 6e29 7f31 3630 t (function).160\n-000127d0: 3130 0a4e 6f64 653a 2047 6574 5f43 6861 10.Node: Get_Cha\n-000127e0: 7220 2866 756e 6374 696f 6e29 7f31 3732 r (function).172\n-000127f0: 3037 0a4e 6f64 653a 2047 6574 5f4c 696e 07.Node: Get_Lin\n-00012800: 6520 2866 756e 6374 696f 6e29 7f31 3830 e (function).180\n-00012810: 3638 0a4e 6f64 653a 2047 6574 5f4c 696e 68.Node: Get_Lin\n-00012820: 6520 2870 726f 6365 6475 7265 297f 3139 e (procedure).19\n-00012830: 3337 350a 4e6f 6465 3a20 4765 745f 5265 375.Node: Get_Re\n-00012840: 6365 6976 655f 5175 6575 655f 5369 7a65 ceive_Queue_Size\n-00012850: 2028 6675 6e63 7469 6f6e 297f 3230 3534 (function).2054\n-00012860: 300a 4e6f 6465 3a20 4765 745f 5365 6e64 0.Node: Get_Send\n-00012870: 5f51 7565 7565 5f53 697a 6520 2866 756e _Queue_Size (fun\n-00012880: 6374 696f 6e29 7f32 3134 3038 0a4e 6f64 ction).21408.Nod\n-00012890: 653a 2047 6574 736f 636b 6f70 7420 2870 e: Getsockopt (p\n-000128a0: 726f 6365 6475 7265 297f 3232 3236 350a rocedure).22265.\n-000128b0: 4e6f 6465 3a20 4c69 7374 656e 2028 7072 Node: Listen (pr\n-000128c0: 6f63 6564 7572 6529 7f32 3335 3833 0a4e ocedure).23583.N\n-000128d0: 6f64 653a 204e 6577 5f4c 696e 6520 2870 ode: New_Line (p\n-000128e0: 726f 6365 6475 7265 297f 3234 3435 390a rocedure).24459.\n-000128f0: 4e6f 6465 3a20 5075 7420 2870 726f 6365 Node: Put (proce\n-00012900: 6475 7265 297f 3235 3138 310a 4e6f 6465 dure).25181.Node\n-00012910: 3a20 5075 745f 4c69 6e65 2028 7072 6f63 : Put_Line (proc\n-00012920: 6564 7572 6529 7f32 3539 3132 0a4e 6f64 edure).25912.Nod\n-00012930: 653a 2052 6563 6569 7665 2028 6675 6e63 e: Receive (func\n-00012940: 7469 6f6e 297f 3236 3639 380a 4e6f 6465 tion).26698.Node\n-00012950: 3a20 5265 6365 6976 6520 2870 726f 6365 : Receive (proce\n-00012960: 6475 7265 297f 3237 3930 370a 4e6f 6465 dure).27907.Node\n-00012970: 3a20 5265 6365 6976 655f 536f 6d65 2028 : Receive_Some (\n-00012980: 7072 6f63 6564 7572 6529 7f32 3839 3330 procedure).28930\n-00012990: 0a4e 6f64 653a 2053 656e 6420 2870 726f .Node: Send (pro\n-000129a0: 6365 6475 7265 297f 3330 3131 370a 4e6f cedure).30117.No\n-000129b0: 6465 3a20 5365 745f 4275 6666 6572 2028 de: Set_Buffer (\n-000129c0: 7072 6f63 6564 7572 6529 7f33 3038 3536 procedure).30856\n-000129d0: 0a4e 6f64 653a 2053 6574 736f 636b 6f70 .Node: Setsockop\n-000129e0: 7420 2870 726f 6365 6475 7265 297f 3332 t (procedure).32\n-000129f0: 3036 390a 4e6f 6465 3a20 5368 7574 646f 069.Node: Shutdo\n-00012a00: 776e 2028 7072 6f63 6564 7572 6529 7f33 wn (procedure).3\n-00012a10: 3333 3637 0a4e 6f64 653a 2053 6f63 6b65 3367.Node: Socke\n-00012a20: 7420 2870 726f 6365 6475 7265 297f 3334 t (procedure).34\n-00012a30: 3030 350a 4e6f 6465 3a20 536f 636b 6574 005.Node: Socket\n-00012a40: 732e 4d75 6c74 6963 6173 7420 7061 636b s.Multicast pack\n-00012a50: 6167 657f 3334 3937 360a 4e6f 6465 3a20 age.34976.Node: \n-00012a60: 4372 6561 7465 5f4d 756c 7469 6361 7374 Create_Multicast\n-00012a70: 5f53 6f63 6b65 7420 2866 756e 6374 696f _Socket (functio\n-00012a80: 6e29 7f33 3538 3031 0a4e 6f64 653a 2053 n).35801.Node: S\n-00012a90: 6f63 6b65 7473 2e4e 616d 696e 6720 7061 ockets.Naming pa\n-00012aa0: 636b 6167 657f 3338 3736 310a 4e6f 6465 ckage.38761.Node\n-00012ab0: 3a20 4164 6472 6573 735f 4f66 2028 6675 : Address_Of (fu\n-00012ac0: 6e63 7469 6f6e 297f 3431 3237 320a 4e6f nction).41272.No\n-00012ad0: 6465 3a20 416e 795f 4164 6472 6573 7320 de: Any_Address \n-00012ae0: 2866 756e 6374 696f 6e29 7f34 3231 3632 (function).42162\n-00012af0: 0a4e 6f64 653a 2047 6574 5f50 6565 725f .Node: Get_Peer_\n-00012b00: 4164 6472 2028 6675 6e63 7469 6f6e 297f Addr (function).\n-00012b10: 3432 3537 330a 4e6f 6465 3a20 4765 745f 42573.Node: Get_\n-00012b20: 5065 6572 5f50 6f72 7420 2866 756e 6374 Peer_Port (funct\n-00012b30: 696f 6e29 7f34 3331 3435 0a4e 6f64 653a ion).43145.Node:\n-00012b40: 2047 6574 5f53 6f63 6b5f 4164 6472 2028 Get_Sock_Addr (\n-00012b50: 6675 6e63 7469 6f6e 297f 3433 3733 350a function).43735.\n-00012b60: 4e6f 6465 3a20 4765 745f 536f 636b 5f50 Node: Get_Sock_P\n-00012b70: 6f72 7420 2866 756e 6374 696f 6e29 7f34 ort (function).4\n-00012b80: 3433 3237 0a4e 6f64 653a 2048 6f73 745f 4327.Node: Host_\n-00012b90: 4e61 6d65 2028 6675 6e63 7469 6f6e 297f Name (function).\n-00012ba0: 3434 3931 310a 4e6f 6465 3a20 496d 6167 44911.Node: Imag\n-00012bb0: 6520 2866 756e 6374 696f 6e29 7f34 3534 e (function).454\n-00012bc0: 3237 0a4e 6f64 653a 2049 6e66 6f5f 4f66 27.Node: Info_Of\n-00012bd0: 5f4e 616d 655f 4f72 5f49 5020 2866 756e _Name_Or_IP (fun\n-00012be0: 6374 696f 6e29 7f34 3539 3033 0a4e 6f64 ction).45903.Nod\n-00012bf0: 653a 2049 735f 4950 5f41 6464 7265 7373 e: Is_IP_Address\n-00012c00: 2028 6675 6e63 7469 6f6e 297f 3436 3632 (function).4662\n-00012c10: 390a 4e6f 6465 3a20 4e61 6d65 5f4f 6620 9.Node: Name_Of \n-00012c20: 2866 756e 6374 696f 6e29 7f34 3731 3339 (function).47139\n-00012c30: 0a4e 6f64 653a 2056 616c 7565 2028 6675 .Node: Value (fu\n-00012c40: 6e63 7469 6f6e 297f 3437 3732 320a 4e6f nction).47722.No\n-00012c50: 6465 3a20 436f 6e74 7269 6275 746f 7273 de: Contributors\n-00012c60: 7f34 3831 3734 0a4e 6f64 653a 2052 6573 .48174.Node: Res\n-00012c70: 6f75 7263 6573 206f 6e20 7468 6520 496e ources on the In\n-00012c80: 7465 726e 6574 7f34 3935 3539 0a4e 6f64 ternet.49559.Nod\n-00012c90: 653a 2049 6e64 6578 7f34 3939 3933 0a1f e: Index.49993..\n-00012ca0: 0a45 6e64 2054 6167 2054 6162 6c65 0a0a .End Tag Table..\n-00012cb0: 1f0a 4c6f 6361 6c20 5661 7269 6162 6c65 ..Local Variable\n-00012cc0: 733a 0a63 6f64 696e 673a 2075 7466 2d38 s:.coding: utf-8\n-00012cd0: 0a45 6e64 3a0a .End:.\n+000125b0: 2020 2020 2028 6c69 6e65 2032 3029 0a2a (line 20).*\n+000125c0: 2053 4f5f 534e 4442 5546 203c 313e 3a20 SO_SNDBUF <1>: \n+000125d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000125e0: 2020 2020 2020 2020 5365 7473 6f63 6b6f Setsocko\n+000125f0: 7074 2028 7072 6f63 6564 7572 6529 2e0a pt (procedure)..\n+00012600: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012610: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012620: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012630: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+00012640: 6c69 6e65 2032 3029 0a2a 2053 7472 6561 line 20).* Strea\n+00012650: 6d5f 456c 656d 656e 745f 4172 7261 793a m_Element_Array:\n+00012660: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012670: 2020 5261 7720 6461 7461 206d 616e 6970 Raw data manip\n+00012680: 756c 6174 696f 6e2e 0a20 2020 2020 2020 ulation.. \n+00012690: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000126a0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000126b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000126c0: 2020 2020 2020 2020 286c 696e 6520 2036 (line 6\n+000126d0: 290a 2a20 5374 7265 616d 5f45 6c65 6d65 ).* Stream_Eleme\n+000126e0: 6e74 5f41 7272 6179 203c 313e 3a20 2020 nt_Array <1>: \n+000126f0: 2020 2020 2020 2020 2020 2052 6563 6569 Recei\n+00012700: 7665 2028 6675 6e63 7469 6f6e 292e 2020 ve (function). \n+00012710: 2028 6c69 6e65 2032 3229 0a2a 2053 7472 (line 22).* Str\n+00012720: 6561 6d5f 456c 656d 656e 745f 4172 7261 eam_Element_Arra\n+00012730: 7920 3c32 3e3a 2020 2020 2020 2020 2020 y <2>: \n+00012740: 2020 2020 5265 6365 6976 6520 2870 726f Receive (pro\n+00012750: 6365 6475 7265 292e 2020 286c 696e 6520 cedure). (line \n+00012760: 3138 290a 2a20 5374 7265 616d 5f45 6c65 18).* Stream_Ele\n+00012770: 6d65 6e74 5f41 7272 6179 203c 333e 3a20 ment_Array <3>: \n+00012780: 2020 2020 2020 2020 2020 2020 2052 6563 Rec\n+00012790: 6569 7665 5f53 6f6d 6520 2870 726f 6365 eive_Some (proce\n+000127a0: 6475 7265 292e 0a20 2020 2020 2020 2020 dure).. \n+000127b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000127c0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000127d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000127e0: 2020 2020 2020 286c 696e 6520 3231 290a (line 21).\n+000127f0: 2a20 5374 7265 616d 5f45 6c65 6d65 6e74 * Stream_Element\n+00012800: 5f41 7272 6179 203c 343e 3a20 2020 2020 _Array <4>: \n+00012810: 2020 2020 2020 2020 2053 656e 6420 2870 Send (p\n+00012820: 726f 6365 6475 7265 292e 2020 2020 2028 rocedure). (\n+00012830: 6c69 6e65 2031 3729 0a2a 2053 7472 6561 line 17).* Strea\n+00012840: 6d5f 456c 656d 656e 745f 436f 756e 743a m_Element_Count:\n+00012850: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012860: 2020 5265 6365 6976 6520 2866 756e 6374 Receive (funct\n+00012870: 696f 6e29 2e20 2020 286c 696e 6520 3232 ion). (line 22\n+00012880: 290a 2a20 5374 7265 616d 5f45 6c65 6d65 ).* Stream_Eleme\n+00012890: 6e74 5f43 6f75 6e74 203c 313e 3a20 2020 nt_Count <1>: \n+000128a0: 2020 2020 2020 2020 2020 2052 6563 6569 Recei\n+000128b0: 7665 5f53 6f6d 6520 2870 726f 6365 6475 ve_Some (procedu\n+000128c0: 7265 292e 0a20 2020 2020 2020 2020 2020 re).. \n+000128d0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000128e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000128f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012900: 2020 2020 286c 696e 6520 3231 290a 2a20 (line 21).* \n+00012910: 5374 7269 6e67 5f41 6363 6573 733a 2020 String_Access: \n+00012920: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012930: 2020 2020 2020 2053 6f63 6b65 7473 2e4e Sockets.N\n+00012940: 616d 696e 6720 7061 636b 6167 652e 0a20 aming package.. \n+00012950: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012960: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012970: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012980: 2020 2020 2020 2020 2020 2020 2020 286c (l\n+00012990: 696e 6520 3334 290a 2a20 5374 7269 6e67 ine 34).* String\n+000129a0: 5f41 7272 6179 3a20 2020 2020 2020 2020 _Array: \n+000129b0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000129c0: 2053 6f63 6b65 7473 2e4e 616d 696e 6720 Sockets.Naming \n+000129d0: 7061 636b 6167 652e 0a20 2020 2020 2020 package.. \n+000129e0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+000129f0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012a00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012a10: 2020 2020 2020 2020 286c 696e 6520 3337 (line 37\n+00012a20: 290a 2a20 5375 6767 6573 7469 6e67 2061 ).* Suggesting a\n+00012a30: 2066 6561 7475 7265 3a20 2020 2020 2020 feature: \n+00012a40: 2020 2020 2020 2020 2020 2052 6573 6f75 Resou\n+00012a50: 7263 6573 206f 6e20 7468 6520 496e 7465 rces on the Inte\n+00012a60: 726e 6574 2e0a 2020 2020 2020 2020 2020 rnet.. \n+00012a70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012a80: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012a90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012aa0: 2020 2020 2028 6c69 6e65 2020 3629 0a2a (line 6).*\n+00012ab0: 2054 4350 2073 6f63 6b65 743a 2020 2020 TCP socket: \n+00012ac0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012ad0: 2020 2020 2020 2020 5365 7474 696e 6720 Setting \n+00012ae0: 7570 2075 6e69 6361 7374 2073 6f63 6b65 up unicast socke\n+00012af0: 7473 2e0a 2020 2020 2020 2020 2020 2020 ts.. \n+00012b00: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012b10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012b20: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012b30: 2020 2028 6c69 6e65 2020 3629 0a2a 2055 (line 6).* U\n+00012b40: 4450 2073 6f63 6b65 743a 2020 2020 2020 DP socket: \n+00012b50: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012b60: 2020 2020 2020 5365 7474 696e 6720 7570 Setting up\n+00012b70: 2075 6e69 6361 7374 2073 6f63 6b65 7473 unicast sockets\n+00012b80: 2e0a 2020 2020 2020 2020 2020 2020 2020 .. \n+00012b90: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012ba0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012bb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012bc0: 2028 6c69 6e65 2020 3629 0a2a 2055 6e69 (line 6).* Uni\n+00012bd0: 6361 7374 2073 6f63 6b65 7473 3a20 2020 cast sockets: \n+00012be0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012bf0: 2020 2020 5365 7474 696e 6720 7570 2075 Setting up u\n+00012c00: 6e69 6361 7374 2073 6f63 6b65 7473 2e0a nicast sockets..\n+00012c10: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012c20: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012c30: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012c40: 2020 2020 2020 2020 2020 2020 2020 2028 (\n+00012c50: 6c69 6e65 2020 3629 0a2a 2055 6e73 6574 line 6).* Unset\n+00012c60: 5f42 7566 6665 723a 2020 2020 2020 2020 _Buffer: \n+00012c70: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012c80: 2020 556e 7365 745f 4275 6666 6572 2028 Unset_Buffer (\n+00012c90: 7072 6f63 6564 7572 6529 2e0a 2020 2020 procedure).. \n+00012ca0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012cb0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012cc0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012cd0: 2020 2020 2020 2020 2020 2028 6c69 6e65 (line\n+00012ce0: 2020 3929 0a2a 2056 616c 7565 3a20 2020 9).* Value: \n+00012cf0: 2020 2020 2020 2020 2020 2020 2020 2020 \n+00012d00: 2020 2020 2020 2020 2020 2020 2020 5661 Va\n+00012d10: 6c75 6520 2866 756e 6374 696f 6e29 2e20 lue (function). \n+00012d20: 2020 2020 286c 696e 6520 2039 290a 0a0a (line 9)...\n+00012d30: 1f0a 5461 6720 5461 626c 653a 0a4e 6f64 ..Tag Table:.Nod\n+00012d40: 653a 2054 6f70 7f38 3137 0a4e 6f64 653a e: Top.817.Node:\n+00012d50: 2057 6861 7420 6973 2041 6461 536f 636b What is AdaSock\n+00012d60: 6574 733f 7f31 3339 300a 4e6f 6465 3a20 ets?.1390.Node: \n+00012d70: 496e 7374 616c 6c69 6e67 2041 6461 536f Installing AdaSo\n+00012d80: 636b 6574 737f 3232 3833 0a4e 6f64 653a ckets.2283.Node:\n+00012d90: 2055 7369 6e67 2041 6461 536f 636b 6574 Using AdaSocket\n+00012da0: 737f 3332 3730 0a4e 6f64 653a 2043 6f6d s.3270.Node: Com\n+00012db0: 7069 6c69 6e67 2061 6e20 4164 6120 6170 piling an Ada ap\n+00012dc0: 706c 6963 6174 696f 6e7f 3335 3631 0a4e plication.3561.N\n+00012dd0: 6f64 653a 2053 6574 7469 6e67 2075 7020 ode: Setting up \n+00012de0: 756e 6963 6173 7420 736f 636b 6574 737f unicast sockets.\n+00012df0: 3431 3838 0a4e 6f64 653a 2053 6574 7469 4188.Node: Setti\n+00012e00: 6e67 2075 7020 6d75 6c74 6963 6173 7420 ng up multicast \n+00012e10: 736f 636b 6574 737f 3534 3934 0a4e 6f64 sockets.5494.Nod\n+00012e20: 653a 2053 656e 6469 6e67 2061 6e64 2072 e: Sending and r\n+00012e30: 6563 6569 7669 6e67 2064 6174 617f 3638 eceiving data.68\n+00012e40: 3233 0a4e 6f64 653a 2052 6177 2064 6174 23.Node: Raw dat\n+00012e50: 6120 6d61 6e69 7075 6c61 7469 6f6e 7f37 a manipulation.7\n+00012e60: 3138 350a 4e6f 6465 3a20 5374 7269 6e67 185.Node: String\n+00012e70: 2d6f 7269 656e 7465 6420 6578 6368 616e -oriented exchan\n+00012e80: 6765 737f 3735 3835 0a4e 6f64 653a 2053 ges.7585.Node: S\n+00012e90: 6f63 6b65 7473 2070 6163 6b61 6765 7f38 ockets package.8\n+00012ea0: 3638 320a 4e6f 6465 3a20 4163 6365 7074 682.Node: Accept\n+00012eb0: 5f53 6f63 6b65 7420 2870 726f 6365 6475 _Socket (procedu\n+00012ec0: 7265 297f 3130 3934 390a 4e6f 6465 3a20 re).10949.Node: \n+00012ed0: 4269 6e64 2028 7072 6f63 6564 7572 6529 Bind (procedure)\n+00012ee0: 7f31 3236 3332 0a4e 6f64 653a 2043 6f6e .12632.Node: Con\n+00012ef0: 6e65 6374 2028 7072 6f63 6564 7572 6529 nect (procedure)\n+00012f00: 7f31 3339 3035 0a4e 6f64 653a 2047 6574 .13905.Node: Get\n+00012f10: 2028 6675 6e63 7469 6f6e 297f 3135 3239 (function).1529\n+00012f20: 300a 4e6f 6465 3a20 4765 745f 4368 6172 0.Node: Get_Char\n+00012f30: 2028 6675 6e63 7469 6f6e 297f 3136 3438 (function).1648\n+00012f40: 370a 4e6f 6465 3a20 4765 745f 4c69 6e65 7.Node: Get_Line\n+00012f50: 2028 6675 6e63 7469 6f6e 297f 3137 3334 (function).1734\n+00012f60: 380a 4e6f 6465 3a20 4765 745f 4c69 6e65 8.Node: Get_Line\n+00012f70: 2028 7072 6f63 6564 7572 6529 7f31 3836 (procedure).186\n+00012f80: 3535 0a4e 6f64 653a 2047 6574 5f52 6563 55.Node: Get_Rec\n+00012f90: 6569 7665 5f51 7565 7565 5f53 697a 6520 eive_Queue_Size \n+00012fa0: 2866 756e 6374 696f 6e29 7f31 3938 3230 (function).19820\n+00012fb0: 0a4e 6f64 653a 2047 6574 5f53 656e 645f .Node: Get_Send_\n+00012fc0: 5175 6575 655f 5369 7a65 2028 6675 6e63 Queue_Size (func\n+00012fd0: 7469 6f6e 297f 3230 3638 380a 4e6f 6465 tion).20688.Node\n+00012fe0: 3a20 4765 7473 6f63 6b6f 7074 2028 7072 : Getsockopt (pr\n+00012ff0: 6f63 6564 7572 6529 7f32 3135 3435 0a4e ocedure).21545.N\n+00013000: 6f64 653a 204c 6973 7465 6e20 2870 726f ode: Listen (pro\n+00013010: 6365 6475 7265 297f 3232 3836 330a 4e6f cedure).22863.No\n+00013020: 6465 3a20 4e65 775f 4c69 6e65 2028 7072 de: New_Line (pr\n+00013030: 6f63 6564 7572 6529 7f32 3337 3339 0a4e ocedure).23739.N\n+00013040: 6f64 653a 2050 7574 2028 7072 6f63 6564 ode: Put (proced\n+00013050: 7572 6529 7f32 3434 3631 0a4e 6f64 653a ure).24461.Node:\n+00013060: 2050 7574 5f4c 696e 6520 2870 726f 6365 Put_Line (proce\n+00013070: 6475 7265 297f 3235 3139 320a 4e6f 6465 dure).25192.Node\n+00013080: 3a20 5265 6365 6976 6520 2866 756e 6374 : Receive (funct\n+00013090: 696f 6e29 7f32 3539 3738 0a4e 6f64 653a ion).25978.Node:\n+000130a0: 2052 6563 6569 7665 2028 7072 6f63 6564 Receive (proced\n+000130b0: 7572 6529 7f32 3731 3837 0a4e 6f64 653a ure).27187.Node:\n+000130c0: 2052 6563 6569 7665 5f53 6f6d 6520 2870 Receive_Some (p\n+000130d0: 726f 6365 6475 7265 297f 3238 3231 300a rocedure).28210.\n+000130e0: 4e6f 6465 3a20 5365 6e64 2028 7072 6f63 Node: Send (proc\n+000130f0: 6564 7572 6529 7f32 3933 3937 0a4e 6f64 edure).29397.Nod\n+00013100: 653a 2053 6574 5f42 7566 6665 7220 2870 e: Set_Buffer (p\n+00013110: 726f 6365 6475 7265 297f 3330 3133 360a rocedure).30136.\n+00013120: 4e6f 6465 3a20 5365 7473 6f63 6b6f 7074 Node: Setsockopt\n+00013130: 2028 7072 6f63 6564 7572 6529 7f33 3133 (procedure).313\n+00013140: 3439 0a4e 6f64 653a 2053 6875 7464 6f77 49.Node: Shutdow\n+00013150: 6e20 2870 726f 6365 6475 7265 297f 3332 n (procedure).32\n+00013160: 3634 370a 4e6f 6465 3a20 536f 636b 6574 647.Node: Socket\n+00013170: 2028 7072 6f63 6564 7572 6529 7f33 3332 (procedure).332\n+00013180: 3835 0a4e 6f64 653a 2055 6e73 6574 5f42 85.Node: Unset_B\n+00013190: 7566 6665 7220 2870 726f 6365 6475 7265 uffer (procedure\n+000131a0: 297f 3334 3635 390a 4e6f 6465 3a20 536f ).34659.Node: So\n+000131b0: 636b 6574 732e 4d75 6c74 6963 6173 7420 ckets.Multicast \n+000131c0: 7061 636b 6167 657f 3335 3335 380a 4e6f package.35358.No\n+000131d0: 6465 3a20 4372 6561 7465 5f4d 756c 7469 de: Create_Multi\n+000131e0: 6361 7374 5f53 6f63 6b65 7420 2866 756e cast_Socket (fun\n+000131f0: 6374 696f 6e29 7f33 3631 3833 0a4e 6f64 ction).36183.Nod\n+00013200: 653a 2053 6f63 6b65 7473 2e4e 616d 696e e: Sockets.Namin\n+00013210: 6720 7061 636b 6167 657f 3430 3231 320a g package.40212.\n+00013220: 4e6f 6465 3a20 4164 6472 6573 735f 4f66 Node: Address_Of\n+00013230: 2028 6675 6e63 7469 6f6e 297f 3432 3732 (function).4272\n+00013240: 330a 4e6f 6465 3a20 416e 795f 4164 6472 3.Node: Any_Addr\n+00013250: 6573 7320 2866 756e 6374 696f 6e29 7f34 ess (function).4\n+00013260: 3336 3133 0a4e 6f64 653a 2047 6574 5f50 3613.Node: Get_P\n+00013270: 6565 725f 4164 6472 2028 6675 6e63 7469 eer_Addr (functi\n+00013280: 6f6e 297f 3434 3032 340a 4e6f 6465 3a20 on).44024.Node: \n+00013290: 4765 745f 5065 6572 5f50 6f72 7420 2866 Get_Peer_Port (f\n+000132a0: 756e 6374 696f 6e29 7f34 3435 3936 0a4e unction).44596.N\n+000132b0: 6f64 653a 2047 6574 5f53 6f63 6b5f 4164 ode: Get_Sock_Ad\n+000132c0: 6472 2028 6675 6e63 7469 6f6e 297f 3435 dr (function).45\n+000132d0: 3138 360a 4e6f 6465 3a20 4765 745f 536f 186.Node: Get_So\n+000132e0: 636b 5f50 6f72 7420 2866 756e 6374 696f ck_Port (functio\n+000132f0: 6e29 7f34 3537 3738 0a4e 6f64 653a 2048 n).45778.Node: H\n+00013300: 6f73 745f 4e61 6d65 2028 6675 6e63 7469 ost_Name (functi\n+00013310: 6f6e 297f 3436 3336 320a 4e6f 6465 3a20 on).46362.Node: \n+00013320: 496d 6167 6520 2866 756e 6374 696f 6e29 Image (function)\n+00013330: 7f34 3638 3738 0a4e 6f64 653a 2049 6e66 .46878.Node: Inf\n+00013340: 6f5f 4f66 5f4e 616d 655f 4f72 5f49 5020 o_Of_Name_Or_IP \n+00013350: 2866 756e 6374 696f 6e29 7f34 3733 3534 (function).47354\n+00013360: 0a4e 6f64 653a 2049 735f 4950 5f41 6464 .Node: Is_IP_Add\n+00013370: 7265 7373 2028 6675 6e63 7469 6f6e 297f ress (function).\n+00013380: 3438 3038 300a 4e6f 6465 3a20 4e61 6d65 48080.Node: Name\n+00013390: 5f4f 6620 2866 756e 6374 696f 6e29 7f34 _Of (function).4\n+000133a0: 3835 3930 0a4e 6f64 653a 2056 616c 7565 8590.Node: Value\n+000133b0: 2028 6675 6e63 7469 6f6e 297f 3439 3137 (function).4917\n+000133c0: 330a 4e6f 6465 3a20 436f 6e74 7269 6275 3.Node: Contribu\n+000133d0: 746f 7273 7f34 3936 3235 0a4e 6f64 653a tors.49625.Node:\n+000133e0: 2052 6573 6f75 7263 6573 206f 6e20 7468 Resources on th\n+000133f0: 6520 496e 7465 726e 6574 7f35 3130 3130 e Internet.51010\n+00013400: 0a4e 6f64 653a 2049 6e64 6578 7f35 3134 .Node: Index.514\n+00013410: 3434 0a1f 0a45 6e64 2054 6167 2054 6162 44...End Tag Tab\n+00013420: 6c65 0a0a 1f0a 4c6f 6361 6c20 5661 7269 le....Local Vari\n+00013430: 6162 6c65 733a 0a63 6f64 696e 673a 2075 ables:.coding: u\n+00013440: 7466 2d38 0a45 6e64 3a0a tf-8.End:.\n"}]}]}]}]}]}