/[pkg-mixmaster]/trunk/Mix/Src/pgpdb.c
ViewVC logotype

Diff of /trunk/Mix/Src/pgpdb.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 283 by weaselp, Thu Sep 26 22:04:58 2002 UTC revision 284 by weaselp, Thu Sep 26 22:14:00 2002 UTC
# Line 6  Line 6 
6     details.     details.
7    
8     OpenPGP key database     OpenPGP key database
9     $Id: pgpdb.c,v 1.13 2002/09/26 22:04:58 weaselp Exp $ */     $Id: pgpdb.c,v 1.14 2002/09/26 22:14:00 weaselp Exp $ */
10    
11    
12  #include "mix3.h"  #include "mix3.h"
# Line 77  KEYRING *pgpdb_open(char *keyring, BUFFE Line 77  KEYRING *pgpdb_open(char *keyring, BUFFE
77    keydb->filetype = pgp_readkeyring(keydb->db, keyring);    keydb->filetype = pgp_readkeyring(keydb->db, keyring);
78  #if 0  #if 0
79    if (keydb->filetype == -1) {    if (keydb->filetype == -1) {
80      pgpdb_close(keydb, PGP_ARMOR_KEY);      pgpdb_close(keydb);
81      return (NULL);      return (NULL);
82    }    }
83  #endif /* if 0 */  #endif /* if 0 */
# Line 111  KEYRING *pgpdb_new(char *keyring, int fi Line 111  KEYRING *pgpdb_new(char *keyring, int fi
111    return (keydb);    return (keydb);
112  }  }
113    
114  int pgpdb_close(KEYRING *keydb, int armortype)  int pgpdb_close(KEYRING *keydb)
 /*  
  * armortype  whether to use PGP_ARMOR_KEY or PGP_ARMOR_SECKEY if the key is  
  *             armored  
  */  
115  {  {
116    int err = 0;    int err = 0;
117    
# Line 126  int pgpdb_close(KEYRING *keydb, int armo Line 122  int pgpdb_close(KEYRING *keydb, int armo
122        pgp_encrypt(PGP_NCONVENTIONAL | PGP_NOARMOR, keydb->db,        pgp_encrypt(PGP_NCONVENTIONAL | PGP_NOARMOR, keydb->db,
123                    keydb->encryptkey, NULL, NULL, NULL, NULL);                    keydb->encryptkey, NULL, NULL, NULL, NULL);
124      if (keydb->filetype == ARMORED)      if (keydb->filetype == ARMORED)
125        pgp_armor(keydb->db, armortype);        pgp_armor(keydb->db, PGP_ARMOR_KEY);
126      if (keydb->filetype == -1 || (f = mix_openfile(keydb->filename,      if (keydb->filetype == -1 || (f = mix_openfile(keydb->filename,
127                                                     keydb->filetype ==                                                     keydb->filetype ==
128                                                     ARMORED ? "w" : "wb"))                                                     ARMORED ? "w" : "wb"))
# Line 252  int pgpdb_getkey(int mode, int algo, int Line 248  int pgpdb_getkey(int mode, int algo, int
248      case PK_VERIFY:      case PK_VERIFY:
249        r = pgpdb_open(PGPREMPUBRING, NULL, 0);        r = pgpdb_open(PGPREMPUBRING, NULL, 0);
250        if (r != NULL && r->filetype == -1) {        if (r != NULL && r->filetype == -1) {
251          pgpdb_close(r, PGP_ARMOR_KEY);          pgpdb_close(r);
252          r = pgpdb_open(PGPREMPUBASC, NULL, 0);          r = pgpdb_open(PGPREMPUBASC, NULL, 0);
253        }        }
254        break;        break;
# Line 287  int pgpdb_getkey(int mode, int algo, int Line 283  int pgpdb_getkey(int mode, int algo, int
283        }        }
284      }      }
285    }    }
286    pgpdb_close(r, PGP_ARMOR_KEY);    pgpdb_close(r);
287  end:  end:
288    if (found < 1) {    if (found < 1) {
289      if (needpass)      if (needpass)
# Line 398  int pgp_keymgt(int force) Line 394  int pgp_keymgt(int force)
394          buf_nl(out);          buf_nl(out);
395        }        }
396      }      }
397      pgpdb_close(keys, PGP_ARMOR_KEY);      pgpdb_close(keys);
398    }    }
399    
400    seclock = lockfile(PGPREMSECRING);    seclock = lockfile(PGPREMSECRING);

Legend:
Removed from v.283  
changed lines
  Added in v.284

  ViewVC Help
Powered by ViewVC 1.1.5