projects
/
onak.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix fetching key by text bug in db4 backend
[onak.git]
/
lookup.c
diff --git
a/lookup.c
b/lookup.c
index d48bc3f7cdbd30dfb428c1814d83e72c77ceb6ae..3431690bde0e6afdc39a548ba49464cfa3d733cd 100644
(file)
--- a/
lookup.c
+++ b/
lookup.c
@@
-87,6
+87,7
@@
int main(int argc, char *argv[])
struct openpgp_publickey *publickey = NULL;
struct openpgp_packet_list *packets = NULL;
struct openpgp_packet_list *list_end = NULL;
struct openpgp_publickey *publickey = NULL;
struct openpgp_packet_list *packets = NULL;
struct openpgp_packet_list *list_end = NULL;
+ int result;
params = getcgivars(argc, argv);
for (i = 0; params != NULL && params[i] != NULL; i += 2) {
params = getcgivars(argc, argv);
for (i = 0; params != NULL && params[i] != NULL; i += 2) {
@@
-162,10
+163,21
@@
int main(int argc, char *argv[])
config.dbbackend->initdb(true);
switch (op) {
case OP_GET:
config.dbbackend->initdb(true);
switch (op) {
case OP_GET:
- logthing(LOGTHING_NOTICE, "Getting keyid 0x%llX",
+ if (ishex) {
+ logthing(LOGTHING_NOTICE,
+ "Getting keyid 0x%llX",
keyid);
keyid);
- if (config.dbbackend->fetch_key(keyid, &publickey,
- false)) {
+ result = config.dbbackend->fetch_key(keyid,
+ &publickey, false);
+ } else {
+ logthing(LOGTHING_NOTICE,
+ "Getting key(s) for search text %s",
+ search);
+ result = config.dbbackend->fetch_key_text(
+ search,
+ &publickey);
+ }
+ if (result) {
puts("<pre>");
cleankeys(publickey);
flatten_publickey(publickey,
puts("<pre>");
cleankeys(publickey);
flatten_publickey(publickey,