Crate libesedb_sys

Source
Expand description

§libesedb-sys

Repository Upstream Crate Page Documentation License

Rust -sys bindings to libyal/libesedb.

§Building

  • Have a compiler installed (if you’re using Rust, you have one).
  • (Optionally) LLVM for bindgen to regenerate the bindings.
  • Should use cargo build -vv for very verbose output to verify cc compiling.

§Rebuilding Bindings

bindgen libesedb-20230824/include/libesedb.h -o src/bindings.rs -- -Ilibesedb-20230824/include -fparse-all-comments

§Downstream Patches

§Bugfix: Multi-Value Binary Data

https://github.com/libyal/libesedb/pull/69

§QoL: Maximum Leaf-Pages

Note: the original value of 16 * 1024 has been increased as far as possible to (INT_MAX - 1) in order for large databases to load. In my testing the value makes no meaningful difference beyond limiting the sorts/sizes of files you can open.

Via the command-line:

LIBESEDB_MAXIMUM_NUMBER_OF_LEAF_PAGES="32 * 1024" cargo build -vv

In your Cargo.toml:

[env]
LIBESEDB_MAXIMUM_NUMBER_OF_LEAF_PAGES = "32 * 1024"

§QoL: Counting Leaf-Pages

If you do set a leaf-page maximum, when it is exceeded the error message actually reports back that limit so anyone downstream can provide useful debugging information.

§Updating Bundled libesedb

§Authors

libesedb
Copyright (C) 2009-2023, Joachim Metz <joachim.metz@gmail.com>

libesedb-sys
Copyright (C) 2022-2025, Oliver Lenehan ~sunsetkookaburra

§License

Structs§

_Mbstatet
__crt_locale_data
__crt_locale_data_public
__crt_locale_pointers
__crt_multibyte_data
_iobuf
_stat32
_stat64
_stat32i64
_stat64i32
_wfinddata32_t
_wfinddata32i64_t
_wfinddata64_t
_wfinddata64i32_t
stat
tm

Constants§

BUFSIZ
E2BIG
EACCES
EADDRINUSE
EADDRNOTAVAIL
EAFNOSUPPORT
EAGAIN
EALREADY
EBADF
EBADMSG
EBUSY
ECANCELED
ECHILD
ECONNABORTED
ECONNREFUSED
ECONNRESET
EDEADLK
EDEADLOCK
EDESTADDRREQ
EDOM
EEXIST
EFAULT
EFBIG
EHOSTUNREACH
EIDRM
EILSEQ
EINPROGRESS
EINTR
EINVAL
EIO
EISCONN
EISDIR
ELOOP
EMFILE
EMLINK
EMSGSIZE
ENAMETOOLONG
ENETDOWN
ENETRESET
ENETUNREACH
ENFILE
ENOBUFS
ENODATA
ENODEV
ENOENT
ENOEXEC
ENOLCK
ENOLINK
ENOMEM
ENOMSG
ENOPROTOOPT
ENOSPC
ENOSR
ENOSTR
ENOSYS
ENOTCONN
ENOTDIR
ENOTEMPTY
ENOTRECOVERABLE
ENOTSOCK
ENOTSUP
ENOTTY
ENXIO
EOF
EOPNOTSUPP
EOTHER
EOVERFLOW
EOWNERDEAD
EPERM
EPIPE
EPROTO
EPROTONOSUPPORT
EPROTOTYPE
ERANGE
EROFS
ESPIPE
ESRCH
ETIME
ETIMEDOUT
ETXTBSY
EWOULDBLOCK
EXDEV
FILENAME_MAX
FOPEN_MAX
HAVE_OFF64_T
HAVE_SIZE32_T
HAVE_SIZE64_T
HAVE_SSIZE32_T
HAVE_SSIZE64_T
LIBESEDB_ACCESS_FLAGS_LIBESEDB_ACCESS_FLAG_READ
LIBESEDB_ACCESS_FLAGS_LIBESEDB_ACCESS_FLAG_WRITE
Reserved: not supported yet
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_CONFLICTING_VALUE
The argument contains a value that conficts with another argument
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_GENERIC
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_INVALID_VALUE
The argument contains an invalid value
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_UNSUPPORTED_VALUE
The argument contains a value that is not supported
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_VALUE_EXCEEDS_MAXIMUM
The argument contains a value that exceeds the maximum for the specific type
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_VALUE_LESS_THAN_ZERO
The argument contains a value less than zero
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_VALUE_OUT_OF_BOUNDS
The argument contains a value that is out of bounds
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_VALUE_TOO_LARGE
The argument contains a value that is too large
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_VALUE_TOO_SMALL
The argument contains a value that is too small
LIBESEDB_ARGUMENT_ERROR_LIBESEDB_ARGUMENT_ERROR_VALUE_ZERO_OR_LESS
The argument contains a value zero or less
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ASCII
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_1
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_2
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_3
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_4
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_5
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_6
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_7
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_8
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_9
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_10
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_11
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_13
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_14
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_15
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_ISO_8859_16
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_KOI8_R
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_KOI8_U
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_874
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_932
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_936
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_949
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_950
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1250
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1251
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1252
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1253
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1254
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1255
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1256
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1257
LIBESEDB_CODEPAGES_LIBESEDB_CODEPAGE_WINDOWS_1258
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_BINARY_DATA
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_BOOLEAN
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_CURRENCY
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_DATE_TIME
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_DOUBLE_64BIT
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_FLOAT_32BIT
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_GUID
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_INTEGER_8BIT_UNSIGNED
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_INTEGER_16BIT_SIGNED
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_INTEGER_16BIT_UNSIGNED
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_INTEGER_32BIT_SIGNED
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_INTEGER_32BIT_UNSIGNED
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_INTEGER_64BIT_SIGNED
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_LARGE_BINARY_DATA
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_LARGE_TEXT
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_NULL
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_SUPER_LARGE_VALUE
LIBESEDB_COLUMN_TYPES_LIBESEDB_COLUMN_TYPE_TEXT
LIBESEDB_COMPRESSION_ERROR_LIBESEDB_COMPRESSION_ERROR_COMPRESS_FAILED
The compression failed
LIBESEDB_COMPRESSION_ERROR_LIBESEDB_COMPRESSION_ERROR_DECOMPRESS_FAILED
The decompression failed
LIBESEDB_COMPRESSION_ERROR_LIBESEDB_COMPRESSION_ERROR_GENERIC
LIBESEDB_CONVERSION_ERROR_LIBESEDB_CONVERSION_ERROR_GENERIC
LIBESEDB_CONVERSION_ERROR_LIBESEDB_CONVERSION_ERROR_INPUT_FAILED
The conversion failed on the input
LIBESEDB_CONVERSION_ERROR_LIBESEDB_CONVERSION_ERROR_OUTPUT_FAILED
The conversion failed on the output
LIBESEDB_ERROR_DOMAINS_LIBESEDB_ERROR_DOMAIN_ARGUMENTS
LIBESEDB_ERROR_DOMAINS_LIBESEDB_ERROR_DOMAIN_COMPRESSION
LIBESEDB_ERROR_DOMAINS_LIBESEDB_ERROR_DOMAIN_CONVERSION
LIBESEDB_ERROR_DOMAINS_LIBESEDB_ERROR_DOMAIN_INPUT
LIBESEDB_ERROR_DOMAINS_LIBESEDB_ERROR_DOMAIN_IO
LIBESEDB_ERROR_DOMAINS_LIBESEDB_ERROR_DOMAIN_MEMORY
LIBESEDB_ERROR_DOMAINS_LIBESEDB_ERROR_DOMAIN_OUTPUT
LIBESEDB_ERROR_DOMAINS_LIBESEDB_ERROR_DOMAIN_RUNTIME
LIBESEDB_FILE_TYPES_LIBESEDB_FILE_TYPE_DATABASE
LIBESEDB_FILE_TYPES_LIBESEDB_FILE_TYPE_STREAMING_FILE
LIBESEDB_GET_COLUMN_FLAGS_LIBESEDB_GET_COLUMN_FLAG_IGNORE_TEMPLATE_TABLE
LIBESEDB_HAVE_MULTI_THREAD_SUPPORT
LIBESEDB_INPUT_ERROR_LIBESEDB_INPUT_ERROR_CHECKSUM_MISMATCH
A checksum in the input did not match
LIBESEDB_INPUT_ERROR_LIBESEDB_INPUT_ERROR_GENERIC
LIBESEDB_INPUT_ERROR_LIBESEDB_INPUT_ERROR_INVALID_DATA
The input contains invalid data
LIBESEDB_INPUT_ERROR_LIBESEDB_INPUT_ERROR_SIGNATURE_MISMATCH
The input contains an unsupported signature
LIBESEDB_INPUT_ERROR_LIBESEDB_INPUT_ERROR_VALUE_MISMATCH
A value in the input did not match a previously read value or calculated value
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_ACCESS_DENIED
Access denied
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_CLOSE_FAILED
The close failed
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_GENERIC
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_INVALID_RESOURCE
The resource is invalid i.e. a missing file
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_IOCTL_FAILED
The ioctl failed
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_OPEN_FAILED
The open failed
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_READ_FAILED
The read failed
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_SEEK_FAILED
The seek failed
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_UNLINK_FAILED
The unlink failed
LIBESEDB_IO_ERROR_LIBESEDB_IO_ERROR_WRITE_FAILED
The write failed
LIBESEDB_MEMORY_ERROR_LIBESEDB_MEMORY_ERROR_COPY_FAILED
The memory failed to be copied
LIBESEDB_MEMORY_ERROR_LIBESEDB_MEMORY_ERROR_GENERIC
LIBESEDB_MEMORY_ERROR_LIBESEDB_MEMORY_ERROR_INSUFFICIENT
There is insufficient memory available
LIBESEDB_MEMORY_ERROR_LIBESEDB_MEMORY_ERROR_SET_FAILED
The memory failed to be set
LIBESEDB_OUTPUT_ERROR_LIBESEDB_OUTPUT_ERROR_GENERIC
LIBESEDB_OUTPUT_ERROR_LIBESEDB_OUTPUT_ERROR_INSUFFICIENT_SPACE
There is insuficient space to write the output
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_ABORT_REQUESTED
An abort was requested
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_APPEND_FAILED
The value could not be appended/prepended
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_COPY_FAILED
The value could not be copied
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_FINALIZE_FAILED
The free and/or finalization of an internal structure failed
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_GENERIC
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_GET_FAILED
The value could not be determined
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_INITIALIZE_FAILED
The creation and/or initialization of an internal structure failed
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_PRINT_FAILED
The value could not be printed
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_REMOVE_FAILED
The value could not be removed
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_RESIZE_FAILED
The resize of an internal structure failed
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_SET_FAILED
The value could not be set
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_UNSUPPORTED_VALUE
The value is unsupported
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_VALUE_ALREADY_SET
The value was already set
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_VALUE_EXCEEDS_MAXIMUM
The value exceeds the maximum for its specific type
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_VALUE_MISSING
The value is missing
LIBESEDB_RUNTIME_ERROR_LIBESEDB_RUNTIME_ERROR_VALUE_OUT_OF_BOUNDS
The value was out of bounds
LIBESEDB_VALUE_FLAGS_LIBESEDB_VALUE_FLAG_COMPRESSED
LIBESEDB_VALUE_FLAGS_LIBESEDB_VALUE_FLAG_LONG_VALUE
LIBESEDB_VALUE_FLAGS_LIBESEDB_VALUE_FLAG_MULTI_VALUE
LIBESEDB_VALUE_FLAGS_LIBESEDB_VALUE_FLAG_VARIABLE_SIZE
LIBESEDB_VERSION
LIBESEDB_VERSION_STRING
L_tmpnam
L_tmpnam_s
SEEK_CUR
SEEK_END
SEEK_SET
SH_DENYNO
SH_DENYRD
SH_DENYRW
SH_DENYWR
STRUNCATE
SYS_OPEN
S_IEXEC
S_IFCHR
S_IFDIR
S_IFMT
S_IFREG
S_IREAD
S_IWRITE
TMP_MAX
TMP_MAX_S
WCHAR_MAX
WCHAR_MIN
WINT_MAX
WINT_MIN
_ALPHA
_ARGMAX
_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE
_BLANK
_CONTROL
_CRT_BUILD_DESKTOP_APP
_CRT_FUNCTIONS_REQUIRED
_CRT_HAS_C11
_CRT_HAS_CXX17
_CRT_INTERNAL_NONSTDC_NAMES
_CRT_INTERNAL_PRINTF_LEGACY_MSVCRT_COMPATIBILITY
_CRT_INTERNAL_PRINTF_LEGACY_THREE_DIGIT_EXPONENTS
_CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION
_CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS
_CRT_INTERNAL_PRINTF_STANDARD_ROUNDING
_CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR
_CRT_INTERNAL_SCANF_LEGACY_MSVCRT_COMPATIBILITY
_CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS
_CRT_INTERNAL_SCANF_SECURECRT
_CRT_INTERNAL_STDIO_SYMBOL_PREFIX
_CRT_INT_MAX
_CRT_PACKING
_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY
_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES
_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT
_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY
_DIGIT
_HAS_CXX17
_HAS_CXX20
_HAS_EXCEPTIONS
_HAS_NODISCARD
_HEX
_IOB_ENTRIES
_IOFBF
_IOLBF
_IONBF
_LEADBYTE
_LOWER
_MAX_I64TOSTR_BASE2_COUNT
_MAX_I64TOSTR_BASE8_COUNT
_MAX_I64TOSTR_BASE10_COUNT
_MAX_I64TOSTR_BASE16_COUNT
_MAX_ITOSTR_BASE2_COUNT
_MAX_ITOSTR_BASE8_COUNT
_MAX_ITOSTR_BASE10_COUNT
_MAX_ITOSTR_BASE16_COUNT
_MAX_LTOSTR_BASE2_COUNT
_MAX_LTOSTR_BASE8_COUNT
_MAX_LTOSTR_BASE10_COUNT
_MAX_LTOSTR_BASE16_COUNT
_MAX_U64TOSTR_BASE2_COUNT
_MAX_U64TOSTR_BASE8_COUNT
_MAX_U64TOSTR_BASE10_COUNT
_MAX_U64TOSTR_BASE16_COUNT
_MAX_ULTOSTR_BASE2_COUNT
_MAX_ULTOSTR_BASE8_COUNT
_MAX_ULTOSTR_BASE10_COUNT
_MAX_ULTOSTR_BASE16_COUNT
_NSTREAM_
_PUNCT
_SAL_VERSION
_SECURECRT_FILL_BUFFER_PATTERN
_SH_DENYNO
_SH_DENYRD
_SH_DENYRW
_SH_DENYWR
_SH_SECURE
_SPACE
_STL_LANG
_SYS_OPEN
_S_IEXEC
_S_IFCHR
_S_IFDIR
_S_IFIFO
_S_IFMT
_S_IFREG
_S_IREAD
_S_IWRITE
_TMP_MAX_S
_UPPER
_USE_ATTRIBUTES_FOR_SAL
_USE_DECLSPECS_FOR_SAL
_VCRT_COMPILER_PREPROCESSOR
__GOT_SECURE_LIB__
__SAL_H_VERSION
__STDC_SECURE_LIB__
__STDC_WANT_SECURE_LIB__

Statics§

__security_cookie

Functions§

__acrt_iob_func
__conio_common_vcwprintf
__conio_common_vcwprintf_p
__conio_common_vcwprintf_s
__conio_common_vcwscanf
__doserrno
__iswcsym
__iswcsymf
__p__commode
__pctype_func
__pwctype_func
__report_gsfailure
__security_check_cookie
__security_init_cookie
__stdio_common_vfprintf
__stdio_common_vfprintf_p
__stdio_common_vfprintf_s
__stdio_common_vfscanf
__stdio_common_vfwprintf
__stdio_common_vfwprintf_p
__stdio_common_vfwprintf_s
__stdio_common_vfwscanf
__stdio_common_vsnprintf_s
__stdio_common_vsnwprintf_s
__stdio_common_vsprintf
__stdio_common_vsprintf_p
__stdio_common_vsprintf_s
__stdio_common_vsscanf
__stdio_common_vswprintf
__stdio_common_vswprintf_p
__stdio_common_vswprintf_s
__stdio_common_vswscanf
__va_start
__wcserror
__wcserror_s
_cgetws_s
_cputws
_errno
_fclose_nolock
_fcloseall
_fdopen
_fflush_nolock
_fgetc_nolock
_fgetchar
_fgetwc_nolock
_fgetwchar
_fileno
_flushall
_fputc_nolock
_fputchar
_fputwc_nolock
_fputwchar
_fread_nolock
_fread_nolock_s
_fseek_nolock
_fseeki64
_fseeki64_nolock
_fsopen
_fstat32
_fstat64
_fstat32i64
_fstat64i32
_ftell_nolock
_ftelli64
_ftelli64_nolock
_fwrite_nolock
_get_doserrno
_get_errno
_get_printf_count_output
_get_stream_buffer_pointers
_getc_nolock
_getmaxstdio
_getw
_getwc_nolock
_getwch
_getwch_nolock
_getwche
_getwche_nolock
_getws_s
_i64tow
_i64tow_s
_invalid_parameter_noinfo
_invalid_parameter_noinfo_noreturn
_invoke_watson
_isleadbyte_l
_iswalnum_l
_iswalpha_l
_iswblank_l
_iswcntrl_l
_iswcsym_l
_iswcsymf_l
_iswctype_l
_iswdigit_l
_iswgraph_l
_iswlower_l
_iswprint_l
_iswpunct_l
_iswspace_l
_iswupper_l
_iswxdigit_l
_itow
_itow_s
_lock_file
_ltow
_ltow_s
_pclose
_popen
_putc_nolock
_putw
_putwc_nolock
_putwch
_putwch_nolock
_putws
_rmtmp
_set_doserrno
_set_errno
_set_printf_count_output
_setmaxstdio
_stat32
_stat64
_stat32i64
_stat64i32
_tempnam
_towlower_l
_towupper_l
_ui64tow
_ui64tow_s
_ultow
_ultow_s
_ungetc_nolock
_ungetwc_nolock
_ungetwch
_ungetwch_nolock
_unlink
_unlock_file
_waccess
_waccess_s
_wasctime
_wasctime_s
_wchdir
_wchmod
_wcreat
_wcreate_locale
_wcscoll_l
_wcsdup
_wcserror
_wcserror_s
_wcsftime_l
_wcsicmp
_wcsicmp_l
_wcsicoll
_wcsicoll_l
_wcslwr
_wcslwr_l
_wcslwr_s
_wcslwr_s_l
_wcsncoll
_wcsncoll_l
_wcsnicmp
_wcsnicmp_l
_wcsnicoll
_wcsnicoll_l
_wcsnset
_wcsnset_s
_wcsrev
_wcsset
_wcsset_s
_wcstod_l
_wcstof_l
_wcstoi64
_wcstoi64_l
_wcstol_l
_wcstold_l
_wcstoll_l
_wcstoui64
_wcstoui64_l
_wcstoul_l
_wcstoull_l
_wcsupr
_wcsupr_l
_wcsupr_s
_wcsupr_s_l
_wcsxfrm_l
_wctime32
_wctime64
_wctime32_s
_wctime64_s
_wdupenv_s
_wexecl
_wexecle
_wexeclp
_wexeclpe
_wexecv
_wexecve
_wexecvp
_wexecvpe
_wfdopen
_wfindfirst32
_wfindfirst64
_wfindfirst32i64
_wfindfirst64i32
_wfindnext32
_wfindnext64
_wfindnext32i64
_wfindnext64i32
_wfopen
_wfopen_s
_wfreopen
_wfreopen_s
_wfsopen
_wfullpath
_wgetcwd
_wgetdcwd
_wgetenv
_wgetenv_s
_wmakepath
_wmakepath_s
_wmkdir
_wmktemp
_wmktemp_s
_wopen
_wperror
_wpopen
_wputenv
_wputenv_s
_wremove
_wrename
_wrmdir
_wsearchenv
_wsearchenv_s
_wsetlocale
_wsopen
_wsopen_dispatch
_wsopen_s
_wspawnl
_wspawnle
_wspawnlp
_wspawnlpe
_wspawnv
_wspawnve
_wspawnvp
_wspawnvpe
_wsplitpath
_wsplitpath_s
_wstat32
_wstat64
_wstat32i64
_wstat64i32
_wstrdate
_wstrdate_s
_wstrtime
_wstrtime_s
_wsystem
_wtempnam
_wtmpnam
_wtmpnam_s
_wtof
_wtof_l
_wtoi
_wtoi64
_wtoi64_l
_wtoi_l
_wtol
_wtol_l
_wtoll
_wtoll_l
_wunlink
btowc
clearerr
clearerr_s
fclose
fcloseall
fdopen
feof
ferror
fflush
fgetc
fgetchar
fgetpos
fgets
fgetwc
fgetws
fileno
flushall
fopen
fopen_s
fputc
fputchar
fputs
fputwc
fputws
fread
fread_s
freopen
freopen_s
fseek
fsetpos
ftell
fwrite
getc
getchar
gets_s
getw
getwc
getwchar
is_wctype
isleadbyte
iswalnum
iswalpha
iswascii
iswblank
iswcntrl
iswctype
iswdigit
iswgraph
iswlower
iswprint
iswpunct
iswspace
iswupper
iswxdigit
libesedb_check_file_signature
Determines if a file contains an ESEDB file signature Returns 1 if true, 0 if not or -1 on error
libesedb_column_free
Frees a column Returns 1 if successful or -1 on error
libesedb_column_get_identifier
Retrieves the column identifier Returns 1 if successful or -1 on error
libesedb_column_get_type
Retrieves the column type Returns 1 if successful or -1 on error
libesedb_column_get_utf8_name
Retrieves the UTF-8 encoded string of the column name The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_column_get_utf8_name_size
Retrieves the size of the UTF-8 encoded string of the column name The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_column_get_utf16_name
Retrieves the UTF-16 encoded string of the column name The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_column_get_utf16_name_size
Retrieves the size of the UTF-16 encoded string of the column name The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_error_backtrace_fprint
Prints a backtrace of the error to the stream Returns the number of printed characters if successful or -1 on error
libesedb_error_backtrace_sprint
Prints a backtrace of the error to the string The end-of-string character is not included in the return value Returns the number of printed characters if successful or -1 on error
libesedb_error_fprint
Prints a descriptive string of the error to the stream Returns the number of printed characters if successful or -1 on error
libesedb_error_free
Frees an error
libesedb_error_sprint
Prints a descriptive string of the error to the string The end-of-string character is not included in the return value Returns the number of printed characters if successful or -1 on error
libesedb_file_close
Closes a file Returns 0 if successful or -1 on error
libesedb_file_free
Frees a file Returns 1 if successful or -1 on error
libesedb_file_get_creation_format_version
Retrieves the file creation version Returns 1 if successful or -1 on error
libesedb_file_get_format_version
Retrieves the file (current) format version Returns 1 if successful or -1 on error
libesedb_file_get_number_of_tables
Retrieves the number of tables Returns 1 if successful or -1 on error
libesedb_file_get_page_size
Retrieves the file page size Returns 1 if successful or -1 on error
libesedb_file_get_table
Retrieves the table for the specific entry Returns 1 if successful or -1 on error
libesedb_file_get_table_by_utf8_name
Retrieves the table for the UTF-8 encoded name Returns 1 if successful, 0 if no table could be found or -1 on error
libesedb_file_get_table_by_utf16_name
Retrieves the table for the UTF-16 encoded name Returns 1 if successful, 0 if no table could be found or -1 on error
libesedb_file_get_type
Retrieves the file type Returns 1 if successful or -1 on error
libesedb_file_initialize
Creates a file Make sure the value file is referencing, is set to NULL Returns 1 if successful or -1 on error
libesedb_file_open
Opens a file Returns 1 if successful or -1 on error
libesedb_file_signal_abort
Signals a file to abort its current activity Returns 1 if successful or -1 on error
libesedb_get_access_flags_read
Returns the access flags for reading
libesedb_get_codepage
Retrieves the narrow system string codepage A value of 0 represents no codepage, UTF-8 encoding is used instead Returns 1 if successful or -1 on error
libesedb_get_version
Returns the library version
libesedb_index_free
Frees a index Returns 1 if successful or -1 on error
libesedb_index_get_identifier
Retrieves the index identifier or Father Data Page (FDP) object identifier Returns 1 if successful or -1 on error
libesedb_index_get_number_of_records
Retrieves the number of records in the index Returns 1 if successful or -1 on error
libesedb_index_get_record
Retrieves the record for the specific entry Returns 1 if successful or -1 on error
libesedb_index_get_utf8_name
Retrieves the UTF-8 encoded string of the index name The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_index_get_utf8_name_size
Retrieves the size of the UTF-8 encoded string of the index name The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_index_get_utf16_name
Retrieves the UTF-16 encoded string of the index name The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_index_get_utf16_name_size
Retrieves the size of the UTF-16 encoded string of the index name The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_long_value_free
Frees a long value Returns 1 if successful or -1 on error
libesedb_long_value_get_data
Retrieve the data Returns 1 if successful or -1 on error
libesedb_long_value_get_data_segment
Retrieve the data segment Returns 1 if successful or -1 on error
libesedb_long_value_get_data_segment_size
Retrieve the data segment size Returns 1 if successful or -1 on error
libesedb_long_value_get_data_size
Retrieve the data size Returns 1 if successful or -1 on error
libesedb_long_value_get_number_of_data_segments
Retrieve the number of data segments Returns 1 if successful or -1 on error
libesedb_long_value_get_utf8_string
Retrieves the data as an UTF-8 encoded string The function uses the codepage in the column definition if necessary The size should include the end of string character Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_long_value_get_utf8_string_size
Retrieves the size of the data as an UTF-8 encoded string The returned size includes the end of string character Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_long_value_get_utf16_string
Retrieves the data as an UTF-16 encoded string The function uses the codepage in the column definition if necessary The size should include the end of string character Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_long_value_get_utf16_string_size
Retrieves the size of the data as an UTF-16 encoded string The returned size includes the end of string character Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_multi_value_free
Frees a multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_column_type
Retrieves the column type Returns 1 if successful or -1 on error
libesedb_multi_value_get_number_of_values
Retrieves the number of values in a multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value
Retrieves a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_8bit
Retrieves the 8-bit value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_16bit
Retrieves the 16-bit value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_32bit
Retrieves the 32-bit value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_64bit
Retrieves the 64-bit value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_binary_data
Retrieves the binary data value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_binary_data_size
Retrieves the size of a binary data value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_data
Retrieves the value data of the specific value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_data_size
Retrieves the value data size of the specific value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_filetime
Retrieves the 64-bit filetime value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_floating_point_32bit
Retrieves the 32-bit floating point value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_floating_point_64bit
Retrieves the 64-bit floating point value of a specific value of the multi value Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_utf8_string
Retrieves the UTF-8 encoded string value of a specific value of the multi value The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_utf8_string_size
Retrieves the size of the UTF-8 encoded string of a specific value of the multi value The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_utf16_string
Retrieves the UTF-16 encoded string value of a specific value of the multi value The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_multi_value_get_value_utf16_string_size
Retrieves the size of the UTF-16 encoded string of a specific value of the multi value The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_notify_set_stream
Sets the notification stream Returns 1 if successful or -1 on error
libesedb_notify_set_verbose
Sets the verbose notification
libesedb_notify_stream_close
Closes the notification stream if opened using a filename Returns 0 if successful or -1 on error
libesedb_notify_stream_open
Opens the notification stream using a filename The stream is opened in append mode Returns 1 if successful or -1 on error
libesedb_record_free
Frees a record Returns 1 if successful or -1 on error
libesedb_record_get_column_identifier
Retrieves the column identifier of the specific entry Returns 1 if successful or -1 on error
libesedb_record_get_column_type
Retrieves the column type of the specific entry Returns 1 if successful or -1 on error
libesedb_record_get_long_value
Retrieves the long value of a specific entry Creates a new long value Returns 1 if successful, 0 if the item does not contain such value or -1 on error
libesedb_record_get_multi_value
Retrieves the multi value of a specific entry Creates a new multi value Returns 1 if successful, 0 if the item does not contain such value or -1 on error
libesedb_record_get_number_of_values
Retrieves the number of values in the record Returns 1 if successful or -1 on error
libesedb_record_get_utf8_column_name
Retrieves the UTF-8 encoded string of the column name of the specific entry The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_record_get_utf8_column_name_size
Retrieves the size of the UTF-8 encoded string of the column name of the specific entry The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_record_get_utf16_column_name
Retrieves the UTF-16 encoded string of the column name of the specific entry The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_record_get_utf16_column_name_size
Retrieves the size of the UTF-16 encoded string of the column name of the specific entry The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_record_get_value
Retrieves the value of the specific entry Returns 1 if successful or -1 on error
libesedb_record_get_value_8bit
Retrieves the 8-bit value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_16bit
Retrieves the 16-bit value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_32bit
Retrieves the 32-bit value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_64bit
Retrieves the 64-bit value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_binary_data
Retrieves the binary data value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_binary_data_size
Retrieves the binary data size of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_boolean
Retrieves the boolean value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_data
Retrieves the value data of the specific entry Returns 1 if successful or -1 on error
libesedb_record_get_value_data_flags
Retrieves the value data flags of the specific entry Returns 1 if successful or -1 on error
libesedb_record_get_value_data_size
Retrieves the value data size of the specific entry Returns 1 if successful or -1 on error
libesedb_record_get_value_filetime
Retrieves the 64-bit filetime value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_floating_point_32bit
Retrieves the single precision floating point value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_floating_point_64bit
Retrieves the double precision floating point value of a specific entry Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_utf8_string
Retrieves the UTF-8 encoded string of a specific entry The function uses the codepage in the column definition if necessary The size should include the end of string character Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_utf8_string_size
Retrieves the size of an UTF-8 encoded string a specific entry The returned size includes the end of string character Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_utf16_string
Retrieves the UTF-16 encoded string of a specific entry The function uses the codepage in the column definition if necessary The size should include the end of string character Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_get_value_utf16_string_size
Retrieves the size of an UTF-16 encoded string a specific entry The returned size includes the end of string character Returns 1 if successful, 0 if value is NULL or -1 on error
libesedb_record_is_long_value
Determines if a specific entry is a long value Returns 1 if true, 0 if not or -1 on error
libesedb_record_is_multi_value
Determines if a specific entry is a multi value Returns 1 if true, 0 if not or -1 on error
libesedb_set_codepage
Sets the narrow system string codepage A value of 0 represents no codepage, UTF-8 encoding is used instead Returns 1 if successful or -1 on error
libesedb_table_free
Frees a table Returns 1 if successful or -1 on error
libesedb_table_get_column
Retrieves the column for the specific entry
libesedb_table_get_identifier
Retrieves the table identifier or Father Data Page (FDP) object identifier Returns 1 if successful or -1 on error
libesedb_table_get_index
Retrieves the index for the specific entry Returns 1 if successful or -1 on error
libesedb_table_get_number_of_columns
Retrieves the number of columns in the table
libesedb_table_get_number_of_indexes
Retrieves the number of indexes Returns 1 if successful or -1 on error
libesedb_table_get_number_of_records
Retrieves the number of records in the table Returns 1 if successful or -1 on error
libesedb_table_get_record
Retrieves the record for the specific entry Returns 1 if successful or -1 on error
libesedb_table_get_utf8_name
Retrieves the UTF-8 encoded string of the table name The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_table_get_utf8_name_size
Retrieves the size of the UTF-8 encoded string of the table name The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_table_get_utf8_template_name
Retrieves the UTF-8 encoded string of the template name The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_table_get_utf8_template_name_size
Retrieves the size of the UTF-8 encoded string of the template name The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_table_get_utf16_name
Retrieves the UTF-16 encoded string of the table name The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_table_get_utf16_name_size
Retrieves the size of the UTF-16 encoded string of the table name The returned size includes the end of string character Returns 1 if successful or -1 on error
libesedb_table_get_utf16_template_name
Retrieves the UTF-16 encoded string of the template name The size should include the end of string character Returns 1 if successful or -1 on error
libesedb_table_get_utf16_template_name_size
Retrieves the size of the UTF-16 encoded string of the template name The returned size includes the end of string character Returns 1 if successful or -1 on error
mbrlen
mbrtowc
mbsrtowcs
mbsrtowcs_s
memchr
memcmp
memcpy
memmove
memset
perror
putc
putchar
puts
putw
putwc
putwchar
remove
rename
rewind
rmtmp
setbuf
setvbuf
strchr
strrchr
strstr
tempnam
tmpfile
tmpfile_s
tmpnam
tmpnam_s
towlower
towupper
ungetc
ungetwc
unlink
wcrtomb
wcrtomb_s
wcscat
wcscat_s
wcschr
wcscmp
wcscoll
wcscpy
wcscpy_s
wcscspn
wcsdup
wcsftime
wcsicmp
wcsicoll
wcslen
wcslwr
wcsncat
wcsncat_s
wcsncmp
wcsncpy
wcsncpy_s
wcsnicmp
wcsnlen
wcsnset
wcspbrk
wcsrchr
wcsrev
wcsrtombs
wcsrtombs_s
wcsset
wcsspn
wcsstr
wcstod
wcstof
wcstok
wcstok_s
wcstol
wcstold
wcstoll
wcstoul
wcstoull
wcsupr
wcsxfrm
wctob
wmemcpy_s
wmemmove_s

Type Aliases§

FILE
LIBESEDB_ACCESS_FLAGS
The access flags definitions bit 1 set to 1 for read access bit 2 set to 1 for write access bit 3-8 not used
LIBESEDB_ARGUMENT_ERROR
The argument error codes to signify errors regarding arguments passed to a function
LIBESEDB_CODEPAGES
The codepage definitions
LIBESEDB_COLUMN_TYPES
The column types
LIBESEDB_COMPRESSION_ERROR
The compression error codes to signify errors regarding compression
LIBESEDB_CONVERSION_ERROR
The conversion error codes to signify errors regarding conversions
LIBESEDB_ERROR_DOMAINS
The error domains
LIBESEDB_FILE_TYPES
The file types
LIBESEDB_GET_COLUMN_FLAGS
The get columns flags
LIBESEDB_INPUT_ERROR
The input error codes to signify errors regarding handing input data
LIBESEDB_IO_ERROR
The input/output error codes to signify errors regarding input/output
LIBESEDB_MEMORY_ERROR
The memory error codes to signify errors regarding memory
LIBESEDB_OUTPUT_ERROR
The output error codes
LIBESEDB_RUNTIME_ERROR
The runtime error codes to signify errors regarding runtime processing
LIBESEDB_VALUE_FLAGS
The value flags
_Wint_t
__builtin_va_list
__crt_bool
__time32_t
__time64_t
__vcrt_bool
_dev_t
_fsize_t
_ino_t
_locale_t
_off_t
dev_t
errno_t
fpos_t
ino_t
int_fast8_t
int_fast16_t
int_fast32_t
int_fast64_t
int_least8_t
int_least16_t
int_least32_t
int_least64_t
intmax_t
libesedb_column_t
The following type definitions hide internal data structures
libesedb_error_t
External error type definition hides internal structure
libesedb_file_t
libesedb_index_t
libesedb_long_value_t
libesedb_multi_value_t
libesedb_record_t
libesedb_table_t
mbstate_t
off64_t
off_t
rsize_t
size32_t
size64_t
ssize32_t
ssize64_t
time_t
uint_fast8_t
uint_fast16_t
uint_fast32_t
uint_fast64_t
uint_least8_t
uint_least16_t
uint_least32_t
uint_least64_t
uintmax_t
va_list
wchar_t
wctype_t
wint_t