TFTP
* Remove the dependency on llfs_root * Change over to llfs_next_file
This commit is contained in:
@@ -15,8 +15,6 @@
|
||||
|
||||
static const char* TAG = "tftp_server";
|
||||
|
||||
extern struct llfs_data_file* llfs_root;
|
||||
|
||||
static tftp_custom_file_t virt_file[] = {{.name = "index.txt", .data = NULL, .len = 0, .offset = 0},
|
||||
{.name = "virtImage.bmp", .data = NULL, .len = 0, .offset = 0},
|
||||
{.name = "virtImage.gif", .data = NULL, .len = 0, .offset = 0},
|
||||
@@ -245,10 +243,10 @@ void init_index(void) {
|
||||
for (int i = 0; i < 2; i++) {
|
||||
len += strlen(virt_file[i].name) + 1;
|
||||
}
|
||||
const struct llfs_data_file* root = llfs_root;
|
||||
while (root != NULL) {
|
||||
len += strlen(root->name) + 1;
|
||||
root = root->next;
|
||||
void* mem = NULL; // Pointer for internal use by the llfs library
|
||||
llfs_file_t* file;
|
||||
while ((file = llfs_next_file(&mem, NULL)) != NULL) {
|
||||
len += strlen(file->name) + 1;
|
||||
}
|
||||
len++; // +1 for the \0
|
||||
virt_file[VIRT_INDEX_TXT].data = malloc(len);
|
||||
@@ -258,11 +256,13 @@ void init_index(void) {
|
||||
str_cat_str(virt_file[VIRT_INDEX_TXT].data, len, virt_file[i].name);
|
||||
str_cat(virt_file[VIRT_INDEX_TXT].data, len, '\n');
|
||||
}
|
||||
root = llfs_root;
|
||||
while (root != NULL) {
|
||||
str_cat_str(virt_file[VIRT_INDEX_TXT].data, len, root->name);
|
||||
|
||||
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');
|
||||
root = root->next;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user