version 1.2, 2025/03/09 15:20:18
|
version 1.5, 2025/04/15 16:49:36
|
Line 1
|
Line 1
|
/* |
/* |
* * |
* $Id$ |
* * * |
|
* * * |
|
* *************** |
|
* * * * * |
|
* * MUMPS * |
|
* * * * * |
|
* *************** |
|
* * * |
|
* * * |
|
* * |
|
* |
|
* iniconf.h |
|
* Function prototypes, structs, and macros for reading |
* Function prototypes, structs, and macros for reading |
* FreeM configuration files |
* FreeM configuration files |
* |
* |
* |
* |
* Author: Serena Willis <snw@coherent-logic.com> |
* Author: Serena Willis <snw@coherent-logic.com> |
* Copyright (C) 1998 MUG Deutschland |
* Copyright (C) 1998 MUG Deutschland |
* Copyright (C) 2020 Coherent Logic Development LLC |
* Copyright (C) 2020, 2025 Coherent Logic Development LLC |
* |
* |
* |
* |
* This file is part of FreeM. |
* This file is part of FreeM. |
Line 36
|
Line 24
|
* You should have received a copy of the GNU Affero Public License |
* You should have received a copy of the GNU Affero Public License |
* along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
* along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
* |
* |
|
* $Log$ |
|
* Revision 1.5 2025/04/15 16:49:36 snw |
|
* Make use of logprintf throughout codebase |
|
* |
|
* Revision 1.4 2025/04/02 19:59:38 snw |
|
* Automatically modify env.conf from fmadm reconfigure |
|
* |
|
* Revision 1.3 2025/03/09 19:14:25 snw |
|
* First phase of REUSE compliance and header reformat |
|
* |
|
* |
|
* SPDX-FileCopyrightText: (C) 2025 Coherent Logic Development LLC |
|
* SPDX-License-Identifier: AGPL-3.0-or-later |
**/ |
**/ |
|
|
#ifndef _CONFIG_H |
#ifndef _CONFIG_H |
Line 43
|
Line 44
|
|
|
#define CONF_BUFSIZE 255 |
#define CONF_BUFSIZE 255 |
|
|
typedef struct ini_keyvalue { |
|
char *key; |
|
char *value; |
|
|
|
struct ini_keyvalue *next; |
|
} ini_keyvalue; |
|
|
|
typedef struct ini_section { |
|
char *name; |
|
|
|
ini_keyvalue *head; |
|
|
|
struct ini_section *next; |
|
} ini_section; |
|
|
|
extern int get_conf(char *section, char *key, char *value); |
extern int get_conf(char *section, char *key, char *value); |
extern int file_exists(char *filename); |
extern int file_exists(char *filename); |
extern void write_profile_string(char *file, char *section, char *key, char *value); |
extern void write_profile_string(char *file, char *section, char *key, char *value); |
extern ini_keyvalue *ini_insert(ini_section *s, char *section, char *key, char *value); |
extern int modify_profile_string(char *file, char *section, char *key, char *value); |
extern ini_keyvalue *ini_kv_insert(ini_section *s, char *key, char *value); |
extern int read_profile_string(char *file, char *section, char *key, char *value); |
extern void ini_section_delete(ini_section *head, char *name); |
|
extern void ini_key_delete(ini_section *head, char *key); |
|
#endif |
#endif |