--- gost_pmeth.c.orig	2016-03-02 17:24:49.503519153 -0800
+++ gost_pmeth.c	2016-03-02 17:27:27.179558967 -0800
@@ -107,6 +107,8 @@
         return 1;
     case EVP_PKEY_CTRL_SET_IV:
         pctx->shared_ukm = OPENSSL_malloc((int)p1);
+	if (!pctx->shared_ukm)
+	    return 0;
         memcpy(pctx->shared_ukm, p2, (int)p1);
         return 1;
     case EVP_PKEY_CTRL_PEER_KEY:
@@ -533,6 +535,8 @@
         return 0;
     }
     keydata = OPENSSL_malloc(32);
+    if (!keydata)
+	return 0;
     memcpy(keydata, data->key, 32);
     EVP_PKEY_assign(pkey, NID_id_Gost28147_89_MAC, keydata);
     return 1;
