pub enum Quirk {
Show 17 variants
Df,
NonZeroID,
ZeroID,
Ecn,
MustBeZero,
FlowID,
SeqNumZero,
AckNumNonZero,
AckNumZero,
NonZeroURG,
Urg,
Push,
OwnTimestampZero,
PeerTimestampNonZero,
TrailinigNonZero,
ExcessiveWindowScaling,
OptBad,
}
Variants§
Df
df - “don’t fragment” set (probably PMTUD); ignored for IPv6
NonZeroID
id+ - DF set but IPID non-zero; ignored for IPv6
ZeroID
id- - DF not set but IPID is zero; ignored for IPv6
Ecn
ecn - explicit congestion notification support
MustBeZero
0+ - “must be zero” field not zero; ignored for IPv6
FlowID
flow - non-zero IPv6 flow ID; ignored for IPv4
SeqNumZero
seq- - sequence number is zero
AckNumNonZero
ack+ - ACK number is non-zero, but ACK flag not set
AckNumZero
ack- - ACK number is zero, but ACK flag set
NonZeroURG
uptr+ - URG pointer is non-zero, but URG flag not set
Urg
urgf+ - URG flag used
Push
pushf+ - PUSH flag used
OwnTimestampZero
ts1- - own timestamp specified as zero
PeerTimestampNonZero
ts2+ - non-zero peer timestamp on initial SYN
TrailinigNonZero
opt+ - trailing non-zero data in options segment
ExcessiveWindowScaling
exws - excessive window scaling factor (> 14)
OptBad
bad - malformed TCP options