LC_PROCESS_FILE(3)

NAME
lc_process_file - Process a specific file

SYNOPSIS
#include <libconfig.h>

int lc_process_file(const char *appname, const char *pathname, lc_conf_type_t type);

DESCRIPTION
The lc_process_file(3) function processes exactly one configuration file. The file is specified by the pathname argument and should be in the format specified by the type argument. The appname argument should be a reasonable form of the name of the application.

RETURN VALUE
On success 0 is returned, otherwise -1 is returned.

EXAMPLE
#include <libconfig.h>
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char **argv) {
	int lc_p_ret, lc_rv_ret;
	char *filename = NULL;
	lc_rv_ret = lc_register_var("File", LC_VAR_STRING,
	                            &filename, 'f');
	if (lc_rv_ret != 0) {
		fprintf(stderr, "Error registering variable: %i.\n",
		        lc_geterrno());
		return(EXIT_FAILURE);
	}
	lc_p_ret = lc_process_file("example", "/data/extra.conf",
	                           LC_CONF_APACHE);
	lc_cleanup();
	if (lc_p_ret != 0) {
		fprintf(stderr, "Error processing configuration file: \
		        %s\n", lc_geterrstr());
		return(EXIT_FAILURE);
	}
	if (filename != NULL) {
		printf("File specified was: %s\n", filename);
	} else {
		printf("No filename specified.\n");
	}
	return(EXIT_SUCCESS);
}

SEE ALSO
libconfig(3), lc_register_var(3), lc_register_callback(3), lc_geterrno(3), lc_geterrstr(3), lc_seterrstr(3), lc_handle_type(3), lc_process(3), lc_cleanup(3)