 c2808d8b07
			
		
	
	
		c2808d8b07
		
	
	
	
	
		
			
			. get rid of includes in libcompat_minix: . move configfile.h to minix/include/ . all others are unneeded as they point to other files . merge the .c files with libc Change-Id: I5e840c66fb9bc484f377926aa9d66473bbd16259
		
			
				
	
	
		
			45 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*	configfile.h - Generic configuration file format.
 | |
|  *							Author: Kees J. Bot
 | |
|  *								5 Jun 1999
 | |
|  */
 | |
| #ifndef _CONFIGFILE_H
 | |
| #define _CONFIGFILE_H
 | |
| 
 | |
| /* Data can only be modified inside the library. */
 | |
| #ifndef _c
 | |
| #define _c	const
 | |
| #endif
 | |
| 
 | |
| typedef _c struct config {	/* Contents of a generic configuration file. */
 | |
| _c	struct config	*next;		/* Next configuration file thing. */
 | |
| _c	struct config	*list;		/* For a { sublist }. */
 | |
| 	const char	*file;		/* File and line where this is found. */
 | |
| 	unsigned	line;
 | |
| 	int		flags;		/* Special flags. */
 | |
| 	char		word[1];	/* Payload. */
 | |
| } config_t;
 | |
| 
 | |
| #define CFG_CLONG	0x0001		/* strtol(word, &end, 0) is valid. */
 | |
| #define CFG_OLONG	0x0002		/* strtol(word, &end, 010). */
 | |
| #define CFG_DLONG	0x0004		/* strtol(word, &end, 10). */
 | |
| #define CFG_XLONG	0x0008		/* strtol(word, &end, 0x10). */
 | |
| #define CFG_CULONG	0x0010		/* strtoul(word, &end, 0). */
 | |
| #define CFG_OULONG	0x0020		/* strtoul(word, &end, 010). */
 | |
| #define CFG_DULONG	0x0040		/* strtoul(word, &end, 10). */
 | |
| #define CFG_XULONG	0x0080		/* strtoul(word, &end, 0x10). */
 | |
| #define CFG_STRING	0x0100		/* The word is enclosed in quotes. */
 | |
| #define CFG_SUBLIST	0x0200		/* This is a sublist, so no word. */
 | |
| #define CFG_ESCAPED	0x0400		/* Escapes are still marked with \. */
 | |
| 
 | |
| config_t *config_read(const char *_file, int flags, config_t *_cfg);
 | |
| void config_delete(config_t *_cfg);
 | |
| int config_renewed(config_t *_cfg);
 | |
| size_t config_length(config_t *_cfg);
 | |
| #define config_issub(cfg)	(!!((cfg)->flags & CFG_SUBLIST))
 | |
| #define config_isatom(cfg)	(!config_issub(cfg))
 | |
| #define config_isstring(cfg)	(!!((cfg)->flags & CFG_STRING))
 | |
| 
 | |
| #undef _c
 | |
| 
 | |
| #endif /* _CONFIGFILE_H */
 |