X-Git-Url: https://git.saurik.com/apple/dyld.git/blobdiff_plain/412ebb8e3cc35d457058c31310d89ef96b7c416d..04b5575d8fc9b95f96f2a621169e45d995ee8a41:/src/ImageLoaderMachOClassic.h diff --git a/src/ImageLoaderMachOClassic.h b/src/ImageLoaderMachOClassic.h index 5d76650..071bea3 100644 --- a/src/ImageLoaderMachOClassic.h +++ b/src/ImageLoaderMachOClassic.h @@ -39,7 +39,7 @@ class ImageLoaderMachOClassic : public ImageLoaderMachO { public: static ImageLoaderMachOClassic* instantiateMainExecutable(const macho_header* mh, uintptr_t slide, const char* path, unsigned int segCount, unsigned int libCount, const LinkContext& context); - static ImageLoaderMachOClassic* instantiateFromFile(const char* path, int fd, const uint8_t* fileData, + static ImageLoaderMachOClassic* instantiateFromFile(const char* path, int fd, const uint8_t* fileData, size_t lenFileData, uint64_t offsetInFat, uint64_t lenInFat, const struct stat& info, unsigned int segCount, unsigned int libCount, const struct linkedit_data_command* codeSigCmd, const LinkContext& context); @@ -66,6 +66,7 @@ public: protected: virtual void doInterpose(const LinkContext& context); + virtual void dynamicInterpose(const LinkContext& context); virtual void setDyldInfo(const dyld_info_command*) {} virtual void setSymbolTableInfo(const macho_nlist*, const char*, const dysymtab_command*); virtual bool isSubframeworkOf(const LinkContext& context, const ImageLoader* image) const; @@ -74,7 +75,7 @@ protected: virtual void rebase(const LinkContext& context); virtual const ImageLoader::Symbol* findExportedSymbol(const char* name, const ImageLoader** foundIn) const; virtual bool containsSymbol(const void* addr) const; - virtual uintptr_t exportedSymbolAddress(const LinkContext& context, const Symbol* symbol, bool runResolver) const; + virtual uintptr_t exportedSymbolAddress(const LinkContext& context, const Symbol* symbol, const ImageLoader* requestor, bool runResolver) const; virtual bool exportedSymbolIsWeakDefintion(const Symbol* symbol) const; virtual const char* exportedSymbolName(const Symbol* symbol) const; virtual unsigned int exportedSymbolCount() const;