X-Git-Url: https://git.saurik.com/apple/libsecurity_codesigning.git/blobdiff_plain/2e2533baea112414a307d169c101a9c225fd1d77..935e692843d9c528f9a4c5eee98e00961ca5f4a4:/lib/cs.cpp diff --git a/lib/cs.cpp b/lib/cs.cpp index f55a48e..825e335 100644 --- a/lib/cs.cpp +++ b/lib/cs.cpp @@ -25,7 +25,7 @@ // cs.h - code signing core header // #include "cs.h" -#include "cfmunge.h" +#include namespace Security { namespace CodeSigning { @@ -34,13 +34,30 @@ namespace CodeSigning { ModuleNexus gCFObjects; CFObjects::CFObjects() - : Code("SecCode", false), - StaticCode("SecStaticCode", false), - Requirement("SecRequirements", false), - CodeSigner("SecCodeSigner", false) + : Code("SecCode"), + StaticCode("SecStaticCode"), + Requirement("SecRequirements"), + CodeSigner("SecCodeSigner") { } +OSStatus dbError(const SQLite3::Error &err) +{ + switch (err.error) { + case SQLITE_PERM: + case SQLITE_READONLY: + case SQLITE_AUTH: + return errSecCSSigDBDenied; + case SQLITE_CANTOPEN: + case SQLITE_EMPTY: + case SQLITE_NOTADB: + return errSecCSSigDBAccess; + default: + return SecKeychainErrFromOSStatus(err.osStatus()); + } +} + + } // CodeSigning } // Security