1 //! Unix specific network types. 2 // This module does not currently provide any public API, but it was 3 // unintentionally defined as a public module. Hide it from the documentation 4 // instead of changing it to a private module to avoid breakage. 5 #[doc(hidden)] 6 pub mod datagram; 7 8 pub(crate) mod listener; 9 10 mod split; 11 pub use split::{ReadHalf, WriteHalf}; 12 13 mod split_owned; 14 pub use split_owned::{OwnedReadHalf, OwnedWriteHalf, ReuniteError}; 15 16 mod socketaddr; 17 pub use socketaddr::SocketAddr; 18 19 pub(crate) mod stream; 20 pub(crate) use stream::UnixStream; 21 22 mod ucred; 23 pub use ucred::UCred; 24 25 pub mod pipe; 26 27 /// A type representing process and process group IDs. 28 #[allow(non_camel_case_types)] 29 pub type uid_t = u32; 30 31 /// A type representing user ID. 32 #[allow(non_camel_case_types)] 33 pub type gid_t = u32; 34 35 /// A type representing group ID. 36 #[allow(non_camel_case_types)] 37 pub type pid_t = i32; 38