Merge master into tokio-tracking.

This commit is contained in:
Tim Kuehn
2017-01-08 22:05:10 -08:00
2 changed files with 4 additions and 2 deletions

View File

@@ -14,7 +14,7 @@ use tokio_proto::streaming::multiplex::RequestId;
use tokio_proto::multiplex::{ClientProto, ServerProto};
use util::Debugger;
// `T` is the type that `Codec` parses.
// `Encode` is the type that `Codec` encodes. `Decode` is the type it decodes.
pub struct Codec<Encode, Decode> {
state: CodecState,
_phantom_data: PhantomData<(Encode, Decode)>,

View File

@@ -61,13 +61,15 @@ pub fn listen_with<S, Req, Resp, E>(addr: SocketAddr,
fn listener(addr: &SocketAddr,
handle: &Handle) -> io::Result<TcpListener> {
const PENDING_CONNECTION_BACKLOG: i32 = 1024;
match *addr {
SocketAddr::V4(_) => net2::TcpBuilder::new_v4(),
SocketAddr::V6(_) => net2::TcpBuilder::new_v6()
}?
.reuse_address(true)?
.bind(addr)?
.listen(1024)
.listen(PENDING_CONNECTION_BACKLOG)
.and_then(|l| {
TcpListener::from_listener(l, addr, handle)
})