Crate net2

source ·
Expand description

Extensions to std::net networking types.

This crate implements a number of extensions to the standard std::net networking types, hopefully being slated for inclusion into the standard library in the future. The goal of this crate is to expose all sorts of cross-platform and platform-specific configuration options of UDP/TCP sockets. System APIs are wrapped with as thin a layer as possible instead of bundling multiple actions into one API call.

More information about the design of this crate can be found in the associated rfc


use net2::TcpBuilder;

let tcp = TcpBuilder::new_v4().unwrap();

let mut stream = tcp.connect("").unwrap();

// use `stream` as a TcpStream


  • Unix-specific extensions to the std::net types.


  • An “in progress” TCP socket which has not yet been connected or listened.
  • An “in progress” UDP socket which has not yet been connected.