[Pgp-tools-commit] r117 - trunk/gpgsigs
Peter Palfrader
weasel at costa.debian.org
Wed Jul 6 11:47:00 UTC 2005
Author: weasel
Date: 2005-07-06 11:47:00 +0000 (Wed, 06 Jul 2005)
New Revision: 117
Modified:
trunk/gpgsigs/gpgsigs
Log:
Handle multiple sigs with different classes properly
Modified: trunk/gpgsigs/gpgsigs
===================================================================
--- trunk/gpgsigs/gpgsigs 2005-07-06 11:41:31 UTC (rev 116)
+++ trunk/gpgsigs/gpgsigs 2005-07-06 11:47:00 UTC (rev 117)
@@ -196,8 +196,19 @@
} else {
$class = 's';
};
- $sigs->{$key}->{$uid}->{$1.$2} = $class;
- $sigs->{$key}->{$uid}->{$2} = $class;
+ # Handle the case where one UID was signed multiple times
+ # with different signature classes.
+ my $before = $sigs->{$key}->{$uid}->{$1.$2};
+ if (defined $before) {
+ if ($before eq 'S' || $before eq 's') {
+ $sigs->{$key}->{$uid}->{$1.$2} = $class;
+ } elsif ($before < $class) {
+ $sigs->{$key}->{$uid}->{$1.$2} = $class;
+ };
+ } else {
+ $sigs->{$key}->{$uid}->{$1.$2} .= $class;
+ };
+ $sigs->{$key}->{$uid}->{$2} = $sigs->{$key}->{$uid}->{$1.$2}
next;
}
if ( m/^uat:/ ) {
More information about the Pgp-tools-commit
mailing list