TH_ECE
if (f & TH_ECE)
switch (tiflags & (TH_ACK|TH_ECE|TH_CWR)) {
case TH_ACK|TH_ECE:
case TH_ECE|TH_CWR:
tiflags &= ~(TH_ECE|TH_CWR);
if (do_ecn && (tiflags & TH_ECE)) {
if (do_ecn && (th->th_flags & (TH_ECE|TH_CWR)) == (TH_ECE|TH_CWR))
th->th_flags |= TH_ECE;
(tiflags & (TH_SYN|TH_FIN|TH_RST|TH_URG|TH_ECE|TH_CWR|TH_ACK)) == TH_ACK &&
flags |= TH_ECE;
flags |= (TH_ECE|TH_CWR);
flags |= TH_ECE;