ref: 61a400cc2f9b50b4a39537eb9d0981df77347929
dir: /ini.man/
.TH INI 2 .SH NAME parseini \- parse ini files .SH SYNOPSIS .B #include <ini.h> .PP .B .ta \w'char** 'u int parseini(char *file, void (*f)(char*, char*, char*), int forcelower) .PP .B .ta \w'char** 'u int iniconfig(char *file, int forcelower) .PP .B .ta \w'char** 'u char* getinivalue(int config, char *section, char *key) .br .B char** getiniarray(int config, char *section, char *key, int *num) .PP .SH DESCRIPTION This library function provides simple parsing of INI files using .IR bio (2). For each key-value pair within the INI file it calls the provided callback function .IR f . .PP The callback function gets the section, key and value as parameters. .PP The .I forcelower flag tells the function to return all strings as lowercase strings, which can be helpful for some cases. Otherwise, all strings are returned as entered in the INI file. .PP .I Iniconfig parses the given file into a convenient config database. It returns the .I id of the parsed config file that's needed for future lookups. It is possible to parse multiple INI files within one program this way. .PP The functions .I getinivalue and .I getiniarray can be used to fetch the parsed config values. Both functions expect the configuration id received by the previous .I iniconfig call, as well as strings for .I section and .IR key . .PP .I Getinivalue returns the string value for the given combination. .PP .I Getiniarray returns an array of all value strings for the given combination. It sets .I num to the number of elements within this list. .SH SOURCE .B /sys/src/libini .SH SEE ALSO .IR bio (2) .SH DIAGNOSTICS .I Parseini returns 0 on failure and sets .IR errstr . .SH BUGS Sure.