On Thu, Jul 28, 2011 at 04:22:07PM -0700, Alex Nelson wrote:
I've been working on implementing the changes to hivexml Simson
noted in this old thread. Some of the changes could go into the
hivex project as it is now (e.g. I've corrected the time
calculations).
It's better to send small patches early, so we don't get any big
surprises later on.
Some are substantial revisions to the output XML
(not just element names), which by silent vote doesn't seem like a
big deal. However, I have one major revision that is difficult to
implement (for me, at least) while preserving the multiple language
bindings. I admire the project for having such diverse language
support, but I have to change some of the "visitor" function
prototypes and that is making development difficult. (My changes
are adding a few structs to track data offsets.)
Do you mean the "hivex_visit" and "hivex_visit_node" functions?
These
are only supported from C. Maybe I'm missing something?
BTW we have to preserve C ABI, so be careful about how you change any
C functions. It should be possible to extend the hivex_visitor struct
without changing the C ABI (this is what the 'len' argument is for).
How important is it to the hivex project that all of the language
bindings remain? If I were to just not develop for, e.g., Perl and
OCaml, would it be better to call the revised program "hivex" still,
or should the version I'm developing just fork into a slimmer
project?
It's very important that all the languages be preserved. However I
don't understand what the problem with visitor functions is, so ...
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming blog:
http://rwmj.wordpress.com
Fedora now supports 80 OCaml packages (the OPEN alternative to F#)
http://cocan.org/getting_started_with_ocaml_on_red_hat_and_fedora