TH_FIN
~(TH_FIN | TH_PUSH);
if (val & TH_FIN)
if ((val & TH_FIN) != 0 && len == hlen) {
if ((get_tcpflags(tcp) & TH_FIN) != 0 &&
dlc_header) + 4, 1), " %s", getflag(tcp->th_flags, TH_FIN,
{ TH_FIN, "Fin" },
u_char flags[] = { TH_FIN, TH_SYN, TH_RST, TH_PUSH, TH_ACK, TH_URG,
static u_char myflags[] = { TH_FIN, TH_SYN, TH_RST, TH_PUSH,
if (tcp->th_flags & TH_FIN)
{ TH_FIN, 'F' },
{ "FIN", TH_FIN, TH_FIN },
if (seg_len < 0 || (seg_len == 0 && !(flags & TH_FIN))) {
flags &= ~(TH_SYN | TH_FIN | TH_URG);
flags &= ~TH_FIN;
if (flags & TH_FIN) {
flags &= ~TH_FIN;
flags |= TH_FIN;
flags |= TH_FIN;
if (flags & TH_FIN) {
if (seg_len < 0 || (seg_len == 0 && !(flags & TH_FIN))) {
if ((flags & TH_FIN) && seg_len == -1) {
flags |= TH_FIN;
if (tcpha->tha_flags & TH_FIN) {
if (tcpha->tha_flags & TH_FIN) {
} else if (((flags & (TH_SYN|TH_FIN)) != 0) &&
} else if ((flags & (TH_URG|TH_PUSH|TH_FIN)) != 0) {
tlen = (tcp->th_flags & (TH_SYN|TH_FIN)) ? 1 : 0;
if (tcp->th_flags & (TH_SYN | TH_FIN)) {
if (tcp->th_flags & (TH_SYN | TH_FIN)) {
((tcp == NULL) || ((tcp->th_flags & (TH_SYN | TH_FIN)) == 0)))
((tcp == NULL) || ((tcp->th_flags & (TH_SYN | TH_FIN)) == 0)))
((tcp->th_flags & TH_FIN) ? 1 : 0);
if ((tcp->th_flags & ~(TH_FIN|TH_ACK|TH_ECNALL)) ==
flags = tcp->th_flags & ~(TH_FIN|TH_ECNALL);
((tcpflags & TH_SYN) ? 1 : 0) + ((tcpflags & TH_FIN) ? 1 : 0);
((tcp->th_flags & TH_FIN) ? 1 : 0);
} else if ((tcpflags & (TH_SYN|TH_FIN|TH_ACK)) ==
} else if (tcpflags & TH_FIN) {
if ((tcpflags & (TH_SYN|TH_FIN|TH_ACK)) == TH_ACK) {
} else if (tcpflags & TH_FIN) {
if (tcpflags & TH_FIN) {
if (tcpflags & TH_FIN) {
if (tcpflags & TH_FIN) {
if ((tcpflags & (TH_FIN|TH_ACK)) == TH_ACK) {
#define TCPF_ALL (TH_FIN|TH_SYN|TH_RST|TH_PUSH|TH_ACK|TH_URG|\
#ifndef TH_FIN
#define TH_ACKMASK (TH_FIN|TH_SYN|TH_RST|TH_ACK)
if (tcp->th_flags & TH_FIN) {
if (tcp->th_flags & TH_FIN)
if (seg_len < 0 || (seg_len == 0 && !(flags & TH_FIN))) {
flags &= ~(TH_SYN | TH_FIN | TH_URG);
flags &= ~TH_FIN;
if (flags & TH_FIN) {
flags &= ~TH_FIN;
flags |= TH_FIN;
flags |= TH_FIN;
if (flags & TH_FIN) {
boolean_t push = flags & (TH_PUSH|TH_FIN);
} else if ((flags & (TH_PUSH|TH_FIN)) ||
*flags |= TH_FIN;
if (seg_len < 0 || (seg_len == 0 && !(flags & TH_FIN))) {
if ((flags & TH_FIN) && seg_len == -1) {
ntcph->th_flags[0] &= ~(TH_FIN | TH_PUSH);
ntcph->th_flags[0] &= ~(TH_FIN | TH_PUSH);
ntcph->th_flags &= ~(TH_FIN | TH_PUSH | TH_RST);
ntcph->th_flags &= ~(TH_FIN | TH_PUSH | TH_RST | TH_URG);
if ((th->th_flags & (TH_SYN|TH_FIN|TH_RST|TH_ACK)) != TH_ACK) {
thp->th_flags = start_flags & ~(TH_PUSH | TH_FIN);
TH_FIN|TH_ACK, TH_FIN|TH_ACK, TH_FIN|TH_ACK, TH_ACK, TH_ACK,