]> git.saurik.com Git - apple/security.git/blobdiff - OSX/libsecurity_codesigning/lib/bundlediskrep.h
Security-59306.140.5.tar.gz
[apple/security.git] / OSX / libsecurity_codesigning / lib / bundlediskrep.h
index a166a7e005da15895a42416b8f6ebcb1374d4b17..af3e40e2c228a8b230625e5e72ec8776544a1854 100644 (file)
@@ -55,14 +55,16 @@ namespace CodeSigning {
 // if it is in Mach-O format, or in files in a _CodeSignature directory if not.
 // This DiskRep supports resource sealing.
 //
-class BundleDiskRep : public DiskRep {
+class BundleDiskRep : public DiskRep, public EditableDiskRep {
 public:
        BundleDiskRep(const char *path, const Context *ctx = NULL);
        BundleDiskRep(CFBundleRef ref, const Context *ctx = NULL);
        ~BundleDiskRep();
        
        CFDataRef component(CodeDirectory::SpecialSlot slot);
+       RawComponentMap createRawComponents();
        CFDataRef identification();
+       DiskRep *mainExecRep() const { return mExecRep.get(); };
        std::string mainExecutablePath();
        CFURLRef copyCanonicalPath();
        std::string resourcesRootPath();
@@ -86,6 +88,7 @@ public:
        size_t pageSize(const SigningContext &ctx);
 
        void strictValidate(const CodeDirectory* cd, const ToleratedErrors& tolerated, SecCSFlags flags);
+       void strictValidateStructure(const CodeDirectory* cd, const ToleratedErrors& tolerated, SecCSFlags flags);
        CFArrayRef allowedResourceOmissions();
 
        void registerStapledTicket();