]> git.saurik.com Git - apple/security.git/blobdiff - OSX/libsecurity_keychain/lib/SecImportExportUtils.cpp
Security-58286.260.20.tar.gz
[apple/security.git] / OSX / libsecurity_keychain / lib / SecImportExportUtils.cpp
index e0f17768c0dbcca500ec9c54620bf33e7e37b24d..ab2017ecd6e95e3300aa17f90e04049013f30b2b 100644 (file)
@@ -29,6 +29,7 @@
 #include "SecIdentityPriv.h"
 #include "SecItem.h"
 #include <security_cdsa_utils/cuCdsaUtils.h>
+#include <security_utilities/casts.h>
 #include <Security/SecBase.h>
 #pragma mark --- Debug support ---
 
@@ -504,7 +505,7 @@ bool impExpImportGuessByExamination(
                }
                CSSM_HANDLE cacheHand;
                CSSM_RETURN crtn;
-               CSSM_DATA cdata = { CFDataGetLength(inData),
+               CSSM_DATA cdata = { int_cast<CFIndex,CSSM_SIZE>(CFDataGetLength(inData)),
                                                    (uint8 *)CFDataGetBytePtr(inData) };
                crtn = CSSM_CL_CertCache(clHand, &cdata, &cacheHand);
                bool brtn = false;
@@ -759,6 +760,7 @@ static CSSM_RETURN impExpCreatePassKey(
                &ccHand);
        if(crtn) {
                SecImpExpDbg("impExpCreatePassKey: CSSM_CSP_CreateKeyGenContext error");
+               free(ourKey);
                return crtn;
        }
        /* subsequent errors to errOut: */