1<html> 2<head> 3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 4<title>generic::raw_protocol::socket</title> 5<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css"> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="../../../boost_asio.html" title="Boost.Asio"> 8<link rel="up" href="../generic__raw_protocol.html" title="generic::raw_protocol"> 9<link rel="prev" href="raw_protocol/overload2.html" title="generic::raw_protocol::raw_protocol (2 of 2 overloads)"> 10<link rel="next" href="type.html" title="generic::raw_protocol::type"> 11</head> 12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 13<table cellpadding="2" width="100%"><tr> 14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td> 15<td align="center"><a href="../../../../../index.html">Home</a></td> 16<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td> 17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> 18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> 19<td align="center"><a href="../../../../../more/index.htm">More</a></td> 20</tr></table> 21<hr> 22<div class="spirit-nav"> 23<a accesskey="p" href="raw_protocol/overload2.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generic__raw_protocol.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="type.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a> 24</div> 25<div class="section"> 26<div class="titlepage"><div><div><h4 class="title"> 27<a name="boost_asio.reference.generic__raw_protocol.socket"></a><a class="link" href="socket.html" title="generic::raw_protocol::socket">generic::raw_protocol::socket</a> 28</h4></div></div></div> 29<p> 30 <a class="indexterm" name="boost_asio.indexterm.generic__raw_protocol.socket"></a> 31The 32 generic socket type. 33 </p> 34<pre class="programlisting">typedef basic_raw_socket< raw_protocol > socket; 35</pre> 36<h6> 37<a name="boost_asio.reference.generic__raw_protocol.socket.h0"></a> 38 <span class="phrase"><a name="boost_asio.reference.generic__raw_protocol.socket.types"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__raw_protocol.socket.types">Types</a> 39 </h6> 40<div class="informaltable"><table class="table"> 41<colgroup> 42<col> 43<col> 44</colgroup> 45<thead><tr> 46<th> 47 <p> 48 Name 49 </p> 50 </th> 51<th> 52 <p> 53 Description 54 </p> 55 </th> 56</tr></thead> 57<tbody> 58<tr> 59<td> 60 <p> 61 <a class="link" href="../basic_raw_socket__rebind_executor.html" title="basic_raw_socket::rebind_executor"><span class="bold"><strong>rebind_executor</strong></span></a> 62 </p> 63 </td> 64<td> 65 <p> 66 Rebinds the socket type to another executor. 67 </p> 68 </td> 69</tr> 70<tr> 71<td> 72 <p> 73 <a class="link" href="../basic_raw_socket/broadcast.html" title="basic_raw_socket::broadcast"><span class="bold"><strong>broadcast</strong></span></a> 74 </p> 75 </td> 76<td> 77 <p> 78 Socket option to permit sending of broadcast messages. 79 </p> 80 </td> 81</tr> 82<tr> 83<td> 84 <p> 85 <a class="link" href="../basic_raw_socket/bytes_readable.html" title="basic_raw_socket::bytes_readable"><span class="bold"><strong>bytes_readable</strong></span></a> 86 </p> 87 </td> 88<td> 89 <p> 90 IO control command to get the amount of data that can be read 91 without blocking. 92 </p> 93 </td> 94</tr> 95<tr> 96<td> 97 <p> 98 <a class="link" href="../basic_raw_socket/debug.html" title="basic_raw_socket::debug"><span class="bold"><strong>debug</strong></span></a> 99 </p> 100 </td> 101<td> 102 <p> 103 Socket option to enable socket-level debugging. 104 </p> 105 </td> 106</tr> 107<tr> 108<td> 109 <p> 110 <a class="link" href="../basic_raw_socket/do_not_route.html" title="basic_raw_socket::do_not_route"><span class="bold"><strong>do_not_route</strong></span></a> 111 </p> 112 </td> 113<td> 114 <p> 115 Socket option to prevent routing, use local interfaces only. 116 </p> 117 </td> 118</tr> 119<tr> 120<td> 121 <p> 122 <a class="link" href="../basic_raw_socket/enable_connection_aborted.html" title="basic_raw_socket::enable_connection_aborted"><span class="bold"><strong>enable_connection_aborted</strong></span></a> 123 </p> 124 </td> 125<td> 126 <p> 127 Socket option to report aborted connections on accept. 128 </p> 129 </td> 130</tr> 131<tr> 132<td> 133 <p> 134 <a class="link" href="../basic_raw_socket/endpoint_type.html" title="basic_raw_socket::endpoint_type"><span class="bold"><strong>endpoint_type</strong></span></a> 135 </p> 136 </td> 137<td> 138 <p> 139 The endpoint type. 140 </p> 141 </td> 142</tr> 143<tr> 144<td> 145 <p> 146 <a class="link" href="../basic_raw_socket/executor_type.html" title="basic_raw_socket::executor_type"><span class="bold"><strong>executor_type</strong></span></a> 147 </p> 148 </td> 149<td> 150 <p> 151 The type of the executor associated with the object. 152 </p> 153 </td> 154</tr> 155<tr> 156<td> 157 <p> 158 <a class="link" href="../basic_raw_socket/keep_alive.html" title="basic_raw_socket::keep_alive"><span class="bold"><strong>keep_alive</strong></span></a> 159 </p> 160 </td> 161<td> 162 <p> 163 Socket option to send keep-alives. 164 </p> 165 </td> 166</tr> 167<tr> 168<td> 169 <p> 170 <a class="link" href="../basic_raw_socket/linger.html" title="basic_raw_socket::linger"><span class="bold"><strong>linger</strong></span></a> 171 </p> 172 </td> 173<td> 174 <p> 175 Socket option to specify whether the socket lingers on close 176 if unsent data is present. 177 </p> 178 </td> 179</tr> 180<tr> 181<td> 182 <p> 183 <a class="link" href="../basic_raw_socket/lowest_layer_type.html" title="basic_raw_socket::lowest_layer_type"><span class="bold"><strong>lowest_layer_type</strong></span></a> 184 </p> 185 </td> 186<td> 187 <p> 188 A basic_socket is always the lowest layer. 189 </p> 190 </td> 191</tr> 192<tr> 193<td> 194 <p> 195 <a class="link" href="../basic_raw_socket/message_flags.html" title="basic_raw_socket::message_flags"><span class="bold"><strong>message_flags</strong></span></a> 196 </p> 197 </td> 198<td> 199 <p> 200 Bitmask type for flags that can be passed to send and receive 201 operations. 202 </p> 203 </td> 204</tr> 205<tr> 206<td> 207 <p> 208 <a class="link" href="../basic_raw_socket/native_handle_type.html" title="basic_raw_socket::native_handle_type"><span class="bold"><strong>native_handle_type</strong></span></a> 209 </p> 210 </td> 211<td> 212 <p> 213 The native representation of a socket. 214 </p> 215 </td> 216</tr> 217<tr> 218<td> 219 <p> 220 <a class="link" href="../basic_raw_socket/out_of_band_inline.html" title="basic_raw_socket::out_of_band_inline"><span class="bold"><strong>out_of_band_inline</strong></span></a> 221 </p> 222 </td> 223<td> 224 <p> 225 Socket option for putting received out-of-band data inline. 226 </p> 227 </td> 228</tr> 229<tr> 230<td> 231 <p> 232 <a class="link" href="../basic_raw_socket/protocol_type.html" title="basic_raw_socket::protocol_type"><span class="bold"><strong>protocol_type</strong></span></a> 233 </p> 234 </td> 235<td> 236 <p> 237 The protocol type. 238 </p> 239 </td> 240</tr> 241<tr> 242<td> 243 <p> 244 <a class="link" href="../basic_raw_socket/receive_buffer_size.html" title="basic_raw_socket::receive_buffer_size"><span class="bold"><strong>receive_buffer_size</strong></span></a> 245 </p> 246 </td> 247<td> 248 <p> 249 Socket option for the receive buffer size of a socket. 250 </p> 251 </td> 252</tr> 253<tr> 254<td> 255 <p> 256 <a class="link" href="../basic_raw_socket/receive_low_watermark.html" title="basic_raw_socket::receive_low_watermark"><span class="bold"><strong>receive_low_watermark</strong></span></a> 257 </p> 258 </td> 259<td> 260 <p> 261 Socket option for the receive low watermark. 262 </p> 263 </td> 264</tr> 265<tr> 266<td> 267 <p> 268 <a class="link" href="../basic_raw_socket/reuse_address.html" title="basic_raw_socket::reuse_address"><span class="bold"><strong>reuse_address</strong></span></a> 269 </p> 270 </td> 271<td> 272 <p> 273 Socket option to allow the socket to be bound to an address that 274 is already in use. 275 </p> 276 </td> 277</tr> 278<tr> 279<td> 280 <p> 281 <a class="link" href="../basic_raw_socket/send_buffer_size.html" title="basic_raw_socket::send_buffer_size"><span class="bold"><strong>send_buffer_size</strong></span></a> 282 </p> 283 </td> 284<td> 285 <p> 286 Socket option for the send buffer size of a socket. 287 </p> 288 </td> 289</tr> 290<tr> 291<td> 292 <p> 293 <a class="link" href="../basic_raw_socket/send_low_watermark.html" title="basic_raw_socket::send_low_watermark"><span class="bold"><strong>send_low_watermark</strong></span></a> 294 </p> 295 </td> 296<td> 297 <p> 298 Socket option for the send low watermark. 299 </p> 300 </td> 301</tr> 302<tr> 303<td> 304 <p> 305 <a class="link" href="../basic_raw_socket/shutdown_type.html" title="basic_raw_socket::shutdown_type"><span class="bold"><strong>shutdown_type</strong></span></a> 306 </p> 307 </td> 308<td> 309 <p> 310 Different ways a socket may be shutdown. 311 </p> 312 </td> 313</tr> 314<tr> 315<td> 316 <p> 317 <a class="link" href="../basic_raw_socket/wait_type.html" title="basic_raw_socket::wait_type"><span class="bold"><strong>wait_type</strong></span></a> 318 </p> 319 </td> 320<td> 321 <p> 322 Wait types. 323 </p> 324 </td> 325</tr> 326</tbody> 327</table></div> 328<h6> 329<a name="boost_asio.reference.generic__raw_protocol.socket.h1"></a> 330 <span class="phrase"><a name="boost_asio.reference.generic__raw_protocol.socket.member_functions"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__raw_protocol.socket.member_functions">Member 331 Functions</a> 332 </h6> 333<div class="informaltable"><table class="table"> 334<colgroup> 335<col> 336<col> 337</colgroup> 338<thead><tr> 339<th> 340 <p> 341 Name 342 </p> 343 </th> 344<th> 345 <p> 346 Description 347 </p> 348 </th> 349</tr></thead> 350<tbody> 351<tr> 352<td> 353 <p> 354 <a class="link" href="../basic_raw_socket/assign.html" title="basic_raw_socket::assign"><span class="bold"><strong>assign</strong></span></a> 355 </p> 356 </td> 357<td> 358 <p> 359 Assign an existing native socket to the socket. 360 </p> 361 </td> 362</tr> 363<tr> 364<td> 365 <p> 366 <a class="link" href="../basic_raw_socket/async_connect.html" title="basic_raw_socket::async_connect"><span class="bold"><strong>async_connect</strong></span></a> 367 </p> 368 </td> 369<td> 370 <p> 371 Start an asynchronous connect. 372 </p> 373 </td> 374</tr> 375<tr> 376<td> 377 <p> 378 <a class="link" href="../basic_raw_socket/async_receive.html" title="basic_raw_socket::async_receive"><span class="bold"><strong>async_receive</strong></span></a> 379 </p> 380 </td> 381<td> 382 <p> 383 Start an asynchronous receive on a connected socket. 384 </p> 385 </td> 386</tr> 387<tr> 388<td> 389 <p> 390 <a class="link" href="../basic_raw_socket/async_receive_from.html" title="basic_raw_socket::async_receive_from"><span class="bold"><strong>async_receive_from</strong></span></a> 391 </p> 392 </td> 393<td> 394 <p> 395 Start an asynchronous receive. 396 </p> 397 </td> 398</tr> 399<tr> 400<td> 401 <p> 402 <a class="link" href="../basic_raw_socket/async_send.html" title="basic_raw_socket::async_send"><span class="bold"><strong>async_send</strong></span></a> 403 </p> 404 </td> 405<td> 406 <p> 407 Start an asynchronous send on a connected socket. 408 </p> 409 </td> 410</tr> 411<tr> 412<td> 413 <p> 414 <a class="link" href="../basic_raw_socket/async_send_to.html" title="basic_raw_socket::async_send_to"><span class="bold"><strong>async_send_to</strong></span></a> 415 </p> 416 </td> 417<td> 418 <p> 419 Start an asynchronous send. 420 </p> 421 </td> 422</tr> 423<tr> 424<td> 425 <p> 426 <a class="link" href="../basic_raw_socket/async_wait.html" title="basic_raw_socket::async_wait"><span class="bold"><strong>async_wait</strong></span></a> 427 </p> 428 </td> 429<td> 430 <p> 431 Asynchronously wait for the socket to become ready to read, ready 432 to write, or to have pending error conditions. 433 </p> 434 </td> 435</tr> 436<tr> 437<td> 438 <p> 439 <a class="link" href="../basic_raw_socket/at_mark.html" title="basic_raw_socket::at_mark"><span class="bold"><strong>at_mark</strong></span></a> 440 </p> 441 </td> 442<td> 443 <p> 444 Determine whether the socket is at the out-of-band data mark. 445 </p> 446 </td> 447</tr> 448<tr> 449<td> 450 <p> 451 <a class="link" href="../basic_raw_socket/available.html" title="basic_raw_socket::available"><span class="bold"><strong>available</strong></span></a> 452 </p> 453 </td> 454<td> 455 <p> 456 Determine the number of bytes available for reading. 457 </p> 458 </td> 459</tr> 460<tr> 461<td> 462 <p> 463 <a class="link" href="../basic_raw_socket/basic_raw_socket.html" title="basic_raw_socket::basic_raw_socket"><span class="bold"><strong>basic_raw_socket</strong></span></a> <span class="silver">[constructor]</span> 464 </p> 465 </td> 466<td> 467 <p> 468 Construct a basic_raw_socket without opening it. <br> <span class="silver"> —</span><br> 469 Construct and open a basic_raw_socket. <br> <span class="silver"> —</span><br> Construct 470 a basic_raw_socket, opening it and binding it to the given local 471 endpoint. <br> <span class="silver"> —</span><br> Construct a basic_raw_socket on an existing 472 native socket. <br> <span class="silver"> —</span><br> Move-construct a basic_raw_socket 473 from another. <br> <span class="silver"> —</span><br> Move-construct a basic_raw_socket 474 from a socket of another protocol type. 475 </p> 476 </td> 477</tr> 478<tr> 479<td> 480 <p> 481 <a class="link" href="../basic_raw_socket/bind.html" title="basic_raw_socket::bind"><span class="bold"><strong>bind</strong></span></a> 482 </p> 483 </td> 484<td> 485 <p> 486 Bind the socket to the given local endpoint. 487 </p> 488 </td> 489</tr> 490<tr> 491<td> 492 <p> 493 <a class="link" href="../basic_raw_socket/cancel.html" title="basic_raw_socket::cancel"><span class="bold"><strong>cancel</strong></span></a> 494 </p> 495 </td> 496<td> 497 <p> 498 Cancel all asynchronous operations associated with the socket. 499 </p> 500 </td> 501</tr> 502<tr> 503<td> 504 <p> 505 <a class="link" href="../basic_raw_socket/close.html" title="basic_raw_socket::close"><span class="bold"><strong>close</strong></span></a> 506 </p> 507 </td> 508<td> 509 <p> 510 Close the socket. 511 </p> 512 </td> 513</tr> 514<tr> 515<td> 516 <p> 517 <a class="link" href="../basic_raw_socket/connect.html" title="basic_raw_socket::connect"><span class="bold"><strong>connect</strong></span></a> 518 </p> 519 </td> 520<td> 521 <p> 522 Connect the socket to the specified endpoint. 523 </p> 524 </td> 525</tr> 526<tr> 527<td> 528 <p> 529 <a class="link" href="../basic_raw_socket/get_executor.html" title="basic_raw_socket::get_executor"><span class="bold"><strong>get_executor</strong></span></a> 530 </p> 531 </td> 532<td> 533 <p> 534 Get the executor associated with the object. 535 </p> 536 </td> 537</tr> 538<tr> 539<td> 540 <p> 541 <a class="link" href="../basic_raw_socket/get_option.html" title="basic_raw_socket::get_option"><span class="bold"><strong>get_option</strong></span></a> 542 </p> 543 </td> 544<td> 545 <p> 546 Get an option from the socket. 547 </p> 548 </td> 549</tr> 550<tr> 551<td> 552 <p> 553 <a class="link" href="../basic_raw_socket/io_control.html" title="basic_raw_socket::io_control"><span class="bold"><strong>io_control</strong></span></a> 554 </p> 555 </td> 556<td> 557 <p> 558 Perform an IO control command on the socket. 559 </p> 560 </td> 561</tr> 562<tr> 563<td> 564 <p> 565 <a class="link" href="../basic_raw_socket/is_open.html" title="basic_raw_socket::is_open"><span class="bold"><strong>is_open</strong></span></a> 566 </p> 567 </td> 568<td> 569 <p> 570 Determine whether the socket is open. 571 </p> 572 </td> 573</tr> 574<tr> 575<td> 576 <p> 577 <a class="link" href="../basic_raw_socket/local_endpoint.html" title="basic_raw_socket::local_endpoint"><span class="bold"><strong>local_endpoint</strong></span></a> 578 </p> 579 </td> 580<td> 581 <p> 582 Get the local endpoint of the socket. 583 </p> 584 </td> 585</tr> 586<tr> 587<td> 588 <p> 589 <a class="link" href="../basic_raw_socket/lowest_layer.html" title="basic_raw_socket::lowest_layer"><span class="bold"><strong>lowest_layer</strong></span></a> 590 </p> 591 </td> 592<td> 593 <p> 594 Get a reference to the lowest layer. <br> <span class="silver"> —</span><br> Get a const 595 reference to the lowest layer. 596 </p> 597 </td> 598</tr> 599<tr> 600<td> 601 <p> 602 <a class="link" href="../basic_raw_socket/native_handle.html" title="basic_raw_socket::native_handle"><span class="bold"><strong>native_handle</strong></span></a> 603 </p> 604 </td> 605<td> 606 <p> 607 Get the native socket representation. 608 </p> 609 </td> 610</tr> 611<tr> 612<td> 613 <p> 614 <a class="link" href="../basic_raw_socket/native_non_blocking.html" title="basic_raw_socket::native_non_blocking"><span class="bold"><strong>native_non_blocking</strong></span></a> 615 </p> 616 </td> 617<td> 618 <p> 619 Gets the non-blocking mode of the native socket implementation. 620 <br> <span class="silver"> —</span><br> Sets the non-blocking mode of the native socket 621 implementation. 622 </p> 623 </td> 624</tr> 625<tr> 626<td> 627 <p> 628 <a class="link" href="../basic_raw_socket/non_blocking.html" title="basic_raw_socket::non_blocking"><span class="bold"><strong>non_blocking</strong></span></a> 629 </p> 630 </td> 631<td> 632 <p> 633 Gets the non-blocking mode of the socket. <br> <span class="silver"> —</span><br> Sets 634 the non-blocking mode of the socket. 635 </p> 636 </td> 637</tr> 638<tr> 639<td> 640 <p> 641 <a class="link" href="../basic_raw_socket/open.html" title="basic_raw_socket::open"><span class="bold"><strong>open</strong></span></a> 642 </p> 643 </td> 644<td> 645 <p> 646 Open the socket using the specified protocol. 647 </p> 648 </td> 649</tr> 650<tr> 651<td> 652 <p> 653 <a class="link" href="../basic_raw_socket/operator_eq_.html" title="basic_raw_socket::operator="><span class="bold"><strong>operator=</strong></span></a> 654 </p> 655 </td> 656<td> 657 <p> 658 Move-assign a basic_raw_socket from another. <br> <span class="silver"> —</span><br> Move-assign 659 a basic_raw_socket from a socket of another protocol type. 660 </p> 661 </td> 662</tr> 663<tr> 664<td> 665 <p> 666 <a class="link" href="../basic_raw_socket/receive.html" title="basic_raw_socket::receive"><span class="bold"><strong>receive</strong></span></a> 667 </p> 668 </td> 669<td> 670 <p> 671 Receive some data on a connected socket. 672 </p> 673 </td> 674</tr> 675<tr> 676<td> 677 <p> 678 <a class="link" href="../basic_raw_socket/receive_from.html" title="basic_raw_socket::receive_from"><span class="bold"><strong>receive_from</strong></span></a> 679 </p> 680 </td> 681<td> 682 <p> 683 Receive raw data with the endpoint of the sender. 684 </p> 685 </td> 686</tr> 687<tr> 688<td> 689 <p> 690 <a class="link" href="../basic_raw_socket/release.html" title="basic_raw_socket::release"><span class="bold"><strong>release</strong></span></a> 691 </p> 692 </td> 693<td> 694 <p> 695 Release ownership of the underlying native socket. 696 </p> 697 </td> 698</tr> 699<tr> 700<td> 701 <p> 702 <a class="link" href="../basic_raw_socket/remote_endpoint.html" title="basic_raw_socket::remote_endpoint"><span class="bold"><strong>remote_endpoint</strong></span></a> 703 </p> 704 </td> 705<td> 706 <p> 707 Get the remote endpoint of the socket. 708 </p> 709 </td> 710</tr> 711<tr> 712<td> 713 <p> 714 <a class="link" href="../basic_raw_socket/send.html" title="basic_raw_socket::send"><span class="bold"><strong>send</strong></span></a> 715 </p> 716 </td> 717<td> 718 <p> 719 Send some data on a connected socket. 720 </p> 721 </td> 722</tr> 723<tr> 724<td> 725 <p> 726 <a class="link" href="../basic_raw_socket/send_to.html" title="basic_raw_socket::send_to"><span class="bold"><strong>send_to</strong></span></a> 727 </p> 728 </td> 729<td> 730 <p> 731 Send raw data to the specified endpoint. 732 </p> 733 </td> 734</tr> 735<tr> 736<td> 737 <p> 738 <a class="link" href="../basic_raw_socket/set_option.html" title="basic_raw_socket::set_option"><span class="bold"><strong>set_option</strong></span></a> 739 </p> 740 </td> 741<td> 742 <p> 743 Set an option on the socket. 744 </p> 745 </td> 746</tr> 747<tr> 748<td> 749 <p> 750 <a class="link" href="../basic_raw_socket/shutdown.html" title="basic_raw_socket::shutdown"><span class="bold"><strong>shutdown</strong></span></a> 751 </p> 752 </td> 753<td> 754 <p> 755 Disable sends or receives on the socket. 756 </p> 757 </td> 758</tr> 759<tr> 760<td> 761 <p> 762 <a class="link" href="../basic_raw_socket/wait.html" title="basic_raw_socket::wait"><span class="bold"><strong>wait</strong></span></a> 763 </p> 764 </td> 765<td> 766 <p> 767 Wait for the socket to become ready to read, ready to write, 768 or to have pending error conditions. 769 </p> 770 </td> 771</tr> 772<tr> 773<td> 774 <p> 775 <a class="link" href="../basic_raw_socket/_basic_raw_socket.html" title="basic_raw_socket::~basic_raw_socket"><span class="bold"><strong>~basic_raw_socket</strong></span></a> <span class="silver">[destructor]</span> 776 </p> 777 </td> 778<td> 779 <p> 780 Destroys the socket. 781 </p> 782 </td> 783</tr> 784</tbody> 785</table></div> 786<h6> 787<a name="boost_asio.reference.generic__raw_protocol.socket.h2"></a> 788 <span class="phrase"><a name="boost_asio.reference.generic__raw_protocol.socket.data_members"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__raw_protocol.socket.data_members">Data 789 Members</a> 790 </h6> 791<div class="informaltable"><table class="table"> 792<colgroup> 793<col> 794<col> 795</colgroup> 796<thead><tr> 797<th> 798 <p> 799 Name 800 </p> 801 </th> 802<th> 803 <p> 804 Description 805 </p> 806 </th> 807</tr></thead> 808<tbody> 809<tr> 810<td> 811 <p> 812 <a class="link" href="../basic_raw_socket/max_connections.html" title="basic_raw_socket::max_connections"><span class="bold"><strong>max_connections</strong></span></a> <span class="silver">[static]</span> 813 </p> 814 </td> 815<td> 816 <p> 817 (Deprecated: Use max_listen_connections.) The maximum length 818 of the queue of pending incoming connections. 819 </p> 820 </td> 821</tr> 822<tr> 823<td> 824 <p> 825 <a class="link" href="../basic_raw_socket/max_listen_connections.html" title="basic_raw_socket::max_listen_connections"><span class="bold"><strong>max_listen_connections</strong></span></a> <span class="silver">[static]</span> 826 </p> 827 </td> 828<td> 829 <p> 830 The maximum length of the queue of pending incoming connections. 831 </p> 832 </td> 833</tr> 834<tr> 835<td> 836 <p> 837 <a class="link" href="../basic_raw_socket/message_do_not_route.html" title="basic_raw_socket::message_do_not_route"><span class="bold"><strong>message_do_not_route</strong></span></a> <span class="silver">[static]</span> 838 </p> 839 </td> 840<td> 841 <p> 842 Specify that the data should not be subject to routing. 843 </p> 844 </td> 845</tr> 846<tr> 847<td> 848 <p> 849 <a class="link" href="../basic_raw_socket/message_end_of_record.html" title="basic_raw_socket::message_end_of_record"><span class="bold"><strong>message_end_of_record</strong></span></a> <span class="silver">[static]</span> 850 </p> 851 </td> 852<td> 853 <p> 854 Specifies that the data marks the end of a record. 855 </p> 856 </td> 857</tr> 858<tr> 859<td> 860 <p> 861 <a class="link" href="../basic_raw_socket/message_out_of_band.html" title="basic_raw_socket::message_out_of_band"><span class="bold"><strong>message_out_of_band</strong></span></a> <span class="silver">[static]</span> 862 </p> 863 </td> 864<td> 865 <p> 866 Process out-of-band data. 867 </p> 868 </td> 869</tr> 870<tr> 871<td> 872 <p> 873 <a class="link" href="../basic_raw_socket/message_peek.html" title="basic_raw_socket::message_peek"><span class="bold"><strong>message_peek</strong></span></a> <span class="silver">[static]</span> 874 </p> 875 </td> 876<td> 877 <p> 878 Peek at incoming data without removing it from the input queue. 879 </p> 880 </td> 881</tr> 882</tbody> 883</table></div> 884<p> 885 The <a class="link" href="../basic_raw_socket.html" title="basic_raw_socket"><code class="computeroutput">basic_raw_socket</code></a> 886 class template provides asynchronous and blocking raw-oriented socket functionality. 887 </p> 888<h6> 889<a name="boost_asio.reference.generic__raw_protocol.socket.h3"></a> 890 <span class="phrase"><a name="boost_asio.reference.generic__raw_protocol.socket.thread_safety"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__raw_protocol.socket.thread_safety">Thread 891 Safety</a> 892 </h6> 893<p> 894 <span class="emphasis"><em>Distinct</em></span> <span class="emphasis"><em>objects:</em></span> Safe. 895 </p> 896<p> 897 <span class="emphasis"><em>Shared</em></span> <span class="emphasis"><em>objects:</em></span> Unsafe. 898 </p> 899<h6> 900<a name="boost_asio.reference.generic__raw_protocol.socket.h4"></a> 901 <span class="phrase"><a name="boost_asio.reference.generic__raw_protocol.socket.requirements"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__raw_protocol.socket.requirements">Requirements</a> 902 </h6> 903<p> 904 <span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/generic/raw_protocol.hpp</code> 905 </p> 906<p> 907 <span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code> 908 </p> 909</div> 910<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 911<td align="left"></td> 912<td align="right"><div class="copyright-footer">Copyright © 2003-2020 Christopher M. 913 Kohlhoff<p> 914 Distributed under the Boost Software License, Version 1.0. (See accompanying 915 file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) 916 </p> 917</div></td> 918</tr></table> 919<hr> 920<div class="spirit-nav"> 921<a accesskey="p" href="raw_protocol/overload2.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generic__raw_protocol.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../boost_asio.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="type.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a> 922</div> 923</body> 924</html> 925