本文簡要介紹rust語言中 std::os::unix::net::SocketAddr.from_abstract_namespace
的用法。
用法
pub fn from_abstract_namespace(namespace: &[u8]) -> Result<SocketAddr>
從命名空間創建一個抽象域套接字地址
與傳統的基於路徑的 Unix 套接字不同,抽象地址不會創建文件。這樣做的好處是,當綁定到它的套接字關閉時,該地址將消失,因此不需要文件係統清理。
抽象命名空間的前導空字節被自動添加。
這是一個特定於 Linux 的擴展。在 unix(7)
中查看更多信息。
錯誤
如果給定的命名空間太長,這將返回錯誤
例子
#![feature(unix_socket_abstract)]
use std::os::unix::net::{UnixListener, SocketAddr};
fn main() -> std::io::Result<()> {
let addr = SocketAddr::from_abstract_namespace(b"hidden")?;
let listener = match UnixListener::bind_addr(&addr) {
Ok(sock) => sock,
Err(err) => {
println!("Couldn't bind: {:?}", err);
return Err(err);
}
};
Ok(())
}
相關用法
- Rust SocketAddr.port用法及代碼示例
- Rust SocketAddr.as_abstract_namespace用法及代碼示例
- Rust SocketAddr.as_pathname用法及代碼示例
- Rust SocketAddr.is_ipv6用法及代碼示例
- Rust SocketAddr.is_ipv4用法及代碼示例
- Rust SocketAddr.set_port用法及代碼示例
- Rust SocketAddr.ip用法及代碼示例
- Rust SocketAddr.new用法及代碼示例
- Rust SocketAddr.is_unnamed用法及代碼示例
- Rust SocketAddr.set_ip用法及代碼示例
- Rust SocketAddrV6.ip用法及代碼示例
- Rust SocketAddrV4.ip用法及代碼示例
- Rust SocketAddrV6.set_ip用法及代碼示例
- Rust SocketAddrV6.new用法及代碼示例
- Rust SocketAddr用法及代碼示例
- Rust SocketAddrV4.set_port用法及代碼示例
- Rust SocketAddrV6用法及代碼示例
- Rust SocketAddrV6.set_scope_id用法及代碼示例
- Rust SocketAddrV4.set_ip用法及代碼示例
- Rust SocketAddrV6.flowinfo用法及代碼示例
- Rust SocketAddrV6.scope_id用法及代碼示例
- Rust SocketAddrV6.set_port用法及代碼示例
- Rust SocketAddrV6.set_flowinfo用法及代碼示例
- Rust SocketAddrV6.port用法及代碼示例
- Rust SocketAddrV4.new用法及代碼示例
注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 std::os::unix::net::SocketAddr.from_abstract_namespace。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。