20 #ifndef WINPR_UTILS_INI_H
21 #define WINPR_UTILS_INI_H
23 #include <winpr/winpr.h>
24 #include <winpr/wtypes.h>
26 typedef struct s_wIniFile wIniFile;
40 WINPR_API
int IniFile_ReadBuffer(wIniFile* ini,
const char* buffer);
49 WINPR_API
int IniFile_ReadFile(wIniFile* ini,
const char* filename);
57 WINPR_API
char* IniFile_WriteBuffer(wIniFile* ini);
66 WINPR_API
int IniFile_WriteFile(wIniFile* ini,
const char* filename);
75 WINPR_API
char** IniFile_GetSectionNames(wIniFile* ini,
size_t* count);
85 WINPR_API
char** IniFile_GetSectionKeyNames(wIniFile* ini,
const char* section,
size_t* count);
95 WINPR_API
const char* IniFile_GetKeyValueString(wIniFile* ini,
const char* section,
106 WINPR_API
int IniFile_GetKeyValueInt(wIniFile* ini,
const char* section,
const char* key);
117 WINPR_API
int IniFile_SetKeyValueString(wIniFile* ini,
const char* section,
const char* key,
129 WINPR_API
int IniFile_SetKeyValueInt(wIniFile* ini,
const char* section,
const char* key,
136 WINPR_API
void IniFile_Free(wIniFile* ini);
142 WINPR_ATTR_MALLOC(IniFile_Free, 1)
143 WINPR_API wIniFile* IniFile_New(
void);
151 WINPR_API wIniFile* IniFile_Clone(const wIniFile* ini);