// if it is in Mach-O format, or in files in a _CodeSignature directory if not.
// This DiskRep supports resource sealing.
//
// if it is in Mach-O format, or in files in a _CodeSignature directory if not.
// This DiskRep supports resource sealing.
//
public:
BundleDiskRep(const char *path, const Context *ctx = NULL);
BundleDiskRep(CFBundleRef ref, const Context *ctx = NULL);
~BundleDiskRep();
CFDataRef component(CodeDirectory::SpecialSlot slot);
public:
BundleDiskRep(const char *path, const Context *ctx = NULL);
BundleDiskRep(CFBundleRef ref, const Context *ctx = NULL);
~BundleDiskRep();
CFDataRef component(CodeDirectory::SpecialSlot slot);
std::string mainExecutablePath();
CFURLRef copyCanonicalPath();
std::string resourcesRootPath();
std::string mainExecutablePath();
CFURLRef copyCanonicalPath();
std::string resourcesRootPath();
size_t pageSize(const SigningContext &ctx);
void strictValidate(const CodeDirectory* cd, const ToleratedErrors& tolerated, SecCSFlags flags);
size_t pageSize(const SigningContext &ctx);
void strictValidate(const CodeDirectory* cd, const ToleratedErrors& tolerated, SecCSFlags flags);
bool mComponentsFromExecValid; // mComponentsFromExec is valid (tri-state)
std::set<CodeDirectory::SpecialSlot> mUsedComponents; // remember what components we've retrieved
std::set<OSStatus> mStrictErrors; // strict validation errors encountered
bool mComponentsFromExecValid; // mComponentsFromExec is valid (tri-state)
std::set<CodeDirectory::SpecialSlot> mUsedComponents; // remember what components we've retrieved
std::set<OSStatus> mStrictErrors; // strict validation errors encountered