1 | @findex bfd_get_mtime
|
---|
2 | @subsubsection @code{bfd_get_mtime}
|
---|
3 | @strong{Synopsis}
|
---|
4 | @example
|
---|
5 | long bfd_get_mtime(bfd *abfd);
|
---|
6 | @end example
|
---|
7 | @strong{Description}@*
|
---|
8 | Return the file modification time (as read from the file system, or
|
---|
9 | from the archive header for archive members).
|
---|
10 |
|
---|
11 | @findex bfd_get_size
|
---|
12 | @subsubsection @code{bfd_get_size}
|
---|
13 | @strong{Synopsis}
|
---|
14 | @example
|
---|
15 | long bfd_get_size(bfd *abfd);
|
---|
16 | @end example
|
---|
17 | @strong{Description}@*
|
---|
18 | Return the file size (as read from file system) for the file
|
---|
19 | associated with BFD @var{abfd}.
|
---|
20 |
|
---|
21 | The initial motivation for, and use of, this routine is not
|
---|
22 | so we can get the exact size of the object the BFD applies to, since
|
---|
23 | that might not be generally possible (archive members for example).
|
---|
24 | It would be ideal if someone could eventually modify
|
---|
25 | it so that such results were guaranteed.
|
---|
26 |
|
---|
27 | Instead, we want to ask questions like "is this NNN byte sized
|
---|
28 | object I'm about to try read from file offset YYY reasonable?"
|
---|
29 | As as example of where we might do this, some object formats
|
---|
30 | use string tables for which the first @code{sizeof (long)} bytes of the
|
---|
31 | table contain the size of the table itself, including the size bytes.
|
---|
32 | If an application tries to read what it thinks is one of these
|
---|
33 | string tables, without some way to validate the size, and for
|
---|
34 | some reason the size is wrong (byte swapping error, wrong location
|
---|
35 | for the string table, etc.), the only clue is likely to be a read
|
---|
36 | error when it tries to read the table, or a "virtual memory
|
---|
37 | exhausted" error when it tries to allocate 15 bazillon bytes
|
---|
38 | of space for the 15 bazillon byte table it is about to read.
|
---|
39 | This function at least allows us to answer the quesion, "is the
|
---|
40 | size reasonable?".
|
---|
41 |
|
---|