33#ifdef CRYPT_BACKEND_CLASSIC_PGP
107 struct PgpUid *up = NULL, *q = NULL;
111 for (up = *upp; up; up = q)
132 for (; up; up = up->
next)
135 (*lp)->trust = up->
trust;
136 (*lp)->flags = up->
flags;
171 if (!klist || !*klist || !key)
175 struct PgpKeyInfo *p = NULL, *q = NULL, *r = NULL;
181 for (p = *klist; p && p != key; p = p->
next)
206 struct PgpKeyInfo *p = NULL, *q = NULL, *r = NULL;
208 if ((*kpp)->parent && ((*kpp)->parent != *kpp))
218 for (p = *kpp; p; p = q)
#define MUTT_MEM_CALLOC(n, type)
Convenience wrapper for the library headers.
char * mutt_str_dup(const char *str)
Copy a string, safely.
const char * pgp_pkalgbytype(unsigned char type)
Get the name of the algorithm from its ID.
void pgp_key_free(struct PgpKeyInfo **kpp)
Free a PGP key info.
struct PgpKeyInfo * pgp_remove_key(struct PgpKeyInfo **klist, struct PgpKeyInfo *key)
Remove a PGP key from a list.
bool pgp_cansign(unsigned char type)
Does this algorithm ID support signing?
struct PgpUid * pgp_copy_uids(struct PgpUid *up, struct PgpKeyInfo *parent)
Copy a list of PGP UIDs.
static void pgp_uid_free(struct PgpUid **upp)
Free a PGP UID.
bool pgp_canencrypt(unsigned char type)
Does this algorithm ID support encryption?
static void key_free(struct PgpKeyInfo **ptr)
Free a PGP Key info.
Misc PGP helper routines.
Information about a PGP key.
struct PgpKeyInfo * parent
struct PgpKeyInfo * parent
Parent key.
struct PgpUid * next
Linked list.