TH_FIN
(TH_SYN|TH_ACK|TH_FIN|TH_RST) : 0);
if (f & TH_FIN)
if (th->th_flags & TH_FIN)
if (th->th_flags & TH_FIN)
if (th->th_flags & TH_FIN)
if (th->th_flags & TH_FIN)
if (th->th_flags & TH_FIN)
if (th->th_flags & TH_FIN)
if (flags & TH_FIN)
flags &= ~TH_FIN;
if ((flags & TH_FIN) || (flags & TH_PUSH) || (flags & TH_URG))
if (tcp.th_flags & TH_FIN)
CTASSERT(TH_FIN == 0x01);
i = (tcpfl & (TH_SYN | TH_FIN)) | ((tcpfl & TH_ACK) >> 2);
if (tcpfl & TH_FIN) {
if ((th->th_flags & (TH_SYN|TH_FIN|TH_RST|TH_ACK)) != TH_ACK)
TH_FIN|TH_ACK, /* FIN_WAIT_1 */
TH_FIN|TH_ACK, /* CLOSING */
TH_FIN|TH_ACK, /* LAST_ACK */
(todrop == tlen && (tiflags & TH_FIN) == 0)) {
tiflags &= ~(TH_FIN|TH_RST);
tiflags &= ~(TH_PUSH|TH_FIN);
(tiflags & (TH_SYN|TH_FIN|TH_RST|TH_URG|TH_ECE|TH_CWR|TH_ACK))
tiflags &= ~TH_FIN;
(todrop == tlen && (tiflags & TH_FIN) == 0)) {
tiflags &= ~(TH_FIN|TH_RST);
tiflags &= ~(TH_PUSH|TH_FIN);
((tiflags & (TH_SYN|TH_FIN)) != 0))) {
if ((tlen || (tiflags & TH_FIN)) &&
tiflags = th->th_flags & TH_FIN;
tiflags &= ~TH_FIN;
if ((tiflags & TH_FIN) && TCPS_HAVEESTABLISHED(tp->t_state)) {
pkt_flags = q->ipqe_flags & TH_FIN;
((tiqe->ipqe_flags & TH_FIN) != 0 ? 1 : 0));
else if (flags & (TH_SYN|TH_FIN|TH_RST))
if (len || (flags & (TH_SYN|TH_FIN)) ||
if (flags & (TH_SYN|TH_FIN))
flags &= ~TH_FIN;
flags &= ~TH_FIN;
flags &= ~TH_FIN;
flags &= ~TH_FIN;
flags &= ~TH_FIN;
flags &= ~TH_FIN;
flags &= ~TH_FIN;
if (flags & (TH_SYN|TH_FIN|TH_RST))
npfctl_bpf_tcpfl(bc, TH_SYN, TH_SYN | TH_ACK | TH_FIN | TH_RST);
case 'F': tfl |= TH_FIN; break;
if (tfl & TH_FIN) buf[i++] = 'F';
#define F TH_FIN
if (th->th_flags & TH_FIN) {
forw ? ">" : "<", (th->th_flags & (TH_SYN | TH_ACK | TH_FIN)),
pf(TH_FIN, "FIN");