libvhdi(3)
π libvhdi(3) β the VHD library manual, bestie edition π
okay so this is the libvhdi(3) page from the Library Functions Manual, and it's literally about libvhdi.h, the library that gives you access to the Virtual Hard Disk (VHD) image format. no cap, this is the whole vibe. π
πΈ NAME πΈ
libvhdi.h β the library to access the Virtual Hard Disk (VHD) image format. that's the NAME section, short and iconic. π«Ά
β¨ SYNOPSIS β¨
okay bestie, here's the exact synopsis setup. no edits, no remixing, we're keeping every signature character-for-character. π₯
π Support functions π
#include <libvhdi.h>
const char *
libvhdi_get_version(void);
int
libvhdi_get_access_flags_read(void);
int
libvhdi_get_access_flags_read_write(void);
int
libvhdi_get_access_flags_write(void);
int
libvhdi_get_codepage(int *codepage, libvhdi_error_t **error);
int
libvhdi_set_codepage(int codepage, libvhdi_error_t **error);
int
libvhdi_check_file_signature(const char *filename,
libvhdi_error_t **error);
Available when compiled with wide character string support:
int
libvhdi_check_file_signature_wide(const wchar_t *filename,
libvhdi_error_t **error);
Available when compiled with libbfio support:
int
libvhdi_check_file_signature_file_io_handle(libbfio_handle_t *file_io_handle,
libvhdi_error_t **error);
π¦ Notify functions π¦
void
libvhdi_notify_set_verbose(int verbose);
int
libvhdi_notify_set_stream(FILE *stream, libvhdi_error_t **error);
int
libvhdi_notify_stream_open(const char *filename,
libvhdi_error_t **error);
int
libvhdi_notify_stream_close(libvhdi_error_t **error);
π Error functions π
void
libvhdi_error_free(libvhdi_error_t **error);
int
libvhdi_error_fprint(libvhdi_error_t *error, FILE *stream);
int
libvhdi_error_sprint(libvhdi_error_t *error, char *string, size_t size);
int
libvhdi_error_backtrace_fprint(libvhdi_error_t *error, FILE *stream);
int
libvhdi_error_backtrace_sprint(libvhdi_error_t *error, char *string,
size_t size);
π File functions π
int
libvhdi_file_initialize(libvhdi_file_t **file, libvhdi_error_t **error);
int
libvhdi_file_free(libvhdi_file_t **file, libvhdi_error_t **error);
int
libvhdi_file_signal_abort(libvhdi_file_t *file,
libvhdi_error_t **error);
int
libvhdi_file_open(libvhdi_file_t *file, const char *filename,
int access_flags, libvhdi_error_t **error);
int
libvhdi_file_close(libvhdi_file_t *file, libvhdi_error_t **error);
ssize_t
libvhdi_file_read_buffer(libvhdi_file_t *file, void *buffer,
size_t buffer_size, libvhdi_error_t **error);
ssize_t
libvhdi_file_read_buffer_at_offset(libvhdi_file_t *file, void *buffer,
size_t buffer_size, off64_t offset, libvhdi_error_t **error);
off64_t
libvhdi_file_seek_offset(libvhdi_file_t *file, off64_t offset,
int whence, libvhdi_error_t **error);
int
libvhdi_file_get_offset(libvhdi_file_t *file, off64_t *offset,
libvhdi_error_t **error);
int
libvhdi_file_set_parent_file(libvhdi_file_t *file,
libvhdi_file_t *parent_file, libvhdi_error_t **error);
Available when compiled with wide character string support:
int
libvhdi_file_open_wide(libvhdi_file_t *file, const wchar_t *filename,
int access_flags, libvhdi_error_t **error);
Available when compiled with libbfio support:
int
libvhdi_file_open_file_io_handle(libvhdi_file_t *file,
libbfio_handle_t *file_io_handle, int access_flags,
libvhdi_error_t **error);
π§ Meta data functions π§
int
libvhdi_file_get_file_type(libvhdi_file_t *file, int *file_type,
libvhdi_error_t **error);
int
libvhdi_file_get_format_version(libvhdi_file_t *file,
uint16_t *major_version, uint16_t *minor_version,
libvhdi_error_t **error);
int
libvhdi_file_get_disk_type(libvhdi_file_t *file, uint32_t *disk_type,
libvhdi_error_t **error);
int
libvhdi_file_get_media_size(libvhdi_file_t *file, size64_t *media_size,
libvhdi_error_t **error);
int
libvhdi_file_get_bytes_per_sector(libvhdi_file_t *file,
uint32_t *bytes_per_sector, libvhdi_error_t **error);
int
libvhdi_file_get_identifier(libvhdi_file_t *file, uint8_t *guid_data,
size_t guid_data_size, libvhdi_error_t **error);
int
libvhdi_file_get_parent_identifier(libvhdi_file_t *file,
uint8_t *guid_data, size_t guid_data_size, libvhdi_error_t **error);
int
libvhdi_file_get_utf8_parent_filename_size(libvhdi_file_t *file,
size_t *utf8_string_size, libvhdi_error_t **error);
int
libvhdi_file_get_utf8_parent_filename(libvhdi_file_t *file,
uint8_t *utf8_string, size_t utf8_string_size,
libvhdi_error_t **error);
int
libvhdi_file_get_utf16_parent_filename_size(libvhdi_file_t *file,
size_t *utf16_string_size, libvhdi_error_t **error);
int
libvhdi_file_get_utf16_parent_filename(libvhdi_file_t *file,
uint16_t *utf16_string, size_t utf16_string_size,
libvhdi_error_t **error);
π DESCRIPTION π
The libvhdi_get_version() function is used to retrieve the library version. that's the DESCRIPTION section, and honestly? short, sweet, main character energy. β¨
π RETURN VALUES π
Most of the functions return NULL or -1 on error, dependent on the return type. For the actual return values see "libvhdi.h". so yeah, if you get NULL or -1, that's your error vibe check, but the real details live in "libvhdi.h" β iykyk. π«Ά
πΏ ENVIRONMENT πΏ
None
literally nothing here. empty. the void. π³οΈ
π FILES π
None
also nothing. we love a clean slate. π
π NOTES π
libvhdican be compiled with wide character support (wchar_t). π¦- To compile
libvhdiwith wide character support use:
./configure --enable-wide-character-type=yes
or define: _UNICODE or UNICODE during compilation.
LIBVHDI_WIDE_CHARACTER_TYPEinlibvhdi/features.hcan be used to determine iflibvhdiwas compiled with wide character support.
π BUGS π
Please report bugs of any kind on the project issue tracker: https://github.com/libyal/libvhdi/issues
no gatekeeping, bestie β if something's broken, tell the tracker. π
π«Ά AUTHOR π«Ά
These man pages are generated from "libvhdi.h".
π COPYRIGHT π
Copyright (C) 2012-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 libvhdi.h include file
mwah π β that's the whole page, bestie. source/version: libvhdi; date: December 12, 2020. bye π«Ά
π¦ where this page comes from
- debian trixie: libvhdi-dev 20240509-2+b1 Β· LGPL-3.0-or-later
- opensuse-leap 16.0: libvhdi-devel 20240509-bp160.1.13 Β· GFDL-1.3-or-later AND LGPL-3.0-or-later
- opensuse-leap 16.0: libvhdi-devel 20240509-bp160.1.13 Β· GFDL-1.3-or-later AND LGPL-3.0-or-later
- opensuse-leap 16.0: libvhdi-devel 20240509-bp160.1.13 Β· GFDL-1.3-or-later AND LGPL-3.0-or-later
- opensuse-leap 16.0: libvhdi-devel 20240509-bp160.1.13 Β· GFDL-1.3-or-later AND LGPL-3.0-or-later
- ubuntu questing: libvhdi-dev 20240509-2build1
- ubuntu resolute: libvhdi-dev 20240509-2build2 Β· LGPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms