- return parser(filename);
-
- /* sort matching filename into list */
- dbg("open config as directory '%s'", filename);
- dir = opendir(filename);
- while (1) {
- ent = readdir(dir);
- if (ent == NULL || ent->d_name[0] == '\0')
- break;
-
- dbg("found file '%s'", ent->d_name);
- ext = strrchr(ent->d_name, '.');
- if (ext == NULL)
- continue;
-
- if (strcmp(ext, extension) == 0) {
- dbg("put file in list '%s'", ent->d_name);
- file_list_insert(ent->d_name);
- }
- }
-
- /* parse every file in the list */
- list_for_each_entry_safe(loop_file, tmp_file, &file_list, list) {
- strfieldcpy(file, filename);
- strfieldcat(file, loop_file->name);
- parser(file);
- list_del(&loop_file->list);
- free(loop_file);
- }
-
- closedir(dir);
- return 0;
-}
-
-int namedev_init_rules()
-{
- return call_foreach_file(namedev_parse_rules, udev_rules_filename, RULEFILE_EXT);
+ return namedev_parse_rules(udev_rules_filename);
+ else
+ return call_foreach_file(namedev_parse_rules,
+ udev_rules_filename, RULEFILE_SUFFIX);