Crate utp [−] [src]
Implementation of the Micro Transport Protocol.
This library provides both a socket interface (UtpSocket) and a stream interface
(UtpStream).
I recommend that you use UtpStream, as it implements the Read and Write
traits we all know (and love) from std::io, which makes it generally easier to work with than
UtpSocket.
Installation
Ensure your Cargo.toml contains:
[dependencies]
utp = "*"
Examples
extern crate utp; use utp::UtpStream; use std::io::{Read, Write}; fn main() { // Connect to an hypothetical local server running on port 8080 let addr = "127.0.0.1:8080"; let mut stream = match UtpStream::connect(addr) { Ok(stream) => stream, Err(e) => panic!("{}", e), }; // Send a string match stream.write("Hi there!".as_bytes()) { Ok(_) => (), Err(e) => println!("Write failed with {}", e) } // Close the stream match stream.close() { Ok(()) => println!("Connection closed"), Err(e) => println!("{}", e) } }
Note that you can easily convert a socket to a stream using the Into trait, like so:
let socket = UtpSocket::bind("0.0.0.0:0").unwrap(); let stream: UtpStream = socket.into();
Structs
| UtpListener |
A structure representing a socket server. |
| UtpSocket |
A structure that represents a uTP (Micro Transport Protocol) connection between a local socket and a remote socket. |
| UtpStream |
A structure that represents a uTP (Micro Transport Protocol) stream between a local socket and a remote socket. |