diff options
Diffstat (limited to 'src/common/mac/macho_utilities.cc')
-rw-r--r-- | src/common/mac/macho_utilities.cc | 59 |
1 files changed, 30 insertions, 29 deletions
diff --git a/src/common/mac/macho_utilities.cc b/src/common/mac/macho_utilities.cc index d25de5c8..89f9e775 100644 --- a/src/common/mac/macho_utilities.cc +++ b/src/common/mac/macho_utilities.cc @@ -31,43 +31,44 @@ // // Author: Dave Camp +#include "common/mac/byteswap.h" #include "common/mac/macho_utilities.h" void breakpad_swap_uuid_command(struct breakpad_uuid_command *uc, enum NXByteOrder target_byte_order) { - uc->cmd = NXSwapLong(uc->cmd); - uc->cmdsize = NXSwapLong(uc->cmdsize); + uc->cmd = ByteSwap(uc->cmd); + uc->cmdsize = ByteSwap(uc->cmdsize); } void breakpad_swap_segment_command_64(struct segment_command_64 *sg, enum NXByteOrder target_byte_order) { - sg->cmd = NXSwapLong(sg->cmd); - sg->cmdsize = NXSwapLong(sg->cmdsize); + sg->cmd = ByteSwap(sg->cmd); + sg->cmdsize = ByteSwap(sg->cmdsize); - sg->vmaddr = NXSwapLongLong(sg->vmaddr); - sg->vmsize = NXSwapLongLong(sg->vmsize); - sg->fileoff = NXSwapLongLong(sg->fileoff); - sg->filesize = NXSwapLongLong(sg->filesize); + sg->vmaddr = ByteSwap(sg->vmaddr); + sg->vmsize = ByteSwap(sg->vmsize); + sg->fileoff = ByteSwap(sg->fileoff); + sg->filesize = ByteSwap(sg->filesize); - sg->maxprot = NXSwapLong(sg->maxprot); - sg->initprot = NXSwapLong(sg->initprot); - sg->nsects = NXSwapLong(sg->nsects); - sg->flags = NXSwapLong(sg->flags); + sg->maxprot = ByteSwap(sg->maxprot); + sg->initprot = ByteSwap(sg->initprot); + sg->nsects = ByteSwap(sg->nsects); + sg->flags = ByteSwap(sg->flags); } void breakpad_swap_mach_header_64(struct mach_header_64 *mh, enum NXByteOrder target_byte_order) { - mh->magic = NXSwapLong(mh->magic); - mh->cputype = NXSwapLong(mh->cputype); - mh->cpusubtype = NXSwapLong(mh->cpusubtype); - mh->filetype = NXSwapLong(mh->filetype); - mh->ncmds = NXSwapLong(mh->ncmds); - mh->sizeofcmds = NXSwapLong(mh->sizeofcmds); - mh->flags = NXSwapLong(mh->flags); - mh->reserved = NXSwapLong(mh->reserved); + mh->magic = ByteSwap(mh->magic); + mh->cputype = ByteSwap(mh->cputype); + mh->cpusubtype = ByteSwap(mh->cpusubtype); + mh->filetype = ByteSwap(mh->filetype); + mh->ncmds = ByteSwap(mh->ncmds); + mh->sizeofcmds = ByteSwap(mh->sizeofcmds); + mh->flags = ByteSwap(mh->flags); + mh->reserved = ByteSwap(mh->reserved); } void breakpad_swap_section_64(struct section_64 *s, @@ -75,15 +76,15 @@ void breakpad_swap_section_64(struct section_64 *s, enum NXByteOrder target_byte_order) { for (uint32_t i = 0; i < nsects; i++) { - s[i].addr = NXSwapLongLong(s[i].addr); - s[i].size = NXSwapLongLong(s[i].size); + s[i].addr = ByteSwap(s[i].addr); + s[i].size = ByteSwap(s[i].size); - s[i].offset = NXSwapLong(s[i].offset); - s[i].align = NXSwapLong(s[i].align); - s[i].reloff = NXSwapLong(s[i].reloff); - s[i].nreloc = NXSwapLong(s[i].nreloc); - s[i].flags = NXSwapLong(s[i].flags); - s[i].reserved1 = NXSwapLong(s[i].reserved1); - s[i].reserved2 = NXSwapLong(s[i].reserved2); + s[i].offset = ByteSwap(s[i].offset); + s[i].align = ByteSwap(s[i].align); + s[i].reloff = ByteSwap(s[i].reloff); + s[i].nreloc = ByteSwap(s[i].nreloc); + s[i].flags = ByteSwap(s[i].flags); + s[i].reserved1 = ByteSwap(s[i].reserved1); + s[i].reserved2 = ByteSwap(s[i].reserved2); } } |