- const unsigned char **pder, int derlen)
- {
- ASN1_OCTET_STRING *os;
- os = ASN1_OCTET_STRING_new();
- if (!os || !ASN1_OCTET_STRING_set(os, *pder, derlen))
- return 0;
- EVP_PKEY_assign(pkey, EVP_PKEY_HMAC, os);
- return 1;
- }
+ const unsigned char **pder, int derlen)
+{
+ ASN1_OCTET_STRING *os;
+ os = ASN1_OCTET_STRING_new();
+ if (os == NULL || !ASN1_OCTET_STRING_set(os, *pder, derlen))
+ goto err;
+ if (!EVP_PKEY_assign(pkey, EVP_PKEY_HMAC, os))
+ goto err;
+ return 1;
+
+ err:
+ ASN1_OCTET_STRING_free(os);
+ return 0;
+}