TInt E32ImageFile_ELF::CopyCode(char *p, ELFFile &aElfFile) // // Copies the files code sections to p // returns the number of bytes copied or KErrGeneral // { TInt size=aElfFile.GetCodeSize(); memcpy(p, (char *)aElfFile.GetCode(), size); p+=ALIGN4(size); return iHdr->iCodeSize = size; }
TInt E32ImageFile_ELF::DoCodeHeader(ELFFile &aElfFile) // // Calculate the code parts of the ELFFile // { TInt size=ALIGN4(aElfFile.GetCodeSize()); iHdr->iCodeSize = iHdr->iTextSize = size; // make it the offset from the beginning of the file..... if(iHdr->iExportDirCount==0) iHdr->iExportDirOffset = 0; else iHdr->iExportDirOffset = aElfFile.GetExportTableOffset() + iHdr->iCodeOffset; return size; }