diff options
author | Zoltan Fridrich <zfridric@redhat.com> | 2023-01-27 15:03:53 +0100 |
---|---|---|
committer | Zoltan Fridrich <zfridric@redhat.com> | 2023-01-27 15:11:28 +0100 |
commit | 50e0c39fc9b8e0ae493f42a3046db5e70f8ea044 (patch) | |
tree | 36d6eb0dde4d81527a07017d6df7d1dd4b7e436e /lib/inih | |
parent | 21288eb0ce9d27f00c4f8ac8048b22f4003f65ac (diff) | |
download | gnutls-50e0c39fc9b8e0ae493f42a3046db5e70f8ea044.tar.gz |
Indent code
Co-authored-by: Simon Josefsson <simon@josefsson.org>
Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
Diffstat (limited to 'lib/inih')
-rw-r--r-- | lib/inih/ini.c | 250 | ||||
-rw-r--r-- | lib/inih/ini.h | 103 |
2 files changed, 175 insertions, 178 deletions
diff --git a/lib/inih/ini.c b/lib/inih/ini.c index 0393625b71..4e0ab33dde 100644 --- a/lib/inih/ini.c +++ b/lib/inih/ini.c @@ -8,7 +8,7 @@ https://github.com/benhoyt/inih */ #if defined(_MSC_VER) && !defined(_CRT_SECURE_NO_WARNINGS) -#define _CRT_SECURE_NO_WARNINGS +# define _CRT_SECURE_NO_WARNINGS #endif #include <stdio.h> @@ -18,188 +18,186 @@ https://github.com/benhoyt/inih #include "ini.h" #if !INI_USE_STACK -#include <stdlib.h> +# include <stdlib.h> #endif #define MAX_SECTION 50 #define MAX_NAME 50 /* Strip whitespace chars off end of given string, in place. Return s. */ -static char* rstrip(char* s) +static char *rstrip(char *s) { - char* p = s + strlen(s); - while (p > s && isspace((unsigned char)(*--p))) - *p = '\0'; - return s; + char *p = s + strlen(s); + while (p > s && isspace((unsigned char)(*--p))) + *p = '\0'; + return s; } /* Return pointer to first non-whitespace char in given string. */ -static char* lskip(const char* s) +static char *lskip(const char *s) { - while (*s && isspace((unsigned char)(*s))) - s++; - return (char*)s; + while (*s && isspace((unsigned char)(*s))) + s++; + return (char *)s; } /* Return pointer to first char (of chars) or inline comment in given string, or pointer to null at end of string if neither found. Inline comment must be prefixed by a whitespace character to register as a comment. */ -static char* find_chars_or_comment(const char* s, const char* chars) +static char *find_chars_or_comment(const char *s, const char *chars) { #if INI_ALLOW_INLINE_COMMENTS - int was_space = 0; - while (*s && (!chars || !strchr(chars, *s)) && - !(was_space && strchr(INI_INLINE_COMMENT_PREFIXES, *s))) { - was_space = isspace((unsigned char)(*s)); - s++; - } + int was_space = 0; + while (*s && (!chars || !strchr(chars, *s)) && + !(was_space && strchr(INI_INLINE_COMMENT_PREFIXES, *s))) { + was_space = isspace((unsigned char)(*s)); + s++; + } #else - while (*s && (!chars || !strchr(chars, *s))) { - s++; - } + while (*s && (!chars || !strchr(chars, *s))) { + s++; + } #endif - return (char*)s; + return (char *)s; } /* Version of strncpy that ensures dest (size bytes) is null-terminated. */ -static char* strncpy0(char* dest, const char* src, size_t size) +static char *strncpy0(char *dest, const char *src, size_t size) { - strncpy(dest, src, size - 1); - dest[size - 1] = '\0'; - return dest; + strncpy(dest, src, size - 1); + dest[size - 1] = '\0'; + return dest; } /* See documentation in header file. */ -int ini_parse_file(FILE* file, ini_handler handler, void* user) +int ini_parse_file(FILE * file, ini_handler handler, void *user) { - /* Uses a fair bit of stack (use heap instead if you need to) */ + /* Uses a fair bit of stack (use heap instead if you need to) */ #if INI_USE_STACK - char line[INI_MAX_LINE]; - int max_line = INI_MAX_LINE; + char line[INI_MAX_LINE]; + int max_line = INI_MAX_LINE; #else - char* line; - int max_line = INI_INITIAL_ALLOC; + char *line; + int max_line = INI_INITIAL_ALLOC; #endif #if INI_ALLOW_REALLOC && !INI_USE_STACK - char* new_line; - int offset; + char *new_line; + int offset; #endif - char section[MAX_SECTION] = ""; - char prev_name[MAX_NAME] = ""; + char section[MAX_SECTION] = ""; + char prev_name[MAX_NAME] = ""; - char* end; - char* name; - char* value; - int lineno = 0; - int error = 0; + char *end; + char *name; + char *value; + int lineno = 0; + int error = 0; #if !INI_USE_STACK - line = (char*)malloc(INI_INITIAL_ALLOC); - if (!line) { - return -2; - } + line = (char *)malloc(INI_INITIAL_ALLOC); + if (!line) { + return -2; + } #endif #if INI_HANDLER_LINENO -#define HANDLER(u, s, n, v) handler(u, s, n, v, lineno) +# define HANDLER(u, s, n, v) handler(u, s, n, v, lineno) #else -#define HANDLER(u, s, n, v) handler(u, s, n, v) +# define HANDLER(u, s, n, v) handler(u, s, n, v) #endif - /* Scan through stream line by line */ - while (fgets(line, max_line, file) != NULL) { - char* start; + /* Scan through stream line by line */ + while (fgets(line, max_line, file) != NULL) { + char *start; #if INI_ALLOW_REALLOC && !INI_USE_STACK - offset = strlen(line); - while (offset == max_line - 1 && line[offset - 1] != '\n') { - max_line *= 2; - if (max_line > INI_MAX_LINE) - max_line = INI_MAX_LINE; - new_line = realloc(line, max_line); - if (!new_line) { - free(line); - return -2; - } - line = new_line; - if (fgets(line + offset, max_line - offset, file) == NULL) - break; - if (max_line >= INI_MAX_LINE) - break; - offset += strlen(line + offset); - } + offset = strlen(line); + while (offset == max_line - 1 && line[offset - 1] != '\n') { + max_line *= 2; + if (max_line > INI_MAX_LINE) + max_line = INI_MAX_LINE; + new_line = realloc(line, max_line); + if (!new_line) { + free(line); + return -2; + } + line = new_line; + if (fgets(line + offset, max_line - offset, file) == + NULL) + break; + if (max_line >= INI_MAX_LINE) + break; + offset += strlen(line + offset); + } #endif - lineno++; + lineno++; - start = line; + start = line; #if INI_ALLOW_BOM - if (lineno == 1 && (unsigned char)start[0] == 0xEF && - (unsigned char)start[1] == 0xBB && - (unsigned char)start[2] == 0xBF) { - start += 3; - } + if (lineno == 1 && (unsigned char)start[0] == 0xEF && + (unsigned char)start[1] == 0xBB && + (unsigned char)start[2] == 0xBF) { + start += 3; + } #endif - start = lskip(rstrip(start)); + start = lskip(rstrip(start)); - if (strchr(INI_START_COMMENT_PREFIXES, *start)) { - /* Start-of-line comment */ - } + if (strchr(INI_START_COMMENT_PREFIXES, *start)) { + /* Start-of-line comment */ + } #if INI_ALLOW_MULTILINE - else if (*prev_name && *start && start > line) { - /* Non-blank line with leading whitespace, treat as continuation - of previous name's value (as per Python configparser). */ - if (!HANDLER(user, section, prev_name, start) && !error) - error = lineno; - } + else if (*prev_name && *start && start > line) { + /* Non-blank line with leading whitespace, treat as continuation + of previous name's value (as per Python configparser). */ + if (!HANDLER(user, section, prev_name, start) && !error) + error = lineno; + } #endif - else if (*start == '[') { - /* A "[section]" line */ - end = find_chars_or_comment(start + 1, "]"); - if (*end == ']') { - *end = '\0'; - strncpy0(section, start + 1, sizeof(section)); - *prev_name = '\0'; - } - else if (!error) { - /* No ']' found on section line */ - error = lineno; - } - } - else if (*start) { - /* Not a comment, must be a name[=:]value pair */ - end = find_chars_or_comment(start, "=:"); - if (*end == '=' || *end == ':') { - *end = '\0'; - name = rstrip(start); - value = end + 1; + else if (*start == '[') { + /* A "[section]" line */ + end = find_chars_or_comment(start + 1, "]"); + if (*end == ']') { + *end = '\0'; + strncpy0(section, start + 1, sizeof(section)); + *prev_name = '\0'; + } else if (!error) { + /* No ']' found on section line */ + error = lineno; + } + } else if (*start) { + /* Not a comment, must be a name[=:]value pair */ + end = find_chars_or_comment(start, "=:"); + if (*end == '=' || *end == ':') { + *end = '\0'; + name = rstrip(start); + value = end + 1; #if INI_ALLOW_INLINE_COMMENTS - end = find_chars_or_comment(value, NULL); - if (*end) - *end = '\0'; + end = find_chars_or_comment(value, NULL); + if (*end) + *end = '\0'; #endif - value = lskip(value); - rstrip(value); - - /* Valid name[=:]value pair found, call handler */ - strncpy0(prev_name, name, sizeof(prev_name)); - if (!HANDLER(user, section, name, value) && !error) - error = lineno; - } - else if (!error) { - /* No '=' or ':' found on name[=:]value line */ - error = lineno; - } - } - + value = lskip(value); + rstrip(value); + + /* Valid name[=:]value pair found, call handler */ + strncpy0(prev_name, name, sizeof(prev_name)); + if (!HANDLER(user, section, name, value) + && !error) + error = lineno; + } else if (!error) { + /* No '=' or ':' found on name[=:]value line */ + error = lineno; + } + } #if INI_STOP_ON_FIRST_ERROR - if (error) - break; + if (error) + break; #endif - } + } #if !INI_USE_STACK - free(line); + free(line); #endif - return error; + return error; } diff --git a/lib/inih/ini.h b/lib/inih/ini.h index a8fef27f85..d9f2783dba 100644 --- a/lib/inih/ini.h +++ b/lib/inih/ini.h @@ -8,98 +8,97 @@ https://github.com/benhoyt/inih */ #ifndef __INI_H__ -#define __INI_H__ +# define __INI_H__ /* Make this header file easier to include in C++ code */ -#ifdef __cplusplus +# ifdef __cplusplus extern "C" { -#endif +# endif -#include <stdio.h> -#include <config.h> +# include <stdio.h> +# include <config.h> /* Nonzero if ini_handler callback should accept lineno parameter. */ -#ifndef INI_HANDLER_LINENO -#define INI_HANDLER_LINENO 0 -#endif +# ifndef INI_HANDLER_LINENO +# define INI_HANDLER_LINENO 0 +# endif /* Typedef for prototype of handler function. */ -#if INI_HANDLER_LINENO -typedef int (*ini_handler)(void* user, const char* section, - const char* name, const char* value, - int lineno); -#else -typedef int (*ini_handler)(void* user, const char* section, - const char* name, const char* value); -#endif +# if INI_HANDLER_LINENO + typedef int (*ini_handler)(void *user, const char *section, + const char *name, const char *value, + int lineno); +# else + typedef int (*ini_handler)(void *user, const char *section, + const char *name, const char *value); +# endif /* Typedef for prototype of fgets-style reader function. */ -typedef char* (*ini_reader)(char* str, int num, void* stream); + typedef char *(*ini_reader)(char *str, int num, void *stream); /* Same as ini_parse(), but takes a FILE* instead of filename. This doesn't close the file when it's finished -- the caller must do that. */ -int ini_parse_file(FILE* file, ini_handler handler, void* user); + int ini_parse_file(FILE * file, ini_handler handler, void *user); /* Nonzero to allow multi-line value parsing, in the style of Python's configparser. If allowed, ini_parse() will call the handler with the same name for each subsequent line parsed. */ -#ifndef INI_ALLOW_MULTILINE -#define INI_ALLOW_MULTILINE 1 -#endif +# ifndef INI_ALLOW_MULTILINE +# define INI_ALLOW_MULTILINE 1 +# endif /* Nonzero to allow a UTF-8 BOM sequence (0xEF 0xBB 0xBF) at the start of the file. See https://github.com/benhoyt/inih/issues/21 */ -#ifndef INI_ALLOW_BOM -#define INI_ALLOW_BOM 1 -#endif +# ifndef INI_ALLOW_BOM +# define INI_ALLOW_BOM 1 +# endif /* Chars that begin a start-of-line comment. Per Python configparser, allow both ; and # comments at the start of a line by default. */ -#ifndef INI_START_COMMENT_PREFIXES -#define INI_START_COMMENT_PREFIXES ";#" -#endif +# ifndef INI_START_COMMENT_PREFIXES +# define INI_START_COMMENT_PREFIXES ";#" +# endif /* Nonzero to allow inline comments (with valid inline comment characters specified by INI_INLINE_COMMENT_PREFIXES). Set to 0 to turn off and match Python 3.2+ configparser behaviour. */ -#ifndef INI_ALLOW_INLINE_COMMENTS -#define INI_ALLOW_INLINE_COMMENTS 1 -#endif -#ifndef INI_INLINE_COMMENT_PREFIXES -#define INI_INLINE_COMMENT_PREFIXES ";" -#endif +# ifndef INI_ALLOW_INLINE_COMMENTS +# define INI_ALLOW_INLINE_COMMENTS 1 +# endif +# ifndef INI_INLINE_COMMENT_PREFIXES +# define INI_INLINE_COMMENT_PREFIXES ";" +# endif /* Nonzero to use stack for line buffer, zero to use heap (malloc/free). */ -#ifndef INI_USE_STACK -#define INI_USE_STACK 1 -#endif +# ifndef INI_USE_STACK +# define INI_USE_STACK 1 +# endif /* Maximum line length for any line in INI file (stack or heap). Note that this must be 3 more than the longest line (due to '\r', '\n', and '\0'). */ -#ifndef INI_MAX_LINE -#define INI_MAX_LINE 200 -#endif +# ifndef INI_MAX_LINE +# define INI_MAX_LINE 200 +# endif /* Nonzero to allow heap line buffer to grow via realloc(), zero for a fixed-size buffer of INI_MAX_LINE bytes. Only applies if INI_USE_STACK is zero. */ -#ifndef INI_ALLOW_REALLOC -#define INI_ALLOW_REALLOC 0 -#endif +# ifndef INI_ALLOW_REALLOC +# define INI_ALLOW_REALLOC 0 +# endif /* Initial size in bytes for heap line buffer. Only applies if INI_USE_STACK is zero. */ -#ifndef INI_INITIAL_ALLOC -#define INI_INITIAL_ALLOC 200 -#endif +# ifndef INI_INITIAL_ALLOC +# define INI_INITIAL_ALLOC 200 +# endif /* Stop parsing on first error (default is to keep parsing). */ -#ifndef INI_STOP_ON_FIRST_ERROR -#define INI_STOP_ON_FIRST_ERROR 0 -#endif +# ifndef INI_STOP_ON_FIRST_ERROR +# define INI_STOP_ON_FIRST_ERROR 0 +# endif -#ifdef __cplusplus +# ifdef __cplusplus } -#endif - -#endif /* __INI_H__ */ +# endif +#endif /* __INI_H__ */ |