app/fuzz: discard randoms of insufficient length

LLVMFuzzerRunDriver does not allow to specify minimum input length,
return immediately when data insufficient.

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Change-Id: I306e1774b17b04108f2454b2fdaadb4d912bd274
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/17884
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
This commit is contained in:
Sebastian Brzezinka 2023-04-26 12:44:11 +02:00 committed by David Ko
parent 509652cc4b
commit 2b954ddae4
2 changed files with 8 additions and 0 deletions

View File

@ -781,6 +781,10 @@ TestOneInput(const uint8_t *data, size_t size)
int ret = 0;
struct spdk_nvme_detach_ctx *detach_ctx = NULL;
if (size < g_fuzzer->bytes_per_cmd) {
return -1;
}
g_ctrlr = spdk_nvme_connect(&g_trid, NULL, 0);
if (g_ctrlr == NULL) {
fprintf(stderr, "spdk_nvme_connect() failed for transport address '%s'\n",

View File

@ -107,6 +107,10 @@ TestOneInput(const uint8_t *data, size_t size)
char ctrlr_path[PATH_MAX];
int ret = 0;
if (size < g_fuzzer->bytes_per_cmd) {
return -1;
}
snprintf(ctrlr_path, sizeof(ctrlr_path), "%s/cntrl", g_ctrlr_path);
ret = access(ctrlr_path, F_OK);
if (ret != 0) {