* keyring.c: Make some strings translatable.
[gnupg.git] / g10 / packet.h
index e5e4a2a..0449c7d 100644 (file)
@@ -122,10 +122,10 @@ struct revocation_key {
 };
 
 typedef struct {
-    ulong   local_id;      /* internal use, valid if > 0 */
     struct {
        unsigned checked:1; /* signature has been checked */
        unsigned valid:1;   /* signature is good (if checked is set) */
+        unsigned chosen_selfsig:1; /* a selfsig that is the chosen one */
        unsigned unknown_critical:1;
         unsigned exportable:1;
         unsigned revocable:1;
@@ -197,6 +197,7 @@ typedef struct {
     u32     timestamp;     /* key made */
     u32     expiredate;     /* expires at this date or 0 if not at all */
     u32     max_expiredate; /* must not expire past this date */
+    u32     revokedate;     /* revoked at this date */
     byte    hdrbytes;      /* number of header bytes */
     byte    version;
     byte    selfsigversion; /* highest version of all of the self-sigs */
@@ -211,7 +212,7 @@ typedef struct {
                               without the key to check it */
     int     is_valid;       /* key (especially subkey) is valid */
     int     dont_cache;     /* do not cache this */
-    ulong   local_id;      /* internal use, valid if > 0 */
+    byte    backsig;        /* 0=none, 1=bad, 2=good */
     u32     main_keyid[2];  /* keyid of the primary key */
     u32     keyid[2];      /* calculated by keyid_from_pk() */
     byte    is_primary;
@@ -280,6 +281,7 @@ typedef struct {
     u32  len;            /* length of encrypted data */
     int  extralen;        /* this is (blocksize+2) */
     byte new_ctb;        /* uses a new CTB */
+    byte is_partial;      /* partial length encoded */
     byte mdc_method;     /* > 0: integrity protected encrypted data packet */
     IOBUF buf;           /* IOBUF reference */
 } PKT_encrypted;
@@ -364,6 +366,8 @@ typedef enum {
     SIGSUBPKT_REVOC_REASON =29, /* reason for revocation */
     SIGSUBPKT_FEATURES     =30, /* feature flags */
 
+    SIGSUBPKT_SIGNATURE    =32, /* embedded signature */
+
     SIGSUBPKT_FLAG_CRITICAL=128
 } sigsubpkttype_t;
 
@@ -407,6 +411,8 @@ int copy_some_packets( IOBUF inp, IOBUF out, off_t stopoff );
 int skip_some_packets( IOBUF inp, unsigned n );
 #endif
 
+int parse_signature( IOBUF inp, int pkttype, unsigned long pktlen,
+                    PKT_signature *sig );
 const byte *enum_sig_subpkt ( const subpktarea_t *subpkts,
                               sigsubpkttype_t reqtype,
                               size_t *ret_n, int *start, int *critical );