implement SOLVER_FLAG_BREAK_ORPHANS
[platform/upstream/libsolv.git] / ext / repo_pubkey.h
index a3f2bef..dbc7f9c 100644 (file)
@@ -6,6 +6,7 @@
  */
 
 #include "repo.h"
+#include "chksum.h"
 
 #define ADD_KEYDIR_WITH_DOTFILES       (1 << 8)
 #define ADD_WITH_SUBKEYS               (1 << 9)
@@ -15,7 +16,7 @@
 extern int repo_add_rpmdb_pubkeys(Repo *repo, int flags);
 extern Id repo_add_pubkey(Repo *repo, const char *keyfile, int flags);
 extern int repo_add_keyring(Repo *repo, FILE *fp, int flags);
-extern int repo_add_keydir(Repo *repo, const char *keydir, int flags, const char *suffix);
+extern int repo_add_keydir(Repo *repo, const char *keydir, const char *suffix, int flags);
 
 /* signature parsing */
 typedef struct _solvsig {
@@ -29,9 +30,9 @@ typedef struct _solvsig {
 
 Solvsig *solvsig_create(FILE *fp);
 void solvsig_free(Solvsig *ss);
-Id solvsig_verify(Solvsig *ss, Repo *repo, void *chk);
+Id solvsig_verify(Solvsig *ss, Repo *repo, Chksum *chk);
 
-/* raw signature verification */
-int solv_verify_sig(const unsigned char *pubdata, int pubdatal, unsigned char *sigpkt, int sigpktl, void *chk);
 Id repo_verify_sigdata(Repo *repo, unsigned char *sigdata, int sigdatal, const char *keyid);
+Id repo_find_pubkey(Repo *repo, const char *keyid);
+void repo_find_all_pubkeys(Repo *repo, const char *keyid, Queue *q);