95 |
gpgme_invalid_key_t k; |
gpgme_invalid_key_t k; |
96 |
gpgme_key_t key; |
gpgme_key_t key; |
97 |
size_t len=0; |
size_t len=0; |
98 |
|
const char *keyid; |
99 |
|
const char *warn = _("key not found"); |
100 |
char *uid, *p; |
char *uid, *p; |
101 |
|
|
102 |
if (!ctx) |
if (!ctx) |
106 |
return -1; |
return -1; |
107 |
|
|
108 |
for (k=res->invalid_recipients; k; k = k->next) { |
for (k=res->invalid_recipients; k; k = k->next) { |
109 |
if (get_pubkey (k->fpr, &key)) |
if (!get_pubkey (k->fpr, &key)) |
110 |
continue; |
len += (32 + strlen (k->fpr)+8 + strlen (key->uids->name) + 2) + 4; |
111 |
len += (32 + 16 + strlen (key->uids->name) + 2) + 4; |
else |
112 |
|
len += strlen (warn) + strlen (k->fpr)+8 + 2 + 4; |
113 |
} |
} |
114 |
|
|
115 |
p = (char *)calloc (1, len+64); |
p = (char *)calloc (1, len+64); |
117 |
BUG (NULL); |
BUG (NULL); |
118 |
strcpy (p, _("Recipients unsuable for encryption:\n")); |
strcpy (p, _("Recipients unsuable for encryption:\n")); |
119 |
for (k = res->invalid_recipients; k; k = k->next) { |
for (k = res->invalid_recipients; k; k = k->next) { |
120 |
if (get_pubkey (k->fpr, &key)) |
if (!get_pubkey (k->fpr, &key)) { |
121 |
continue; |
uid = utf8_to_native (key->uids->name); |
122 |
uid = utf8_to_native (key->uids->name); |
keyid = key->subkeys->keyid+8; |
123 |
strcat (p, key->subkeys->keyid+8); |
} |
124 |
|
else { |
125 |
|
uid = strdup (warn); |
126 |
|
keyid = k->fpr; |
127 |
|
} |
128 |
|
strcat (p, keyid); |
129 |
strcat (p, " : "); |
strcat (p, " : "); |
130 |
strcat (p, uid); |
strcat (p, uid); |
131 |
strcat (p, "\n"); |
strcat (p, "\n"); |