Appending to BFD

Paulo J. Matos paulo@matos-sorge.com
Wed Nov 16 17:52:00 GMT 2011


On 15/11/11 22:49, Dave Korn wrote:
> On 15/11/2011 14:18, Paulo J. Matos wrote:
>>
>> Is this even possible?
>
>    I don't know, but this code ....
>
>> bfd *
>> bfd_fopen (const char *filename, const char *target, const char *mode, int fd)
>> {
>          [ ... snip ... ]
>>    /* Figure out whether the user is opening the file for reading,
>>       writing, or both, by looking at the MODE argument.  */
>>    if ((mode[0] == 'r' || mode[0] == 'w' || mode[0] == 'a')
>>        &&  mode[1] == '+')
>>      nbfd->direction = both_direction;
>
>
> ... suggests that it ought to be possible.  However you may need to insert
> calls to bfd_make_readable/bfd_make_writable at appropriate points, and treat
> it as if it was only either readable or writable but not both at any given time.
>
>      cheers,
>        DaveK
>


Unfortunately this seems impossible indeed. Opening file bfd with "w" 
resets the bfd and I can't find any sections. Opening with "r" and using 
bfd_make_writable fails because this procedure requited abfd->direction 
== no_direction. :-/

I am open to suggestions.

-- 
PMatos



More information about the Binutils mailing list