📄 libewf_internal_handle.h
字号:
uint8_t media_type; /* The media flags */ uint8_t media_flags;};/* Additional subhandle for read specific parameters */struct libewf_internal_handle_read{ /* The sectors with CRC errors */ LIBEWF_ERROR_SECTOR *crc_error_sectors; /* The amount of the CRC error sectors */ uint32_t crc_amount_of_errors; /* Value to indicate the write values were initialized */ uint8_t values_initialized;};/* Additional subhandle for write specific parameters */struct libewf_internal_handle_write{ /* The amount of bytes of the input written */ int64_t input_write_count; /* The total amount of bytes written */ int64_t write_count; /* The amount of bytes to write */ uint64_t input_write_size; /* The segment file size */ uint32_t segment_file_size; /* The maximum amount of segments */ int16_t maximum_amount_of_segments; /* The amount of bytes written to a section containing chunks */ int32_t chunks_section_write_count; /* The amount of chunks written */ uint32_t amount_of_chunks; /* The determined (estimated) amount of chunks per segment */ uint32_t chunks_per_segment; /* The determined (estimated) amount of chunks per chunks section */ uint32_t chunks_per_chunks_section; /* The amount of chunks written of the current segment file */ uint32_t segment_amount_of_chunks; /* The amount of chunks written of the current chunks section */ uint32_t section_amount_of_chunks; /* The offset of the chunks section within the current segment file */ off_t chunks_section_offset; /* The current chunks section number */ uint8_t chunks_section_number; /* Value to indicate if empty block should be compressed * even if no compression is used */ uint8_t compress_empty_block; /* Value to indicate if the offset table should not be restricted * to the maximum amount of offsets */ uint8_t unrestrict_offset_amount; /* Value to indicate the write values were initialized */ uint8_t values_initialized; /* Value to indicate a new chunks section should be created */ uint8_t create_chunks_section; /* Value to indicate if the write has been finalized */ uint8_t write_finalized;};LIBEWF_INTERNAL_HANDLE *libewf_internal_handle_alloc( uint16_t segment_amount, uint8_t flags );void libewf_internal_handle_free( LIBEWF_INTERNAL_HANDLE *internal_handle );LIBEWF_INTERNAL_HANDLE_MEDIA *libewf_internal_handle_media_alloc( void );#define libewf_internal_handle_media_free( handle_media ) free( handle_media )LIBEWF_INTERNAL_HANDLE_READ *libewf_internal_handle_read_alloc( void );void libewf_internal_handle_read_free( LIBEWF_INTERNAL_HANDLE_READ *handle_read );LIBEWF_INTERNAL_HANDLE_WRITE *libewf_internal_handle_write_alloc( void );#define libewf_internal_handle_write_free( handle_write ) free( handle_write )LIBEWF_INTERNAL_HANDLE *libewf_internal_handle_chunk_cache_realloc( LIBEWF_INTERNAL_HANDLE *internal_handle, size_t size );int8_t libewf_internal_handle_is_set_header( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_is_set_header2( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_is_set_xheader( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_is_set_xhash( LIBEWF_INTERNAL_HANDLE *internal_handle );int32_t libewf_internal_handle_get_media_sectors_per_chunk( LIBEWF_INTERNAL_HANDLE *internal_handle );int32_t libewf_internal_handle_get_media_bytes_per_sector( LIBEWF_INTERNAL_HANDLE *internal_handle );int32_t libewf_internal_handle_get_media_amount_of_sectors( LIBEWF_INTERNAL_HANDLE *internal_handle );int32_t libewf_internal_handle_get_media_chunk_size( LIBEWF_INTERNAL_HANDLE *internal_handle );int32_t libewf_internal_handle_get_media_error_granularity( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_get_compression_level( LIBEWF_INTERNAL_HANDLE *internal_handle );int64_t libewf_internal_handle_get_media_size( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_get_media_type( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_get_media_flags( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_get_volume_type( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_get_format( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_get_guid( LIBEWF_INTERNAL_HANDLE *internal_handle, uint8_t *guid, size_t size );int64_t libewf_internal_handle_get_write_amount_of_chunks( LIBEWF_INTERNAL_HANDLE *internal_handle );int16_t libewf_internal_handle_get_write_maximum_amount_of_segments( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_get_header_value( LIBEWF_INTERNAL_HANDLE *internal_handle, LIBEWF_CHAR *identifier, LIBEWF_CHAR *value, size_t length );#define libewf_internal_handle_get_header_value_case_number( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "case_number" ), value, length )#define libewf_internal_handle_get_header_value_description( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "description" ), value, length )#define libewf_internal_handle_get_header_value_examiner_name( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "examiner_name" ), value, length )#define libewf_internal_handle_get_header_value_evidence_number( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "evidence_number" ), value, length )#define libewf_internal_handle_get_header_value_notes( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "notes" ), value, length )#define libewf_internal_handle_get_header_value_acquiry_date( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "acquiry_date" ), value, length )#define libewf_internal_handle_get_header_value_system_date( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "system_date" ), value, length )#define libewf_internal_handle_get_header_value_acquiry_operating_system( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "acquiry_operating_system" ), value, length )#define libewf_internal_handle_get_header_value_acquiry_software_version( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "acquiry_software_version" ), value, length )#define libewf_internal_handle_get_header_value_password( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "password" ), value, length )#define libewf_internal_handle_get_header_value_compression_type( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "compression_type" ), value, length )#define libewf_internal_handle_get_header_value_model( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "model" ), value, length )#define libewf_internal_handle_get_header_value_serial_number( handle, value, length ) \ libewf_internal_handle_get_header_value( handle, _S_LIBEWF_CHAR( "serial_number" ), value, length )int8_t libewf_internal_handle_get_hash_value( LIBEWF_INTERNAL_HANDLE *internal_handle, LIBEWF_CHAR *identifier, LIBEWF_CHAR *value, size_t length );int8_t libewf_internal_handle_set_header( LIBEWF_INTERNAL_HANDLE *internal_handle, EWF_HEADER *header, size_t size );int8_t libewf_internal_handle_set_header2( LIBEWF_INTERNAL_HANDLE *internal_handle, EWF_HEADER2 *header2, size_t size );int8_t libewf_internal_handle_set_xheader( LIBEWF_INTERNAL_HANDLE *internal_handle, EWF_HEADER *xheader, size_t size );int8_t libewf_internal_handle_set_xhash( LIBEWF_INTERNAL_HANDLE *internal_handle, EWF_HEADER *xhash, size_t size );int8_t libewf_internal_handle_set_stored_md5_hash( LIBEWF_INTERNAL_HANDLE *internal_handle, EWF_DIGEST_HASH *md5_hash );int8_t libewf_internal_handle_set_media_values( LIBEWF_INTERNAL_HANDLE *internal_handle, uint32_t sectors_per_chunk, uint32_t bytes_per_sector );int8_t libewf_internal_handle_set_guid( LIBEWF_INTERNAL_HANDLE *internal_handle, uint8_t *guid, size_t size );int8_t libewf_internal_handle_set_write_segment_file_size( LIBEWF_INTERNAL_HANDLE *internal_handle, uint32_t segment_file_size );int8_t libewf_internal_handle_set_write_error_granularity( LIBEWF_INTERNAL_HANDLE *internal_handle, uint32_t error_granularity );int8_t libewf_internal_handle_set_write_compression_values( LIBEWF_INTERNAL_HANDLE *internal_handle, int8_t compression_level, uint8_t compress_empty_block );int8_t libewf_internal_handle_set_write_media_type( LIBEWF_INTERNAL_HANDLE *internal_handle, uint8_t media_type, uint8_t volume_type );int8_t libewf_internal_handle_set_write_media_flags( LIBEWF_INTERNAL_HANDLE *internal_handle, uint8_t media_flags );int8_t libewf_internal_handle_set_write_format( LIBEWF_INTERNAL_HANDLE *internal_handle, uint8_t format );int8_t libewf_internal_handle_set_write_input_write_size( LIBEWF_INTERNAL_HANDLE *internal_handle, uint64_t input_write_size );int8_t libewf_internal_handle_set_header_value( LIBEWF_INTERNAL_HANDLE *internal_handle, LIBEWF_CHAR *identifier, LIBEWF_CHAR *value, size_t length );#define libewf_internal_handle_set_header_value_case_number( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "case_number" ), value, length )#define libewf_internal_handle_set_header_value_description( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "description" ), value, length )#define libewf_internal_handle_set_header_value_examiner_name( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "examiner_name" ), value, length )#define libewf_internal_handle_set_header_value_evidence_number( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "evidence_number" ), value, length )#define libewf_internal_handle_set_header_value_notes( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "notes" ), value, length )#define libewf_internal_handle_set_header_value_acquiry_date( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "acquiry_date" ), value, length )#define libewf_internal_handle_set_header_value_system_date( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "system_date" ), value, length )#define libewf_internal_handle_set_header_value_acquiry_operating_system( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "acquiry_operating_system" ), value, length )#define libewf_internal_handle_set_header_value_acquiry_software_version( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "acquiry_software_version" ), value, length )#define libewf_internal_handle_set_header_value_password( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "password" ), value, length )#define libewf_internal_handle_set_header_value_compression_type( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "compression_type" ), value, length )#define libewf_internal_handle_set_header_value_model( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "model" ), value, length )#define libewf_internal_handle_set_header_value_serial_number( handle, value, length ) \ libewf_internal_handle_set_header_value( handle, _S_LIBEWF_CHAR( "serial_number" ), value, length )int8_t libewf_internal_handle_set_hash_value( LIBEWF_INTERNAL_HANDLE *internal_handle, LIBEWF_CHAR *identifier, LIBEWF_CHAR *value, size_t length );int8_t libewf_internal_handle_set_swap_byte_pairs( LIBEWF_INTERNAL_HANDLE *internal_handle, uint8_t swap_byte_pairs );int8_t libewf_internal_handle_add_acquiry_error_sector( LIBEWF_INTERNAL_HANDLE *internal_handle, uint64_t sector, uint32_t amount_of_sectors );int8_t libewf_internal_handle_add_crc_error_chunk( LIBEWF_INTERNAL_HANDLE *internal_handle, uint32_t chunk );int8_t libewf_internal_handle_determine_format( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_create_header_values( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_create_headers( LIBEWF_INTERNAL_HANDLE *internal_handle, LIBEWF_HEADER_VALUES *header_values );int8_t libewf_internal_handle_read_is_initialized( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_read_initialize( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_write_is_initialized( LIBEWF_INTERNAL_HANDLE *internal_handle );int8_t libewf_internal_handle_write_initialize( LIBEWF_INTERNAL_HANDLE *internal_handle );#ifdef __cplusplus}#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -