return 0;
}
-static const struct extension {
- const char* extension;
+static const struct pattern {
+ const char* pattern;
int class;
-} extensions[] = {
+} patterns[] = {
{ "*.a", PAKFIRE_FILE_STATIC_LIBRARY },
{ "*.la", PAKFIRE_FILE_LIBTOOL_ARCHIVE },
{ "*.pm", PAKFIRE_FILE_PERL },
{ "*.pc", PAKFIRE_FILE_PKGCONFIG },
{ "/usr/lib/firmware/*", PAKFIRE_FILE_FIRMWARE },
{ "/usr/lib*/ld-*.so*", PAKFIRE_FILE_RUNTIME_LINKER },
- { NULL , 0 },
+ { NULL },
};
-static int pakfire_file_classify_extension(struct pakfire_file* file) {
- for (const struct extension* e = extensions; e->extension; e++) {
- if (pakfire_file_matches(file, e->extension)) {
- file->class |= e->class;
+static int pakfire_file_classify_pattern(struct pakfire_file* file) {
+ for (const struct pattern* p = patterns; p->pattern; p++) {
+ if (pakfire_file_matches(file, p->pattern)) {
+ file->class |= p->class;
break;
}
}
// Only run this for regular files
if (file->class & PAKFIRE_FILE_REGULAR) {
- // Then check for the extension
- r = pakfire_file_classify_extension(file);
+ // Then check for patterns
+ r = pakfire_file_classify_pattern(file);
if (r)
goto ERROR;