24 #ifndef INI_CONFIGOBJ_H
25 #define INI_CONFIGOBJ_H
27 #include <sys/types.h>
32 #include "simplebuffer.h"
33 #include "ini_valueobj.h"
194 #define INI_META_NONE 0
196 #define INI_META_STATS 1
215 #define INI_ACCESS_CHECK_MODE 0x00000001
223 #define INI_ACCESS_CHECK_UID 0x00000002
231 #define INI_ACCESS_CHECK_GID 0x00000004
255 #define INI_MV1S_OVERWRITE 0x0000
257 #define INI_MV1S_ERROR 0x0001
259 #define INI_MV1S_PRESERVE 0x0002
261 #define INI_MV1S_ALLOW 0x0003
263 #define INI_MV1S_DETECT 0x0004
282 #define INI_MV2S_OVERWRITE 0x0000
284 #define INI_MV2S_ERROR 0x0010
286 #define INI_MV2S_PRESERVE 0x0020
288 #define INI_MV2S_ALLOW 0x0030
290 #define INI_MV2S_DETECT 0x0040
308 #define INI_MS_MERGE 0x0000
310 #define INI_MS_ERROR 0x0100
312 #define INI_MS_OVERWRITE 0x0200
314 #define INI_MS_PRESERVE 0x0300
316 #define INI_MS_DETECT 0x0400
335 #define INI_PARSE_NOWRAP 0x0001
337 #define INI_PARSE_NOSPACE 0x0002
339 #define INI_PARSE_NOTAB 0x0004
380 #define INI_DEFAULT_SECTION "default"
394 struct ini_parse_error;
479 uint32_t metadata_flags,
480 struct ini_cfgfile **file_ctx);
509 struct ini_cfgfile **file_ctx_out);
678 struct ini_cfgfile *file_ctx2,
702 uint32_t collision_flags,
703 uint32_t parse_flags,
704 struct ini_cfgobj *ini_config);
720 struct ini_cfgobj **ini_new);
748 struct ini_cfgobj *second,
749 uint32_t collision_flags,
750 struct ini_cfgobj **result);
783 struct simplebuffer *sbobj);
920 struct ini_cfgobj *ini_config,
922 struct value_obj **vo);