- ifh = xfopen(fname, "r");
- while ((line = xmalloc_fgets(ifh)) != NULL) {
- char *next;
-
- line_ptr = skip_whitespace(line);
- if ((line_ptr[0] == '#') || (line_ptr[0] == '\n')) {
- free(line);
- continue;
- }
- next = skip_non_whitespace(line_ptr);
- if (*next)
- *next++ = '\0';
- prepend_new_eth_table(&clist, line_ptr, next);
- free(line);
- }
- fclose(ifh);
+ parser = config_open(fname);
+ while (config_read(parser, token, 2, 2, "# \t", PARSE_NORMAL))
+ prepend_new_eth_table(&clist, token[0], token[1]);
+ config_close(parser);