#include<libvmdk.h>
Support functions
constchar*libvmdk_get_version(void);
intlibvmdk_get_access_flags_read(void);
intlibvmdk_get_codepage(int*codepage, libvmdk_error_t**error);
intlibvmdk_set_codepage(intcodepage, libvmdk_error_t**error);
intlibvmdk_check_file_signature(constchar*filename, libvmdk_error_t**error);
Available when compiled with wide character string support:
intlibvmdk_check_file_signature_wide(constwchar_t*filename, libvmdk_error_t**error);
Available when compiled with libbfio support:
intlibvmdk_check_file_signature_file_io_handle(libbfio_handle_t*file_io_handle, libvmdk_error_t**error);
Notify functions
voidlibvmdk_notify_set_verbose(intverbose);
intlibvmdk_notify_set_stream(FILE*stream, libvmdk_error_t**error);
intlibvmdk_notify_stream_open(constchar*filename, libvmdk_error_t**error);
intlibvmdk_notify_stream_close(libvmdk_error_t**error);
Error functions
voidlibvmdk_error_free(libvmdk_error_t**error);
intlibvmdk_error_fprint(libvmdk_error_t*error, FILE*stream);
intlibvmdk_error_sprint(libvmdk_error_t*error, char*string, size_tsize);
intlibvmdk_error_backtrace_fprint(libvmdk_error_t*error, FILE*stream);
intlibvmdk_error_backtrace_sprint(libvmdk_error_t*error, char*string, size_tsize);
Handle functions
intlibvmdk_handle_initialize(libvmdk_handle_t**handle, libvmdk_error_t**error);
intlibvmdk_handle_free(libvmdk_handle_t**handle, libvmdk_error_t**error);
intlibvmdk_handle_signal_abort(libvmdk_handle_t*handle, libvmdk_error_t**error);
intlibvmdk_handle_open(libvmdk_handle_t*handle, constchar*filename, intaccess_flags,
libvmdk_error_t**error);
intlibvmdk_handle_open_extent_data_files(libvmdk_handle_t*handle, libvmdk_error_t**error);
intlibvmdk_handle_close(libvmdk_handle_t*handle, libvmdk_error_t**error);
ssize_tlibvmdk_handle_read_buffer(libvmdk_handle_t*handle, void*buffer, size_tbuffer_size,
libvmdk_error_t**error);
ssize_tlibvmdk_handle_read_buffer_at_offset(libvmdk_handle_t*handle, void*buffer, size_tbuffer_size,
off64_toffset, libvmdk_error_t**error);
off64_tlibvmdk_handle_seek_offset(libvmdk_handle_t*handle, off64_toffset, intwhence,
libvmdk_error_t**error);
intlibvmdk_handle_get_offset(libvmdk_handle_t*handle, off64_t*offset, libvmdk_error_t**error);
intlibvmdk_handle_set_maximum_number_of_open_handles(libvmdk_handle_t*handle,
intmaximum_number_of_open_handles, libvmdk_error_t**error);
intlibvmdk_handle_set_parent_handle(libvmdk_handle_t*handle, libvmdk_handle_t*parent_handle,
libvmdk_error_t**error);
intlibvmdk_handle_set_extent_data_files_path(libvmdk_handle_t*handle, constchar*path, size_tpath_length,
libvmdk_error_t**error);
Available when compiled with wide character string support:
intlibvmdk_handle_open_wide(libvmdk_handle_t*handle, constwchar_t*filename, intaccess_flags,
libvmdk_error_t**error);
intlibvmdk_handle_set_extent_data_files_path_wide(libvmdk_handle_t*handle, constwchar_t*path,
size_tpath_length, libvmdk_error_t**error);
Available when compiled with libbfio support:
intlibvmdk_handle_open_file_io_handle(libvmdk_handle_t*handle, libbfio_handle_t*file_io_handle,
intaccess_flags, libvmdk_error_t**error);
intlibvmdk_handle_open_extent_data_files_file_io_pool(libvmdk_handle_t*handle,
libbfio_pool_t*file_io_pool, libvmdk_error_t**error);
Meta data functions
intlibvmdk_handle_get_disk_type(libvmdk_handle_t*handle, int*disk_type, libvmdk_error_t**error);
intlibvmdk_handle_get_media_size(libvmdk_handle_t*handle, size64_t*media_size, libvmdk_error_t**error);
intlibvmdk_handle_get_content_identifier(libvmdk_handle_t*handle, uint32_t*content_identifier,
libvmdk_error_t**error);
intlibvmdk_handle_get_parent_content_identifier(libvmdk_handle_t*handle,
uint32_t*parent_content_identifier, libvmdk_error_t**error);
intlibvmdk_handle_get_utf8_parent_filename_size(libvmdk_handle_t*handle, size_t*utf8_string_size,
libvmdk_error_t**error);
intlibvmdk_handle_get_utf8_parent_filename(libvmdk_handle_t*handle, uint8_t*utf8_string,
size_tutf8_string_size, libvmdk_error_t**error);
intlibvmdk_handle_get_utf16_parent_filename_size(libvmdk_handle_t*handle, size_t*utf16_string_size,
libvmdk_error_t**error);
intlibvmdk_handle_get_utf16_parent_filename(libvmdk_handle_t*handle, uint16_t*utf16_string,
size_tutf16_string_size, libvmdk_error_t**error);
intlibvmdk_handle_get_number_of_extents(libvmdk_handle_t*handle, int*number_of_extents,
libvmdk_error_t**error);
intlibvmdk_handle_get_extent_descriptor(libvmdk_handle_t*handle, intextent_index,
libvmdk_extent_descriptor_t**extent_descriptor, libvmdk_error_t**error);
Extent descriptor functions
intlibvmdk_extent_descriptor_free(libvmdk_extent_descriptor_t**extent_descriptor, libvmdk_error_t**error);
intlibvmdk_extent_descriptor_get_type(libvmdk_extent_descriptor_t*extent_descriptor, int*type,
libvmdk_error_t**error);
intlibvmdk_extent_descriptor_get_range(libvmdk_extent_descriptor_t*extent_descriptor, off64_t*offset,
size64_t*size, libvmdk_error_t**error);
intlibvmdk_extent_descriptor_get_utf8_filename_size(libvmdk_extent_descriptor_t*extent_descriptor,
size_t*utf8_string_size, libvmdk_error_t**error);
intlibvmdk_extent_descriptor_get_utf8_filename(libvmdk_extent_descriptor_t*extent_descriptor,
uint8_t*utf8_string, size_tutf8_string_size, libvmdk_error_t**error);
intlibvmdk_extent_descriptor_get_utf16_filename_size(libvmdk_extent_descriptor_t*extent_descriptor,
size_t*utf16_string_size, libvmdk_error_t**error);
intlibvmdk_extent_descriptor_get_utf16_filename(libvmdk_extent_descriptor_t*extent_descriptor,
uint16_t*utf16_string, size_tutf16_string_size, libvmdk_error_t**error);