LC_PROCESS
Section: C Library Functions (3)
Updated: 25 Oct 04
Index
Return to Main Contents
NAME
lc_process - Begin processing configuration files.
SYNOPSIS
#include <libconfig.h>
int lc_process(int argc, char **argv, const char *appname, lc_conf_type_t type, const char *extra);
DESCRIPTION
The
lc_process(3)
function begins processing of the command line arguments, environment variables, and command line options.
The
argc
and
argv
parameters should be in the same format as passed to the
main
function of your program.
The
appname
parameter should be a reasonable form of the name of the application.
The
type
parameter should describe the format of the configuration file (see below).
The
extra
parameter should list any extra configuration files to process.
Valid type parameter values:
- LC_CONF_SECTION
-
This type of configuration file is similar to the Windows INI-file style.
An example configuration file:
[section]
variable = value
- LC_CONF_APACHE
-
This type of configuration file is similar to the Apache configuration file.
An example configuration file:
<Section argument>
variable value
</Section>
- LC_CONF_SPACE
-
This is a simple, flat configuration file. It has no section headers.
An example configuration file:
variable value
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(argc, argv, "example", LC_CONF_APACHE,
NULL);
lc_cleanup();
if (lc_p_ret != 0) {
fprintf(stderr, "Error processing configuration: \
%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_file(3),
lc_cleanup(3)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- EXAMPLE
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 20:11:49 GMT, November 24, 2014