#include<libfwsi.h>
Support functions
constchar*libfwsi_get_version(void);
Notify functions
voidlibfwsi_notify_set_verbose(intverbose);
intlibfwsi_notify_set_stream(FILE*stream, libfwsi_error_t**error);
intlibfwsi_notify_stream_open(constchar*filename, libfwsi_error_t**error);
intlibfwsi_notify_stream_close(libfwsi_error_t**error);
Error functions
voidlibfwsi_error_free(libfwsi_error_t**error);
intlibfwsi_error_fprint(libfwsi_error_t*error, FILE*stream);
intlibfwsi_error_sprint(libfwsi_error_t*error, char*string, size_tsize);
intlibfwsi_error_backtrace_fprint(libfwsi_error_t*error, FILE*stream);
intlibfwsi_error_backtrace_sprint(libfwsi_error_t*error, char*string, size_tsize);
Item list functions
intlibfwsi_item_list_initialize(libfwsi_item_list_t**item_list, libfwsi_error_t**error);
intlibfwsi_item_list_free(libfwsi_item_list_t**item_list, libfwsi_error_t**error);
intlibfwsi_item_list_copy_from_byte_stream(libfwsi_item_list_t*item_list, constuint8_t*byte_stream,
size_tbyte_stream_size, intascii_codepage, libfwsi_error_t**error);
intlibfwsi_item_list_get_data_size(libfwsi_item_list_t*item_list, size_t*data_size,
libfwsi_error_t**error);
intlibfwsi_item_list_get_number_of_items(libfwsi_item_list_t*item_list, int*number_of_items,
libfwsi_error_t**error);
intlibfwsi_item_list_get_item(libfwsi_item_list_t*item_list, intitem_index, libfwsi_item_t**item,
libfwsi_error_t**error);
Item functions
intlibfwsi_item_initialize(libfwsi_item_t**item, libfwsi_error_t**error);
intlibfwsi_item_free(libfwsi_item_t**item, libfwsi_error_t**error);
intlibfwsi_item_copy_from_byte_stream(libfwsi_item_t*item, constuint8_t*byte_stream,
size_tbyte_stream_size, intascii_codepage, libfwsi_error_t**error);
intlibfwsi_item_get_type(libfwsi_item_t*item, int*type, libfwsi_error_t**error);
intlibfwsi_item_get_class_type(libfwsi_item_t*item, uint8_t*class_type, libfwsi_error_t**error);
intlibfwsi_item_get_signature(libfwsi_item_t*item, uint32_t*signature, libfwsi_error_t**error);
intlibfwsi_item_get_data_size(libfwsi_item_t*item, size_t*data_size, libfwsi_error_t**error);
intlibfwsi_item_get_delegate_folder_identifier(libfwsi_item_t*item, uint8_t*guid_data,
size_tguid_data_size, libfwsi_error_t**error);
intlibfwsi_item_get_number_of_extension_blocks(libfwsi_item_t*item, int*number_of_extension_blocks,
libfwsi_error_t**error);
intlibfwsi_item_get_extension_block(libfwsi_item_t*item, intextension_block_index,
libfwsi_extension_block_t**extension_block, libfwsi_error_t**error);
Root folder item functions
intlibfwsi_root_folder_get_shell_folder_identifier(libfwsi_item_t*root_folder, uint8_t*guid_data,
size_tguid_data_size, libfwsi_error_t**error);
Volume item functions
intlibfwsi_volume_get_utf8_name_size(libfwsi_item_t*volume, size_t*utf8_string_size,
libfwsi_error_t**error);
intlibfwsi_volume_get_utf8_name(libfwsi_item_t*volume, uint8_t*utf8_string, size_tutf8_string_size,
libfwsi_error_t**error);
intlibfwsi_volume_get_utf16_name_size(libfwsi_item_t*volume, size_t*utf16_string_size,
libfwsi_error_t**error);
intlibfwsi_volume_get_utf16_name(libfwsi_item_t*volume, uint16_t*utf16_string, size_tutf16_string_size,
libfwsi_error_t**error);
intlibfwsi_volume_get_identifier(libfwsi_item_t*volume, uint8_t*guid_data, size_tguid_data_size,
libfwsi_error_t**error);
intlibfwsi_volume_get_shell_folder_identifier(libfwsi_item_t*volume, uint8_t*guid_data,
size_tguid_data_size, libfwsi_error_t**error);
File entry item functions
intlibfwsi_file_entry_get_file_size(libfwsi_item_t*file_entry, uint32_t*file_size,
libfwsi_error_t**error);
intlibfwsi_file_entry_get_modification_time(libfwsi_item_t*file_entry, uint32_t*fat_date_time,
libfwsi_error_t**error);
intlibfwsi_file_entry_get_file_attribute_flags(libfwsi_item_t*file_entry, uint32_t*file_attribute_flags,
libfwsi_error_t**error);
intlibfwsi_file_entry_get_utf8_name_size(libfwsi_item_t*file_entry, size_t*utf8_string_size,
libfwsi_error_t**error);
intlibfwsi_file_entry_get_utf8_name(libfwsi_item_t*file_entry, uint8_t*utf8_string,
size_tutf8_string_size, libfwsi_error_t**error);
intlibfwsi_file_entry_get_utf16_name_size(libfwsi_item_t*file_entry, size_t*utf16_string_size,
libfwsi_error_t**error);
intlibfwsi_file_entry_get_utf16_name(libfwsi_item_t*file_entry, uint16_t*utf16_string,
size_tutf16_string_size, libfwsi_error_t**error);
Network location item functions
intlibfwsi_network_location_get_utf8_location_size(libfwsi_item_t*network_location,
size_t*utf8_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf8_location(libfwsi_item_t*network_location, uint8_t*utf8_string,
size_tutf8_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf16_location_size(libfwsi_item_t*network_location,
size_t*utf16_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf16_location(libfwsi_item_t*network_location, uint16_t*utf16_string,
size_tutf16_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf8_description_size(libfwsi_item_t*network_location,
size_t*utf8_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf8_description(libfwsi_item_t*network_location, uint8_t*utf8_string,
size_tutf8_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf16_description_size(libfwsi_item_t*network_location,
size_t*utf16_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf16_description(libfwsi_item_t*network_location, uint16_t*utf16_string,
size_tutf16_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf8_comments_size(libfwsi_item_t*network_location,
size_t*utf8_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf8_comments(libfwsi_item_t*network_location, uint8_t*utf8_string,
size_tutf8_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf16_comments_size(libfwsi_item_t*network_location,
size_t*utf16_string_size, libfwsi_error_t**error);
intlibfwsi_network_location_get_utf16_comments(libfwsi_item_t*network_location, uint16_t*utf16_string,
size_tutf16_string_size, libfwsi_error_t**error);
Compressed folder functions
intlibfwsi_compressed_folder_get_utf8_name_size(libfwsi_item_t*compressed_folder, size_t*utf8_string_size,
libfwsi_error_t**error);
intlibfwsi_compressed_folder_get_utf8_name(libfwsi_item_t*compressed_folder, uint8_t*utf8_string,
size_tutf8_string_size, libfwsi_error_t**error);
intlibfwsi_compressed_folder_get_utf16_name_size(libfwsi_item_t*compressed_folder,
size_t*utf16_string_size, libfwsi_error_t**error);
intlibfwsi_compressed_folder_get_utf16_name(libfwsi_item_t*compressed_folder, uint16_t*utf16_string,
size_tutf16_string_size, libfwsi_error_t**error);
Control panel category functions
intlibfwsi_control_panel_category_get_identifier(libfwsi_item_t*control_panel_category,
uint32_t*identifier, libfwsi_error_t**error);
Control panel item functions
intlibfwsi_control_panel_item_get_identifier(libfwsi_item_t*control_panel_item, uint8_t*guid_data,
size_tguid_data_size, libfwsi_error_t**error);
Users property view functions
intlibfwsi_users_property_view_get_known_folder_identifier(libfwsi_item_t*users_property_view,
uint8_t*guid_data, size_tguid_data_size, libfwsi_error_t**error);
intlibfwsi_users_property_view_get_property_store_data_size(libfwsi_item_t*users_property_view,
size_t*data_size, libfwsi_error_t**error);
intlibfwsi_users_property_view_copy_property_store_data(libfwsi_item_t*users_property_view, uint8_t*data,
size_tdata_size, libfwsi_error_t**error);
Extension block functions
intlibfwsi_extension_block_free(libfwsi_extension_block_t**extension_block, libfwsi_error_t**error);
intlibfwsi_extension_block_get_signature(libfwsi_extension_block_t*extension_block, uint32_t*signature,
libfwsi_error_t**error);
intlibfwsi_extension_block_get_data_size(libfwsi_extension_block_t*extension_block, size_t*data_size,
libfwsi_error_t**error);
File entry extension functions
intlibfwsi_file_entry_extension_get_creation_time(libfwsi_extension_block_t*file_entry_extension,
uint32_t*fat_date_time, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_access_time(libfwsi_extension_block_t*file_entry_extension,
uint32_t*fat_date_time, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_file_reference(libfwsi_extension_block_t*file_entry_extension,
uint64_t*file_reference, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_utf8_long_name_size(libfwsi_extension_block_t*file_entry_extension,
size_t*utf8_string_size, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_utf8_long_name(libfwsi_extension_block_t*file_entry_extension,
uint8_t*utf8_string, size_tutf8_string_size, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_utf16_long_name_size(libfwsi_extension_block_t*file_entry_extension,
size_t*utf16_string_size, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_utf16_long_name(libfwsi_extension_block_t*file_entry_extension,
uint16_t*utf16_string, size_tutf16_string_size, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_utf8_localized_name_size(libfwsi_extension_block_t*file_entry_extension,
size_t*utf8_string_size, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_utf8_localized_name(libfwsi_extension_block_t*file_entry_extension,
uint8_t*utf8_string, size_tutf8_string_size, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_utf16_localized_name_size(libfwsi_extension_block_t*file_entry_extension,
size_t*utf16_string_size, libfwsi_error_t**error);
intlibfwsi_file_entry_extension_get_utf16_localized_name(libfwsi_extension_block_t*file_entry_extension,
uint16_t*utf16_string, size_tutf16_string_size, libfwsi_error_t**error);
Shell folder identifier functions
constchar*libfwsi_shell_folder_identifier_get_name(constuint8_t*shell_folder_identifier);