pub struct TurnServer { /* private fields */ }Expand description
A TURN server.
Implementations§
Source§impl TurnServer
impl TurnServer
Sourcepub fn new(ttype: TransportType, listen_addr: SocketAddr, realm: String) -> Self
pub fn new(ttype: TransportType, listen_addr: SocketAddr, realm: String) -> Self
Construct a new TurnServer
§Examples
let realm = String::from("realm");
let listen_addr = "10.0.0.1:3478".parse().unwrap();
let server = TurnServer::new(TransportType::Udp, listen_addr, realm);
assert_eq!(server.listen_address(), listen_addr);Sourcepub fn add_user(&mut self, username: String, password: String)
pub fn add_user(&mut self, username: String, password: String)
Add a user credentials that would be accepted by this TurnServer.
Sourcepub fn listen_address(&self) -> SocketAddr
pub fn listen_address(&self) -> SocketAddr
The address that the TurnServer is listening on for incoming client connections.
Sourcepub fn recv<T: AsRef<[u8]>>(
&mut self,
transmit: Transmit<T>,
now: Instant,
) -> Result<Option<Transmit<Data<'static>>>, StunError>
pub fn recv<T: AsRef<[u8]>>( &mut self, transmit: Transmit<T>, now: Instant, ) -> Result<Option<Transmit<Data<'static>>>, StunError>
Provide received data to the TurnServer.
Any returned Transmit should be forwarded to the appropriate socket.
Sourcepub fn poll(&mut self, now: Instant) -> TurnServerPollRet
pub fn poll(&mut self, now: Instant) -> TurnServerPollRet
Poll the TurnServer in order to make further progress.
The returned value indicates what the caller should do.
Sourcepub fn poll_transmit(&mut self, now: Instant) -> Option<Transmit<Data<'static>>>
pub fn poll_transmit(&mut self, now: Instant) -> Option<Transmit<Data<'static>>>
Poll for a new Transmit to send over a socket.
Sourcepub fn allocated_udp_socket(
&mut self,
transport: TransportType,
local_addr: SocketAddr,
remote_addr: SocketAddr,
socket_addr: Result<SocketAddr, ()>,
now: Instant,
)
pub fn allocated_udp_socket( &mut self, transport: TransportType, local_addr: SocketAddr, remote_addr: SocketAddr, socket_addr: Result<SocketAddr, ()>, now: Instant, )
Notify the TurnServer that a UDP socket has been allocated (or an error) in response to
TurnServerPollRet::AllocateSocketUdp.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TurnServer
impl RefUnwindSafe for TurnServer
impl Send for TurnServer
impl Sync for TurnServer
impl Unpin for TurnServer
impl UnwindSafe for TurnServer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more