From dc3a561845e94cb7f031772f0d1b2d29174a0871 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Higor=20Eur=C3=ADpedes?= Date: Mon, 16 Nov 2015 20:44:27 -0300 Subject: [PATCH 1/3] (task_database_cue) Fix buffer overflow --- tasks/task_database_cue.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/task_database_cue.c b/tasks/task_database_cue.c index baec639ffe..cd4c93cc47 100644 --- a/tasks/task_database_cue.c +++ b/tasks/task_database_cue.c @@ -111,7 +111,7 @@ static ssize_t get_token(RFILE *fd, char *token, size_t max_len) static int find_token(RFILE *fd, const char *token) { int tmp_len = strlen(token); - char *tmp_token = (char*)calloc(tmp_len, 1); + char *tmp_token = (char*)calloc(tmp_len+1, 1); if (!tmp_token) return -1; From 9770bc354c6fd0b3507e6538c0f95a3eab4756ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Higor=20Eur=C3=ADpedes?= Date: Mon, 16 Nov 2015 20:46:14 -0300 Subject: [PATCH 2/3] (task_database_cue) Fix memory leak --- tasks/task_database_cue.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tasks/task_database_cue.c b/tasks/task_database_cue.c index cd4c93cc47..2900126e07 100644 --- a/tasks/task_database_cue.c +++ b/tasks/task_database_cue.c @@ -122,6 +122,8 @@ static int find_token(RFILE *fd, const char *token) return -1; } + free(tmp_token); + return 0; } From 0e8d65c44ee2f953705f0bc75a39679ec72865e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Higor=20Eur=C3=ADpedes?= Date: Mon, 16 Nov 2015 20:49:51 -0300 Subject: [PATCH 3/3] (task_database) Fix serial lookup --- tasks/task_database.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/task_database.c b/tasks/task_database.c index 1160d5e13f..d3ffdf64a3 100644 --- a/tasks/task_database.c +++ b/tasks/task_database.c @@ -435,7 +435,7 @@ static int database_info_iterate_serial_lookup( db_state->serial, db_info_entry->serial, db_info_entry->name); #endif if (!strcmp(db_state->serial, db_info_entry->serial)) - database_info_list_iterate_found_match(db_state, db, NULL); + return database_info_list_iterate_found_match(db_state, db, NULL); } }