#define KEYFLAG_ABILITIES (KEYFLAG_CANSIGN|KEYFLAG_CANENCRYPT|KEYFLAG_PREFER_ENCRYPTION|KEYFLAG_PREFER_SIGNING)
+typedef struct pgp_signature
+{
+ struct pgp_signature *next;
+ unsigned char sigtype;
+ unsigned long sid1;
+ unsigned long sid2;
+}
+pgp_sig_t;
+
typedef struct pgp_keyinfo
{
char *keyid;
int numalg;
const char *algorithm;
struct pgp_keyinfo *parent;
+ struct pgp_signature *sigs;
struct pgp_keyinfo *next;
}
pgp_key_t;
-typedef struct pgp_signature
-{
- struct pgp_signature *next;
- unsigned char sigtype;
- unsigned long sid1;
- unsigned long sid2;
-}
-pgp_sig_t;
-
typedef struct pgp_uid
{
char *addr;
{
if (skl < 8)
break;
- signerid1 = 0;
+ signerid2 = signerid1 = 0;
for (i = 0; i < 4; i++)
signerid1 = (signerid1 << 8) + buff[j++];
- signerid2 = 0;
for (i = 0; i < 4; i++)
signerid2 = (signerid2 << 8) + buff[j++];
last = &p->next;
addr = &p->address;
+ lsig = &p->sigs;
if (pt == PT_SUBKEY || pt == PT_SUBSECKEY)
{
}
}
+static void dump_signatures (pgp_sig_t *sig)
+{
+ for (; sig; sig = sig->next)
+ {
+ if (sig->sigtype == 0x10 || sig->sigtype == 0x11 ||
+ sig->sigtype == 0x12 || sig->sigtype == 0x13)
+ printf ("sig::::%08lX%08lX::::::%X:\n",
+ sig->sid1, sig->sid2, sig->sigtype);
+ else if (sig->sigtype == 0x20)
+ printf ("rev::::%08lX%08lX::::::%X:\n",
+ sig->sid1, sig->sid2, sig->sigtype);
+ }
+}
+
+
static char gnupg_trustletter (int t)
{
switch (t)
if (dump_signatures)
{
- for (sig = uid->sigs; sig; sig = sig->next)
- {
- if (sig->sigtype == 0x10 || sig->sigtype == 0x11 ||
- sig->sigtype == 0x12 || sig->sigtype == 0x13)
- printf ("sig::::%08lX%08lX:::::::\n",
- sig->sid1, sig->sid2);
- else if (sig->sigtype == 0x20)
- printf ("rev::::%08lX%08lX:::::::\n",
- sig->sid1, sig->sid2);
-
- }
+ if (first)
+ dump_signatures (p->sigs);
+
+ dump_signatures (uid->sigs);
+ }
+
}
}
}