TH_ACK
TH_RST|TH_ACK, 0, 0, 0, 1, st->tag,
if (f & TH_ACK)
src->seqlo, TH_ACK, 0, 0, st->rule.ptr->return_ttl, 1, 0,
ack, TH_RST|TH_ACK, 0, 0, r->return_ttl,
if ((th->th_flags & (TH_SYN|TH_ACK)) == TH_SYN &&
if (pd->proto == IPPROTO_TCP && (th->th_flags & (TH_SYN|TH_ACK)) ==
TH_SYN|TH_ACK, 0, st->src.mss, 0, 1, 0, pd->rdomain,
if ((th->th_flags & TH_ACK) == 0) {
(th->th_flags & (TH_ACK|TH_RST)) == (TH_ACK|TH_RST)) ||
(th->th_flags & (TH_ACK|TH_RST)) == (TH_ACK|TH_RST)))) {
if (th->th_flags & TH_ACK) {
if (th->th_flags & TH_ACK) {
TH_SYN|TH_ACK, 0, (*stp)->src.mss, 0, 1,
} else if ((th->th_flags & (TH_ACK|TH_RST|TH_FIN)) != TH_ACK ||
if (((th->th_flags & (TH_SYN|TH_ACK)) != TH_ACK) ||
} else if (((th->th_flags & (TH_SYN|TH_ACK)) !=
(TH_SYN|TH_ACK)) ||
TH_ACK, (*stp)->src.max_win, 0, 0, 0,
TH_ACK, (*stp)->dst.max_win, 0, 0, 1,
if ((th->th_flags & (TH_SYN|TH_ACK)) != TH_SYN)
TH_SYN|TH_ACK, 0, s->src.mss, 0, 1, 0, pd->rdomain, NULL);
if ((pd->hdr.tcp.th_flags & (TH_SYN|TH_ACK)) == TH_SYN) {
(pd.hdr.tcp.th_flags & (TH_SYN|TH_ACK)) == TH_SYN &&
if ((pd.hdr.tcp.th_flags & TH_ACK) && pd.p_len == 0)
(pd.hdr.tcp.th_flags & (TH_SYN|TH_ACK|TH_RST)) == TH_ACK &&
if (!(flags & (TH_ACK|TH_RST)))
if (!(flags & TH_ACK)) {
if ((tcp->th_flags & (TH_SYN|TH_ACK)) != TH_SYN)
iss, ntohl(pd->hdr.tcp.th_seq) + 1, TH_SYN|TH_ACK, 0, mss,
if ((th->th_flags & (TH_SYN|TH_FIN|TH_RST|TH_ACK)) != TH_ACK)
TH_RST|TH_ACK, 0, TH_SYN, TH_SYN|TH_ACK,
TH_ACK, TH_ACK,
TH_FIN|TH_ACK, TH_FIN|TH_ACK, TH_FIN|TH_ACK, TH_ACK, TH_ACK,
if (tiflags & TH_ACK) {
if ((tiflags & TH_ACK) &&
if (tiflags & TH_ACK)
if (tiflags & TH_ACK) {
switch (tiflags & (TH_ACK|TH_ECE|TH_CWR)) {
case TH_ACK|TH_ECE:
if (tiflags & TH_ACK && SEQ_GT(tp->snd_una, tp->iss)) {
if (((tiflags & (TH_SYN|TH_ACK)) == TH_SYN) &&
if ((tiflags & TH_ACK) == 0) {
if ((tiflags & TH_ACK) &&
if (tiflags & TH_ACK) {
(tcp_seq)0, TH_RST|TH_ACK, m->m_pkthdr.ph_rtableid, now);
if ((th->th_flags & TH_ACK) == 0)
th->th_flags = TH_SYN|TH_ACK;
if (ISSET(ext->tcp->th_flags, TH_ACK|TH_PUSH) != ext->tcp->th_flags)
if (!ISSET(ext->tcp->th_flags, TH_ACK))
switch (tiflags & (TH_RST|TH_SYN|TH_ACK)) {
case TH_SYN|TH_ACK|TH_RST:
case TH_ACK|TH_RST:
case TH_SYN|TH_ACK:
case TH_ACK:
(tiflags & (TH_SYN|TH_FIN|TH_RST|TH_URG|TH_ECE|TH_CWR|TH_ACK)) == TH_ACK &&
(tiflags & (TH_SYN|TH_FIN|TH_RST|TH_URG|TH_ACK)) == TH_ACK &&
if (flags & TH_ACK)
if (tp->sack_enable && ((flags & TH_ACK) == 0 ||
((flags & TH_ACK) == 0 ||
((flags & (TH_SYN|TH_ACK)) == TH_SYN ||
if ((flags & (TH_SYN|TH_ACK)) == TH_SYN)
(flags & (TH_SYN|TH_ACK)) == (TH_SYN|TH_ACK))
flags = TH_ACK;
(pr->flags != TH_SYN || pr->flagset != (TH_SYN | TH_ACK) )) {
pfr.rule.flagset = (TH_SYN|TH_ACK);
rio.rule.flagset = (TH_SYN|TH_ACK);
if (flags & TH_ACK) putchar('A');
if (!Sflag && (flags & TH_ACK)) {
if (oflag && (flags & (TH_SYN|TH_ACK)) == TH_SYN) {
if (flags & TH_ACK)
!(flags & TH_ACK)) {
(TH_SYN|TH_ACK|TH_FIN|TH_RST) : 0);
pf(TH_ACK, "ACK");