Man page - libfwsi(3)

Packages contains this manual

Manual


libfwsi (3) Library Functions Manual libfwsi (3)

NAME

libfwsi.h — Library to access the Windows Shell Item format

SYNOPSIS

#include <libfwsi.h>

Support functions

const char *

libfwsi_get_version ( void );

Notify functions

void

libfwsi_notify_set_verbose ( int verbose );

int

libfwsi_notify_set_stream ( FILE *stream , libfwsi_error_t **error );

int

libfwsi_notify_stream_open ( const char *filename , libfwsi_error_t **error );

int

libfwsi_notify_stream_close ( libfwsi_error_t **error );

Error functions

void

libfwsi_error_free ( libfwsi_error_t **error );

int

libfwsi_error_fprint ( libfwsi_error_t *error , FILE *stream );

int

libfwsi_error_sprint ( libfwsi_error_t *error , char *string , size_t size );

int

libfwsi_error_backtrace_fprint ( libfwsi_error_t *error , FILE *stream );

int

libfwsi_error_backtrace_sprint ( libfwsi_error_t *error , char *string , size_t size );

Item list functions

int

libfwsi_item_list_initialize ( libfwsi_item_list_t **item_list , libfwsi_error_t **error );

int

libfwsi_item_list_free ( libfwsi_item_list_t **item_list , libfwsi_error_t **error );

int

libfwsi_item_list_copy_from_byte_stream ( libfwsi_item_list_t *item_list , const uint8_t *byte_stream , size_t byte_stream_size , int ascii_codepage , libfwsi_error_t **error );

int

libfwsi_item_list_get_data_size ( libfwsi_item_list_t *item_list , size_t *data_size , libfwsi_error_t **error );

int

libfwsi_item_list_get_number_of_items ( libfwsi_item_list_t *item_list , int *number_of_items , libfwsi_error_t **error );

int

libfwsi_item_list_get_item ( libfwsi_item_list_t *item_list , int item_index , libfwsi_item_t **item , libfwsi_error_t **error );

Item functions

int

libfwsi_item_initialize ( libfwsi_item_t **item , libfwsi_error_t **error );

int

libfwsi_item_free ( libfwsi_item_t **item , libfwsi_error_t **error );

int

libfwsi_item_copy_from_byte_stream ( libfwsi_item_t *item , const uint8_t *byte_stream , size_t byte_stream_size , int ascii_codepage , libfwsi_error_t **error );

int

libfwsi_item_get_type ( libfwsi_item_t *item , int *type , libfwsi_error_t **error );

int

libfwsi_item_get_class_type ( libfwsi_item_t *item , uint8_t *class_type , libfwsi_error_t **error );

int

libfwsi_item_get_signature ( libfwsi_item_t *item , uint32_t *signature , libfwsi_error_t **error );

int

libfwsi_item_get_data_size ( libfwsi_item_t *item , size_t *data_size , libfwsi_error_t **error );

int

libfwsi_item_get_delegate_folder_identifier ( libfwsi_item_t *item , uint8_t *guid_data , size_t guid_data_size , libfwsi_error_t **error );

int

libfwsi_item_get_number_of_extension_blocks ( libfwsi_item_t *item , int *number_of_extension_blocks , libfwsi_error_t **error );

int

libfwsi_item_get_extension_block ( libfwsi_item_t *item , int extension_block_index , libfwsi_extension_block_t **extension_block , libfwsi_error_t **error );

Root folder item functions

int

libfwsi_root_folder_get_shell_folder_identifier ( libfwsi_item_t *root_folder , uint8_t *guid_data , size_t guid_data_size , libfwsi_error_t **error );

Volume item functions

int

libfwsi_volume_get_utf8_name_size ( libfwsi_item_t *volume , size_t *utf8_string_size , libfwsi_error_t **error );

int

libfwsi_volume_get_utf8_name ( libfwsi_item_t *volume , uint8_t *utf8_string , size_t utf8_string_size , libfwsi_error_t **error );

int

libfwsi_volume_get_utf16_name_size ( libfwsi_item_t *volume , size_t *utf16_string_size , libfwsi_error_t **error );

int

libfwsi_volume_get_utf16_name ( libfwsi_item_t *volume , uint16_t *utf16_string , size_t utf16_string_size , libfwsi_error_t **error );

int

libfwsi_volume_get_identifier ( libfwsi_item_t *volume , uint8_t *guid_data , size_t guid_data_size , libfwsi_error_t **error );

int

libfwsi_volume_get_shell_folder_identifier ( libfwsi_item_t *volume , uint8_t *guid_data , size_t guid_data_size , libfwsi_error_t **error );

File entry item functions

int

libfwsi_file_entry_get_file_size ( libfwsi_item_t *file_entry , uint32_t *file_size , libfwsi_error_t **error );

int

libfwsi_file_entry_get_modification_time ( libfwsi_item_t *file_entry , uint32_t *fat_date_time , libfwsi_error_t **error );

int

libfwsi_file_entry_get_file_attribute_flags ( libfwsi_item_t *file_entry , uint32_t *file_attribute_flags , libfwsi_error_t **error );

int

libfwsi_file_entry_get_utf8_name_size ( libfwsi_item_t *file_entry , size_t *utf8_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_get_utf8_name ( libfwsi_item_t *file_entry , uint8_t *utf8_string , size_t utf8_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_get_utf16_name_size ( libfwsi_item_t *file_entry , size_t *utf16_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_get_utf16_name ( libfwsi_item_t *file_entry , uint16_t *utf16_string , size_t utf16_string_size , libfwsi_error_t **error );

Network location item functions

int

libfwsi_network_location_get_utf8_location_size ( libfwsi_item_t *network_location , size_t *utf8_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf8_location ( libfwsi_item_t *network_location , uint8_t *utf8_string , size_t utf8_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf16_location_size ( libfwsi_item_t *network_location , size_t *utf16_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf16_location ( libfwsi_item_t *network_location , uint16_t *utf16_string , size_t utf16_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf8_description_size ( libfwsi_item_t *network_location , size_t *utf8_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf8_description ( libfwsi_item_t *network_location , uint8_t *utf8_string , size_t utf8_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf16_description_size ( libfwsi_item_t *network_location , size_t *utf16_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf16_description ( libfwsi_item_t *network_location , uint16_t *utf16_string , size_t utf16_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf8_comments_size ( libfwsi_item_t *network_location , size_t *utf8_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf8_comments ( libfwsi_item_t *network_location , uint8_t *utf8_string , size_t utf8_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf16_comments_size ( libfwsi_item_t *network_location , size_t *utf16_string_size , libfwsi_error_t **error );

int

libfwsi_network_location_get_utf16_comments ( libfwsi_item_t *network_location , uint16_t *utf16_string , size_t utf16_string_size , libfwsi_error_t **error );

Compressed folder functions

int

libfwsi_compressed_folder_get_utf8_name_size ( libfwsi_item_t *compressed_folder , size_t *utf8_string_size , libfwsi_error_t **error );

int

libfwsi_compressed_folder_get_utf8_name ( libfwsi_item_t *compressed_folder , uint8_t *utf8_string , size_t utf8_string_size , libfwsi_error_t **error );

int

libfwsi_compressed_folder_get_utf16_name_size ( libfwsi_item_t *compressed_folder , size_t *utf16_string_size , libfwsi_error_t **error );

int

libfwsi_compressed_folder_get_utf16_name ( libfwsi_item_t *compressed_folder , uint16_t *utf16_string , size_t utf16_string_size , libfwsi_error_t **error );

Control panel category functions

int

libfwsi_control_panel_category_get_identifier ( libfwsi_item_t *control_panel_category , uint32_t *identifier , libfwsi_error_t **error );

Control panel item functions

int

libfwsi_control_panel_item_get_identifier ( libfwsi_item_t *control_panel_item , uint8_t *guid_data , size_t guid_data_size , libfwsi_error_t **error );

Users property view functions

int

libfwsi_users_property_view_get_known_folder_identifier ( libfwsi_item_t *users_property_view , uint8_t *guid_data , size_t guid_data_size , libfwsi_error_t **error );

int

libfwsi_users_property_view_get_property_store_data_size ( libfwsi_item_t *users_property_view , size_t *data_size , libfwsi_error_t **error );

int

libfwsi_users_property_view_copy_property_store_data ( libfwsi_item_t *users_property_view , uint8_t *data , size_t data_size , libfwsi_error_t **error );

Extension block functions

int

libfwsi_extension_block_free ( libfwsi_extension_block_t **extension_block , libfwsi_error_t **error );

int

libfwsi_extension_block_get_signature ( libfwsi_extension_block_t *extension_block , uint32_t *signature , libfwsi_error_t **error );

int

libfwsi_extension_block_get_data_size ( libfwsi_extension_block_t *extension_block , size_t *data_size , libfwsi_error_t **error );

File entry extension functions

int

libfwsi_file_entry_extension_get_creation_time ( libfwsi_extension_block_t *file_entry_extension , uint32_t *fat_date_time , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_access_time ( libfwsi_extension_block_t *file_entry_extension , uint32_t *fat_date_time , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_file_reference ( libfwsi_extension_block_t *file_entry_extension , uint64_t *file_reference , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_utf8_long_name_size ( libfwsi_extension_block_t *file_entry_extension , size_t *utf8_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_utf8_long_name ( libfwsi_extension_block_t *file_entry_extension , uint8_t *utf8_string , size_t utf8_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_utf16_long_name_size ( libfwsi_extension_block_t *file_entry_extension , size_t *utf16_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_utf16_long_name ( libfwsi_extension_block_t *file_entry_extension , uint16_t *utf16_string , size_t utf16_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_utf8_localized_name_size ( libfwsi_extension_block_t *file_entry_extension , size_t *utf8_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_utf8_localized_name ( libfwsi_extension_block_t *file_entry_extension , uint8_t *utf8_string , size_t utf8_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_utf16_localized_name_size ( libfwsi_extension_block_t *file_entry_extension , size_t *utf16_string_size , libfwsi_error_t **error );

int

libfwsi_file_entry_extension_get_utf16_localized_name ( libfwsi_extension_block_t *file_entry_extension , uint16_t *utf16_string , size_t utf16_string_size , libfwsi_error_t **error );

Shell folder identifier functions

const char *

libfwsi_shell_folder_identifier_get_name ( const uint8_t*shell_folder_identifier );

DESCRIPTION

The libfwsi_get_version () function is used to retrieve the library version.

RETURN VALUES

Most of the functions return NULL or -1 on error, dependent on the return type. For the actual return values see "libfwsi.h".

ENVIRONMENT

None

FILES

None

BUGS

Please report bugs of any kind on the project issue tracker: https://github.com/libyal/libfwsi/issues

AUTHOR

These man pages are generated from "libfwsi.h".

COPYRIGHT

Copyright (C) 2010-2024, Joachim Metz <joachim.metz@gmail.com>.

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO

the libfwsi.h include file libfwsi April 17, 2024 libfwsi (3)