X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=bfd%2Fnlmcode.h;h=21d22363533acae37ec28e80a0dad8ef148c0b5e;hb=2e89c7f938c9986b1544376c3aa28a3e6abfe7d7;hp=5ff3bc0a3f73420b5f47a628970716ec96f3c01a;hpb=4b76d579a0805814fee8b800b80601b50831978c;p=pf3gnuchains%2Fpf3gnuchains3x.git diff --git a/bfd/nlmcode.h b/bfd/nlmcode.h index 5ff3bc0a3f..21d2236353 100644 --- a/bfd/nlmcode.h +++ b/bfd/nlmcode.h @@ -1,6 +1,6 @@ /* NLM (NetWare Loadable Module) executable support for BFD. Copyright 1993, 1994, 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004, - 2005 Free Software Foundation, Inc. + 2005, 2006, 2007 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support, using ELF support as the template. @@ -9,7 +9,7 @@ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -19,10 +19,11 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02110-1301, USA. */ + Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ -#include "bfd.h" #include "sysdep.h" +#include "bfd.h" #include "libbfd.h" #include "libnlm.h" @@ -138,14 +139,13 @@ add_bfd_section (bfd *abfd, { asection *newsect; - newsect = bfd_make_section (abfd, name); + newsect = bfd_make_section_with_flags (abfd, name, flags); if (newsect == NULL) return FALSE; newsect->vma = 0; /* NLM's are relocatable. */ newsect->size = size; newsect->filepos = offset; - newsect->flags = flags; newsect->alignment_power = bfd_log2 ((bfd_vma) 0); /* FIXME */ return TRUE; @@ -175,7 +175,7 @@ nlm_swap_auxiliary_headers_in (bfd *abfd) return FALSE; if (bfd_seek (abfd, position, SEEK_SET) != 0) return FALSE; - if (strncmp (tempstr, "VeRsIoN#", 8) == 0) + if (CONST_STRNEQ (tempstr, "VeRsIoN#")) { Nlm_External_Version_Header thdr; @@ -197,7 +197,7 @@ nlm_swap_auxiliary_headers_in (bfd *abfd) nlm_version_header (abfd)->day = get_word (abfd, (bfd_byte *) thdr.day); } - else if (strncmp (tempstr, "MeSsAgEs", 8) == 0) + else if (CONST_STRNEQ (tempstr, "MeSsAgEs")) { Nlm_External_Extended_Header thdr; @@ -265,7 +265,7 @@ nlm_swap_auxiliary_headers_in (bfd *abfd) nlm_extended_header (abfd)->reserved5 = get_word (abfd, (bfd_byte *) thdr.reserved5); } - else if (strncmp (tempstr, "CoPyRiGhT=", 10) == 0) + else if (CONST_STRNEQ (tempstr, "CoPyRiGhT=")) { amt = sizeof (nlm_copyright_header (abfd)->stamp); if (bfd_bread ((void *) nlm_copyright_header (abfd)->stamp, @@ -281,7 +281,7 @@ nlm_swap_auxiliary_headers_in (bfd *abfd) amt, abfd) != amt) return FALSE; } - else if (strncmp (tempstr, "CuStHeAd", 8) == 0) + else if (CONST_STRNEQ (tempstr, "CuStHeAd")) { Nlm_External_Custom_Header thdr; bfd_size_type hdrLength; @@ -346,7 +346,7 @@ nlm_swap_auxiliary_headers_in (bfd *abfd) /* If we have found a Cygnus header, process it. Otherwise, just save the associated data without trying to interpret it. */ - if (strncmp (dataStamp, "CyGnUsEx", 8) == 0) + if (CONST_STRNEQ (dataStamp, "CyGnUsEx")) { file_ptr pos; bfd_byte *contents; @@ -365,7 +365,7 @@ nlm_swap_auxiliary_headers_in (bfd *abfd) if (bfd_seek (abfd, pos, SEEK_SET) != 0) return FALSE; - memcpy (nlm_cygnus_ext_header (abfd), "CyGnUsEx", 8); + LITMEMCPY (nlm_cygnus_ext_header (abfd), "CyGnUsEx"); nlm_cygnus_ext_header (abfd)->offset = dataOffset; nlm_cygnus_ext_header (abfd)->length = dataLength; @@ -646,7 +646,7 @@ nlm_swap_auxiliary_headers_out (bfd *abfd) { Nlm_External_Version_Header thdr; - memcpy (thdr.stamp, "VeRsIoN#", 8); + LITMEMCPY (thdr.stamp, "VeRsIoN#"); put_word (abfd, (bfd_vma) nlm_version_header (abfd)->majorVersion, (bfd_byte *) thdr.majorVersion); put_word (abfd, (bfd_vma) nlm_version_header (abfd)->minorVersion, @@ -673,7 +673,7 @@ nlm_swap_auxiliary_headers_out (bfd *abfd) { Nlm_External_Copyright_Header thdr; - memcpy (thdr.stamp, "CoPyRiGhT=", 10); + LITMEMCPY (thdr.stamp, "CoPyRiGhT="); amt = sizeof (thdr.stamp); if (bfd_bwrite ((void *) thdr.stamp, amt, abfd) != amt) return FALSE; @@ -695,7 +695,7 @@ nlm_swap_auxiliary_headers_out (bfd *abfd) { Nlm_External_Extended_Header thdr; - memcpy (thdr.stamp, "MeSsAgEs", 8); + LITMEMCPY (thdr.stamp, "MeSsAgEs"); put_word (abfd, (bfd_vma) nlm_extended_header (abfd)->languageID, (bfd_byte *) thdr.languageID); @@ -798,7 +798,7 @@ nlm_swap_auxiliary_headers_out (bfd *abfd) ds = find_nonzero (nlm_custom_header (abfd)->dataStamp, sizeof (nlm_custom_header (abfd)->dataStamp)); - memcpy (thdr.stamp, "CuStHeAd", 8); + LITMEMCPY (thdr.stamp, "CuStHeAd"); hdrLength = (2 * NLM_TARGET_LONG_SIZE + (ds ? 8 : 0) + nlm_custom_header (abfd)->hdrLength); put_word (abfd, hdrLength, thdr.length); @@ -832,14 +832,14 @@ nlm_swap_auxiliary_headers_out (bfd *abfd) { Nlm_External_Custom_Header thdr; - memcpy (thdr.stamp, "CuStHeAd", 8); + LITMEMCPY (thdr.stamp, "CuStHeAd"); put_word (abfd, (bfd_vma) 2 * NLM_TARGET_LONG_SIZE + 8, (bfd_byte *) thdr.length); put_word (abfd, (bfd_vma) nlm_cygnus_ext_header (abfd)->offset, (bfd_byte *) thdr.dataOffset); put_word (abfd, (bfd_vma) nlm_cygnus_ext_header (abfd)->length, (bfd_byte *) thdr.dataLength); - memcpy (thdr.dataStamp, "CyGnUsEx", 8); + LITMEMCPY (thdr.dataStamp, "CyGnUsEx"); amt = sizeof (thdr); if (bfd_bwrite ((void *) &thdr, amt, abfd) != amt) return FALSE;