Velocidex / c-aff4

An AFF4 C++ implementation.
http://docs.aff4.org
Apache License 2.0
186 stars 35 forks source link

Calling AFF4_open() from C-Program results in Arithmetic exception #155

Open gida opened 6 months ago

gida commented 6 months ago

`#include "libaff4-c.h"

int main(int argc, char **pp_argv) { if (argc != 2) return 1;

AFF4_Handle h_aff4; AFF4_Message p_aff4_message = NULL;

h_aff4 = AFF4_open(pp_argv[1], &p_aff4_message); AFF4_close(h_aff4, &p_aff4_message);

return 0; }`

`Thread 1 "test" received signal SIGFPE, Arithmetic exception. 0x00005555556044ac in aff4::FileBackedObject::ReadBuffer(char, unsigned long) ()

0 0x00005555556044ac in aff4::FileBackedObject::ReadBuffer(char, unsigned long) ()

1 0x00005555555e0eb5 in aff4::ZipFileSegment::ReadBuffer(char, unsigned long) ()

2 0x00005555555c8568 in aff4::AFF4Stream::Read[abi:cxx11](unsigned long) ()

3 0x00005555555e0d48 in aff4::ZipFileSegment::Read[abi:cxx11](unsigned long) ()

4 0x00005555555b2cd1 in aff4::MemoryDataStore::LoadFromTurtle(aff4::AFF4Stream&) ()

5 0x00005555555de07a in aff4::ZipFile::LoadTurtleMetadata() ()

6 0x00005555555de5d5 in aff4::ZipFile::OpenZipFile(aff4::DataStore*, std::unique_ptr<aff4::AFF4Stream, aff4::AFF4Flusher_deleter>&&, std::unique_ptr<aff4::ZipFile, aff4::AFF4Flusher_deleter>&) ()

7 0x00005555555de45e in aff4::ZipFile::OpenZipFile(aff4::DataStore*, std::unique_ptr<aff4::AFF4Stream, aff4::AFF4Flusher_deleter>&&, std::unique_ptr<aff4::AFF4Volume, aff4::AFF4Flusher_deleter>&) ()

8 0x000055555556de92 in AFF4_Handle::open() ()

9 0x000055555556e411 in HandlePool::get(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) ()

10 0x0000555555564ae4 in AFF4_open ()

11 0x0000555555563f2a in main ()`