From 5da12674eaae11969b22e6f80e4957217ad406d6 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 25 Apr 2011 23:56:47 +0200 Subject: Fix regression in gpg's mail address parsing. Since 2009-12-08 gpg was not able to find email addresses indicated by a leading '<'. This happened when I merged the user id classification code of gpgsm and gpg. --- sm/ChangeLog | 11 +++++++++++ sm/certlist.c | 4 ++-- sm/delete.c | 2 +- sm/export.c | 4 ++-- sm/import.c | 2 +- sm/keydb.c | 2 +- sm/keylist.c | 2 +- sm/sign.c | 2 +- 8 files changed, 20 insertions(+), 9 deletions(-) (limited to 'sm') diff --git a/sm/ChangeLog b/sm/ChangeLog index 30e71ba8d..7127fb542 100644 --- a/sm/ChangeLog +++ b/sm/ChangeLog @@ -1,3 +1,14 @@ +2011-04-25 Werner Koch + + * certlist.c (gpgsm_add_to_certlist): Mark classify_user_id for + use with non-OpenPGP. + (gpgsm_find_cert): Ditto. + * sign.c (get_default_signer): Ditto. + * keylist.c (list_internal_keys): Ditto. + * import.c (reimport_one): Ditto. + * export.c (gpgsm_export): Ditto. + * delete.c (delete_one): Ditto. + 2011-03-10 Werner Koch * minip12.c (oid_pkcs5PBKDF2, oid_pkcs5PBES2, oid_aes128_CBC): New. diff --git a/sm/certlist.c b/sm/certlist.c index 299d075f2..0e9031953 100644 --- a/sm/certlist.c +++ b/sm/certlist.c @@ -301,7 +301,7 @@ gpgsm_add_to_certlist (ctrl_t ctrl, const char *name, int secret, KEYDB_HANDLE kh = NULL; ksba_cert_t cert = NULL; - rc = classify_user_id (name, &desc); + rc = classify_user_id (name, &desc, 0); if (!rc) { kh = keydb_new (0); @@ -480,7 +480,7 @@ gpgsm_find_cert (const char *name, ksba_sexp_t keyid, ksba_cert_t *r_cert) KEYDB_HANDLE kh = NULL; *r_cert = NULL; - rc = classify_user_id (name, &desc); + rc = classify_user_id (name, &desc, 0); if (!rc) { kh = keydb_new (0); diff --git a/sm/delete.c b/sm/delete.c index 10ec965cb..97fadfa30 100644 --- a/sm/delete.c +++ b/sm/delete.c @@ -45,7 +45,7 @@ delete_one (ctrl_t ctrl, const char *username) int duplicates = 0; int is_ephem = 0; - rc = classify_user_id (username, &desc); + rc = classify_user_id (username, &desc, 0); if (rc) { log_error (_("certificate `%s' not found: %s\n"), diff --git a/sm/export.c b/sm/export.c index 7884adff3..2e4fed9a1 100644 --- a/sm/export.c +++ b/sm/export.c @@ -178,7 +178,7 @@ gpgsm_export (ctrl_t ctrl, strlist_t names, estream_t stream) { for (ndesc=0, sl=names; sl; sl = sl->next) { - rc = classify_user_id (sl->d, desc+ndesc); + rc = classify_user_id (sl->d, desc+ndesc, 0); if (rc) { log_error ("key `%s' not found: %s\n", @@ -348,7 +348,7 @@ gpgsm_p12_export (ctrl_t ctrl, const char *name, estream_t stream) goto leave; } - err = classify_user_id (name, desc); + err = classify_user_id (name, desc, 0); if (err) { log_error ("key `%s' not found: %s\n", diff --git a/sm/import.c b/sm/import.c index 7b5852443..363552553 100644 --- a/sm/import.c +++ b/sm/import.c @@ -433,7 +433,7 @@ reimport_one (ctrl_t ctrl, struct stats_s *stats, int in_fd) stats->count++; - err = classify_user_id (line, &desc); + err = classify_user_id (line, &desc, 0); if (err) { print_import_problem (ctrl, NULL, 0); diff --git a/sm/keydb.c b/sm/keydb.c index 35343f3dc..d3b911efd 100644 --- a/sm/keydb.c +++ b/sm/keydb.c @@ -1205,7 +1205,7 @@ keydb_clear_some_cert_flags (ctrl_t ctrl, strlist_t names) { for (ndesc=0, sl=names; sl; sl = sl->next) { - rc = classify_user_id (sl->d, desc+ndesc); + rc = classify_user_id (sl->d, desc+ndesc, 0); if (rc) { log_error ("key `%s' not found: %s\n", diff --git a/sm/keylist.c b/sm/keylist.c index fc903bab8..e67c2d8d3 100644 --- a/sm/keylist.c +++ b/sm/keylist.c @@ -1345,7 +1345,7 @@ list_internal_keys (ctrl_t ctrl, strlist_t names, estream_t fp, { for (ndesc=0, sl=names; sl; sl = sl->next) { - rc = classify_user_id (sl->d, desc+ndesc); + rc = classify_user_id (sl->d, desc+ndesc, 0); if (rc) { log_error ("key `%s' not found: %s\n", diff --git a/sm/sign.c b/sm/sign.c index 0f83db60b..a3005cade 100644 --- a/sm/sign.c +++ b/sm/sign.c @@ -211,7 +211,7 @@ get_default_signer (ctrl_t ctrl) return cert; } - rc = classify_user_id (opt.local_user, &desc); + rc = classify_user_id (opt.local_user, &desc, 0); if (rc) { log_error ("failed to find default signer: %s\n", gpg_strerror (rc)); -- cgit v1.2.3