]> git.ipfire.org Git - thirdparty/dnspython.git/commitdiff
pyright lint for dnssecalgs
authorBob Halley <halley@dnspython.org>
Wed, 16 Oct 2024 01:04:29 +0000 (18:04 -0700)
committerBob Halley <halley@dnspython.org>
Wed, 16 Oct 2024 01:04:29 +0000 (18:04 -0700)
dns/dnssecalgs/__init__.py
dns/dnssecalgs/cryptography.py
dns/dnssecalgs/dsa.py
dns/dnssecalgs/ecdsa.py
dns/dnssecalgs/eddsa.py
dns/dnssecalgs/rsa.py
pyproject.toml

index 602367e3d200f308aa4ef5a4a480973af5713041..780c0fdf282c06c5d61ed0eccef22779af7886a6 100644 (file)
@@ -1,11 +1,14 @@
 from typing import Dict, Optional, Tuple, Type, Union
 
+import dns._features
 import dns.name
 from dns.dnssecalgs.base import GenericPrivateKey
 from dns.dnssectypes import Algorithm
 from dns.exception import UnsupportedAlgorithm
 from dns.rdtypes.ANY.DNSKEY import DNSKEY
 
+# pyright: reportPossiblyUnboundVariable=false
+
 if dns._features.have("dnssec"):
     from dns.dnssecalgs.dsa import PrivateDSA, PrivateDSANSEC3SHA1
     from dns.dnssecalgs.ecdsa import PrivateECDSAP256SHA256, PrivateECDSAP384SHA384
index 5a31a8123db92080e9976795b2350dacbdc65abb..6fbeb1a457b83ea6c671e5d59798eb99b2f12356 100644 (file)
@@ -34,7 +34,7 @@ class CryptographyPublicKey(GenericPublicKey):
 class CryptographyPrivateKey(GenericPrivateKey):
     key: Any = None
     key_cls: Any = None
-    public_cls: Type[CryptographyPublicKey]
+    public_cls: Type[CryptographyPublicKey]  # pyright: ignore
 
     def __init__(self, key: Any) -> None:  # pylint: disable=super-init-not-called
         if self.key_cls is None:
index adca3def0151945093ed53a96d9c63d814d80534..a4eb987909c4b88d23c5f9ed239724365652d1df 100644 (file)
@@ -78,7 +78,9 @@ class PrivateDSA(CryptographyPrivateKey):
         public_dsa_key = self.key.public_key()
         if public_dsa_key.key_size > 1024:
             raise ValueError("DSA key size overflow")
-        der_signature = self.key.sign(data, self.public_cls.chosen_hash)
+        der_signature = self.key.sign(
+            data, self.public_cls.chosen_hash  # pyright: ignore
+        )
         dsa_r, dsa_s = utils.decode_dss_signature(der_signature)
         dsa_t = (public_dsa_key.key_size // 8 - 64) // 8
         octets = 20
index 86d5764c919e616ad412e7e718472c7c01f4cf2a..e3f3f061d4e81c95d05f5d82b98bb6ac4d6dd6d6 100644 (file)
@@ -55,13 +55,16 @@ class PrivateECDSA(CryptographyPrivateKey):
     ) -> bytes:
         """Sign using a private key per RFC 6605, section 4."""
         algorithm = ec.ECDSA(
-            self.public_cls.chosen_hash, deterministic_signing=deterministic
+            self.public_cls.chosen_hash,  # pyright: ignore
+            deterministic_signing=deterministic,
         )
         der_signature = self.key.sign(data, algorithm)
         dsa_r, dsa_s = utils.decode_dss_signature(der_signature)
         signature = int.to_bytes(
-            dsa_r, length=self.public_cls.octets, byteorder="big"
-        ) + int.to_bytes(dsa_s, length=self.public_cls.octets, byteorder="big")
+            dsa_r, length=self.public_cls.octets, byteorder="big"  # pyright: ignore
+        ) + int.to_bytes(
+            dsa_s, length=self.public_cls.octets, byteorder="big"  # pyright: ignore
+        )
         if verify:
             self.public_key().verify(signature, data)
         return signature
@@ -70,7 +73,7 @@ class PrivateECDSA(CryptographyPrivateKey):
     def generate(cls) -> "PrivateECDSA":
         return cls(
             key=ec.generate_private_key(
-                curve=cls.public_cls.curve, backend=default_backend()
+                curve=cls.public_cls.curve, backend=default_backend()  # pyright: ignore
             ),
         )
 
index 604bcbfeaf7938c781dbc1076c5758b03ab7b9ca..1cbb407960a4b9afa1e18a109cba9b4cfd13a1fa 100644 (file)
@@ -27,7 +27,7 @@ class PublicEDDSA(CryptographyPublicKey):
 
 
 class PrivateEDDSA(CryptographyPrivateKey):
-    public_cls: Type[PublicEDDSA]
+    public_cls: Type[PublicEDDSA]  # pyright: ignore
 
     def sign(
         self,
index 27537aad0c1857276d62c476f583a3e093e34e0f..de9160bb3a90e616bf015ba2c578b42a7508c744 100644 (file)
@@ -63,7 +63,9 @@ class PrivateRSA(CryptographyPrivateKey):
         deterministic: bool = True,
     ) -> bytes:
         """Sign using a private key per RFC 3110, section 3."""
-        signature = self.key.sign(data, padding.PKCS1v15(), self.public_cls.chosen_hash)
+        signature = self.key.sign(
+            data, padding.PKCS1v15(), self.public_cls.chosen_hash  # pyright: ignore
+        )
         if verify:
             self.public_key().verify(signature, data)
         return signature
index 6cf4ecec1f4d29c7a6cd92f5c9d283942519a60d..2c78aad0c59fa94b1c7be168bd1ba6c375304d9c 100644 (file)
@@ -121,7 +121,6 @@ ignore_missing_imports = true
 reportUnsupportedDunderAll = false
 exclude = [
     "dns/_*_backend.py",
-    "dns/dnssecalgs/*.py",
     "dns/quic/*.py",
     "examples/*.py",
     "tests/*.py",