added requiredby and provides querying
authorewt <devnull@localhost>
Sun, 9 Jun 1996 21:47:42 +0000 (21:47 +0000)
committerewt <devnull@localhost>
Sun, 9 Jun 1996 21:47:42 +0000 (21:47 +0000)
CVS patchset: 624
CVS date: 1996/06/09 21:47:42

query.c
query.h

diff --git a/query.c b/query.c
index e980023..f5e43a8 100644 (file)
--- a/query.c
+++ b/query.c
@@ -531,6 +531,26 @@ int doQuery(char * prefix, enum querysources source, int queryFlags,
        }
        break;
 
+      case QUERY_PROVIDES:
+       if (rpmdbFindByProvides(db, arg, &matches)) {
+           fprintf(stderr, "no package provides %s\n", arg);
+           retcode = 1;
+       } else {
+           showMatches(db, matches, queryFlags, queryFormat);
+           freeDBIndexRecord(matches);
+       }
+       break;
+
+      case QUERY_REQUIREDBY:
+       if (rpmdbFindByRequiredBy(db, arg, &matches)) {
+           fprintf(stderr, "no package requires %s\n", arg);
+           retcode = 1;
+       } else {
+           showMatches(db, matches, queryFlags, queryFormat);
+           freeDBIndexRecord(matches);
+       }
+       break;
+
       case QUERY_SPATH:
       case QUERY_PATH:
        if (*arg != '/') {
diff --git a/query.h b/query.h
index 0dd3857..2d37c11 100644 (file)
--- a/query.h
+++ b/query.h
@@ -5,7 +5,7 @@
 
 enum querysources { QUERY_PATH, QUERY_PACKAGE, QUERY_ALL, QUERY_SPATH,
                    QUERY_SPACKAGE, QUERY_RPM, QUERY_SRPM, QUERY_GROUP,
-                   QUERY_SGROUP };
+                   QUERY_SGROUP, QUERY_PROVIDES, QUERY_REQUIREDBY };
 
 #define QUERY_FOR_INFO                 (1 << 0)
 #define QUERY_FOR_LIST         (1 << 1)