fix: make issuerKeyID non-critical

RPM 4.16 (used in centos 9, fedora 34, ...) does not support it. Seems to be fixed in 4.17+.
FWIW Centos 9 EOL is set to 2027-05-31.

More context:
- https://github.com/ProtonMail/go-crypto/pull/175
- https://github.com/ProtonMail/go-crypto/issues/263
This commit is contained in:
Carlos Alexandro Becker 2025-02-20 14:56:06 -03:00
parent 8a2062d342
commit d800a44e0c
No known key found for this signature in database

View File

@ -315,7 +315,9 @@ class SignaturePacket {
if (!this.issuerKeyID.isNull() && this.issuerKeyVersion < 5) {
// If the version of [the] key is greater than 4, this subpacket
// MUST NOT be included in the signature.
arr.push(writeSubPacket(sub.issuerKeyID, true, this.issuerKeyID.write()));
// XXX: making this critical breaks RPM <=4.16.
// See: https://github.com/ProtonMail/go-crypto/issues/263
arr.push(writeSubPacket(sub.issuerKeyID, false, this.issuerKeyID.write()));
}
this.rawNotations.forEach(({ name, value, humanReadable, critical }) => {
bytes = [new Uint8Array([humanReadable ? 0x80 : 0, 0, 0, 0])];