Browse Source

nfqws: optimize

pull/1821/head
bol-van 9 months ago
parent
commit
2daf764760
  1. 19
      nfq/desync.c

19
nfq/desync.c

@ -932,14 +932,19 @@ static bool runtime_tls_mod(int fake_n, const struct fake_tls_mod_cache *modcach
return b; return b;
} }
static void rewrite_tcp_flags(uint16_t *flags, uint16_t unset, uint16_t set, const char *what) static bool rewrite_tcp_flags(uint16_t *flags, uint16_t unset, uint16_t set, const char *what)
{ {
if (set || unset) if (set || unset)
{ {
uint16_t fl_new = *flags & ~unset | set; uint16_t fl_new = *flags & ~unset | set;
DLOG("rewrite %s tcp flags 0x%03X => 0x%03X\n", what, *flags, fl_new); if (fl_new!=*flags)
*flags = fl_new; {
DLOG("rewrite %s tcp flags 0x%03X => 0x%03X\n", what, *flags, fl_new);
*flags = fl_new;
return true;
}
} }
return false;
} }
static uint8_t orig_mod(const struct desync_profile *dp, const t_ctrack *ctrack, struct dissect *dis) static uint8_t orig_mod(const struct desync_profile *dp, const t_ctrack *ctrack, struct dissect *dis)
@ -963,9 +968,11 @@ static uint8_t orig_mod(const struct desync_profile *dp, const t_ctrack *ctrack,
if (dis->tcp) if (dis->tcp)
{ {
uint16_t flags = get_tcp_flags(dis->tcp); uint16_t flags = get_tcp_flags(dis->tcp);
rewrite_tcp_flags(&flags, dp->orig_tcp_flags_unset, dp->orig_tcp_flags_set, "original"); if (rewrite_tcp_flags(&flags, dp->orig_tcp_flags_unset, dp->orig_tcp_flags_set, "original"))
apply_tcp_flags(dis->tcp,flags); {
bModded = true; apply_tcp_flags(dis->tcp,flags);
bModded = true;
}
} }
} }
return bModded; return bModded;

Loading…
Cancel
Save