Coverage Report

Created: 2024-05-20 06:11

/src/FreeRDP/libfreerdp/common/test/TestFuzzCommonAssistanceParseFileBuffer.c
Line
Count
Source (jump to first uncovered line)
1
#include <freerdp/assistance.h>
2
3
static int parse_file_buffer(const uint8_t* Data, size_t Size)
4
1.70k
{
5
1.70k
  static const char TEST_MSRC_INCIDENT_PASSWORD_TYPE2[] = "48BJQ853X3B4";
6
1.70k
  int status = -1;
7
1.70k
  rdpAssistanceFile* file = freerdp_assistance_file_new();
8
1.70k
  if (!file)
9
0
    return -1;
10
11
1.70k
  char* buf = calloc(Size + 1, sizeof(char));
12
1.70k
  if (buf == NULL)
13
0
    goto err;
14
1.70k
  memcpy(buf, Data, Size);
15
1.70k
  buf[Size] = '\0';
16
17
1.70k
  status = freerdp_assistance_parse_file_buffer(file, (char*)buf, Size + 1,
18
1.70k
                                                TEST_MSRC_INCIDENT_PASSWORD_TYPE2);
19
20
1.70k
err:
21
1.70k
  freerdp_assistance_file_free(file);
22
1.70k
  free(buf);
23
24
1.70k
  return status >= 0 ? TRUE : FALSE;
25
1.70k
}
26
27
int LLVMFuzzerTestOneInput(const uint8_t* Data, size_t Size)
28
16.7k
{
29
16.7k
  parse_file_buffer(Data, Size);
30
16.7k
  return 0;
31
16.7k
}