Man page - libfshfs(3)
Packages contains this manual
Manual
libfshfs (3) Library Functions Manual libfshfs (3)
NAME
libfshfs.h â Library to access the Hierarchical File System (HFS) format
SYNOPSIS
#include <libfshfs.h>
Support functions
const char *
libfshfs_get_version ( void );
int
libfshfs_get_access_flags_read ( void );
int
libfshfs_get_codepage ( int *codepage , libfshfs_error_t **error );
int
libfshfs_set_codepage ( int codepage , libfshfs_error_t **error );
int
libfshfs_check_volume_signature ( const char *filename , libfshfs_error_t **error );
Available when compiled with wide character string support:
int
libfshfs_check_volume_signature_wide ( const wchar_t *filename , libfshfs_error_t **error );
Available when compiled with libbfio support:
int
libfshfs_check_volume_signature_file_io_handle ( libbfio_handle_t *file_io_handle , libfshfs_error_t **error );
Notify functions
void
libfshfs_notify_set_verbose ( int verbose );
int
libfshfs_notify_set_stream ( FILE *stream , libfshfs_error_t **error );
int
libfshfs_notify_stream_open ( const char *filename , libfshfs_error_t **error );
int
libfshfs_notify_stream_close ( libfshfs_error_t **error );
Error functions
void
libfshfs_error_free ( libfshfs_error_t **error );
int
libfshfs_error_fprint ( libfshfs_error_t *error , FILE *stream );
int
libfshfs_error_sprint ( libfshfs_error_t *error , char *string , size_t size );
int
libfshfs_error_backtrace_fprint ( libfshfs_error_t *error , FILE *stream );
int
libfshfs_error_backtrace_sprint ( libfshfs_error_t *error , char *string , size_t size );
Volume functions
int
libfshfs_volume_initialize ( libfshfs_volume_t **volume , libfshfs_error_t **error );
int
libfshfs_volume_free ( libfshfs_volume_t **volume , libfshfs_error_t **error );
int
libfshfs_volume_signal_abort ( libfshfs_volume_t *volume , libfshfs_error_t **error );
int
libfshfs_volume_open ( libfshfs_volume_t *volume , const char *filename , int access_flags , libfshfs_error_t **error );
int
libfshfs_volume_close ( libfshfs_volume_t *volume , libfshfs_error_t **error );
int
libfshfs_volume_get_utf8_name_size ( libfshfs_volume_t *volume , size_t *utf8_string_size , libfshfs_error_t **error );
int
libfshfs_volume_get_utf8_name ( libfshfs_volume_t *volume , uint8_t *utf8_string , size_t utf8_string_size , libfshfs_error_t **error );
int
libfshfs_volume_get_utf16_name_size ( libfshfs_volume_t *volume , size_t *utf16_string_size , libfshfs_error_t **error );
int
libfshfs_volume_get_utf16_name ( libfshfs_volume_t *volume , uint16_t *utf16_string , size_t utf16_string_size , libfshfs_error_t **error );
int
libfshfs_volume_get_root_directory ( libfshfs_volume_t *volume , libfshfs_file_entry_t **file_entry , libfshfs_error_t **error );
int
libfshfs_volume_get_file_entry_by_identifier ( libfshfs_volume_t *volume , uint32_t identifier , libfshfs_file_entry_t **file_entry , libfshfs_error_t **error );
int
libfshfs_volume_get_file_entry_by_utf8_path ( libfshfs_volume_t *volume , const uint8_t *utf8_string , size_t utf8_string_length , libfshfs_file_entry_t **file_entry , libfshfs_error_t **error );
int
libfshfs_volume_get_file_entry_by_utf16_path ( libfshfs_volume_t *volume , const uint16_t *utf16_string , size_t utf16_string_length , libfshfs_file_entry_t **file_entry , libfshfs_error_t **error );
Available when compiled with wide character string support:
int
libfshfs_volume_open_wide ( libfshfs_volume_t *volume , const wchar_t *filename , int access_flags , libfshfs_error_t **error );
Available when compiled with libbfio support:
int
libfshfs_volume_open_file_io_handle ( libfshfs_volume_t *volume , libbfio_handle_t *file_io_handle , int access_flags , libfshfs_error_t **error );
File entry functions
int
libfshfs_file_entry_free ( libfshfs_file_entry_t **file_entry , libfshfs_error_t **error );
int
libfshfs_file_entry_get_identifier ( libfshfs_file_entry_t *file_entry , uint32_t *identifier , libfshfs_error_t **error );
int
libfshfs_file_entry_get_parent_identifier ( libfshfs_file_entry_t *file_entry , uint32_t *parent_identifier , libfshfs_error_t **error );
int
libfshfs_file_entry_get_parent_file_entry ( libfshfs_file_entry_t *file_entry , libfshfs_file_entry_t **parent_file_entry , libfshfs_error_t **error );
int
libfshfs_file_entry_get_link_identifier ( libfshfs_file_entry_t *file_entry , uint32_t *link_identifier , libfshfs_error_t **error );
int
libfshfs_file_entry_get_creation_time ( libfshfs_file_entry_t *file_entry , uint32_t *hfs_time , libfshfs_error_t **error );
int
libfshfs_file_entry_get_modification_time ( libfshfs_file_entry_t *file_entry , uint32_t *hfs_time , libfshfs_error_t **error );
int
libfshfs_file_entry_get_entry_modification_time ( libfshfs_file_entry_t *file_entry , uint32_t *hfs_time , libfshfs_error_t **error );
int
libfshfs_file_entry_get_access_time ( libfshfs_file_entry_t *file_entry , uint32_t *hfs_time , libfshfs_error_t **error );
int
libfshfs_file_entry_get_backup_time ( libfshfs_file_entry_t *file_entry , uint32_t *hfs_time , libfshfs_error_t **error );
int
libfshfs_file_entry_get_added_time ( libfshfs_file_entry_t *file_entry , int32_t *posix_time , libfshfs_error_t **error );
int
libfshfs_file_entry_get_file_mode ( libfshfs_file_entry_t *file_entry , uint16_t *file_mode , libfshfs_error_t **error );
int
libfshfs_file_entry_get_number_of_links ( libfshfs_file_entry_t *file_entry , uint32_t *number_of_links , libfshfs_error_t **error );
int
libfshfs_file_entry_get_owner_identifier ( libfshfs_file_entry_t *file_entry , uint32_t *owner_identifier , libfshfs_error_t **error );
int
libfshfs_file_entry_get_group_identifier ( libfshfs_file_entry_t *file_entry , uint32_t *group_identifier , libfshfs_error_t **error );
int
libfshfs_file_entry_get_device_identifier ( libfshfs_file_entry_t *file_entry , uint32_t *device_identifier , libfshfs_error_t **error );
int
libfshfs_file_entry_get_device_number ( libfshfs_file_entry_t *file_entry , uint32_t *major_device_number , uint32_t *minor_device_number , libfshfs_error_t **error );
int
libfshfs_file_entry_get_utf8_name_size ( libfshfs_file_entry_t *file_entry , size_t *utf8_string_size , libfshfs_error_t **error );
int
libfshfs_file_entry_get_utf8_name ( libfshfs_file_entry_t *file_entry , uint8_t *utf8_string , size_t utf8_string_size , libfshfs_error_t **error );
int
libfshfs_file_entry_get_utf16_name_size ( libfshfs_file_entry_t *file_entry , size_t *utf16_string_size , libfshfs_error_t **error );
int
libfshfs_file_entry_get_utf16_name ( libfshfs_file_entry_t *file_entry , uint16_t *utf16_string , size_t utf16_string_size , libfshfs_error_t **error );
int
libfshfs_file_entry_get_utf8_symbolic_link_target_size ( libfshfs_file_entry_t *file_entry , size_t *utf8_string_size , libfshfs_error_t **error );
int
libfshfs_file_entry_get_utf8_symbolic_link_target ( libfshfs_file_entry_t *file_entry , uint8_t *utf8_string , size_t utf8_string_size , libfshfs_error_t **error );
int
libfshfs_file_entry_get_utf16_symbolic_link_target_size ( libfshfs_file_entry_t *file_entry , size_t *utf16_string_size , libfshfs_error_t **error );
int
libfshfs_file_entry_get_utf16_symbolic_link_target ( libfshfs_file_entry_t *file_entry , uint16_t *utf16_string , size_t utf16_string_size , libfshfs_error_t **error );
int
libfshfs_file_entry_has_resource_fork ( libfshfs_file_entry_t *file_entry , libfshfs_error_t **error );
int
libfshfs_file_entry_get_resource_fork ( libfshfs_file_entry_t *file_entry , libfshfs_data_stream_t **data_stream , libfshfs_error_t **error );
int
libfshfs_file_entry_get_number_of_extended_attributes ( libfshfs_file_entry_t *file_entry , int *number_of_extended_attributes , libfshfs_error_t **error );
int
libfshfs_file_entry_get_extended_attribute_by_index ( libfshfs_file_entry_t *file_entry , int extended_attribute_index , libfshfs_extended_attribute_t **extended_attribute , libfshfs_error_t **error );
int
libfshfs_file_entry_has_extended_attribute_by_utf8_name ( libfshfs_file_entry_t *file_entry , const uint8_t *utf8_string , size_t utf8_string_length , libfshfs_error_t **error );
int
libfshfs_file_entry_has_extended_attribute_by_utf16_name ( libfshfs_file_entry_t *file_entry , const uint16_t *utf16_string , size_t utf16_string_length , libfshfs_error_t **error );
int
libfshfs_file_entry_get_extended_attribute_by_utf8_name ( libfshfs_file_entry_t *file_entry , const uint8_t *utf8_string , size_t utf8_string_length , libfshfs_extended_attribute_t **extended_attribute , libfshfs_error_t **error );
int
libfshfs_file_entry_get_extended_attribute_by_utf16_name ( libfshfs_file_entry_t *file_entry , const uint16_t *utf16_string , size_t utf16_string_length , libfshfs_extended_attribute_t **extended_attribute , libfshfs_error_t **error );
int
libfshfs_file_entry_get_number_of_sub_file_entries ( libfshfs_file_entry_t *file_entry , int *number_of_sub_file_entries , libfshfs_error_t **error );
int
libfshfs_file_entry_get_sub_file_entry_by_index ( libfshfs_file_entry_t *file_entry , int sub_file_entry_index , libfshfs_file_entry_t **sub_file_entry , libfshfs_error_t **error );
int
libfshfs_file_entry_get_sub_file_entry_by_utf8_name ( libfshfs_file_entry_t *file_entry , const uint8_t *utf8_string , size_t utf8_string_length , libfshfs_file_entry_t **sub_file_entry , libfshfs_error_t **error );
int
libfshfs_file_entry_get_sub_file_entry_by_utf16_name ( libfshfs_file_entry_t *file_entry , const uint16_t *utf16_string , size_t utf16_string_length , libfshfs_file_entry_t **sub_file_entry , libfshfs_error_t **error );
ssize_t
libfshfs_file_entry_read_buffer ( libfshfs_file_entry_t *file_entry , void *buffer , size_t buffer_size , libfshfs_error_t **error );
ssize_t
libfshfs_file_entry_read_buffer_at_offset ( libfshfs_file_entry_t *file_entry , void *buffer , size_t buffer_size , off64_t offset , libfshfs_error_t **error );
off64_t
libfshfs_file_entry_seek_offset ( libfshfs_file_entry_t *file_entry , off64_t offset , int whence , libfshfs_error_t **error );
int
libfshfs_file_entry_get_offset ( libfshfs_file_entry_t *file_entry , off64_t *offset , libfshfs_error_t **error );
int
libfshfs_file_entry_get_size ( libfshfs_file_entry_t *file_entry , size64_t *size , libfshfs_error_t **error );
int
libfshfs_file_entry_get_number_of_extents ( libfshfs_file_entry_t *file_entry , int *number_of_extents , libfshfs_error_t **error );
int
libfshfs_file_entry_get_extent_by_index ( libfshfs_file_entry_t *file_entry , int extent_index , off64_t *extent_offset , size64_t *extent_size , uint32_t *extent_flags , libfshfs_error_t **error );
Data stream functions
int
libfshfs_data_stream_free ( libfshfs_data_stream_t **data_stream , libfshfs_error_t **error );
ssize_t
libfshfs_data_stream_read_buffer ( libfshfs_data_stream_t *data_stream , void *buffer , size_t buffer_size , libfshfs_error_t **error );
ssize_t
libfshfs_data_stream_read_buffer_at_offset ( libfshfs_data_stream_t *data_stream , void *buffer , size_t buffer_size , off64_t offset , libfshfs_error_t **error );
off64_t
libfshfs_data_stream_seek_offset ( libfshfs_data_stream_t *data_stream , off64_t offset , int whence , libfshfs_error_t **error );
int
libfshfs_data_stream_get_offset ( libfshfs_data_stream_t *data_stream , off64_t *offset , libfshfs_error_t **error );
int
libfshfs_data_stream_get_size ( libfshfs_data_stream_t *data_stream , size64_t *size , libfshfs_error_t **error );
int
libfshfs_data_stream_get_number_of_extents ( libfshfs_data_stream_t *data_stream , int *number_of_extents , libfshfs_error_t **error );
int
libfshfs_data_stream_get_extent_by_index ( libfshfs_data_stream_t *data_stream , int extent_index , off64_t *extent_offset , size64_t *extent_size , uint32_t *extent_flags , libfshfs_error_t **error );
Extended attribute functions
int
libfshfs_extended_attribute_free ( libfshfs_extended_attribute_t **extended_attribute , libfshfs_error_t **error );
int
libfshfs_extended_attribute_get_utf8_name_size ( libfshfs_extended_attribute_t *extended_attribute , size_t *utf8_string_size , libfshfs_error_t **error );
int
libfshfs_extended_attribute_get_utf8_name ( libfshfs_extended_attribute_t *extended_attribute , uint8_t *utf8_string , size_t utf8_string_size , libfshfs_error_t **error );
int
libfshfs_extended_attribute_get_utf16_name_size ( libfshfs_extended_attribute_t *extended_attribute , size_t *utf16_string_size , libfshfs_error_t **error );
int
libfshfs_extended_attribute_get_utf16_name ( libfshfs_extended_attribute_t *extended_attribute , uint16_t *utf16_string , size_t utf16_string_size , libfshfs_error_t **error );
ssize_t
libfshfs_extended_attribute_read_buffer ( libfshfs_extended_attribute_t *extended_attribute , void *buffer , size_t buffer_size , libfshfs_error_t **error );
ssize_t
libfshfs_extended_attribute_read_buffer_at_offset ( libfshfs_extended_attribute_t *extended_attribute , void *buffer , size_t buffer_size , off64_t offset , libfshfs_error_t **error );
off64_t
libfshfs_extended_attribute_seek_offset ( libfshfs_extended_attribute_t *extended_attribute , off64_t offset , int whence , libfshfs_error_t **error );
int
libfshfs_extended_attribute_get_offset ( libfshfs_extended_attribute_t *extended_attribute , off64_t *offset , libfshfs_error_t **error );
int
libfshfs_extended_attribute_get_size ( libfshfs_extended_attribute_t *extended_attribute , size64_t *size , libfshfs_error_t **error );
int
libfshfs_extended_attribute_get_number_of_extents ( libfshfs_extended_attribute_t *extended_attribute , int *number_of_extents , libfshfs_error_t **error );
int
libfshfs_extended_attribute_get_extent_by_index ( libfshfs_extended_attribute_t *extended_attribute , int extent_index , off64_t *extent_offset , size64_t *extent_size , uint32_t *extent_flags , libfshfs_error_t **error );
DESCRIPTION
The libfshfs_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 "libfshfs.h".
ENVIRONMENT
None
FILES
None
NOTES
libfshfs can be compiled with wide character support (wchar_t).
To compile
libfshfs with wide character support use:
./configure
--enable-wide-character-type=yes
or define:
_UNICODE
or
UNICODE
during compilation.
LIBFSHFS_WIDE_CHARACTER_TYPE
in libfshfs/features.h can be used to determine if libfshfs
was compiled with wide character support.
BUGS
Please report bugs of any kind on the project issue tracker: https://github.com/libyal/libfshfs/issues
AUTHOR
These man pages are generated from "libfshfs.h".
COPYRIGHT
Copyright (C) 2009-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 libfshfs.h include file libfshfs August 31, 2022 libfshfs (3)