Prechádzať zdrojové kódy

LibCrypto: Fix inverted boolean decoded error in ASN.1

ASN.1 encodes booleans as false is zero and true is non-zero. The
decoder currently returned true when the boolean was zero.

Since this decoder was barely used it did not cause any problems,
however for support of other certificate extensions the correct version
is required.
Michiel Visser 3 rokov pred
rodič
commit
b16b61f6bc
1 zmenil súbory, kde vykonal 1 pridanie a 1 odobranie
  1. 1 1
      Userland/Libraries/LibCrypto/ASN1/DER.cpp

+ 1 - 1
Userland/Libraries/LibCrypto/ASN1/DER.cpp

@@ -100,7 +100,7 @@ Result<bool, DecodeError> Decoder::decode_boolean(ReadonlyBytes data)
     if (data.size() != 1)
         return DecodeError::InvalidInputFormat;
 
-    return data[0] == 0;
+    return data[0] != 0;
 }
 
 Result<UnsignedBigInteger, DecodeError> Decoder::decode_arbitrary_sized_integer(ReadonlyBytes data)