|
|
@ -643,6 +643,10 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { |
|
|
|
break; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
size_t num_ops = next_byte(&inp); |
|
|
|
size_t num_ops = next_byte(&inp); |
|
|
|
|
|
|
|
if (num_ops > 6) { |
|
|
|
|
|
|
|
end(&inp); |
|
|
|
|
|
|
|
break; |
|
|
|
|
|
|
|
} |
|
|
|
grpc_op *ops = gpr_malloc(sizeof(grpc_op) * num_ops); |
|
|
|
grpc_op *ops = gpr_malloc(sizeof(grpc_op) * num_ops); |
|
|
|
bool ok = true; |
|
|
|
bool ok = true; |
|
|
|
size_t i; |
|
|
|
size_t i; |
|
|
@ -651,6 +655,8 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { |
|
|
|
op = &ops[i]; |
|
|
|
op = &ops[i]; |
|
|
|
switch (next_byte(&inp)) { |
|
|
|
switch (next_byte(&inp)) { |
|
|
|
default: |
|
|
|
default: |
|
|
|
|
|
|
|
/* invalid value */ |
|
|
|
|
|
|
|
op->op = -1; |
|
|
|
ok = false; |
|
|
|
ok = false; |
|
|
|
break; |
|
|
|
break; |
|
|
|
case GRPC_OP_SEND_INITIAL_METADATA: |
|
|
|
case GRPC_OP_SEND_INITIAL_METADATA: |
|
|
|