]> git.saurik.com Git - apple/libsecurity_codesigning.git/blobdiff - lib/reqparser.cpp
libsecurity_codesigning-55032.tar.gz
[apple/libsecurity_codesigning.git] / lib / reqparser.cpp
index e419f35bc0537ec7ec7bb5d322ed3d491343494c..5a8e94e1057589bcae4dc208f6a8fb14065e2cfc 100644 (file)
@@ -27,6 +27,7 @@
 #include "reqparser.h"
 #include "antlrplugin.h"
 #include "cserror.h"
+#include "codesigning_dtrace.h"
 #include <CoreFoundation/CoreFoundation.h>
 #include <security_utilities/osxcode.h>
 
@@ -50,12 +51,11 @@ ModuleNexus<PluginHost> plugin;
 PluginHost::PluginHost()
 {
        if (CFBundleRef securityFramework = CFBundleGetBundleWithIdentifier(CFSTR("com.apple.security")))
-               if (CFURLRef plugins = CFBundleCopyBuiltInPlugInsURL(securityFramework))
-                       if (CFRef<CFURLRef> pluginURL = CFURLCreateWithFileSystemPathRelativeToBase(NULL,
-                                       CFSTR("csparser.bundle"), kCFURLPOSIXPathStyle, true, plugins)) {
-                               secdebug("antlrplugin", "loading antlr parser plugin from %s", cfString(pluginURL).c_str());
+               if (CFRef<CFURLRef> plugins = CFBundleCopyBuiltInPlugInsURL(securityFramework))
+                       if (CFRef<CFURLRef> pluginURL = makeCFURL("csparser.bundle", true, plugins)) {
                                plugin = new LoadableBundle(cfString(pluginURL).c_str());
                                plugin->load();
+                               CODESIGN_LOAD_ANTLR();
                                antlr = reinterpret_cast<FindAntlrPlugin *>(plugin->lookupSymbol(FINDANTLRPLUGIN))();
                                return;
                        }