One Hat Cyber Team
Your IP :
10.30.1.1
Server IP :
103.148.201.5
Server :
Linux web-olt 5.15.0-161-generic #171-Ubuntu SMP Sat Oct 11 08:17:01 UTC 2025 x86_64
Server Software :
Apache/2.4.52 (Ubuntu)
PHP Version :
8.1.29
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
lib
/
python3
/
dist-packages
/
elftools
/
elf
/
Edit File:
notes.py
#------------------------------------------------------------------------------- # elftools: elf/notes.py # # ELF notes # # Eli Bendersky (eliben@gmail.com) # This code is in the public domain #------------------------------------------------------------------------------- from ..common.py3compat import bytes2str from ..common.utils import struct_parse, roundup from ..construct import CString def iter_notes(elffile, offset, size): """ Yield all the notes in a section or segment. """ end = offset + size while offset < end: note = struct_parse( elffile.structs.Elf_Nhdr, elffile.stream, stream_pos=offset) note['n_offset'] = offset offset += elffile.structs.Elf_Nhdr.sizeof() elffile.stream.seek(offset) # n_namesz is 4-byte aligned. disk_namesz = roundup(note['n_namesz'], 2) note['n_name'] = bytes2str( CString('').parse(elffile.stream.read(disk_namesz))) offset += disk_namesz desc_data = bytes2str(elffile.stream.read(note['n_descsz'])) note['n_descdata'] = desc_data if note['n_type'] == 'NT_GNU_ABI_TAG': note['n_desc'] = struct_parse(elffile.structs.Elf_abi, elffile.stream, offset) elif note['n_type'] == 'NT_GNU_BUILD_ID': note['n_desc'] = ''.join('%.2x' % ord(b) for b in desc_data) elif note['n_type'] == 'NT_PRPSINFO': note['n_desc'] = struct_parse(elffile.structs.Elf_Prpsinfo, elffile.stream, offset) elif note['n_type'] == 'NT_FILE': note['n_desc'] = struct_parse(elffile.structs.Elf_Nt_File, elffile.stream, offset) else: note['n_desc'] = desc_data offset += roundup(note['n_descsz'], 2) note['n_size'] = offset - note['n_offset'] yield note
Simpan