123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- // bitflags! {
- // // #[derive(PartialEq, Eq, Debug, Clone, Copy)]
- // pub struct Options: u32 {
- // const DEBUG = 1;
- // const REUSEADDR = 2;
- // const TYPE = 3;
- // const ERROR = 4;
- // const DONTROUTE = 5;
- // const BROADCAST = 6;
- // const SNDBUF = 7;
- // const RCVBUF = 8;
- // const SNDBUFFORCE = 32;
- // const RCVBUFFORCE = 33;
- // const KEEPALIVE = 9;
- // const OOBINLINE = 10;
- // const NO_CHECK = 11;
- // const PRIORITY = 12;
- // const LINGER = 13;
- // const BSDCOMPAT = 14;
- // const REUSEPORT = 15;
- // const PASSCRED = 16;
- // const PEERCRED = 17;
- // const RCVLOWAT = 18;
- // const SNDLOWAT = 19;
- // const RCVTIMEO_OLD = 20;
- // const SNDTIMEO_OLD = 21;
- //
- // const SECURITY_AUTHENTICATION = 22;
- // const SECURITY_ENCRYPTION_TRANSPORT = 23;
- // const SECURITY_ENCRYPTION_NETWORK = 24;
- //
- // const BINDTODEVICE = 25;
- //
- // /// 与GET_FILTER相同
- // const ATTACH_FILTER = 26;
- // const DETACH_FILTER = 27;
- //
- // const PEERNAME = 28;
- //
- // const ACCEPTCONN = 30;
- //
- // const PEERSEC = 31;
- // const PASSSEC = 34;
- //
- // const MARK = 36;
- //
- // const PROTOCOL = 38;
- // const DOMAIN = 39;
- //
- // const RXQ_OVFL = 40;
- //
- // /// 与SCM_WIFI_STATUS相同
- // const WIFI_STATUS = 41;
- // const PEEK_OFF = 42;
- //
- // /* Instruct lower device to use last 4-bytes of skb data as FCS */
- // const NOFCS = 43;
- //
- // const LOCK_FILTER = 44;
- // const SELECT_ERR_QUEUE = 45;
- // const BUSY_POLL = 46;
- // const MAX_PACING_RATE = 47;
- // const BPF_EXTENSIONS = 48;
- // const INCOMING_CPU = 49;
- // const ATTACH_BPF = 50;
- // // DETACH_BPF = DETACH_FILTER;
- // const ATTACH_REUSEPORT_CBPF = 51;
- // const ATTACH_REUSEPORT_EBPF = 52;
- //
- // const CNX_ADVICE = 53;
- // const SCM_TIMESTAMPING_OPT_STATS = 54;
- // const MEMINFO = 55;
- // const INCOMING_NAPI_ID = 56;
- // const COOKIE = 57;
- // const SCM_TIMESTAMPING_PKTINFO = 58;
- // const PEERGROUPS = 59;
- // const ZEROCOPY = 60;
- // /// 与SCM_TXTIME相同
- // const TXTIME = 61;
- //
- // const BINDTOIFINDEX = 62;
- //
- // const TIMESTAMP_OLD = 29;
- // const TIMESTAMPNS_OLD = 35;
- // const TIMESTAMPING_OLD = 37;
- // const TIMESTAMP_NEW = 63;
- // const TIMESTAMPNS_NEW = 64;
- // const TIMESTAMPING_NEW = 65;
- //
- // const RCVTIMEO_NEW = 66;
- // const SNDTIMEO_NEW = 67;
- //
- // const DETACH_REUSEPORT_BPF = 68;
- //
- // const PREFER_BUSY_POLL = 69;
- // const BUSY_POLL_BUDGET = 70;
- //
- // const NETNS_COOKIE = 71;
- // const BUF_LOCK = 72;
- // const RESERVE_MEM = 73;
- // const TXREHASH = 74;
- // const RCVMARK = 75;
- // }
- // }
- // bitflags::bitflags! {
- // pub struct Level: i32 {
- // const SOL_SOCKET = 1;
- // const IPPROTO_IP = super::ip::Protocol::IP.bits();
- // const IPPROTO_IPV6 = super::ip::Protocol::IPv6.bits();
- // const IPPROTO_TCP = super::ip::Protocol::TCP.bits();
- // }
- // }
- // bitflags! {
- // /// @brief socket的选项
- // #[derive(Default)]
- // pub struct Options: u32 {
- // /// 是否阻塞
- // const BLOCK = 1 << 0;
- // /// 是否允许广播
- // const BROADCAST = 1 << 1;
- // /// 是否允许多播
- // const MULTICAST = 1 << 2;
- // /// 是否允许重用地址
- // const REUSEADDR = 1 << 3;
- // /// 是否允许重用端口
- // const REUSEPORT = 1 << 4;
- // }
- // }
|