Message ID | 20240516090340.61417-13-hadess@hadess.net (mailing list archive) |
---|---|
State | Accepted |
Commit | 49d06560692f4307635a28b627a00d8c81948c48 |
Headers | show |
Series | Fix a number of static analysis issues #2 | expand |
Context | Check | Description |
---|---|---|
tedd_an/pre-ci_am | success | Success |
tedd_an/CheckPatch | success | CheckPatch PASS |
tedd_an/GitLint | fail | WARNING: I3 - ignore-body-lines: gitlint will be switching from using Python regex 'match' (match beginning) to 'search' (match anywhere) semantics. Please review your ignore-body-lines.regex option accordingly. To remove this warning, set general.regex-style-search=True. More details: https://jorisroovers.github.io/gitlint/configuration/#regex-style-search 4: B1 Line exceeds max length (119>80): "bluez-5.75/tools/mgmt-tester.c:12670:2: string_null_source: Function "vhci_read_devcd" does not terminate string "buf"." 5: B1 Line exceeds max length (141>80): "bluez-5.75/tools/mgmt-tester.c:12677:2: string_null: Passing unterminated string "buf" to "strtok_r", which expects a null-terminated string." 7: B3 Line contains hard tab characters (\t): "12676| /* Verify if all devcoredump header fields are present */" 8: B3 Line contains hard tab characters (\t): "12677|-> line = strtok_r(buf, delim, &saveptr);" 9: B3 Line contains hard tab characters (\t): "12678| while (strlen(test->expect_dump_data[i])) {" 10: B3 Line contains hard tab characters (\t): "12679| if (!line || strcmp(line, test->expect_dump_data[i])) {" |
diff --git a/tools/mgmt-tester.c b/tools/mgmt-tester.c index 8a4fbc2eb6a6..8076ec105ebb 100644 --- a/tools/mgmt-tester.c +++ b/tools/mgmt-tester.c @@ -12656,18 +12656,22 @@ static void verify_devcd(void *user_data) struct test_data *data = tester_get_data(); const struct generic_data *test = data->test_data; struct vhci *vhci = hciemu_get_vhci(data->hciemu); - char buf[MAX_COREDUMP_BUF_LEN] = {0}; + char buf[MAX_COREDUMP_BUF_LEN + 1] = {0}; + int read; char delim[] = "\n"; char *line; char *saveptr; int i = 0; /* Read the generated devcoredump file */ - if (vhci_read_devcd(vhci, buf, sizeof(buf)) <= 0) { + read = vhci_read_devcd(vhci, buf, MAX_COREDUMP_BUF_LEN); + if (read <= 0) { tester_warn("Unable to read devcoredump"); tester_test_failed(); return; } + /* Make sure buf is nul-terminated */ + buf[read + 1] = '\0'; /* Verify if all devcoredump header fields are present */ line = strtok_r(buf, delim, &saveptr);