diff --git a/cryptography/hazmat/bindings/openssl/backend.py b/cryptography/hazmat/bindings/openssl/backend.py
index db5a9e1..635d6a0 100644
--- a/cryptography/hazmat/bindings/openssl/backend.py
+++ b/cryptography/hazmat/bindings/openssl/backend.py
@@ -283,8 +283,7 @@
 
     def finalize_ctx(self, ctx, digest_size):
         buf = self._backend.ffi.new("unsigned char[]", digest_size)
-        buflen = self._backend.ffi.new("unsigned int *")
-        buflen[0] = digest_size
+        buflen = self._backend.ffi.new("unsigned int *", digest_size)
         res = self._backend.lib.HMAC_Final(ctx, buf, buflen)
         assert res != 0
         self._backend.lib.HMAC_CTX_cleanup(ctx)
diff --git a/tests/utils.py b/tests/utils.py
index a97cdf7..25291d5 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -127,6 +127,7 @@
 
 def load_hash_vectors(vector_data):
     vectors = []
+    key, msg, md = None, None, None
 
     for line in vector_data:
         line = line.strip()
@@ -151,9 +152,9 @@
         elif line.startswith("MD"):
             md = line.split(" = ")[1]
             # after MD is found the Msg+MD (+ potential key) tuple is complete
-            try:
+            if key is not None:
                 vectors.append((msg, md, key))
-            except:
+            else:
                 vectors.append((msg, md))
         else:
             raise ValueError("Unknown line in hash vector")
