int genbind_parsefile(char *infilename, struct genbind_node **ast) { FILE *infile; /* open input file */ if ((infilename[0] == '-') && (infilename[1] == 0)) { if (options->verbose) { printf("Using stdin for input\n"); } infile = stdin; } else { infile = genbindopen(infilename); } if (!infile) { fprintf(stderr, "Error opening %s: %s\n", infilename, strerror(errno)); return 3; } if (options->debug) { nsgenbind_debug = 1; nsgenbind__flex_debug = 1; } /* set flex to read from file */ nsgenbind_restart(infile); /* process binding */ return nsgenbind_parse(ast); }
int genbind_parsefile(char *infilename, struct genbind_node **ast) { FILE *infile; int ret; /* open input file */ infile = genbindopen(infilename); if (!infile) { fprintf(stderr, "Error opening %s: %s\n", infilename, strerror(errno)); return 3; } /* if debugging enabled enable parser tracing and send to file */ if (options->debug) { nsgenbind_debug = 1; nsgenbind__flex_debug = 1; genbind_parsetracef = genb_fopen("binding-trace", "w"); } else { genbind_parsetracef = NULL; } /* set flex to read from file */ nsgenbind_restart(infile); /* process binding */ ret = nsgenbind_parse(infilename, ast); /* close tracefile if open */ if (genbind_parsetracef != NULL) { fclose(genbind_parsetracef); } return ret; }