- Nlm_External_Fixed_Header * dst = (Nlm_External_Fixed_Header*)realdst;
- memcpy (dst -> signature, src -> signature, NLM_SIGNATURE_SIZE);
- memcpy (dst -> moduleName, src -> moduleName, NLM_MODULE_NAME_SIZE);
- bfd_h_put_32 (abfd, (bfd_vma) src -> version,
- (bfd_byte *) dst -> version);
- bfd_h_put_32 (abfd, (bfd_vma) src -> codeImageOffset,
- (bfd_byte *) dst -> codeImageOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> codeImageSize,
- (bfd_byte *) dst -> codeImageSize);
- bfd_h_put_32 (abfd, (bfd_vma) src -> dataImageOffset,
- (bfd_byte *) dst -> dataImageOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> dataImageSize,
- (bfd_byte *) dst -> dataImageSize);
- bfd_h_put_32 (abfd, (bfd_vma) src -> uninitializedDataSize,
- (bfd_byte *) dst -> uninitializedDataSize);
- bfd_h_put_32 (abfd, (bfd_vma) src -> customDataOffset,
- (bfd_byte *) dst -> customDataOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> customDataSize,
- (bfd_byte *) dst -> customDataSize);
- bfd_h_put_32 (abfd, (bfd_vma) src -> moduleDependencyOffset,
- (bfd_byte *) dst -> moduleDependencyOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> numberOfModuleDependencies,
- (bfd_byte *) dst -> numberOfModuleDependencies);
- bfd_h_put_32 (abfd, (bfd_vma) src -> relocationFixupOffset,
- (bfd_byte *) dst -> relocationFixupOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> numberOfRelocationFixups,
- (bfd_byte *) dst -> numberOfRelocationFixups);
- bfd_h_put_32 (abfd, (bfd_vma) src -> externalReferencesOffset,
- (bfd_byte *) dst -> externalReferencesOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> numberOfExternalReferences,
- (bfd_byte *) dst -> numberOfExternalReferences);
- bfd_h_put_32 (abfd, (bfd_vma) src -> publicsOffset,
- (bfd_byte *) dst -> publicsOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> numberOfPublics,
- (bfd_byte *) dst -> numberOfPublics);
- bfd_h_put_32 (abfd, (bfd_vma) src -> debugInfoOffset,
- (bfd_byte *) dst -> debugInfoOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> numberOfDebugRecords,
- (bfd_byte *) dst -> numberOfDebugRecords);
- bfd_h_put_32 (abfd, (bfd_vma) src -> codeStartOffset,
- (bfd_byte *) dst -> codeStartOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> exitProcedureOffset,
- (bfd_byte *) dst -> exitProcedureOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> checkUnloadProcedureOffset,
- (bfd_byte *) dst -> checkUnloadProcedureOffset);
- bfd_h_put_32 (abfd, (bfd_vma) src -> moduleType,
- (bfd_byte *) dst -> moduleType);
- bfd_h_put_32 (abfd, (bfd_vma) src -> flags,
- (bfd_byte *) dst -> flags);
+ Nlm_External_Fixed_Header *dst = (Nlm_External_Fixed_Header *) realdst;
+
+ memset (dst, 0, sizeof *dst);
+ memcpy (dst->signature, src->signature, NLM_SIGNATURE_SIZE);
+ memcpy (dst->moduleName, src->moduleName, NLM_MODULE_NAME_SIZE);
+ H_PUT_32 (abfd, src->version,
+ dst->version);
+ H_PUT_32 (abfd, src->codeImageOffset,
+ dst->codeImageOffset);
+ H_PUT_32 (abfd, src->codeImageSize,
+ dst->codeImageSize);
+ H_PUT_32 (abfd, src->dataImageOffset,
+ dst->dataImageOffset);
+ H_PUT_32 (abfd, src->dataImageSize,
+ dst->dataImageSize);
+ H_PUT_32 (abfd, src->uninitializedDataSize,
+ dst->uninitializedDataSize);
+ H_PUT_32 (abfd, src->customDataOffset,
+ dst->customDataOffset);
+ H_PUT_32 (abfd, src->customDataSize,
+ dst->customDataSize);
+ H_PUT_32 (abfd, src->moduleDependencyOffset,
+ dst->moduleDependencyOffset);
+ H_PUT_32 (abfd, src->numberOfModuleDependencies,
+ dst->numberOfModuleDependencies);
+ H_PUT_32 (abfd, src->relocationFixupOffset,
+ dst->relocationFixupOffset);
+ H_PUT_32 (abfd, src->numberOfRelocationFixups,
+ dst->numberOfRelocationFixups);
+ H_PUT_32 (abfd, src->externalReferencesOffset,
+ dst->externalReferencesOffset);
+ H_PUT_32 (abfd, src->numberOfExternalReferences,
+ dst->numberOfExternalReferences);
+ H_PUT_32 (abfd, src->publicsOffset,
+ dst->publicsOffset);
+ H_PUT_32 (abfd, src->numberOfPublics,
+ dst->numberOfPublics);
+ H_PUT_32 (abfd, src->debugInfoOffset,
+ dst->debugInfoOffset);
+ H_PUT_32 (abfd, src->numberOfDebugRecords,
+ dst->numberOfDebugRecords);
+ H_PUT_32 (abfd, src->codeStartOffset,
+ dst->codeStartOffset);
+ H_PUT_32 (abfd, src->exitProcedureOffset,
+ dst->exitProcedureOffset);
+ H_PUT_32 (abfd, src->checkUnloadProcedureOffset,
+ dst->checkUnloadProcedureOffset);
+ H_PUT_32 (abfd, src->moduleType,
+ dst->moduleType);
+ H_PUT_32 (abfd, src->flags,
+ dst->flags);