From cbcc9ff2a7cf6b398a977a873c5c85db36ba05fd Mon Sep 17 00:00:00 2001 From: Jameson Graef Rollins Date: Mon, 18 Aug 2008 10:13:42 -0700 Subject: fixed bad bug in user id processing that prevented bad primary keys from being properly handled. --- src/common | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) (limited to 'src') diff --git a/src/common b/src/common index bb988f7..9a03b9c 100644 --- a/src/common +++ b/src/common @@ -393,29 +393,24 @@ process_user_id() { ;; 'uid') # user ids if [ "$lastKey" != pub ] ; then - log " - got a user ID after a sub key! user IDs should only follow primary keys!" - continue - fi - # don't bother with a uid if there is no valid or reasonable primary key. - if [ "$keyOK" != true ] ; then + log " - got a user ID after a sub key?! user IDs should only follow primary keys!" continue fi # if an acceptable user ID was already found, skip - if [ "$uidOK" ] ; then - continue - fi - # if the user ID does not match, skip - if [ "$(echo "$uidfpr" | gpg_unescape)" != "$userID" ] ; then + if [ "$uidOK" = 'true' ] ; then continue fi - # if the user ID validity is not ok, skip - if [ "$validity" != 'u' -a "$validity" != 'f' ] ; then + # if the user ID does matches... + if [ "$(echo "$uidfpr" | gpg_unescape)" = "$userID" ] ; then + # and the user ID validity is ok + if [ "$validity" != 'u' -a "$validity" != 'f' ] ; then + # mark user ID acceptable + uidOK=true + fi + else continue fi - # mark user ID acceptable - uidOK=true - # output a line for the primary key # 0 = ok, 1 = bad if [ "$keyOK" -a "$uidOK" -a "$lastKeyOK" ] ; then -- cgit v1.2.3