#ifndef __INI_H__
#define __INI_H__

char *matcht( int nmatch, char *input, int ntable, char *table);
char *matchs( int nmatch, char *input, int ntable, char *table);
char *match_section( char *section);
char *match_entry( char *section, char *entry);
char *match_nline( char *line, int ntable, char *table);
void replaceline ( char *nline, char *line, int *ntable, char **table);
void subline ( char *nline, char *line, int *ntable, char **table);
char *appendline(char *nline, int *ntable, char **table);
int begintable(int *ntable, char **table);
int inputtable(const char *descFile, int *ntable, char **table);
int outputtable(const char *descFile, int *ntable, char **table);
int endtable(int *ntable, char **table);
int beginfile(const char *descFile, int *ntable, char **table);
int endfile(const char *descFile, int *ntable, char **table);
int strchg(char a, char b, int *ntable, char **table);

#endif // __INI_H__

    Source: geocities.com/aenlighten