Provided by: libphdi-dev_0~20240508-2build1_amd64 bug

NAME

       libphdi.h — Library to access the Parallels Hard Disk image (PHDI) format

SYNOPSIS

       #include <libphdi.h>

       Support functions

       const char *
       libphdi_get_version(void);

       int
       libphdi_get_access_flags_read(void);

       int
       libphdi_get_access_flags_read_write(void);

       int
       libphdi_get_access_flags_write(void);

       int
       libphdi_get_codepage(int *codepage, libphdi_error_t **error);

       int
       libphdi_set_codepage(int codepage, libphdi_error_t **error);

       int
       libphdi_check_file_signature(const char *filename, libphdi_error_t **error);

       Available when compiled with wide character string support:

       int
       libphdi_check_file_signature_wide(const wchar_t *filename, libphdi_error_t **error);

       Available when compiled with libbfio support:

       int
       libphdi_check_file_signature_file_io_handle(libbfio_handle_t *file_io_handle, libphdi_error_t **error);

       Notify functions

       void
       libphdi_notify_set_verbose(int verbose);

       int
       libphdi_notify_set_stream(FILE *stream, libphdi_error_t **error);

       int
       libphdi_notify_stream_open(const char *filename, libphdi_error_t **error);

       int
       libphdi_notify_stream_close(libphdi_error_t **error);

       Error functions

       void
       libphdi_error_free(libphdi_error_t **error);

       int
       libphdi_error_fprint(libphdi_error_t *error, FILE *stream);

       int
       libphdi_error_sprint(libphdi_error_t *error, char *string, size_t size);

       int
       libphdi_error_backtrace_fprint(libphdi_error_t *error, FILE *stream);

       int
       libphdi_error_backtrace_sprint(libphdi_error_t *error, char *string, size_t size);

       Handle functions

       int
       libphdi_handle_initialize(libphdi_handle_t **handle, libphdi_error_t **error);

       int
       libphdi_handle_free(libphdi_handle_t **handle, libphdi_error_t **error);

       int
       libphdi_handle_signal_abort(libphdi_handle_t *handle, libphdi_error_t **error);

       int
       libphdi_handle_open(libphdi_handle_t     *handle,     const    char    *filename,    int    access_flags,
           libphdi_error_t **error);

       int
       libphdi_handle_open_extent_data_files(libphdi_handle_t *handle, libphdi_error_t **error);

       int
       libphdi_handle_close(libphdi_handle_t *handle, libphdi_error_t **error);

       ssize_t
       libphdi_handle_read_buffer(libphdi_handle_t    *handle,     void     *buffer,     size_t     buffer_size,
           libphdi_error_t **error);

       ssize_t
       libphdi_handle_read_buffer_at_offset(libphdi_handle_t   *handle,   void   *buffer,   size_t  buffer_size,
           off64_t offset, libphdi_error_t **error);

       off64_t
       libphdi_handle_seek_offset(libphdi_handle_t      *handle,      off64_t      offset,      int      whence,
           libphdi_error_t **error);

       int
       libphdi_handle_get_offset(libphdi_handle_t *handle, off64_t *offset, libphdi_error_t **error);

       int
       libphdi_handle_set_maximum_number_of_open_handles(libphdi_handle_t                               *handle,
           int maximum_number_of_open_handles, libphdi_error_t **error);

       int
       libphdi_handle_set_extent_data_files_path(libphdi_handle_t *handle, const char *path, size_t path_length,
           libphdi_error_t **error);

       int
       libphdi_handle_get_media_size(libphdi_handle_t *handle, size64_t *media_size, libphdi_error_t **error);

       int
       libphdi_handle_get_utf8_name_size(libphdi_handle_t       *handle,        size_t        *utf8_string_size,
           libphdi_error_t **error);

       int
       libphdi_handle_get_utf8_name(libphdi_handle_t  *handle,  uint8_t  *utf8_string,  size_t utf8_string_size,
           libphdi_error_t **error);

       int
       libphdi_handle_get_utf16_name_size(libphdi_handle_t       *handle,       size_t       *utf16_string_size,
           libphdi_error_t **error);

       int
       libphdi_handle_get_utf16_name(libphdi_handle_t *handle, uint16_t *utf16_string, size_t utf16_string_size,
           libphdi_error_t **error);

       int
       libphdi_handle_get_number_of_extents(libphdi_handle_t        *handle,       int       *number_of_extents,
           libphdi_error_t **error);

       int
       libphdi_handle_get_extent_descriptor_by_index(libphdi_handle_t      *handle,      int       extent_index,
           libphdi_extent_descriptor_t **extent_descriptor, libphdi_error_t **error);

       int
       libphdi_handle_get_number_of_snapshots(libphdi_handle_t      *handle,      int      *number_of_snapshots,
           libphdi_error_t **error);

       int
       libphdi_handle_get_snapshot_by_index(libphdi_handle_t        *handle,         int         snapshot_index,
           libphdi_snapshot_t **snapshot, libphdi_error_t **error);

       Available when compiled with wide character string support:

       int
       libphdi_handle_open_wide(libphdi_handle_t   *handle,   const   wchar_t   *filename,   int   access_flags,
           libphdi_error_t **error);

       int
       libphdi_handle_set_extent_data_files_path_wide(libphdi_handle_t    *handle,    const    wchar_t    *path,
           size_t path_length, libphdi_error_t **error);

       Available when compiled with libbfio support:

       int
       libphdi_handle_open_file_io_handle(libphdi_handle_t     *handle,     libbfio_handle_t    *file_io_handle,
           int access_flags, libphdi_error_t **error);

       int
       libphdi_handle_open_extent_data_files_file_io_pool(libphdi_handle_t                              *handle,
           libbfio_pool_t *file_io_pool, libphdi_error_t **error);

       Extent descriptor functions

       int
       libphdi_extent_descriptor_free(libphdi_extent_descriptor_t **extent_descriptor, libphdi_error_t **error);

       int
       libphdi_extent_descriptor_get_range(libphdi_extent_descriptor_t   *extent_descriptor,   off64_t  *offset,
           size64_t *size, libphdi_error_t **error);

       int
       libphdi_extent_descriptor_get_number_of_images(libphdi_extent_descriptor_t            *extent_descriptor,
           int *number_of_images, libphdi_error_t **error);

       int
       libphdi_extent_descriptor_get_image_descriptor_by_index(libphdi_extent_descriptor_t   *extent_descriptor,
           int image_index, libphdi_image_descriptor_t **image_descriptor, libphdi_error_t **error);

       Image descriptor functions

       int
       libphdi_image_descriptor_free(libphdi_image_descriptor_t **image_descriptor, libphdi_error_t **error);

       int
       libphdi_image_descriptor_get_type(libphdi_image_descriptor_t      *image_descriptor,      int      *type,
           libphdi_error_t **error);

       int
       libphdi_image_descriptor_get_utf8_filename_size(libphdi_image_descriptor_t             *image_descriptor,
           size_t *utf8_string_size, libphdi_error_t **error);

       int
       libphdi_image_descriptor_get_utf8_filename(libphdi_image_descriptor_t                  *image_descriptor,
           uint8_t *utf8_string, size_t utf8_string_size, libphdi_error_t **error);

       int
       libphdi_image_descriptor_get_utf16_filename_size(libphdi_image_descriptor_t            *image_descriptor,
           size_t *utf16_string_size, libphdi_error_t **error);

       int
       libphdi_image_descriptor_get_utf16_filename(libphdi_image_descriptor_t                 *image_descriptor,
           uint16_t *utf16_string, size_t utf16_string_size, libphdi_error_t **error);

       Snapshot functions

       int
       libphdi_snapshot_free(libphdi_snapshot_t **snapshot, libphdi_error_t **error);

       int
       libphdi_snapshot_get_identifier(libphdi_snapshot_t  *snapshot, uint8_t *guid_data, size_t guid_data_size,
           libphdi_error_t **error);

       int
       libphdi_snapshot_get_parent_identifier(libphdi_snapshot_t      *snapshot,       uint8_t       *guid_data,
           size_t guid_data_size, libphdi_error_t **error);

DESCRIPTION

       The libphdi_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 "libphdi.h".

ENVIRONMENT

       None

FILES

       None

NOTES

       libphdi can be compiled with wide character support (wchar_t).

       To compile libphdi with wide character support use: ./configure --enable-wide-character-type=yes
        or define: _UNICODE
        or UNICODE
        during compilation.

       LIBPHDI_WIDE_CHARACTER_TYPE
        in libphdi/features.h can be used to determine if libphdi was compiled with wide character support.

BUGS

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

AUTHOR

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

COPYRIGHT

       Copyright (C) 2015-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 libphdi.h include file

libphdi                                           July 8, 2022                                        libphdi(3)