diff options
author | Jeremias Stotter <jeremias@stotter.eu> | 2022-04-21 21:40:19 +0200 |
---|---|---|
committer | Jeremias Stotter <jeremias@stotter.eu> | 2022-04-21 21:40:19 +0200 |
commit | 371a57e67e25aa748e150babc9e886ee62f43168 (patch) | |
tree | 1718b5bfe4874af3efca6f688bfb38afa7c85265 | |
parent | 4277409f6bd1a8c9d2ba97dd162f717a80e72a04 (diff) | |
download | JBlog-371a57e67e25aa748e150babc9e886ee62f43168.tar.gz JBlog-371a57e67e25aa748e150babc9e886ee62f43168.tar.bz2 JBlog-371a57e67e25aa748e150babc9e886ee62f43168.zip |
Made a few things more clean
-rw-r--r-- | admin.c | 11 | ||||
-rw-r--r-- | jblog.c | 4 | ||||
-rw-r--r-- | md.c | 1 |
3 files changed, 9 insertions, 7 deletions
@@ -449,10 +449,11 @@ int post_admin(char* buffer, size_t buffer_size, char* req_content, size_t req_c if(folder_name && sub_str && folder_name) { sanitize_path(folder_name); char folder_path[PATH_MAX] = ""; + int entry_path_len = 0; if(savedir == NULL) { - snprintf(folder_path, PATH_MAX, "%s%s", base_path, folder_name); + entry_path_len = snprintf(folder_path, PATH_MAX, "%s%s", base_path, folder_name); } else if(adm_save_dir != NULL) { - snprintf(folder_path, PATH_MAX, "%s%s", adm_save_dir, folder_name); + entry_path_len = snprintf(folder_path, PATH_MAX, "%s%s", adm_save_dir, folder_name); } else { strncpy(buffer, "<p><b>There was no admin save directroy specified at launch</b></p>", buffer_size -1); return 1; @@ -486,9 +487,10 @@ int post_admin(char* buffer, size_t buffer_size, char* req_content, size_t req_c } size_t buffer_used = strlen(buffer); char* buffer_end = buffer + buffer_used; - char entry_path[PATH_MAX] = ""; + entry_path_len += strlen(fetch_dirent->d_name) + 2; + char* entry_path = calloc(entry_path_len, 1); // Check the type of the entry - snprintf(entry_path, PATH_MAX, "%s/%s", folder_path, fetch_dirent->d_name); + snprintf(entry_path, entry_path_len, "%s/%s", folder_path, fetch_dirent->d_name); char* entry_link = NULL; if(savedir) { entry_link = (char*)entry_path + strlen(adm_save_dir); @@ -517,6 +519,7 @@ int post_admin(char* buffer, size_t buffer_size, char* req_content, size_t req_c } else { snprintf(buffer_end, buffer_size - buffer_used, "    <a target=\"_blank\" href=\"%s\">%s %s<br/></a>", entry_link, (entry_stat.st_mode & S_IFDIR) > 1 ? "DIR " : "FILE", fetch_dirent->d_name); } + free(entry_path); } closedir(fetch_dir); return 1; @@ -510,9 +510,9 @@ int main(int argc, char* argv[]) { return -1; } - struct sockaddr_un socket_address; + struct sockaddr_un socket_address = {0}; socket_address.sun_family = AF_LOCAL; - strncpy((socket_address.sun_path), un_path, UN_MAX_LEN); + strncpy((socket_address.sun_path), un_path, sizeof(socket_address.sun_path) - 1); socklen_t un_socklen = sizeof(struct sockaddr_un); @@ -429,7 +429,6 @@ int parse_markdown(char* input, char* buffer, size_t buffer_size) { root->allow_inner = false; struct tree_element* active_element = root; for(register char* cur_char = input; *cur_char != '\0'; cur_char++) { - printf("%c", *cur_char); if(escaped || (code_element && *cur_char != '\n' && *cur_char != '\r' && !newline)) { escaped = false; if((*cur_char == '\n' || *cur_char == '\r')) { |