Explorar el Código

CI: Fix prov example test cryptography package version exception handling

Shivani Tipnis hace 5 años
padre
commit
37bcd4e0ba
Se han modificado 1 ficheros con 8 adiciones y 2 borrados
  1. 8 2
      tools/esp_prov/security/security1.py

+ 8 - 2
tools/esp_prov/security/security1.py

@@ -24,7 +24,7 @@ import proto
 from .security import Security
 
 from cryptography.hazmat.backends import default_backend
-from cryptography.hazmat.primitives import hashes
+from cryptography.hazmat.primitives import hashes, serialization
 from cryptography.hazmat.primitives.asymmetric.x25519 import X25519PrivateKey, X25519PublicKey
 from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
 
@@ -82,7 +82,13 @@ class Security1(Security):
     def __generate_key(self):
         # Generate private and public key pair for client
         self.client_private_key = X25519PrivateKey.generate()
-        self.client_public_key  = self.client_private_key.public_key().public_bytes()
+        try:
+            self.client_public_key = self.client_private_key.public_key().public_bytes(
+                encoding=serialization.Encoding.Raw,
+                format=serialization.PublicFormat.Raw)
+        except TypeError:
+            # backward compatible call for older cryptography library
+            self.client_public_key  = self.client_private_key.public_key().public_bytes()
 
     def _print_verbose(self, data):
         if (self.verbose):