#include <stdarg.h>
#include <string.h>
#include <stdio.h>
+#include <utilities/SecCFRelease.h>
CFStringRef kSecRecVersionNumber = CFSTR("SRVersionNumber");
CFStringRef kSecRecQuestions = CFSTR("SRQuestions");
return retval;
}
-static CFDataRef
+static CFDataRef CF_RETURNS_RETAINED
b64encode(CFDataRef input)
{
CFDataRef retval = NULL;
return retval;
}
-static CFDataRef
+static CFDataRef CF_RETURNS_RETAINED
b64decode(CFDataRef input)
{
CFDataRef retval = NULL;
}
-static CFStringRef
+static CFStringRef CF_RETURNS_RETAINED
decryptString(SecKeyRef wrapKey, CFDataRef iv, CFDataRef wrappedPassword)
{
CFStringRef retval = NULL;
if(error == NULL) retval = CFStringCreateFromExternalRepresentation(kCFAllocatorDefault, retData, kCFStringEncodingMacRoman);
else secDebug(ASL_LEVEL_ERR, "Failed to decrypt recovery password\n", NULL);
CFRelease(group);
- }
- return retval;
+ }
+ CFReleaseNull(decryptTrans);
+ return retval;
}
// IV for the recovery ref is currently the leftmost 16 bytes of the digest of the recovery password.