1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
use crate::backend::c;
use bitflags::bitflags;
bitflags! {
/// `MSG_* flags for use with [`send`], [`send_to`], and related functions.
///
/// [`send`]: crate::net::send
/// [`sendto`]: crate::net::sendto
#[repr(transparent)]
#[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)]
pub struct SendFlags: u32 {
/// `MSG_CONFIRM`
const CONFIRM = c::MSG_CONFIRM;
/// `MSG_DONTROUTE`
const DONTROUTE = c::MSG_DONTROUTE;
/// `MSG_DONTWAIT`
const DONTWAIT = c::MSG_DONTWAIT;
/// `MSG_EOT`
const EOT = c::MSG_EOR;
/// `MSG_MORE`
const MORE = c::MSG_MORE;
/// `MSG_NOSIGNAL`
const NOSIGNAL = c::MSG_NOSIGNAL;
/// `MSG_OOB`
const OOB = c::MSG_OOB;
}
}
bitflags! {
/// `MSG_* flags for use with [`recv`], [`recvfrom`], and related functions.
///
/// [`recv`]: crate::net::recv
/// [`recvfrom`]: crate::net::recvfrom
#[repr(transparent)]
#[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)]
pub struct RecvFlags: u32 {
/// `MSG_CMSG_CLOEXEC`
const CMSG_CLOEXEC = c::MSG_CMSG_CLOEXEC;
/// `MSG_DONTWAIT`
const DONTWAIT = c::MSG_DONTWAIT;
/// `MSG_ERRQUEUE`
const ERRQUEUE = c::MSG_ERRQUEUE;
/// `MSG_OOB`
const OOB = c::MSG_OOB;
/// `MSG_PEEK`
const PEEK = c::MSG_PEEK;
/// `MSG_TRUNC`
const TRUNC = c::MSG_TRUNC;
/// `MSG_WAITALL`
const WAITALL = c::MSG_WAITALL;
}
}
|