35#define KEAMA_USAGE "Usage: keama [-4|-6] [-D] [-N]" \
36 " [-r {perform|fatal|pass}\\n" \
37 " [-l hook-library-path]" \
38 " [-i input-file] [-o output-file]\n"
41usage(
const char *
sfmt,
const char *
sarg) {
63static const char use_noarg[] =
"No argument for command: %s";
64static const char bad_resolve[] =
"Bad -r argument: %s";
76 for (
i = 1;
i < argc;
i++) {
89 usage(use_noarg,
argv[
i - 1]);
97 usage(bad_resolve,
argv[
i]);
100 usage(use_noarg,
argv[
i - 1]);
104 usage(use_noarg,
argv[
i - 1]);
108 usage(use_noarg,
argv[
i - 1]);
111 usage(
"Unknown command: %s",
argv[
i]);
115 usage(
"address family must be set using %s",
"-4 or -6");
129 usage(
"out of memory reading standard "
133 usage(
"error reading standard input: %s",
143 usage(
"Cannot open '%s' for reading",
input_file);
149 usage(
"Cannot open '%s' for writing",
output_file);
169 if (
cfile->stack_top > 0) {
183 if (
pc->stack_top + 2 >=
pc->stack_size) {
205 snprintf(fbuf,
sizeof(fbuf),
"%s line %d: %s",
209 vsnprintf(mbuf,
sizeof(mbuf), fbuf, list);
217 if (
cfile->token_line[
i] ==
'\t') {
225 if (
cfile->lexchar < 81)
isc_result_t end_parse(struct parse **cfile)
isc_result_t new_parse(struct parse **cfile, int file, char *inbuf, unsigned buflen, const char *name, int eolp)
void print(FILE *fp, const struct element *e, isc_boolean_t skip, unsigned indent)
struct element * json_parse(struct parse *cfile)
int main(int argc, char **argv)
isc_boolean_t use_isc_lifetimes
void parse_error(struct parse *cfile, const char *fmt,...)
void stackPush(struct parse *pc, struct element *elem)
size_t conf_file_parse(struct parse *)