From b6afb18cbef664ede1c515fc62238d70b4a433a2 Mon Sep 17 00:00:00 2001 From: Kubat <mael.martin31@gmail.com> Date: Fri, 10 Apr 2020 10:52:00 +0200 Subject: [PATCH] Continuing with snprintf --- src/repo/async.c | 2 +- src/repo/curl.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/repo/async.c b/src/repo/async.c index 36bd2e79..8fdb2ce7 100644 --- a/src/repo/async.c +++ b/src/repo/async.c @@ -88,7 +88,7 @@ __handle_got_json(struct lkt_thread *self, struct lkt_repo *repo, struct json_ob kara->filename[++kara_dir_len] = 0; } integer = snprintf(kara->filename + kara_dir_len, PATH_MAX - kara_dir_len, "%d", integer); - kara->filename[PATH_MAX] = 0; + kara->filename[PATH_MAX - 1] = 0; fprintf(stderr, " . __handle_got_json: Crafted filename is '%s'\n", kara->filename); if (!kara) { diff --git a/src/repo/curl.c b/src/repo/curl.c index 277c4892..0f4b8191 100644 --- a/src/repo/curl.c +++ b/src/repo/curl.c @@ -229,6 +229,7 @@ repo_get_id(struct lkt_repo *const repo, const uint64_t id, struct kara_metadata memset(url, 0, URL_MAX_LEN * sizeof(char)); snprintf(url, URL_MAX_LEN - 1, repo->get_id_json, id); + url[URL_MAX_LEN - 1] = 0; curl_handle = curl_easy_init(); curl_easy_setopt(curl_handle, CURLOPT_URL, url); curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, write_mem__); @@ -342,6 +343,7 @@ repo_download_id_sync(struct lkt_repo *const repo, sqlite3 *db, const uint64_t i memset(url, 0, URL_MAX_LEN * sizeof(char)); snprintf(url, URL_MAX_LEN - 1, repo->get_id_file, id); + url[URL_MAX_LEN - 1] = 0; curl_handle = curl_easy_init(); curl_easy_setopt(curl_handle, CURLOPT_URL, url); curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, write_disk__); -- GitLab