mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
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.
This commit is contained in:
parent
4caa768f1d
commit
5da12674ea
20 changed files with 62 additions and 24 deletions
|
@ -1,3 +1,13 @@
|
|||
2011-04-25 Werner Koch <wk@g10code.com>
|
||||
|
||||
* delkey.c (do_delete_key): Mark classify_user_id for use with
|
||||
OpenPGP.
|
||||
* trustdb.c (register_trusted_key): Ditto.
|
||||
* revoke.c (gen_revoke): Ditto.
|
||||
* keyserver.c (keyserver_export, keyidlist, keyserver_export): Ditto.
|
||||
* getkey.c (key_byname): Ditto.
|
||||
* export.c (do_export_stream): Ditto.
|
||||
|
||||
2011-04-20 Marcus Brinkmann <mb@g10code.com>
|
||||
|
||||
* keylist.c (list_keyblock_colon): Use get_ownertrust_info, not
|
||||
|
|
|
@ -63,7 +63,7 @@ do_delete_key( const char *username, int secret, int force, int *r_sec_avail )
|
|||
*r_sec_avail = 0;
|
||||
|
||||
/* Search the userid */
|
||||
rc = classify_user_id (username, &desc);
|
||||
rc = classify_user_id (username, &desc, 1);
|
||||
exactmatch = (desc.mode == KEYDB_SEARCH_MODE_FPR
|
||||
|| desc.mode == KEYDB_SEARCH_MODE_FPR16
|
||||
|| desc.mode == KEYDB_SEARCH_MODE_FPR20);
|
||||
|
|
|
@ -752,7 +752,7 @@ do_export_stream (ctrl_t ctrl, iobuf_t out, strlist_t users, int secret,
|
|||
|
||||
for (ndesc=0, sl=users; sl; sl = sl->next)
|
||||
{
|
||||
if (!(err=classify_user_id (sl->d, desc+ndesc)))
|
||||
if (!(err=classify_user_id (sl->d, desc+ndesc, 1)))
|
||||
ndesc++;
|
||||
else
|
||||
log_error (_("key \"%s\" not found: %s\n"),
|
||||
|
|
|
@ -617,7 +617,7 @@ key_byname (GETKEY_CTX *retctx, strlist_t namelist,
|
|||
{
|
||||
gpg_error_t err;
|
||||
|
||||
err = classify_user_id (r->d, &ctx->items[n]);
|
||||
err = classify_user_id (r->d, &ctx->items[n], 1);
|
||||
|
||||
if (ctx->items[n].exact)
|
||||
ctx->exact = 1;
|
||||
|
|
|
@ -626,7 +626,7 @@ parse_keyrec(char *keystring)
|
|||
if((tok=strsep(&keystring,":"))==NULL)
|
||||
return ret;
|
||||
|
||||
err = classify_user_id (tok, &work->desc);
|
||||
err = classify_user_id (tok, &work->desc, 1);
|
||||
if (err || (work->desc.mode != KEYDB_SEARCH_MODE_SHORT_KID
|
||||
&& work->desc.mode != KEYDB_SEARCH_MODE_LONG_KID
|
||||
&& work->desc.mode != KEYDB_SEARCH_MODE_FPR16
|
||||
|
@ -996,7 +996,7 @@ keyserver_export (ctrl_t ctrl, strlist_t users)
|
|||
/* Weed out descriptors that we don't support sending */
|
||||
for(;users;users=users->next)
|
||||
{
|
||||
err = classify_user_id (users->d, &desc);
|
||||
err = classify_user_id (users->d, &desc, 1);
|
||||
if (err || (desc.mode != KEYDB_SEARCH_MODE_SHORT_KID
|
||||
&& desc.mode != KEYDB_SEARCH_MODE_LONG_KID
|
||||
&& desc.mode != KEYDB_SEARCH_MODE_FPR16
|
||||
|
@ -1031,7 +1031,7 @@ keyserver_import (ctrl_t ctrl, strlist_t users)
|
|||
|
||||
for(;users;users=users->next)
|
||||
{
|
||||
err = classify_user_id (users->d, &desc[count]);
|
||||
err = classify_user_id (users->d, &desc[count], 1);
|
||||
if (err || (desc[count].mode != KEYDB_SEARCH_MODE_SHORT_KID
|
||||
&& desc[count].mode != KEYDB_SEARCH_MODE_LONG_KID
|
||||
&& desc[count].mode != KEYDB_SEARCH_MODE_FPR16
|
||||
|
@ -1125,7 +1125,7 @@ keyidlist(strlist_t users,KEYDB_SEARCH_DESC **klist,int *count,int fakev3)
|
|||
for (ndesc=0, sl=users; sl; sl = sl->next)
|
||||
{
|
||||
gpg_error_t err;
|
||||
if (!(err = classify_user_id (sl->d, desc+ndesc)))
|
||||
if (!(err = classify_user_id (sl->d, desc+ndesc, 1)))
|
||||
ndesc++;
|
||||
else
|
||||
log_error (_("key \"%s\" not found: %s\n"),
|
||||
|
|
|
@ -220,7 +220,7 @@ gen_desig_revoke( const char *uname, strlist_t locusr )
|
|||
afx = new_armor_context ();
|
||||
|
||||
kdbhd = keydb_new ();
|
||||
rc = classify_user_id (uname, &desc);
|
||||
rc = classify_user_id (uname, &desc, 1);
|
||||
if (!rc)
|
||||
rc = keydb_search (kdbhd, &desc, 1);
|
||||
if (rc) {
|
||||
|
@ -463,7 +463,7 @@ gen_revoke (const char *uname)
|
|||
|
||||
/* Search the userid; we don't want the whole getkey stuff here. */
|
||||
kdbhd = keydb_new ();
|
||||
rc = classify_user_id (uname, &desc);
|
||||
rc = classify_user_id (uname, &desc, 1);
|
||||
if (!rc)
|
||||
rc = keydb_search (kdbhd, &desc, 1);
|
||||
if (rc)
|
||||
|
|
|
@ -217,7 +217,7 @@ register_trusted_key( const char *string )
|
|||
gpg_error_t err;
|
||||
KEYDB_SEARCH_DESC desc;
|
||||
|
||||
err = classify_user_id (string, &desc);
|
||||
err = classify_user_id (string, &desc, 1);
|
||||
if (err || desc.mode != KEYDB_SEARCH_MODE_LONG_KID )
|
||||
{
|
||||
log_error(_("`%s' is not a valid long keyID\n"), string );
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue