Coverage Report

Created: 2026-09-01 06:52

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/pupnp/fuzzer/FuzzHttp.c
Line
Count
Source
1
#include "httpparser.h"
2
#include <stddef.h>
3
#include <stdint.h>
4
5
extern int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size)
6
2.77k
{
7
2.77k
  http_parser_t parser;
8
2.77k
  int as_response;
9
10
2.77k
  if (Size < 1) {
11
0
    return 0;
12
0
  }
13
14
  /* One leading byte selects request vs response parsing. */
15
2.77k
  as_response = Data[0] & 1;
16
2.77k
  Data += 1;
17
2.77k
  Size -= 1;
18
19
2.77k
  if (as_response) {
20
1.62k
    parser_response_init(&parser, HTTPMETHOD_GET);
21
1.62k
  } else {
22
1.15k
    parser_request_init(&parser);
23
1.15k
  }
24
25
2.77k
  parser_append(&parser, (const char *)Data, Size);
26
27
2.77k
  httpmsg_destroy(&parser.msg);
28
2.77k
  return 0;
29
2.77k
}