X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fconfig%2Fini.c;h=41d299a19be5343bb12518db407422468c05baf0;hb=875b29bfdafecb38a552264b0775478eaef0cae1;hp=7462aeb35d224a2e414dedbafd5918026e31113e;hpb=bac6245e1e5e337077ca246104fa23f382ae7063;p=lttng-tools.git diff --git a/src/common/config/ini.c b/src/common/config/ini.c index 7462aeb35..41d299a19 100644 --- a/src/common/config/ini.c +++ b/src/common/config/ini.c @@ -34,6 +34,7 @@ #include #include #include +#include #include "ini.h" @@ -81,12 +82,13 @@ static char* find_char_or_comment(const char* s, char c) /* Version of strncpy that ensures dest (size bytes) is null-terminated. */ static char* strncpy0(char* dest, const char* src, size_t size) { - strncpy(dest, src, size); + strncpy(dest, src, size - 1); dest[size - 1] = '\0'; return dest; } /* See documentation in header file. */ +LTTNG_HIDDEN int ini_parse_file(FILE* file, ini_entry_handler handler, void* user) { /* Uses a fair bit of stack (use heap instead if you need to) */ @@ -106,7 +108,7 @@ int ini_parse_file(FILE* file, ini_entry_handler handler, void* user) int error = 0; #if !INI_USE_STACK - line = (char*)malloc(INI_MAX_LINE); + line = (char*)zmalloc(INI_MAX_LINE); if (!line) { return -2; } @@ -199,6 +201,7 @@ int ini_parse_file(FILE* file, ini_entry_handler handler, void* user) } /* See documentation in header file. */ +LTTNG_HIDDEN int ini_parse(const char* filename, ini_entry_handler handler, void* user) { FILE* file;