pub struct MessageBuilder { /* private fields */ }Expand description
STUN message builder.
Implementations§
Source§impl MessageBuilder
impl MessageBuilder
Sourcepub const fn new(
class: MessageClass,
method: Method,
transaction_id: [u8; 12],
) -> Self
pub const fn new( class: MessageClass, method: Method, transaction_id: [u8; 12], ) -> Self
Create a new message builder.
Sourcepub fn binding_request(transaction_id: [u8; 12]) -> Self
pub fn binding_request(transaction_id: [u8; 12]) -> Self
Create a new message builder for a STUN binding request.
Sourcepub fn response(class: MessageClass, request: &Message) -> Self
pub fn response(class: MessageClass, request: &Message) -> Self
Create a new message builder for a STUN response.
Sourcepub fn success_response(request: &Message) -> Self
pub fn success_response(request: &Message) -> Self
Create a new message builder for a success STUN response.
Sourcepub fn error_response(request: &Message, error_code: ErrorCode) -> Self
pub fn error_response(request: &Message, error_code: ErrorCode) -> Self
Create a new message builder for an error STUN response.
Sourcepub fn class(&mut self, class: MessageClass) -> &mut Self
pub fn class(&mut self, class: MessageClass) -> &mut Self
Set message class.
Set magic cookie as defined in RFC 5389.
Sourcepub fn transaction_id(&mut self, transaction_id: [u8; 12]) -> &mut Self
pub fn transaction_id(&mut self, transaction_id: [u8; 12]) -> &mut Self
Set transaction ID as defined in RFC 5389.
Sourcepub fn long_transaction_id(&mut self, transaction_id: [u8; 16]) -> &mut Self
pub fn long_transaction_id(&mut self, transaction_id: [u8; 16]) -> &mut Self
Set transaction ID as defined in RFC 3489.
Sourcepub fn mapped_address(&mut self, addr: SocketAddr) -> &mut Self
pub fn mapped_address(&mut self, addr: SocketAddr) -> &mut Self
Set mapped address.
Sourcepub fn xor_mapped_address(&mut self, addr: SocketAddr) -> &mut Self
pub fn xor_mapped_address(&mut self, addr: SocketAddr) -> &mut Self
Set XOR mapped address.
Sourcepub fn message_integrity<T>(&mut self, key: T) -> &mut Self
pub fn message_integrity<T>(&mut self, key: T) -> &mut Self
Enable message integrity and use a given key.
Sourcepub fn fingerprint(&mut self, enable: bool) -> &mut Self
pub fn fingerprint(&mut self, enable: bool) -> &mut Self
Enable or disable message fingerprint.
Sourcepub fn error_code(&mut self, error_code: ErrorCode) -> &mut Self
pub fn error_code(&mut self, error_code: ErrorCode) -> &mut Self
Set error code.
Sourcepub fn unknown_attributes<T>(&mut self, unknown_attributes: T) -> &mut Self
pub fn unknown_attributes<T>(&mut self, unknown_attributes: T) -> &mut Self
Set unknown attributes.
Sourcepub fn alternate_server(&mut self, server: SocketAddr) -> &mut Self
pub fn alternate_server(&mut self, server: SocketAddr) -> &mut Self
Set alternate server.
Auto Trait Implementations§
impl Freeze for MessageBuilder
impl RefUnwindSafe for MessageBuilder
impl Send for MessageBuilder
impl Sync for MessageBuilder
impl Unpin for MessageBuilder
impl UnwindSafe for MessageBuilder
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