Hi everyone, lately I've been getting familiar with library and working on slight re-layering of the library. It's about having locking layer in public API and tracing one layer below that (let's call it __t_ layer. I'm not very good at making up names, so this is temporary:) ). Then making sure that all generated public stuff call __t_ layer and all other internal stuff doesn't use public API since it would deadlock otherwise. Now the problem - an example: Generator creates guestfs_copy_device_to_device_argv, but not guestfs_copy_device_to_device_argv version. Other issue: generated declaration for guestfs__internal_test in guestfs-internal-actions.h looks like this: extern int guestfs__internal_test (guestfs_h *g, const char *str, const char *optstr, char *const *strlist, int b, int integer, int64_t integer64, const char *filein, const char *fileout, const char *bufferin, size_t bufferin_size, ...); but, it's type in bindtests.c looks different: int guestfs__internal_test (guestfs_h *g, const char *str, const char *optstr, char *const *strlist, int b, int integer, int64_t integer64, const char *filein, const char *fileout, const char *bufferin, size_t bufferin_size, const struct guestfs_internal_test_argv *optargs) Any ideas, please? I'd very grateful for any :) - maros n.b.: please ignore some rubbish in sources, it's still WIP Maros Zatko (1): WIP locking/tracing layer split generator/c.ml | 165 +++++++++++++++++++++++++++++++++++++++++++------ src/fuse.c | 14 +++++ src/guestfs-internal.h | 3 + src/handle.c | 29 +++++---- src/inspect-fs.c | 10 +-- src/inspect-icon.c | 7 +++ src/tmpdirs.c | 2 +- 7 files changed, 193 insertions(+), 37 deletions(-) -- 1.8.5.3