source: branches/GNU/src/binutils/bfd/doc/format.texi@ 609

Last change on this file since 609 was 609, checked in by bird, 22 years ago

binutils v2.14 - offical sources.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 3.1 KB
Line 
1@section File formats
2A format is a BFD concept of high level file contents type. The
3formats supported by BFD are:
4
5@itemize @bullet
6
7@item
8@code{bfd_object}
9@end itemize
10The BFD may contain data, symbols, relocations and debug info.
11
12@itemize @bullet
13
14@item
15@code{bfd_archive}
16@end itemize
17The BFD contains other BFDs and an optional index.
18
19@itemize @bullet
20
21@item
22@code{bfd_core}
23@end itemize
24The BFD contains the result of an executable core dump.
25
26@findex bfd_check_format
27@subsubsection @code{bfd_check_format}
28@strong{Synopsis}
29@example
30bfd_boolean bfd_check_format (bfd *abfd, bfd_format format);
31@end example
32@strong{Description}@*
33Verify if the file attached to the BFD @var{abfd} is compatible
34with the format @var{format} (i.e., one of @code{bfd_object},
35@code{bfd_archive} or @code{bfd_core}).
36
37If the BFD has been set to a specific target before the
38call, only the named target and format combination is
39checked. If the target has not been set, or has been set to
40@code{default}, then all the known target backends is
41interrogated to determine a match. If the default target
42matches, it is used. If not, exactly one target must recognize
43the file, or an error results.
44
45The function returns @code{TRUE} on success, otherwise @code{FALSE}
46with one of the following error codes:
47
48@itemize @bullet
49
50@item
51@code{bfd_error_invalid_operation} -
52if @code{format} is not one of @code{bfd_object}, @code{bfd_archive} or
53@code{bfd_core}.
54
55@item
56@code{bfd_error_system_call} -
57if an error occured during a read - even some file mismatches
58can cause bfd_error_system_calls.
59
60@item
61@code{file_not_recognised} -
62none of the backends recognised the file format.
63
64@item
65@code{bfd_error_file_ambiguously_recognized} -
66more than one backend recognised the file format.
67@end itemize