mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
* sign.c (update_keysig_packet): Policies and notations should be stripped
out when remaking a self-signature. Noted by Atom Smasher.
This commit is contained in:
parent
9953adb5e7
commit
44aa6f9d4d
2 changed files with 18 additions and 0 deletions
12
g10/sign.c
12
g10/sign.c
|
@ -1300,6 +1300,18 @@ update_keysig_packet( PKT_signature **ret_sig,
|
|||
/* create a new signature packet */
|
||||
sig = copy_signature (NULL, orig_sig);
|
||||
|
||||
/* We've copied the signature, subpackets and all, but we don't
|
||||
want any old policies or notations coming over: the signature
|
||||
is being remade, so these need to be restated as well. Note
|
||||
that other subpackets like backsigs come over as well, but we
|
||||
want to keep those. We don't delete policies or notations from
|
||||
the unhashed area - since we don't put them there, this is a
|
||||
case of not messing about with things that we are not
|
||||
responsible for. */
|
||||
|
||||
delete_sig_subpkt(sig->hashed,SIGSUBPKT_POLICY);
|
||||
delete_sig_subpkt(sig->hashed,SIGSUBPKT_NOTATION);
|
||||
|
||||
/* We need to create a new timestamp so that new sig expiration
|
||||
calculations are done correctly... */
|
||||
sig->timestamp=make_timestamp();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue