diff --git a/scapy/layers/ipsec.py b/scapy/layers/ipsec.py index 25b082e05cfabec0be61478f17031529475622f6..6004dd0f7202ed1affd6ea225e48445fceb4b397 100644 --- a/scapy/layers/ipsec.py +++ b/scapy/layers/ipsec.py @@ -370,16 +370,18 @@ if AES: block_size=1, iv_size=8, key_size=(16 + 4, 24 + 4, 32 + 4)) - CRYPT_ALGOS['AES-GCM'] = CryptAlgo('AES-GCM', - cipher=AES, - mode=AES.MODE_GCM, - iv_size=8, - key_size=(16 + 4, 24 + 4, 32 + 4)) - CRYPT_ALGOS['AES-CCM'] = CryptAlgo('AES-CCM', - cipher=AES, - mode=AES.MODE_CCM, - iv_size=8, - key_size=(16 + 4, 24 + 4, 32 + 4)) + if hasattr(AES, "MODE_GCM"): + CRYPT_ALGOS['AES-GCM'] = CryptAlgo('AES-GCM', + cipher=AES, + mode=AES.MODE_GCM, + iv_size=8, + key_size=(16 + 4, 24 + 4, 32 + 4)) + if hasattr(AES, "MODE_CCM"): + CRYPT_ALGOS['AES-CCM'] = CryptAlgo('AES-CCM', + cipher=AES, + mode=AES.MODE_CCM, + iv_size=8, + key_size=(16 + 4, 24 + 4, 32 + 4)) if DES: CRYPT_ALGOS['DES'] = CryptAlgo('DES', cipher=DES,