libvhdi(3)

πŸ“¦
this version Β· 3 versions
, in debian trixie, opensuse-leap 16.0, ubuntu questing, ubuntu resolute

πŸŽ€ 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 πŸ‘‘

  • libvhdi can be compiled with wide character support (wchar_t). πŸ¦‹
  • To compile libvhdi with wide character support use:
./configure --enable-wide-character-type=yes

or define: _UNICODE or UNICODE during compilation.

  • LIBVHDI_WIDE_CHARACTER_TYPE in libvhdi/features.h can be used to determine if libvhdi was 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 (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