winapi_ui_automation/shared/
mswsockdef.rs1use shared::minwindef::{DWORD, ULONG};
7use shared::ws2def::IOC_VENDOR;
8use um::winnt::{LONG, PVOID, ULONGLONG};
9pub const SIO_SET_COMPATIBILITY_MODE: DWORD = _WSAIOW!(IOC_VENDOR, 300);
10ENUM!{enum WSA_COMPATIBILITY_BEHAVIOR_ID {
11 WsaBehaviorAll = 0,
12 WsaBehaviorReceiveBuffering,
13 WsaBehaviorAutoTuning,
14}}
15pub type PWSA_COMPATIBILITY_BEHAVIOR_ID = *mut WSA_COMPATIBILITY_BEHAVIOR_ID;
16STRUCT!{struct WSA_COMPATIBILITY_MODE {
17 BehaviorId: WSA_COMPATIBILITY_BEHAVIOR_ID,
18 TargetOsVersion: ULONG,
19}}
20pub type PWSA_COMPATIBILITY_MODE = *mut WSA_COMPATIBILITY_MODE;
21pub type RIO_BUFFERID = PVOID;
22pub type PRIO_BUFFERID = *mut PVOID;
23pub type RIO_CQ = PVOID;
24pub type PRIO_CQ = *mut PVOID;
25pub type RIO_RQ = PVOID;
26pub type PRIO_RQ = *mut PVOID;
27STRUCT!{struct RIORESULT {
28 Status: LONG,
29 BytesTransferred: ULONG,
30 SocketContext: ULONGLONG,
31 RequestContext: ULONGLONG,
32}}
33pub type PRIORESULT = *mut RIORESULT;
34STRUCT!{struct RIO_BUF {
35 BufferId: RIO_BUFFERID,
36 Offset: ULONG,
37 Length: ULONG,
38}}
39pub type PRIO_BUF = *mut RIO_BUF;
40pub const RIO_MSG_DONT_NOTIFY: DWORD = 0x00000001;
41pub const RIO_MSG_DEFER: DWORD = 0x00000002;
42pub const RIO_MSG_WAITALL: DWORD = 0x00000004;
43pub const RIO_MSG_COMMIT_ONLY: DWORD = 0x00000008;
44pub const RIO_INVALID_BUFFERID: RIO_BUFFERID = 0xFFFFFFFF as RIO_BUFFERID;
45pub const RIO_INVALID_CQ: RIO_CQ = 0 as RIO_CQ;
46pub const RIO_INVALID_RQ: RIO_RQ = 0 as RIO_RQ;
47pub const RIO_MAX_CQ_SIZE: DWORD = 0x8000000;
48pub const RIO_CORRUPT_CQ: ULONG = 0xFFFFFFFF;