1 | use crate::backend::c; |
2 | use bitflags::bitflags; |
3 | |
4 | bitflags! { |
5 | /// `MSG_*` flags for use with [`send`], [`sendto`], and related |
6 | /// functions. |
7 | /// |
8 | /// [`send`]: crate::net::send |
9 | /// [`sendto`]: crate::net::sendto |
10 | #[repr (transparent)] |
11 | #[derive (Copy, Clone, Eq, PartialEq, Hash, Debug)] |
12 | pub struct SendFlags: u32 { |
13 | /// `MSG_CONFIRM` |
14 | const CONFIRM = c::MSG_CONFIRM; |
15 | /// `MSG_DONTROUTE` |
16 | const DONTROUTE = c::MSG_DONTROUTE; |
17 | /// `MSG_DONTWAIT` |
18 | const DONTWAIT = c::MSG_DONTWAIT; |
19 | /// Deprecated alias for [`EOR`]. |
20 | /// |
21 | /// [`EOR`]: Self::EOR |
22 | #[deprecated (note = "`rustix::net::SendFlags::EOT` is renamed to `rustix::net::SendFlags::EOR`." )] |
23 | const EOT = c::MSG_EOR; |
24 | /// `MSG_EOR` |
25 | const EOR = c::MSG_EOR; |
26 | /// `MSG_MORE` |
27 | const MORE = c::MSG_MORE; |
28 | /// `MSG_NOSIGNAL` |
29 | const NOSIGNAL = c::MSG_NOSIGNAL; |
30 | /// `MSG_OOB` |
31 | const OOB = c::MSG_OOB; |
32 | |
33 | /// <https://docs.rs/bitflags/*/bitflags/#externally-defined-flags> |
34 | const _ = !0; |
35 | } |
36 | } |
37 | |
38 | bitflags! { |
39 | /// `MSG_*` flags for use with [`recv`], [`recvfrom`], and related |
40 | /// functions. |
41 | /// |
42 | /// [`recv`]: crate::net::recv |
43 | /// [`recvfrom`]: crate::net::recvfrom |
44 | #[repr (transparent)] |
45 | #[derive (Copy, Clone, Eq, PartialEq, Hash, Debug)] |
46 | pub struct RecvFlags: u32 { |
47 | /// `MSG_CMSG_CLOEXEC` |
48 | const CMSG_CLOEXEC = c::MSG_CMSG_CLOEXEC; |
49 | /// `MSG_DONTWAIT` |
50 | const DONTWAIT = c::MSG_DONTWAIT; |
51 | /// `MSG_ERRQUEUE` |
52 | const ERRQUEUE = c::MSG_ERRQUEUE; |
53 | /// `MSG_OOB` |
54 | const OOB = c::MSG_OOB; |
55 | /// `MSG_PEEK` |
56 | const PEEK = c::MSG_PEEK; |
57 | /// `MSG_TRUNC` |
58 | const TRUNC = c::MSG_TRUNC; |
59 | /// `MSG_WAITALL` |
60 | const WAITALL = c::MSG_WAITALL; |
61 | |
62 | /// <https://docs.rs/bitflags/*/bitflags/#externally-defined-flags> |
63 | const _ = !0; |
64 | } |
65 | } |
66 | |