summaryrefslogtreecommitdiffstats
path: root/generator
Commit message (Collapse)AuthorAgeFilesLines
* maint: remove definitions of PRId64 and PRIu64, ...Jim Meyering2011-06-281-9/+2
| | | | | | | | | now that we're using gnulib's inttypes module, which ensures that we use a conforming <inttypes.h>. * bootstrap (modules): Add inttypes. * generator/generator.ml (generate_perl_xs) [PRId64, PRIu64]: Don't define these symbols. Instead, ... Include <inttypes.h>.
* hivex_root: Return errno == HIVEX_NO_KEY when root key is missing.Richard W.M. Jones2011-05-131-1/+8
| | | | | | | | | | Previously we returned errno == ENOKEY. However this was an unfortunate choice of error code since it is not defined in POSIX. As a result it is missing on several platforms. HIVEX_NO_KEY is defined as ENOKEY on platforms where this symbol exists (thus maintaining backwards ABI compatibility), and defined as another POSIX error code otherwise.
* Include generator in the tarball.Richard W.M. Jones2011-04-281-0/+20
|
* hivex/python fix for i386 integer size issueHilko Bengen2011-04-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hi, While working on Debian packages of hivex 1.2.5, I came across a test failure for the Python bindings with Python 2.7 on the i386 architecture. (The tests ran fine on amd64.) ,---- | $ make -C python check | make[1]: Entering directory `/home/bengen/src/deb/hivex/hivex.git/python' | 010-import.py | 020-open.py | 021-close.py | 200-write.py | python: hivex-py.c:52: get_handle: Assertion `obj' failed. `---- I narrowed this down to hivex-py.c:py_hivex_node_add_child(): The call ,---- | PyArg_ParseTuple (args, (char *) "OLs:hivex_node_add_child", | &py_h, &parent, &name) `---- results in `py_h' set to NULL, though Python's documentation claims that this cannot happen. I think this happens because `parent' is declared a `long int', but "L" in the format string corresponds to a `long long'. On amd64, they have the same size, but on i386 they don't, so the PyObject pointer is written to the wrong address. Please consider applying the patch below which just changes the format string. After regenerating hivex-py.c, I have successfully tested the 1.2.5 code base on both architectures. Cheers, -Hilko
* Refresh documentation.Richard W.M. Jones2010-12-231-30/+49
|
* ocaml: Fix segfault in Hivex.value_value binding.Richard W.M. Jones2010-12-161-1/+1
|
* Python bindings.Richard W.M. Jones2010-11-281-8/+502
|
* perl: Fix generated XS code for value_dword binding.Richard Jones2010-07-111-1/+15
| | | | Thanks to Hilko Bengen for spotting the problem.
* Add hivex_set_value API call, and ocaml and perl bindings, and tests.Conrad Meyer2010-07-081-2/+76
|
* hivex_value_type: Returns -1 on error. Fix documentation.Richard Jones2010-06-131-1/+1
|
* Add a linker script to limit visibility to exported symbols.Richard Jones2010-04-031-0/+28
|
* perl: Fix $h->value_value method when returning an empty value.Richard Jones2010-03-251-1/+1
| | | | | | | Previously this didn't correctly return an empty registry value. In this case the length argument to newSVpv would be 0 which tells Perl to try to calculate the length (we want newSVpvn instead).
* perl: Fix $h->value_type and $h->value_value methods.Richard Jones2010-03-251-2/+2
| | | | | | These were passing the type & len arguments the wrong way round to the C function, resulting in data corruption in the returned values.
* Fix documentation for Win::Hivex->openRichard Jones2010-03-081-1/+1
|
* RHEL 5: Fixes for old version of OCaml in EPEL 5.Richard Jones2010-03-011-0/+22
|
* NO Python bindings - ran out of time.Richard W.M. Jones2010-02-261-0/+3
| | | | | | This commit disables parts of the build related to Python and notes in the README that we didn't have time to finish Python bindings.
* generator: Perl bindings.Richard W.M. Jones2010-02-261-19/+601
| | | | This also adds a small test suite for the Perl bindings.
* generator: Clarify LGPLv2 boilerplate.Richard W.M. Jones2010-02-261-1/+1
|
* generator: Add OCaml bindings.Richard Jones2010-02-241-9/+548
| | | | | | | Also we tighten up the definition of hivex_close (it disposes of handles) and hivex_node_get_child (unusual "not found" non-error condition). This also adds tests of the OCaml bindings.
* Add build framework for OCaml, Perl, Python bindings.Richard Jones2010-02-241-0/+33
| | | | | (No bindings are actually built, this just adds the build, test and generator framework for them).
* Rename hivex/ -> lib/Richard Jones2010-02-241-2/+2
|
* generator: More minor formatting adjustments to POD documentation.Richard Jones2010-02-221-0/+3
|
* generator: Minor adjustments to the C POD documentation.Richard Jones2010-02-221-29/+34
|
* Add a generator for generating bindings to other languages.Richard Jones2010-02-221-0/+1358
At the moment the generator just generates the C header file and C POD documentation. This just so we can compare the existing hand-written code with the generated code to make sure that our description of the API within the generator is correct.