X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fconfig%2Fini.c;h=1d967a49d0b0da6de531da8d37a7ba1c0d2b05cb;hb=ca806b0b247f89c62ac628a7779ae84049a8c2d7;hp=4369a32f93bd3317a9e6d9d08286f6d2d469bbb9;hpb=b20350122720a23ddb59003a2f54210add153c8d;p=lttng-tools.git diff --git a/src/common/config/ini.c b/src/common/config/ini.c index 4369a32f9..1d967a49d 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,13 +84,12 @@ 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) */ @@ -107,7 +109,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; } @@ -200,7 +202,6 @@ 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;