Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
libolecf(3)		    Library Functions Manual		   libolecf(3)

NAME
       libolecf.h  -- Library to access	the Object Linking and Embedding (OLE)
       Compound	File (CF) format

SYNOPSIS
       #include	<libolecf.h>

       Support functions

       const char *
       libolecf_get_version(void);

       uint8_t
       libolecf_get_access_flags_read(void);

       int
       libolecf_get_codepage(int *codepage, libolecf_error_t **error);

       int
       libolecf_set_codepage(int codepage, libolecf_error_t **error);

       int
       libolecf_check_file_signature(const	     char	    *filename,
	   libolecf_error_t **error);

       Available when compiled with wide character string support:

       int
       libolecf_check_file_signature_wide(const	      wchar_t	    *filename,
	   libolecf_error_t **error);

       Available when compiled with libbfio support:

       int
       libolecf_check_file_signature_file_io_handle(libbfio_han*dfliel_et_io_handle,
	   libolecf_error_t **error);

       Notify functions

       void
       libolecf_notify_set_verbose(int verbose);

       int
       libolecf_notify_set_stream(FILE *stream,	libolecf_error_t **error);

       int
       libolecf_notify_stream_open(const	    char	    *filename,
	   libolecf_error_t **error);

       int
       libolecf_notify_stream_close(libolecf_error_t **error);

       Error functions

       void
       libolecf_error_free(libolecf_error_t **error);

       int
       libolecf_error_fprint(libolecf_error_t *error, FILE *stream);

       int
       libolecf_error_sprint(libolecf_error_t	 *error,     char     *string,
	   size_t size);

       int
       libolecf_error_backtrace_fprint(libolecf_error_t	*error,	FILE *stream);

       int
       libolecf_error_backtrace_sprint(libolecf_error_t	 *error, char *string,
	   size_t size);

       File functions

       int
       libolecf_file_initialize(libolecf_file_t			       **file,
	   libolecf_error_t **error);

       int
       libolecf_file_free(libolecf_file_t **file, libolecf_error_t **error);

       int
       libolecf_file_signal_abort(libolecf_file_t			*file,
	   libolecf_error_t **error);

       int
       libolecf_file_open(libolecf_file_t   *file,   const   char   *filename,
	   int access_flags, libolecf_error_t **error);

       int
       libolecf_file_close(libolecf_file_t *file, libolecf_error_t **error);

       int
       libolecf_file_get_sector_size(libolecf_file_t			*file,
	   size32_t *sector_size, libolecf_error_t **error);

       int
       libolecf_file_get_short_sector_size(libolecf_file_t		*file,
	   size32_t *short_sector_size,	libolecf_error_t **error);

       int
       libolecf_file_get_ascii_codepage(libolecf_file_t			*file,
	   int *ascii_codepage,	libolecf_error_t **error);

       int
       libolecf_file_set_ascii_codepage(libolecf_file_t			*file,
	   int ascii_codepage, libolecf_error_t	**error);

       int
       libolecf_file_get_format_version(libolecf_file_t			*file,
	   uint16_t	  *major_version,	uint16_t       *minor_version,
	   libolecf_error_t **error);

       int
       libolecf_file_get_number_of_unallocated_blocks(libolecf_file_t	*file,
	   int *number_of_unallocated_blocks, libolecf_error_t **error);

       int
       libolecf_file_get_unallocated_block(libolecf_file_t		*file,
	   int	 unallocated_block_index,  off64_t  *offset,  size64_t	*size,
	   libolecf_error_t **error);

       int
       libolecf_file_get_root_item(libolecf_file_t			*file,
	   libolecf_item_t **root_item,	libolecf_error_t **error);

       int
       libolecf_file_get_item_by_utf8_path(libolecf_file_t		*file,
	   const    uint8_t    *utf8_string,	size_t	   utf8_string_length,
	   libolecf_item_t **item, libolecf_error_t **error);

       int
       libolecf_file_get_item_by_utf16_path(libolecf_file_t		*file,
	   const   uint16_t   *utf16_string,	size_t	  utf16_string_length,
	   libolecf_item_t **item, libolecf_error_t **error);

       Available when compiled with wide character string support:

       int
       libolecf_file_open_wide(libolecf_file_t *file, const wchar_t *filename,
	   int access_flags, libolecf_error_t **error);

       Available when compiled with libbfio support:

       int
       libolecf_file_open_file_io_handle(libolecf_file_t		*file,
	   libbfio_handle_t	 *file_io_handle,      int	 access_flags,
	   libolecf_error_t **error);

       Item functions

       int
       libolecf_item_free(libolecf_item_t **item, libolecf_error_t **error);

       int
       libolecf_item_get_type(libolecf_item_t	  *item,     uint8_t	*type,
	   libolecf_error_t **error);

       int
       libolecf_item_get_utf8_name_size(libolecf_item_t			*item,
	   size_t *utf8_string_size, libolecf_error_t **error);

       int
       libolecf_item_get_utf8_name(libolecf_item_t			*item,
	   uint8_t	  *utf8_string,	       size_t	     utf8_string_size,
	   libolecf_error_t **error);

       int
       libolecf_item_get_utf16_name_size(libolecf_item_t		*item,
	   size_t *utf16_string_size, libolecf_error_t **error);

       int
       libolecf_item_get_utf16_name(libolecf_item_t			*item,
	   uint16_t	  *utf16_string,       size_t	    utf16_string_size,
	   libolecf_error_t **error);

       int
       libolecf_item_get_size(libolecf_item_t	 *item,	   uint32_t	*size,
	   libolecf_error_t **error);

       int
       libolecf_item_get_creation_time(libolecf_item_t			*item,
	   uint64_t *filetime, libolecf_error_t	**error);

       int
       libolecf_item_get_modification_time(libolecf_item_t		*item,
	   uint64_t *filetime, libolecf_error_t	**error);

       int
       libolecf_item_get_number_of_sub_items(libolecf_item_t		*item,
	   int *number_of_sub_items, libolecf_error_t **error);

       int
       libolecf_item_get_sub_item(libolecf_item_t *item,  int  sub_item_index,
	   libolecf_item_t **sub_item, libolecf_error_t	**error);

       int
       libolecf_item_get_sub_item_by_utf8_name(libolecf_item_t		*item,
	   const    uint8_t    *utf8_string,	size_t	   utf8_string_length,
	   libolecf_item_t **sub_item, libolecf_error_t	**error);

       int
       libolecf_item_get_sub_item_by_utf16_name(libolecf_item_t		*item,
	   const   uint16_t   *utf16_string,	size_t	  utf16_string_length,
	   libolecf_item_t **sub_item, libolecf_error_t	**error);

       int
       libolecf_item_get_sub_item_by_utf8_path(libolecf_item_t		*item,
	   const    uint8_t    *utf8_string,	size_t	   utf8_string_length,
	   libolecf_item_t **sub_item, libolecf_error_t	**error);

       int
       libolecf_item_get_sub_item_by_utf16_path(libolecf_item_t		*item,
	   const   uint16_t   *utf16_string,	size_t	  utf16_string_length,
	   libolecf_item_t **sub_item, libolecf_error_t	**error);

       Stream functions

       ssize_t
       libolecf_stream_read_buffer(libolecf_item_t  *stream,  uint8_t *buffer,
	   size_t size,	libolecf_error_t **error);

       off64_t
       libolecf_stream_seek_offset(libolecf_item_t  *stream,  off64_t  offset,
	   int whence, libolecf_error_t	**error);

       int
       libolecf_stream_get_offset(libolecf_item_t  *stream,  off64_t  *offset,
	   libolecf_error_t **error);

       Property	set stream functions

       int
       libolecf_property_set_stream_get_set(libolecf_item_*tproperty_set_stream,
	   libolecf_property_set_t **property_set, libolecf_error_t **error);

       Property	set functions

       int
       libolecf_property_set_free(libolecf_property_set_t      **property_set,
	   libolecf_error_t **error);

       int
       libolecf_property_set_get_class_identifier(libolecf_proper*tpyr_ospeetr_tty_set,
	   uint8_t	    *guid_data,		size_t	       guid_data_size,
	   libolecf_error_t **error);

       int
       libolecf_property_set_get_number_of_sections(libolecf_prop*eprrtoyp_esretty__tset,
	   int *number_of_sections, libolecf_error_t **error);

       int
       libolecf_property_set_get_section_by_index(libolecf_proper*tpyr_ospeetr_tty_set,
	   int section_index, libolecf_property_section_t  **property_section,
	   libolecf_error_t **error);

       Property	section	functions

       int
       libolecf_property_section_free(libolecf_property_sect*i*opnr_otperty_section,
	   libolecf_error_t **error);

       int
       libolecf_property_section_get_class_identifier(libolec*fp_rporpoepretryt_ys_escetcitoino,n_t
	   uint8_t	    *guid_data,		size_t	       guid_data_size,
	   libolecf_error_t **error);

       int
       libolecf_property_section_get_number_of_properties(lib*oplreocpfe_rptryo_pseercttyi_osne,ction_t
	   int *number_of_properties, libolecf_error_t **error);

       int
       libolecf_property_section_get_property_by_index(libole*cpfr_oppreorpteyr_tsye_csteicotni,on_t
	   int	property_index,	 libolecf_property_value_t   **property_value,
	   libolecf_error_t **error);

       Property	value functions

       int
       libolecf_property_value_free(libolecf_property_value_t**property_value,
	   libolecf_error_t **error);

       int
       libolecf_property_value_get_identifier(libolecf_property*_pvraolpueer_tty_value,
	   uint32_t *identifier, libolecf_error_t **error);

       int
       libolecf_property_value_get_value_type(libolecf_property*_pvraolpueer_tty_value,
	   uint32_t *value_type, libolecf_error_t **error);

       int
       libolecf_property_value_get_data_size(libolecf_property_*vparloupee_rtty_value,
	   size_t *data_size, libolecf_error_t **error);

       int
       libolecf_property_value_get_data(libolecf_property_value*_ptroperty_value,
	   uint8_t *data, size_t data_size, libolecf_error_t **error);

       int
       libolecf_property_value_get_data_as_boolean(libolecf_pro*pperrotpye_rvtayl_uvea_ltue,
	   uint8_t *value_boolean, libolecf_error_t **error);

       int
       libolecf_property_value_get_data_as_16bit_integer(libole*cpfr_oppreorpteyr_tvya_lvuael,ue_t
	   uint16_t *value_16bit, libolecf_error_t **error);

       int
       libolecf_property_value_get_data_as_32bit_integer(libole*cpfr_oppreorpteyr_tvya_lvuael,ue_t
	   uint32_t *value_32bit, libolecf_error_t **error);

       int
       libolecf_property_value_get_data_as_64bit_integer(libole*cpfr_oppreorpteyr_tvya_lvuael,ue_t
	   uint64_t *value_64bit, libolecf_error_t **error);

       int
       libolecf_property_value_get_data_as_filetime(libolecf_pr*oppreorpteyr_tvya_lvuael_ute,
	   uint64_t *filetime, libolecf_error_t	**error);

       int
       libolecf_property_value_get_data_as_utf8_string_size(lib*oplreocpfe_rptryo_pvearltuye_,value_t
	   size_t *utf8_string_size, libolecf_error_t **error);

       int
       libolecf_property_value_get_data_as_utf8_string(libolecf*_pprrooppeerrttyy__vvaalluuee,_t
	   uint8_t	  *utf8_string,	       size_t	     utf8_string_size,
	   libolecf_error_t **error);

       int
       libolecf_property_value_get_data_as_utf16_string_size(li*bporloepcefr_tpyr_ovpaelrutey,_value_t
	   size_t *utf16_string_size, libolecf_error_t **error);

       int
       libolecf_property_value_get_data_as_utf16_string(libolec*fp_rporpoepretryt_yv_avlauleu,e_t
	   uint16_t	  *utf16_string,       size_t	    utf16_string_size,
	   libolecf_error_t **error);

DESCRIPTION
       The  libolecf_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  re-
       turn type.  For the actual return values	see "libolecf.h".

ENVIRONMENT
       None

FILES
       None

NOTES
       libolecf	can be compiled	with wide character support (wchar_t).

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

       LIBOLECF_WIDE_CHARACTER_TYPE
	in libolecf/features.h can be used to determine	if libolecf  was  com-
       piled with wide character support.

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

AUTHOR
       These man pages are generated from "libolecf.h".

COPYRIGHT
       Copyright (C) 2008-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 libolecf.h include file

libolecf			April 25, 2019			   libolecf(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=libolecf&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help