Provided by: libmsiecf-dev_20181227-2.1build1_amd64 bug

NAME

       libmsiecf.h — Library to access the MSIE Cache File (index.dat) format

LIBRARY

       library “libmsiecf”

SYNOPSIS

       #include <libmsiecf.h>

       Support functions

       const char *
       libmsiecf_get_version(void);

       int
       libmsiecf_get_access_flags_read(void);

       int
       libmsiecf_get_codepage(int *codepage, libmsiecf_error_t **error);

       int
       libmsiecf_set_codepage(int codepage, libmsiecf_error_t **error);

       int
       libmsiecf_check_file_signature(const char *filename, libmsiecf_error_t **error);

       Available when compiled with wide character string support:

       int
       libmsiecf_check_file_signature_wide(const wchar_t *filename, libmsiecf_error_t **error);

       Available when compiled with libbfio support:

       int
       libmsiecf_check_file_signature_file_io_handle(libbfio_handle_t*file_io_handle,libmsiecf_error_t **error);

       Notify functions

       void
       libmsiecf_notify_set_verbose(int verbose);

       int
       libmsiecf_notify_set_stream(FILE *stream, libmsiecf_error_t **error);

       int
       libmsiecf_notify_stream_open(const char *filename, libmsiecf_error_t **error);

       int
       libmsiecf_notify_stream_close(libmsiecf_error_t **error);

       Error functions

       void
       libmsiecf_error_free(libmsiecf_error_t **error);

       int
       libmsiecf_error_fprint(libmsiecf_error_t *error, FILE *stream);

       int
       libmsiecf_error_sprint(libmsiecf_error_t *error, char *string, size_t size);

       int
       libmsiecf_error_backtrace_fprint(libmsiecf_error_t *error, FILE *stream);

       int
       libmsiecf_error_backtrace_sprint(libmsiecf_error_t *error, char *string, size_t size);

       File functions

       int
       libmsiecf_file_initialize(libmsiecf_file_t **file, libmsiecf_error_t **error);

       int
       libmsiecf_file_free(libmsiecf_file_t **file, libmsiecf_error_t **error);

       int
       libmsiecf_file_signal_abort(libmsiecf_file_t *file, libmsiecf_error_t **error);

       int
       libmsiecf_file_open(libmsiecf_file_t *file, constchar*filename,intaccess_flags,libmsiecf_error_t**error);

       int
       libmsiecf_file_close(libmsiecf_file_t *file, libmsiecf_error_t **error);

       int
       libmsiecf_file_get_size(libmsiecf_file_t *file, size64_t *size, libmsiecf_error_t **error);

       int
       libmsiecf_file_get_ascii_codepage(libmsiecf_file_t*file, int *ascii_codepage, libmsiecf_error_t **error);

       int
       libmsiecf_file_set_ascii_codepage(libmsiecf_file_t *file, int ascii_codepage, libmsiecf_error_t **error);

       int
       libmsiecf_file_get_format_version(libmsiecf_file*_tiluei,nt8*_tajor_versiouni,nt8*_tinor_versiolni,bmsiecf_error*_terror);

       int
       libmsiecf_file_get_number_of_unallocated_blocks(libmsiecf_f*i*nlfiueinm_tbtee,r_of_unallocated_blolcikbsm,siecf_erro*r*_trror);

       int
       libmsiecf_file_get_unallocated_block(libmsiecf_fil*efu_intlnaetl,located_block_indoefxf,6*4o_tfsseitz,e6*4s_ltzieb,msiecf_erro*r*_trror);

       int
       libmsiecf_file_get_number_of_cache_directories(libmsiecf_fi**lfineinu_tmteb,er_of_cache_directorileisb,msiecf_erro*r*_trror);

       int
       libmsiecf_file_get_cache_directory_name(libmsiecf_fil*efc_iatlnceth,e_directory_indc*ehsxat,rrisnigzs,et_ting_sliizbem,siecf_err*o*re_tror);

       int
       libmsiecf_file_get_number_of_items(libmsiecf_file_t*file,int*number_of_items, libmsiecf_error_t **error);

       int
       libmsiecf_file_get_item_by_index(libmsiecf_file_t*filei,nittem_indexl,ibmsiecf_item_t*iteml,ibmsiecf_error_t*error);

       int
       libmsiecf_file_get_number_of_recovered_items(libmsiecf_fil*ef*_intlnuetm,ber_of_recovered_itemlsi,bmsiecf_error*_terror);

       int
       libmsiecf_file_get_recovered_item_by_index(libmsiecrfe_f*ioifnvliteelr_et,d_item_ilnidbemxs,iecf_i*t*erme_tovered_iitbemms,iecf_e*r*reorrr_tr);

       Available when compiled with wide character string support:

       int
       libmsiecf_file_open_wide(libmsiecf_file_t*file,constwchar_t*filename,intaccess_flags,libmsiecf_error_t**error);

       Available when compiled with libbfio support:

       int
       libmsiecf_file_open_file_io_handle(libmsiecf_file*_tillei,bbfio_handl*ef_tle_io_hanadiclncete,ss_flalgisb,msiecf_erro*r*_trror);

       Item functions

       int
       libmsiecf_item_free(libmsiecf_item_t **item, libmsiecf_error_t **error);

       int
       libmsiecf_item_get_type(libmsiecf_item_t *item, uint8_t *item_type, libmsiecf_error_t **error);

       int
       libmsiecf_item_get_flags(libmsiecf_item_t *item, uint8_t *item_flags, libmsiecf_error_t **error);

       int
       libmsiecf_item_get_offset(libmsiecf_item_t *item, off64_t *offset, libmsiecf_error_t **error);

       int
       libmsiecf_item_get_offset_range(libmsiecf_item_t*item,off64_t*offset,size64_t*size,libmsiecf_error_t**error);

       URL item functions

       int
       libmsiecf_url_get_type(libmsiecf_item_t *url, uint8_t *url_item_type, libmsiecf_error_t **error);

       int
       libmsiecf_url_get_primary_time(libmsiecf_item_t *url, uint64_t *filetime, libmsiecf_error_t **error);

       int
       libmsiecf_url_get_secondary_time(libmsiecf_item_t *url, uint64_t *filetime, libmsiecf_error_t **error);

       int
       libmsiecf_url_get_expiration_time(libmsiecf_item_t*url,uint64_t*expiration_time,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_last_checked_time(libmsiecf_item_t*url,uint32_t*fat_date_time,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_cached_file_size(libmsiecf_item_t*url,uint64_t*cached_file_size,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_cache_directory_index(libmsiecf_item*_truli,nt8_tcache_directory_indexl,ibmsiecf_error_t*error);

       int
       libmsiecf_url_get_number_of_hits(libmsiecf_item_t *url,uint32_t*number_of_hits,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_location_size(libmsiecf_item_t *url, size_t *string_size, libmsiecf_error_t **error);

       int
       libmsiecf_url_get_location(libmsiecf_item_t*url,char*string,size_tstring_size,libmsiecf_error_t **error);

       int
       libmsiecf_url_get_utf8_location_size(libmsiecf_item_t*url,size_t*utf8_string_size,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_utf8_location(libmsiecf_item*_truli,nt8*_ttf8_strings,ize_ttf8_string_sizel,ibmsiecf_error_t*error);

       int
       libmsiecf_url_get_utf16_location_size(libmsiecf_item_t*url,size_t*utf16_string_size,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_utf16_location(libmsiecf_item*_truli,nt16*_ttf16_strinsgi,zeu_tf16_string_sizlei,bmsiecf_error*_terror);

       int
       libmsiecf_url_get_filename_size(libmsiecf_item_t *url, size_t *string_size, libmsiecf_error_t **error);

       int
       libmsiecf_url_get_filename(libmsiecf_item_t *url,char*string,size_tstring_size,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_utf8_filename_size(libmsiecf_item_t*url,size_t*utf8_string_size,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_utf8_filename(libmsiecf_item_turlu,int8_tutf8_strings,izeu_tf8_string_sizlei,bmsiecf_error*_terror);

       int
       libmsiecf_url_get_utf16_filename_size(libmsiecf_item_t*url,size_t*utf16_string_size,libmsiecf_error_t**error);

       int
       libmsiecf_url_get_utf16_filename(libmsiecf_item*_truli,nt16*_ttf16_strinsgi,zeu_tf16_string_sizlei,bmsiecf_error*_terror);

       int
       libmsiecf_url_get_data_size(libmsiecf_item_t *url, size_t *data_size, libmsiecf_error_t **error);

       int
       libmsiecf_url_get_data(libmsiecf_item_t*url, uint8_t *data, size_t data_size, libmsiecf_error_t **error);

       Redirected item functions

       int
       libmsiecf_redirected_get_location_size(libmsiecf_item_t*redirected,size_t*string_sizel,ibmsiecf_error_t*error);

       int
       libmsiecf_redirected_get_location(libmsiecf_item_tredirectedc,ha*rstrings,ize_ttring_sizel,ibmsiecf_error_t**error);

       int
       libmsiecf_redirected_get_utf8_location_size(libmsiecf_item*_tedirectesdi,ze*_ttf8_string_silzieb,msiecf_erro*r*_trror);

       int
       libmsiecf_redirected_get_utf8_location(libmsiecf_it*erme_tirecutien*dtu,8t_t8_strisnigzu,et_t8_string_silzieb,msiecf_erro*r*_trror);

       int
       libmsiecf_redirected_get_utf16_location_size(libmsiecf_item*_tedirectseidz*,eu_tf16_string_silzieb,msiecf_erro*r*_trror);

       int
       libmsiecf_redirected_get_utf16_location(libmsiecf_it*erme_tirecutiendt*,1u6t_t16_strsiiunztgef,_t6_string_sliizbem,siecf_err*o*re_tror);

       Leak item functions

       int
       libmsiecf_leak_get_cached_file_size(libmsiecf_item_t*leak,uint64_t*cached_file_size,libmsiecf_error_t**error);

       int
       libmsiecf_leak_get_cache_directory_index(libmsiecf_item*_teauki,nt8*_tache_directory_indelxi,bmsiecf_error_t*error);

       int
       libmsiecf_leak_get_filename_size(libmsiecf_item_t *leak, size_t *string_size, libmsiecf_error_t **error);

       int
       libmsiecf_leak_get_filename(libmsiecf_item_t*leak,char*string,size_tstring_size,libmsiecf_error_t**error);

       int
       libmsiecf_leak_get_utf8_filename_size(libmsiecf_item_t*leak,size_t*utf8_string_size,libmsiecf_error_t**error);

       int
       libmsiecf_leak_get_utf8_filename(libmsiecf_item_tleaku,int8*_ttf8_strinsgi,zeu_tf8_string_sizlei,bmsiecf_error*_terror);

       int
       libmsiecf_leak_get_utf16_filename_size(libmsiecf_item_tleaks,ize_t*utf16_string_size,libmsiecf_error_t**error);

       int
       libmsiecf_leak_get_utf16_filename(libmsiecf_item*_teauki,nt16*_ttf16_strinsgi,zeu_tf16_string_silzieb,msiecf_erro*r*_trror);

DESCRIPTION

       The libmsiecf_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 "libmsiecf.h".

ENVIRONMENT

       None

FILES

       None

NOTES

       libmsiecf allows to be compiled with wide character support (wchar_t).

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

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

BUGS

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

AUTHOR

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

COPYRIGHT

       Copyright (C) 2009-2018, 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 libmsiecf.h include file

libmsiecf                                       January 15, 2017                                    libmsiecf(3)

Powered by the Ubuntu Manpage Operator, file bugs in Github

© 2025 Canonical. Ubuntu and Canonical are registered trademarks of Canonical Ltd.