1.1 --- a/src/import-rpmdb.c Mon Jun 16 15:40:30 2008 -0400
1.2 +++ b/src/import-rpmdb.c Fri Jun 20 14:18:52 2008 -0400
1.3 @@ -34,29 +34,34 @@
1.4 uint_32 integer;
1.5 };
1.6
1.7 -static enum razor_version_relation
1.8 -rpm_to_razor_flags (uint_32 flags)
1.9 +static uint32_t
1.10 +rpm_to_razor_flags(uint32_t flags)
1.11 {
1.12 - switch (flags & (RPMSENSE_LESS | RPMSENSE_EQUAL | RPMSENSE_GREATER)) {
1.13 - case RPMSENSE_LESS:
1.14 - return RAZOR_VERSION_LESS;
1.15 - case RPMSENSE_LESS|RPMSENSE_EQUAL:
1.16 - return RAZOR_VERSION_LESS_OR_EQUAL;
1.17 - case RPMSENSE_EQUAL:
1.18 - return RAZOR_VERSION_EQUAL;
1.19 - case RPMSENSE_GREATER|RPMSENSE_EQUAL:
1.20 - return RAZOR_VERSION_GREATER_OR_EQUAL;
1.21 - case RPMSENSE_GREATER:
1.22 - return RAZOR_VERSION_GREATER;
1.23 - }
1.24 + uint32_t razor_flags;
1.25
1.26 - /* FIXME? */
1.27 - return RAZOR_VERSION_EQUAL;
1.28 + razor_flags = 0;
1.29 + if (flags & RPMSENSE_LESS)
1.30 + razor_flags |= RAZOR_PROPERTY_LESS;
1.31 + if (flags & RPMSENSE_EQUAL)
1.32 + razor_flags |= RAZOR_PROPERTY_EQUAL;
1.33 + if (flags & RPMSENSE_GREATER)
1.34 + razor_flags |= RAZOR_PROPERTY_GREATER;
1.35 +
1.36 + if (flags & RPMSENSE_SCRIPT_PRE)
1.37 + razor_flags |= RAZOR_PROPERTY_PRE;
1.38 + if (flags & RPMSENSE_SCRIPT_POST)
1.39 + razor_flags |= RAZOR_PROPERTY_POST;
1.40 + if (flags & RPMSENSE_SCRIPT_PREUN)
1.41 + razor_flags |= RAZOR_PROPERTY_PREUN;
1.42 + if (flags & RPMSENSE_SCRIPT_POSTUN)
1.43 + razor_flags |= RAZOR_PROPERTY_POSTUN;
1.44 +
1.45 + return razor_flags;
1.46 }
1.47
1.48 static void
1.49 add_properties(struct razor_importer *importer,
1.50 - enum razor_property_type property_type,
1.51 + uint32_t type_flags,
1.52 Header h, int_32 name_tag, int_32 version_tag, int_32 flags_tag)
1.53 {
1.54 union rpm_entry names, versions, flags;
1.55 @@ -69,9 +74,8 @@
1.56 for (i = 0; i < count; i++)
1.57 razor_importer_add_property(importer,
1.58 names.list[i],
1.59 - rpm_to_razor_flags (flags.flags[i]),
1.60 - versions.list[i],
1.61 - property_type);
1.62 + rpm_to_razor_flags (flags.flags[i]) | type_flags,
1.63 + versions.list[i]);
1.64 }
1.65
1.66 struct razor_set *