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 pub(crate) mod socket; 11 12 mod split; 13 pub use split::{ReadHalf, WriteHalf}; 14 15 mod split_owned; 16 pub use split_owned::{OwnedReadHalf, OwnedWriteHalf, ReuniteError}; 17 18 mod socketaddr; 19 pub use socketaddr::SocketAddr; 20 21 pub(crate) mod stream; 22 pub(crate) use stream::UnixStream; 23 24 mod ucred; 25 pub use ucred::UCred; 26 27 pub mod pipe; 28 29 /// A type representing user ID. 30 #[allow(non_camel_case_types)] 31 pub type uid_t = u32; 32 33 /// A type representing group ID. 34 #[allow(non_camel_case_types)] 35 pub type gid_t = u32; 36 37 /// A type representing process and process group IDs. 38 #[allow(non_camel_case_types)] 39 pub type pid_t = i32; 40