Provided by: libfvde-dev_20190104-1.2build2_amd64 

NAME
libfvde.h — Library to access the FileVault Drive Encryption (FVDE) format
LIBRARY
library “libfvde”
SYNOPSIS
#include <libfvde.h>
Support functions
const char *
libfvde_get_version(void);
int
libfvde_get_access_flags_read(void);
int
libfvde_get_codepage(int *codepage, libfvde_error_t **error);
int
libfvde_set_codepage(int codepage, libfvde_error_t **error);
int
libfvde_check_volume_signature(const char *filename, libfvde_error_t **error);
Available when compiled with wide character string support:
int
libfvde_check_volume_signature_wide(const wchar_t *filename, libfvde_error_t **error);
Available when compiled with libbfio support:
int
libfvde_check_volume_signature_file_io_handle(libbfio_handle_t *file_io_handle, libfvde_error_t **error);
Notify functions
void
libfvde_notify_set_verbose(int verbose);
int
libfvde_notify_set_stream(FILE *stream, libfvde_error_t **error);
int
libfvde_notify_stream_open(const char *filename, libfvde_error_t **error);
int
libfvde_notify_stream_close(libfvde_error_t **error);
Error functions
void
libfvde_error_free(libfvde_error_t **error);
int
libfvde_error_fprint(libfvde_error_t *error, FILE *stream);
int
libfvde_error_sprint(libfvde_error_t *error, char *string, size_t size);
int
libfvde_error_backtrace_fprint(libfvde_error_t *error, FILE *stream);
int
libfvde_error_backtrace_sprint(libfvde_error_t *error, char *string, size_t size);
Volume functions
int
libfvde_volume_initialize(libfvde_volume_t **volume, libfvde_error_t **error);
int
libfvde_volume_free(libfvde_volume_t **volume, libfvde_error_t **error);
int
libfvde_volume_signal_abort(libfvde_volume_t *volume, libfvde_error_t **error);
int
libfvde_volume_open(libfvde_volume_t*volume,constchar*filename,intaccess_flags, libfvde_error_t **error);
int
libfvde_volume_close(libfvde_volume_t *volume, libfvde_error_t **error);
int
libfvde_volume_is_locked(libfvde_volume_t *volume, libfvde_error_t **error);
ssize_t
libfvde_volume_read_buffer(libfvde_volume_t*volume,void*buffer,size_tbuffer_size,libfvde_error_t**error);
ssize_t
libfvde_volume_read_buffer_at_offset(libfvde_volume*_tolumveo*,ibduffesri,zeb_tffer_sizoef,f64_tffsetl,ibfvde_error_t*error);
ssize_t
libfvde_volume_write_buffer(libfvde_volume_t*volume,void*buffer,size_tbuffer_size,libfvde_error_t**error);
ssize_t
libfvde_volume_write_buffer_at_offset(libfvde_volume*_tolumceo,nvso*tibduffesri,zeb_tffer_sizoef,f64o_tfselti,bfvde_error*_terror);
off64_t
libfvde_volume_seek_offset(libfvde_volume_t *volume, off64_t offset, int whence, libfvde_error_t**error);
int
libfvde_volume_get_offset(libfvde_volume_t *volume, off64_t *offset, libfvde_error_t **error);
int
libfvde_volume_get_logical_volume_size(libfvde_volume_t*volume, size64_t *size, libfvde_error_t **error);
int
libfvde_volume_get_logical_volume_encryption_method(libfvde_volum*ev_tluumien,t3*2e_tcryption_metlhiobdf,vde_err*o*re_tror);
int
libfvde_volume_get_physical_volume_size(libfvde_volume_t*volume,size64_t *size, libfvde_error_t **error);
int
libfvde_volume_get_physical_volume_encryption_method(libfvde_volum*ev_tluumien,t*3e2n_tryption_metlhiobdf,vde_err*o*re_tror);
int
libfvde_volume_set_keys(libfvde_volum*ev_tlucmoueni,sntt8*_tolume_master_kesyi,zev_tlume_master_key_sizlei,bfvde_error*_terror);
int
libfvde_volume_set_utf8_password(libfvde_volume*_tolumceo,nusitnt8*_ttf8_strinsgi,zeu_tf8_string_lengltihb,fvde_erro*r*_trror);
int
libfvde_volume_set_utf16_password(libfvde_volum*ev_tlucmoueni,sntt1*6u_tf16_strisnigzu,et_t16_string_lengtlhi,bfvde_error*_terror);
int
libfvde_volume_set_utf8_recovery_password(libfvde_volum*ev_tlucmoueni,sntt*8u_tf8_strisniugzt,ef_t_string_lenlgitbhf,vde_err*o*re_tror);
int
libfvde_volume_set_utf16_recovery_password(libfvde_volu*mveo_cutuoimnnest*,t1u6t_t16_strsiiunztgef,_t6_string_lenlgitbhf,vde_erro*r*_trror);
int
libfvde_volume_read_encrypted_root_plist(libfvde_volume_t*volume,constchar*filename,libfvde_error_t**error);
Available when compiled with wide character string support:
int
libfvde_volume_open_wide(libfvde_volume_t*volume,constwchar_t*filename,intaccess_flags,libfvde_error_t**error);
int
libfvde_volume_read_encrypted_root_plist_wide(libfvde_volume_t*volumec,onswtchar_tfilenamel,ibfvde_error_t*error);
Available when compiled with libbfio support:
int
libfvde_volume_open_file_io_handle(libfvde_volum*ev_tlulmieb,bfio_handl*ef_tle_io_hanadiclncete,ss_flaglsi,bfvde_error*_terror);
int
libfvde_volume_read_encrypted_root_plist_file_io_handle(libfvde_vol*uvmoleli_btmbef,io_han*dfliel_t_io_halnidblfev,de_e*r*reorrr_tr);
Volume group functions
int
libfvde_volume_group_free(libfvde_volume_group_t **volume_group, libfvde_error_t **error);
LVF encryption context and EncryptedRoot.plist file functions
int
libfvde_encryption_context_plist_initialize(libfvde_encryption_context_plist_t*plistl,ibfvde_error_t**error);
int
libfvde_encryption_context_plist_free(libfvde_encryption_context_plist_t **plist,libfvde_error_t**error);
int
libfvde_encryption_context_plist_get_data_size(libfvde_encryption_context_pl*ipslstii_ztte*,6d4a_ta_sliizbef,vde_err*o*re_tror);
int
libfvde_encryption_context_plist_copy_data(libfvde_encryption_context_plis*tp_tiusitn,t*8ds_idttzaaet,_t_sliizbef,vde_err*o*re_tror);
int
libfvde_encryption_context_plist_decrypt(libfvde_encryption_context_pli*sptlcu_oitsnn*ststki,t8ezk_eet,_t_bit_silzieb,fvde_erro*r*_trror);
Available when compiled with libbfio support:
int
libfvde_encryption_context_plist_read_file_io_handle(libfvde_encryption_contelxit*b_bplfliiisost_t,hf_itnldel_ei_lt_hbafnvddle*e_,eerrrroorr_tDESCRIPTION
The libfvde_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 "libfvde.h".
ENVIRONMENT
None
FILES
None
NOTES
libfvde allows to be compiled with wide character support (wchar_t).
To compile libfvde with wide character support use: ./configure --enable-wide-character-type=yes
or define: _UNICODE
or UNICODE
during compilation.
LIBFVDE_WIDE_CHARACTER_TYPE
in libfvde/features.h can be used to determine if libfvde was compiled with wide character support.
BUGS
Please report bugs of any kind on the project issue tracker: https://github.com/libyal/libfvde/issues
AUTHOR
These man pages are generated from "libfvde.h".
COPYRIGHT
Copyright (C) 2011-2019, Omar Choudary <choudary.omar@gmail.com>, 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 libfvde.h include file
libfvde August 27, 2017 libfvde(3)