Replace all calls to strncpy with strlcpy, use strdup more, expose strlcat (#3866)

strlcpy doesn't zero the buffer and ensures null termination,
just like snprintf

strlcat is already used by mjs and it's a safe alternative to strcat,
so it should be OK to expose to apps
This commit is contained in:
Silent
2024-09-07 18:16:56 +02:00
committed by GitHub
parent 9bdf41d8ff
commit 8672a1d94c
18 changed files with 47 additions and 47 deletions

View File

@@ -6,7 +6,7 @@
#include <dolphin/dolphin.h>
#include <toolbox/name_generator.h>
#define MAX_TEXT_INPUT_LEN 22
#define MAX_TEXT_INPUT_LEN 23
void subghz_scene_save_name_text_input_callback(void* context) {
furi_assert(context);
@@ -39,7 +39,7 @@ void subghz_scene_save_name_on_enter(void* context) {
FuriString* dir_name = furi_string_alloc();
if(!subghz_path_is_file(subghz->file_path)) {
char file_name_buf[SUBGHZ_MAX_LEN_NAME] = {0};
char file_name_buf[SUBGHZ_MAX_LEN_NAME];
name_generator_make_auto(file_name_buf, SUBGHZ_MAX_LEN_NAME, SUBGHZ_APP_FILENAME_PREFIX);
@@ -62,7 +62,7 @@ void subghz_scene_save_name_on_enter(void* context) {
furi_string_set(subghz->file_path, dir_name);
}
strncpy(subghz->file_name_tmp, furi_string_get_cstr(file_name), SUBGHZ_MAX_LEN_NAME);
strlcpy(subghz->file_name_tmp, furi_string_get_cstr(file_name), SUBGHZ_MAX_LEN_NAME);
text_input_set_header_text(text_input, "Name signal");
text_input_set_result_callback(
text_input,