Browse Source

Add files via upload

pull/319/head
SashaXser 2 years ago
committed by GitHub
parent
commit
06500c3fca
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 15
      src/goodbyedpi.c

15
src/goodbyedpi.c

@ -333,26 +333,25 @@ static int find_header_and_get_info(const char *pktdata, unsigned int pktlen,
const char *hdrname, const char *hdrname,
char **hdrnameaddr, char **hdrnameaddr,
char **hdrvalueaddr, unsigned int *hdrvaluelen) { char **hdrvalueaddr, unsigned int *hdrvaluelen) {
char *hdr_begin;
char *data_addr_rn; char *data_addr_rn;
char *hdr_begin;
*hdrvaluelen = 0u; *hdrvaluelen = 0u;
*hdrnameaddr = NULL; *hdrnameaddr = NULL;
*hdrvalueaddr = NULL; *hdrvalueaddr = NULL;
/* Search for the header using Boyer-Moore */ /* Search for the header */
hdr_begin = boyer_moore_search(pktdata, pktlen, hdr_begin = dumb_memmem(pktdata, pktlen,
hdrname, strlen(hdrname)); hdrname, strlen(hdrname));
if (!hdr_begin) return FALSE; if (!hdr_begin) return FALSE;
if (pktdata > hdr_begin) return FALSE; if (pktdata > hdr_begin) return FALSE;
/* Set header address */ /* Set header address */
*hdrnameaddr = hdr_begin; *hdrnameaddr = hdr_begin;
*hdrvalueaddr = hdr_begin + strlen(hdrname); *hdrvalueaddr = hdr_begin + strlen(hdrname);
/* Search for header end using Boyer-Moore */ /* Search for header end (\r\n) */
data_addr_rn = boyer_moore_search(*hdrvalueaddr, data_addr_rn = dumb_memmem(*hdrvalueaddr,
pktlen - (uintptr_t)(*hdrvalueaddr - pktdata), pktlen - (uintptr_t)(*hdrvalueaddr - pktdata),
"\r\n", 2); "\r\n", 2);
if (data_addr_rn) { if (data_addr_rn) {
@ -360,11 +359,9 @@ static int find_header_and_get_info(const char *pktdata, unsigned int pktlen,
if (*hdrvaluelen >= 3 && *hdrvaluelen <= HOST_MAXLEN) if (*hdrvaluelen >= 3 && *hdrvaluelen <= HOST_MAXLEN)
return TRUE; return TRUE;
} }
return FALSE; return FALSE;
} }
/** /**
* Very crude Server Name Indication (TLS ClientHello hostname) extractor. * Very crude Server Name Indication (TLS ClientHello hostname) extractor.
*/ */

Loading…
Cancel
Save