X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fconfig%2Fini.c;h=826d9afa36c0268b331af2b45693242a06ed762f;hb=2aa28610e2bff8b40ad2810cbf0c7ea3b79e106d;hp=7462aeb35d224a2e414dedbafd5918026e31113e;hpb=bac6245e1e5e337077ca246104fa23f382ae7063;p=lttng-tools.git diff --git a/src/common/config/ini.c b/src/common/config/ini.c index 7462aeb35..826d9afa3 100644 --- a/src/common/config/ini.c +++ b/src/common/config/ini.c @@ -3,7 +3,9 @@ * * The "inih" library is distributed under the New BSD license: * - * Copyright (c) 2009, Brush Technology - All rights reserved. + * Copyright (C) 2009 Brush Technology - All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -34,6 +36,7 @@ #include #include #include +#include #include "ini.h" @@ -81,12 +84,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 +110,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 +203,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;