---
name: "libesedb"
section: "3"
platform: "linux"
package: "libesedb-dev"
version: "20240420-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/libesedb"
---

# libesedb(3)

Library to access the Extensible Storage Engine (ESE) Database File (EDB) format

## NAME

**libesedb.h** – Library to access the Extensible Storage Engine (ESE) Database File (EDB) format

## SYNOPSIS

**#include \<libesedb.h\>**

Support functions

*const* *char* *\**\

**libesedb\_get\_version**(*void*);

*int*\

**libesedb\_get\_access\_flags\_read**(*void*);

*int*\

**libesedb\_get\_codepage**(*int \*codepage*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_set\_codepage**(*int codepage*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_check\_file\_signature**(*const char \*filename*, *libesedb\_error\_t \*\*error*);

Available when compiled with wide character string support:

*int*\

**libesedb\_check\_file\_signature\_wide**(*const wchar\_t \*filename*, *libesedb\_error\_t \*\*error*);

Available when compiled with libbfio support:

*int*\

**libesedb\_check\_file\_signature\_file\_io\_handle**(*libbfio\_handle\_t \*bfio\_handle*, *libesedb\_error\_t \*\*error*);

Notify functions

*void*\

**libesedb\_notify\_set\_verbose**(*int verbose*);

*int*\

**libesedb\_notify\_set\_stream**(*FILE \*stream*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_notify\_stream\_open**(*const char \*filename*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_notify\_stream\_close**(*libesedb\_error\_t \*\*error*);

Error functions

*void*\

**libesedb\_error\_free**(*libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_error\_fprint**(*libesedb\_error\_t \*error*, *FILE \*stream*);

*int*\

**libesedb\_error\_sprint**(*libesedb\_error\_t \*error*, *char \*string*, *size\_t size*);

*int*\

**libesedb\_error\_backtrace\_fprint**(*libesedb\_error\_t \*error*, *FILE \*stream*);

*int*\

**libesedb\_error\_backtrace\_sprint**(*libesedb\_error\_t \*error*, *char \*string*, *size\_t size*);

File functions

*int*\

**libesedb\_file\_initialize**(*libesedb\_file\_t \*\*file*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_free**(*libesedb\_file\_t \*\*file*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_signal\_abort**(*libesedb\_file\_t \*file*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_open**(*libesedb\_file\_t \*file*, *const char \*filename*, *int access\_flags*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_close**(*libesedb\_file\_t \*file*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_get\_type**(*libesedb\_file\_t \*file*, *uint32\_t \*type*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_get\_format\_version**(*libesedb\_file\_t \*file*, *uint32\_t \*format\_version*, *uint32\_t \*format\_revision*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_get\_creation\_format\_version**(*libesedb\_file\_t \*file*, *uint32\_t \*format\_version*, *uint32\_t \*format\_revision*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_get\_page\_size**(*libesedb\_file\_t \*file*, *uint32\_t \*page\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_get\_number\_of\_tables**(*libesedb\_file\_t \*file*, *int \*number\_of\_tables*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_get\_table**(*libesedb\_file\_t \*file*, *int table\_entry*, *libesedb\_table\_t \*\*table*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_get\_table\_by\_utf8\_name**(*libesedb\_file\_t \*file*, *const uint8\_t \*utf8\_string*, *size\_t utf8\_string\_length*, *libesedb\_table\_t \*\*table*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_file\_get\_table\_by\_utf16\_name**(*libesedb\_file\_t \*file*, *const uint16\_t \*utf16\_string*, *size\_t utf16\_string\_length*, *libesedb\_table\_t \*\*table*, *libesedb\_error\_t \*\*error*);

Available when compiled with wide character string support:

*int*\

**libesedb\_file\_open\_wide**(*libesedb\_file\_t \*file*, *const wchar\_t \*filename*, *int access\_flags*, *libesedb\_error\_t \*\*error*);

Available when compiled with libbfio support:

*int*\

**libesedb\_file\_open\_file\_io\_handle**(*libesedb\_file\_t \*file*, *libbfio\_handle\_t \*file\_io\_handle*, *int access\_flags*, *libesedb\_error\_t \*\*error*);

Table functions

*int*\

**libesedb\_table\_free**(*libesedb\_table\_t \*\*table*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_identifier**(*libesedb\_table\_t \*table*, *uint32\_t \*identifier*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_utf8\_name\_size**(*libesedb\_table\_t \*table*, *size\_t \*utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_utf8\_name**(*libesedb\_table\_t \*table*, *uint8\_t \*utf8\_string*, *size\_t utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_utf16\_name\_size**(*libesedb\_table\_t \*table*, *size\_t \*utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_utf16\_name**(*libesedb\_table\_t \*table*, *uint16\_t \*utf16\_string*, *size\_t utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_utf8\_template\_name\_size**(*libesedb\_table\_t \*table*, *size\_t \*utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_utf8\_template\_name**(*libesedb\_table\_t \*table*, *uint8\_t \*utf8\_string*, *size\_t utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_utf16\_template\_name\_size**(*libesedb\_table\_t \*table*, *size\_t \*utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_utf16\_template\_name**(*libesedb\_table\_t \*table*, *uint16\_t \*utf16\_string*, *size\_t utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_number\_of\_columns**(*libesedb\_table\_t \*table*, *int \*number\_of\_columns*, *uint8\_t flags*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_column**(*libesedb\_table\_t \*table*, *int column\_entry*, *libesedb\_column\_t \*\*column*, *uint8\_t flags*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_number\_of\_indexes**(*libesedb\_table\_t \*table*, *int \*number\_of\_indexes*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_index**(*libesedb\_table\_t \*table*, *int index\_entry*, *libesedb\_index\_t \*\*index*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_number\_of\_records**(*libesedb\_table\_t \*table*, *int \*number\_of\_records*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_table\_get\_record**(*libesedb\_table\_t \*table*, *int record\_entry*, *libesedb\_record\_t \*\*record*, *libesedb\_error\_t \*\*error*);

Column functions

*int*\

**libesedb\_column\_free**(*libesedb\_column\_t \*\*column*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_column\_get\_identifier**(*libesedb\_column\_t \*column*, *uint32\_t \*identifier*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_column\_get\_type**(*libesedb\_column\_t \*column*, *uint32\_t \*type*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_column\_get\_utf8\_name\_size**(*libesedb\_column\_t \*column*, *size\_t \*utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_column\_get\_utf8\_name**(*libesedb\_column\_t \*column*, *uint8\_t \*utf8\_string*, *size\_t utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_column\_get\_utf16\_name\_size**(*libesedb\_column\_t \*column*, *size\_t \*utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_column\_get\_utf16\_name**(*libesedb\_column\_t \*column*, *uint16\_t \*utf16\_string*, *size\_t utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

Index functions

*int*\

**libesedb\_index\_free**(*libesedb\_index\_t \*\*index*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_index\_get\_identifier**(*libesedb\_index\_t \*index*, *uint32\_t \*identifier*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_index\_get\_utf8\_name\_size**(*libesedb\_index\_t \*index*, *size\_t \*utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_index\_get\_utf8\_name**(*libesedb\_index\_t \*index*, *uint8\_t \*utf8\_string*, *size\_t utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_index\_get\_utf16\_name\_size**(*libesedb\_index\_t \*index*, *size\_t \*utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_index\_get\_utf16\_name**(*libesedb\_index\_t \*index*, *uint16\_t \*utf16\_string*, *size\_t utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_index\_get\_number\_of\_records**(*libesedb\_index\_t \*index*, *int \*number\_of\_records*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_index\_get\_record**(*libesedb\_index\_t \*index*, *int record\_entry*, *libesedb\_record\_t \*\*record*, *libesedb\_error\_t \*\*error*);

Record (row) functions

*int*\

**libesedb\_record\_free**(*libesedb\_record\_t \*\*record*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_number\_of\_values**(*libesedb\_record\_t \*record*, *int \*number\_of\_values*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_column\_identifier**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint32\_t \*column\_identifier*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_column\_type**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint32\_t \*column\_type*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_utf8\_column\_name\_size**(*libesedb\_record\_t \*record*, *int value\_entry*, *size\_t \*utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_utf8\_column\_name**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint8\_t \*utf8\_string*, *size\_t utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_utf16\_column\_name\_size**(*libesedb\_record\_t \*record*, *int value\_entry*, *size\_t \*utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_utf16\_column\_name**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint16\_t \*utf16\_string*, *size\_t utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_data\_size**(*libesedb\_record\_t \*record*, *int value\_entry*, *size\_t \*value\_data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_data**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint8\_t \*value\_data*, *size\_t value\_data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_data\_flags**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint8\_t \*value\_data\_flags*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_boolean**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint8\_t \*value\_boolean*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_8bit**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint8\_t \*value\_8bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_16bit**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint16\_t \*value\_16bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_32bit**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint32\_t \*value\_32bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_64bit**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint64\_t \*value\_64bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_filetime**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint64\_t \*value\_filetime*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_floating\_point\_32bit**(*libesedb\_record\_t \*record*, *int value\_entry*, *float \*value\_floating\_point\_32bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_floating\_point\_64bit**(*libesedb\_record\_t \*record*, *int value\_entry*, *double \*value\_floating\_point\_64bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_utf8\_string\_size**(*libesedb\_record\_t \*record*, *int value\_entry*, *size\_t \*utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_utf8\_string**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint8\_t \*utf8\_string*, *size\_t utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_utf16\_string\_size**(*libesedb\_record\_t \*record*, *int value\_entry*, *size\_t \*utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_utf16\_string**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint16\_t \*utf16\_string*, *size\_t utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_binary\_data\_size**(*libesedb\_record\_t \*record*, *int value\_entry*, *size\_t \*binary\_data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_value\_binary\_data**(*libesedb\_record\_t \*record*, *int value\_entry*, *uint8\_t \*binary\_data*, *size\_t binary\_data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_is\_long\_value**(*libesedb\_record\_t \*record*, *int value\_entry*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_is\_multi\_value**(*libesedb\_record\_t \*record*, *int value\_entry*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_long\_value**(*libesedb\_record\_t \*record*, *int value\_entry*, *libesedb\_long\_value\_t \*\*long\_value*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_record\_get\_multi\_value**(*libesedb\_record\_t \*record*, *int value\_entry*, *libesedb\_multi\_value\_t \*\*multi\_value*, *libesedb\_error\_t \*\*error*);

Long value functions

*int*\

**libesedb\_long\_value\_free**(*libesedb\_long\_value\_t \*\*long\_value*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_data\_size**(*libesedb\_long\_value\_t \*long\_value*, *size64\_t \*data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_data**(*libesedb\_long\_value\_t \*long\_value*, *uint8\_t \*data*, *size\_t data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_number\_of\_data\_segments**(*libesedb\_long\_value\_t \*long\_value*, *int \*number\_of\_data\_segments*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_data\_segment\_size**(*libesedb\_long\_value\_t \*long\_value*, *int data\_segment\_index*, *size\_t \*data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_data\_segment**(*libesedb\_long\_value\_t \*long\_value*, *int data\_segment\_index*, *uint8\_t \*data\_segment*, *size\_t data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_utf8\_string\_size**(*libesedb\_long\_value\_t \*long\_value*, *size\_t \*utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_utf8\_string**(*libesedb\_long\_value\_t \*long\_value*, *uint8\_t \*utf8\_string*, *size\_t utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_utf16\_string\_size**(*libesedb\_long\_value\_t \*long\_value*, *size\_t \*utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_long\_value\_get\_utf16\_string**(*libesedb\_long\_value\_t \*long\_value*, *uint16\_t \*utf16\_string*, *size\_t utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

Multi value functions

*int*\

**libesedb\_multi\_value\_free**(*libesedb\_multi\_value\_t \*\*multi\_value*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_column\_type**(*libesedb\_multi\_value\_t \*multi\_value*, *uint32\_t \*column\_type*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_number\_of\_values**(*libesedb\_multi\_value\_t \*multi\_value*, *int \*number\_of\_values*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_data\_size**(*libesedb\_multi\_value\_t \*multi\_value*, *int value\_entry*, *size\_t \*value\_data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_data**(*libesedb\_multi\_value\_t \*multi\_value*, *int value\_entry*, *uint8\_t \*value\_data*, *size\_t value\_data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_8bit**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *uint8\_t \*value\_8bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_16bit**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *uint16\_t \*value\_16bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_32bit**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *uint32\_t \*value\_32bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_64bit**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *uint64\_t \*value\_64bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_floating\_point\_32bit**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *float \*value\_32bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_floating\_point\_64bit**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *double \*value\_64bit*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_filetime**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *uint64\_t \*value\_filetime*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_utf8\_string\_size**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *size\_t \*utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_utf8\_string**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *uint8\_t \*utf8\_string*, *size\_t utf8\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_utf16\_string\_size**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *size\_t \*utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_utf16\_string**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *uint16\_t \*utf16\_string*, *size\_t utf16\_string\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_binary\_data\_size**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *size\_t \*binary\_data\_size*, *libesedb\_error\_t \*\*error*);

*int*\

**libesedb\_multi\_value\_get\_value\_binary\_data**(*libesedb\_multi\_value\_t \*multi\_value*, *int multi\_value\_index*, *uint8\_t \*binary\_data*, *size\_t binary\_data\_size*, *libesedb\_error\_t \*\*error*);

## DESCRIPTION

The **libesedb\_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 "libesedb.h".

## ENVIRONMENT

None

## FILES

None

## NOTES

libesedb can be compiled with wide character support (wchar\_t).

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

*LIBESEDB\_WIDE\_CHARACTER\_TYPE*\
  in libesedb/features.h can be used to determine if libesedb was compiled with wide character support.

## BUGS

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

## AUTHOR

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

## COPYRIGHT

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