tftp
move concatenation from custom functions to string functions
This commit is contained in:
@@ -25,27 +25,6 @@ static tftp_custom_file_t virt_file[] = {{.name = "index.txt", .data = NULL, .le
|
||||
{.name = "virtImage.gif", .data = NULL, .len = 0, .offset = 0},
|
||||
{.name = "virtText.txt", .data = NULL, .len = 0, .offset = 0}};
|
||||
|
||||
static int str_cat_str(char* dest, size_t dest_size, const char* src) {
|
||||
size_t dest_len = strlen(dest);
|
||||
size_t src_len = strlen(src);
|
||||
if (dest_len + src_len >= dest_size) {
|
||||
return -1;
|
||||
}
|
||||
memcpy(dest + dest_len, src, src_len);
|
||||
dest[dest_len + src_len] = '\0';
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int str_cat(char* dest, size_t dest_size, char c) {
|
||||
size_t dest_len = strlen(dest);
|
||||
if (dest_len + 1 > dest_size) {
|
||||
return -1;
|
||||
}
|
||||
dest[dest_len] = c;
|
||||
dest[dest_len + 1] = '\0';
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief tftp custom file functions to set the offset and read the data
|
||||
* @param[in,out] handle Custom file handles
|
||||
@@ -268,16 +247,16 @@ void init_index(void) {
|
||||
virt_file[VIRT_INDEX_TXT].len = len;
|
||||
|
||||
for (int i = 0; i < MAX_VIRT_FILES; i++) {
|
||||
str_cat_str(virt_file[VIRT_INDEX_TXT].data, len, virt_file[i].name);
|
||||
str_cat(virt_file[VIRT_INDEX_TXT].data, len, '\n');
|
||||
strncat(virt_file[VIRT_INDEX_TXT].data, virt_file[i].name, len);
|
||||
strncat(virt_file[VIRT_INDEX_TXT].data, "\n", len);
|
||||
}
|
||||
|
||||
mem = NULL;
|
||||
file = NULL;
|
||||
|
||||
while ((file = llfs_next_file(&mem, NULL)) != NULL) {
|
||||
str_cat_str(virt_file[VIRT_INDEX_TXT].data, len, file->name);
|
||||
str_cat(virt_file[VIRT_INDEX_TXT].data, len, '\n');
|
||||
strncat(virt_file[VIRT_INDEX_TXT].data, file->name, len);
|
||||
strncat(virt_file[VIRT_INDEX_TXT].data, "\n", len);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user