| OLD | NEW |
| 1 /* libbfd.h -- Declarations used by bfd library *implementation*. | 1 /* libbfd.h -- Declarations used by bfd library *implementation*. |
| 2 (This include file is not for users of the library.) | 2 (This include file is not for users of the library.) |
| 3 | 3 |
| 4 Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, | 4 Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, |
| 5 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, | 5 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, |
| 6 2010, 2011 | 6 2010, 2011, 2012 |
| 7 Free Software Foundation, Inc. | 7 Free Software Foundation, Inc. |
| 8 | 8 |
| 9 Written by Cygnus Support. | 9 Written by Cygnus Support. |
| 10 | 10 |
| 11 This file is part of BFD, the Binary File Descriptor library. | 11 This file is part of BFD, the Binary File Descriptor library. |
| 12 | 12 |
| 13 This program is free software; you can redistribute it and/or modify | 13 This program is free software; you can redistribute it and/or modify |
| 14 it under the terms of the GNU General Public License as published by | 14 it under the terms of the GNU General Public License as published by |
| 15 the Free Software Foundation; either version 3 of the License, or | 15 the Free Software Foundation; either version 3 of the License, or |
| 16 (at your option) any later version. | 16 (at your option) any later version. |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 57 | 57 |
| 58 struct section_hash_entry | 58 struct section_hash_entry |
| 59 { | 59 { |
| 60 struct bfd_hash_entry root; | 60 struct bfd_hash_entry root; |
| 61 asection section; | 61 asection section; |
| 62 }; | 62 }; |
| 63 | 63 |
| 64 /* tdata for an archive. For an input archive, cache | 64 /* tdata for an archive. For an input archive, cache |
| 65 needs to be free()'d. For an output archive, symdefs do. */ | 65 needs to be free()'d. For an output archive, symdefs do. */ |
| 66 | 66 |
| 67 struct artdata { | 67 struct artdata |
| 68 { |
| 68 file_ptr first_file_filepos; | 69 file_ptr first_file_filepos; |
| 69 /* Speed up searching the armap */ | 70 /* Speed up searching the armap */ |
| 70 htab_t cache; | 71 htab_t cache; |
| 71 bfd *archive_head;» » /* Only interesting in output routines */ | 72 bfd *archive_head;» » /* Only interesting in output routines. */ |
| 72 carsym *symdefs;» » /* the symdef entries */ | 73 carsym *symdefs;» » /* The symdef entries. */ |
| 73 symindex symdef_count;» /* how many there are */ | 74 symindex symdef_count;» /* How many there are. */ |
| 74 char *extended_names;»» /* clever intel extension */ | 75 char *extended_names;»» /* Clever intel extension. */ |
| 75 bfd_size_type extended_names_size; /* Size of extended names */ | 76 bfd_size_type extended_names_size; /* Size of extended names. */ |
| 76 /* when more compilers are standard C, this can be a time_t */ | 77 /* When more compilers are standard C, this can be a time_t. */ |
| 77 long armap_timestamp; /* Timestamp value written into armap. | 78 long armap_timestamp; /* Timestamp value written into armap. |
| 78 This is used for BSD archives to check | 79 This is used for BSD archives to check |
| 79 that the timestamp is recent enough | 80 that the timestamp is recent enough |
| 80 for the BSD linker to not complain, | 81 for the BSD linker to not complain, |
| 81 just before we finish writing an | 82 just before we finish writing an |
| 82 archive. */ | 83 archive. */ |
| 83 file_ptr armap_datepos; /* Position within archive to seek to | 84 file_ptr armap_datepos; /* Position within archive to seek to |
| 84 rewrite the date field. */ | 85 rewrite the date field. */ |
| 85 void *tdata; /* Backend specific information. */ | 86 void *tdata; /* Backend specific information. */ |
| 86 }; | 87 }; |
| 87 | 88 |
| 88 #define bfd_ardata(bfd) ((bfd)->tdata.aout_ar_data) | 89 #define bfd_ardata(bfd) ((bfd)->tdata.aout_ar_data) |
| 89 | 90 |
| 90 /* Goes in bfd's arelt_data slot */ | 91 /* Goes in bfd's arelt_data slot */ |
| 91 struct areltdata { | 92 struct areltdata |
| 92 char * arch_header;» » /* it's actually a string */ | 93 { |
| 93 unsigned int parsed_size;» /* octets of filesize not including ar_hdr */ | 94 char * arch_header;» » /* It's actually a string. */ |
| 94 unsigned int extra_size;» /* BSD4.4: extra bytes after the header. */ | 95 bfd_size_type parsed_size;» /* Octets of filesize not including ar_hdr. */ |
| 95 char *filename;» » /* null-terminated */ | 96 bfd_size_type extra_size;» /* BSD4.4: extra bytes after the header. */ |
| 96 file_ptr origin;» » /* for element of a thin archive */ | 97 char *filename;» » /* Null-terminated. */ |
| 98 file_ptr origin;» » /* For element of a thin archive. */ |
| 97 }; | 99 }; |
| 98 | 100 |
| 99 #define arelt_size(bfd) (((struct areltdata *)((bfd)->arelt_data))->parsed_size) | 101 #define arelt_size(bfd) (((struct areltdata *)((bfd)->arelt_data))->parsed_size) |
| 100 | 102 |
| 101 extern void *bfd_malloc | 103 extern void *bfd_malloc |
| 102 (bfd_size_type); | 104 (bfd_size_type); |
| 103 extern void *bfd_realloc | 105 extern void *bfd_realloc |
| 104 (void *, bfd_size_type); | 106 (void *, bfd_size_type); |
| 105 extern void *bfd_realloc_or_free | 107 extern void *bfd_realloc_or_free |
| 106 (void *, bfd_size_type); | 108 (void *, bfd_size_type); |
| 107 extern void *bfd_zmalloc | 109 extern void *bfd_zmalloc |
| 108 (bfd_size_type); | 110 (bfd_size_type); |
| 109 extern void *bfd_malloc2 | 111 extern void *bfd_malloc2 |
| 110 (bfd_size_type, bfd_size_type); | 112 (bfd_size_type, bfd_size_type); |
| 111 extern void *bfd_realloc2 | 113 extern void *bfd_realloc2 |
| 112 (void *, bfd_size_type, bfd_size_type); | 114 (void *, bfd_size_type, bfd_size_type); |
| 113 extern void *bfd_zmalloc2 | 115 extern void *bfd_zmalloc2 |
| 114 (bfd_size_type, bfd_size_type); | 116 (bfd_size_type, bfd_size_type); |
| 115 | 117 |
| 116 extern void _bfd_default_error_handler (const char *s, ...); | 118 extern void _bfd_default_error_handler (const char *s, ...); |
| 117 extern bfd_error_handler_type _bfd_error_handler; | 119 extern bfd_error_handler_type _bfd_error_handler; |
| 120 extern bfd_assert_handler_type _bfd_assert_handler; |
| 118 | 121 |
| 119 /* These routines allocate and free things on the BFD's objalloc. */ | 122 /* These routines allocate and free things on the BFD's objalloc. */ |
| 120 | 123 |
| 121 extern void *bfd_alloc2 | 124 extern void *bfd_alloc2 |
| 122 (bfd *, bfd_size_type, bfd_size_type); | 125 (bfd *, bfd_size_type, bfd_size_type); |
| 123 extern void *bfd_zalloc2 | 126 extern void *bfd_zalloc2 |
| 124 (bfd *, bfd_size_type, bfd_size_type); | 127 (bfd *, bfd_size_type, bfd_size_type); |
| 125 extern void bfd_release | 128 extern void bfd_release |
| 126 (bfd *, void *); | 129 (bfd *, void *); |
| 127 | 130 |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 196 int stridx); | 199 int stridx); |
| 197 | 200 |
| 198 bfd_boolean coff_write_armap | 201 bfd_boolean coff_write_armap |
| 199 (bfd *arch, unsigned int elength, struct orl *map, unsigned int orl_count, | 202 (bfd *arch, unsigned int elength, struct orl *map, unsigned int orl_count, |
| 200 int stridx); | 203 int stridx); |
| 201 | 204 |
| 202 extern void *_bfd_generic_read_ar_hdr | 205 extern void *_bfd_generic_read_ar_hdr |
| 203 (bfd *); | 206 (bfd *); |
| 204 extern void _bfd_ar_spacepad | 207 extern void _bfd_ar_spacepad |
| 205 (char *, size_t, const char *, long); | 208 (char *, size_t, const char *, long); |
| 209 extern bfd_boolean _bfd_ar_sizepad |
| 210 (char *, size_t, bfd_size_type); |
| 206 | 211 |
| 207 extern void *_bfd_generic_read_ar_hdr_mag | 212 extern void *_bfd_generic_read_ar_hdr_mag |
| 208 (bfd *, const char *); | 213 (bfd *, const char *); |
| 209 | 214 |
| 210 extern bfd_boolean _bfd_generic_write_ar_hdr | 215 extern bfd_boolean _bfd_generic_write_ar_hdr |
| 211 (bfd *, bfd *); | 216 (bfd *, bfd *); |
| 212 | 217 |
| 213 extern bfd_boolean _bfd_bsd44_write_ar_hdr | 218 extern bfd_boolean _bfd_bsd44_write_ar_hdr |
| 214 (bfd *, bfd *); | 219 (bfd *, bfd *); |
| 215 | 220 |
| (...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 444 #define _bfd_nolink_sizeof_headers \ | 449 #define _bfd_nolink_sizeof_headers \ |
| 445 ((int (*) (bfd *, struct bfd_link_info *)) bfd_0) | 450 ((int (*) (bfd *, struct bfd_link_info *)) bfd_0) |
| 446 #define _bfd_nolink_bfd_get_relocated_section_contents \ | 451 #define _bfd_nolink_bfd_get_relocated_section_contents \ |
| 447 ((bfd_byte *(*) (bfd *, struct bfd_link_info *, struct bfd_link_order *, \ | 452 ((bfd_byte *(*) (bfd *, struct bfd_link_info *, struct bfd_link_order *, \ |
| 448 bfd_byte *, bfd_boolean, asymbol **)) \ | 453 bfd_byte *, bfd_boolean, asymbol **)) \ |
| 449 bfd_nullvoidptr) | 454 bfd_nullvoidptr) |
| 450 #define _bfd_nolink_bfd_relax_section \ | 455 #define _bfd_nolink_bfd_relax_section \ |
| 451 ((bfd_boolean (*) \ | 456 ((bfd_boolean (*) \ |
| 452 (bfd *, asection *, struct bfd_link_info *, bfd_boolean *)) \ | 457 (bfd *, asection *, struct bfd_link_info *, bfd_boolean *)) \ |
| 453 bfd_false) | 458 bfd_false) |
error: old chunk mismatch |
None
| OLD | NEW |