mirror of
https://github.com/serge1/ELFIO.git
synced 2025-03-30 04:20:13 +00:00
Names and tabs refactoring
This commit is contained in:
parent
013cc2f9db
commit
858b7a3b70
@ -490,13 +490,13 @@ class elfio
|
|||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
bool save_header( std::ostream& f )
|
bool save_header( std::ostream& stream )
|
||||||
{
|
{
|
||||||
return header->save( f );
|
return header->save( stream );
|
||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
bool save_sections( std::ostream& f )
|
bool save_sections( std::ostream& stream )
|
||||||
{
|
{
|
||||||
for ( unsigned int i = 0; i < sections_.size(); ++i ) {
|
for ( unsigned int i = 0; i < sections_.size(); ++i ) {
|
||||||
section *sec = sections_.at(i);
|
section *sec = sections_.at(i);
|
||||||
@ -505,13 +505,13 @@ class elfio
|
|||||||
(std::streamoff)header->get_sections_offset() +
|
(std::streamoff)header->get_sections_offset() +
|
||||||
header->get_section_entry_size() * sec->get_index();
|
header->get_section_entry_size() * sec->get_index();
|
||||||
|
|
||||||
sec->save(f,headerPosition,sec->get_offset());
|
sec->save(stream,headerPosition,sec->get_offset());
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
bool save_segments( std::ostream& f )
|
bool save_segments( std::ostream& stream )
|
||||||
{
|
{
|
||||||
for ( unsigned int i = 0; i < segments_.size(); ++i ) {
|
for ( unsigned int i = 0; i < segments_.size(); ++i ) {
|
||||||
segment *seg = segments_.at(i);
|
segment *seg = segments_.at(i);
|
||||||
@ -519,7 +519,7 @@ class elfio
|
|||||||
std::streampos headerPosition = header->get_segments_offset() +
|
std::streampos headerPosition = header->get_segments_offset() +
|
||||||
header->get_segment_entry_size()*seg->get_index();
|
header->get_segment_entry_size()*seg->get_index();
|
||||||
|
|
||||||
seg->save( f, headerPosition, seg->get_offset() );
|
seg->save( stream, headerPosition, seg->get_offset() );
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -67,9 +67,9 @@ class section
|
|||||||
ELFIO_SET_ACCESS_DECL( Elf64_Off, offset );
|
ELFIO_SET_ACCESS_DECL( Elf64_Off, offset );
|
||||||
ELFIO_SET_ACCESS_DECL( Elf_Half, index );
|
ELFIO_SET_ACCESS_DECL( Elf_Half, index );
|
||||||
|
|
||||||
virtual void load( std::istream& f,
|
virtual void load( std::istream& stream,
|
||||||
std::streampos header_offset ) = 0;
|
std::streampos header_offset ) = 0;
|
||||||
virtual void save( std::ostream& f,
|
virtual void save( std::ostream& stream,
|
||||||
std::streampos header_offset,
|
std::streampos header_offset,
|
||||||
std::streampos data_offset ) = 0;
|
std::streampos data_offset ) = 0;
|
||||||
virtual bool is_address_initialized() const = 0;
|
virtual bool is_address_initialized() const = 0;
|
||||||
@ -250,6 +250,7 @@ class section_impl : public section
|
|||||||
data = 0;
|
data = 0;
|
||||||
data_size = 0;
|
data_size = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( 0 != size ) {
|
if ( 0 != size ) {
|
||||||
stream.seekg( (*convertor)( header.sh_offset ) );
|
stream.seekg( (*convertor)( header.sh_offset ) );
|
||||||
stream.read( data, size );
|
stream.read( data, size );
|
||||||
@ -261,7 +262,7 @@ class section_impl : public section
|
|||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
void
|
void
|
||||||
save( std::ostream& f,
|
save( std::ostream& stream,
|
||||||
std::streampos header_offset,
|
std::streampos header_offset,
|
||||||
std::streampos data_offset )
|
std::streampos data_offset )
|
||||||
{
|
{
|
||||||
@ -270,10 +271,10 @@ class section_impl : public section
|
|||||||
header.sh_offset = (*convertor)( header.sh_offset );
|
header.sh_offset = (*convertor)( header.sh_offset );
|
||||||
}
|
}
|
||||||
|
|
||||||
save_header( f, header_offset );
|
save_header( stream, header_offset );
|
||||||
if ( get_type() != SHT_NOBITS && get_type() != SHT_NULL &&
|
if ( get_type() != SHT_NOBITS && get_type() != SHT_NULL &&
|
||||||
get_size() != 0 && data != 0 ) {
|
get_size() != 0 && data != 0 ) {
|
||||||
save_data( f, data_offset );
|
save_data( stream, data_offset );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -281,20 +282,20 @@ class section_impl : public section
|
|||||||
private:
|
private:
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
void
|
void
|
||||||
save_header( std::ostream& f,
|
save_header( std::ostream& stream,
|
||||||
std::streampos header_offset ) const
|
std::streampos header_offset ) const
|
||||||
{
|
{
|
||||||
f.seekp( header_offset );
|
stream.seekp( header_offset );
|
||||||
f.write( reinterpret_cast<const char*>( &header ), sizeof( header ) );
|
stream.write( reinterpret_cast<const char*>( &header ), sizeof( header ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
void
|
void
|
||||||
save_data( std::ostream& f,
|
save_data( std::ostream& stream,
|
||||||
std::streampos data_offset ) const
|
std::streampos data_offset ) const
|
||||||
{
|
{
|
||||||
f.seekp( data_offset );
|
stream.seekp( data_offset );
|
||||||
f.write( get_data(), get_size() );
|
stream.write( get_data(), get_size() );
|
||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
@ -57,7 +57,7 @@ class segment
|
|||||||
|
|
||||||
virtual const std::vector<Elf_Half>& get_sections() const = 0;
|
virtual const std::vector<Elf_Half>& get_sections() const = 0;
|
||||||
virtual void load( std::istream& stream, std::streampos header_offset ) = 0;
|
virtual void load( std::istream& stream, std::streampos header_offset ) = 0;
|
||||||
virtual void save( std::ostream& f, std::streampos header_offset,
|
virtual void save( std::ostream& stream, std::streampos header_offset,
|
||||||
std::streampos data_offset ) = 0;
|
std::streampos data_offset ) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -202,14 +202,17 @@ class segment_impl : public segment
|
|||||||
if ( PT_NULL != get_type() && 0 != get_file_size() ) {
|
if ( PT_NULL != get_type() && 0 != get_file_size() ) {
|
||||||
stream.seekg( (*convertor)( ph.p_offset ) );
|
stream.seekg( (*convertor)( ph.p_offset ) );
|
||||||
Elf_Xword size = get_file_size();
|
Elf_Xword size = get_file_size();
|
||||||
|
|
||||||
if ( size > get_stream_size() ) {
|
if ( size > get_stream_size() ) {
|
||||||
data = 0;
|
data = 0;
|
||||||
} else {
|
}
|
||||||
|
else {
|
||||||
try {
|
try {
|
||||||
data = new char[size + 1];
|
data = new char[size + 1];
|
||||||
} catch (const std::bad_alloc&) {
|
} catch (const std::bad_alloc&) {
|
||||||
data = 0;
|
data = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( 0 != data ) {
|
if ( 0 != data ) {
|
||||||
stream.read( data, size );
|
stream.read( data, size );
|
||||||
data[size] = 0;
|
data[size] = 0;
|
||||||
@ -219,14 +222,14 @@ class segment_impl : public segment
|
|||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
void save( std::ostream& f,
|
void save( std::ostream& stream,
|
||||||
std::streampos header_offset,
|
std::streampos header_offset,
|
||||||
std::streampos data_offset )
|
std::streampos data_offset )
|
||||||
{
|
{
|
||||||
ph.p_offset = data_offset;
|
ph.p_offset = data_offset;
|
||||||
ph.p_offset = (*convertor)(ph.p_offset);
|
ph.p_offset = (*convertor)(ph.p_offset);
|
||||||
f.seekp( header_offset );
|
stream.seekp( header_offset );
|
||||||
f.write( reinterpret_cast<const char*>( &ph ), sizeof( ph ) );
|
stream.write( reinterpret_cast<const char*>( &ph ), sizeof( ph ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
Loading…
x
Reference in New Issue
Block a user