| #include <stddef.h> |
| #include <stdio.h> |
| #include <stdint.h> |
| #include <string.h> |
| #include <stdlib.h> |
| |
| extern "C" { |
| |
| #include "auth-options.h" |
| |
| int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) |
| { |
| char *cp = (char *)malloc(size + 1); |
| struct sshauthopt *opts = NULL, *merge = NULL, *add = sshauthopt_new(); |
| |
| if (cp == NULL || add == NULL) |
| goto out; |
| memcpy(cp, data, size); |
| cp[size] = '\0'; |
| if ((opts = sshauthopt_parse(cp, NULL)) == NULL) |
| goto out; |
| if ((merge = sshauthopt_merge(opts, add, NULL)) == NULL) |
| goto out; |
| |
| out: |
| free(cp); |
| sshauthopt_free(add); |
| sshauthopt_free(opts); |
| sshauthopt_free(merge); |
| return 0; |
| } |
| |
| } // extern "C" |