Artifact [ea98de7617]

Artifact ea98de7617f8edeaa22ea84d54763f50500641ea:


.TH LC_PROCESS_FILE 3 "25 Oct 04" "@PACKAGE_STRING@"
.SH NAME
lc_process_file \- Process a specific file

.SH SYNOPSIS
.B #include <libconfig.h>
.sp
.BI "int lc_process_file(const char *" appname ", const char *" pathname ", lc_conf_type_t " type ");"

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

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

.SH EXAMPLE
.nf
#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);
}
.fi

.SH "SEE ALSO"
.BR lc_register_var (3),
.BR lc_register_callback (3),
.BR lc_geterrno (3),
.BR lc_geterrstr (3),
.BR lc_cleanup (3),
.BR lc_process (3)