I think this addresses all the feedback given on v1. Instead of packing things into 3 new status values, and using silent/noisy stderr as the deciding factor between returning OK or ERROR (which in turn required either code duplication or a nasty goto for control flow), this version uses 5 new status values. I also ended up adding 'nbdkit --dump-plugin eval | grep max_known_status' in able to more easily probe for when nbdkit is new enough to care about the new status values (which in turn will be handy in a patch I have pending for libnbd).
Eric Blake (2): sh: Advertise max known status in --dump-plugin sh: Add exit status triggers for nbdkit_{shutdown,disconnect} plugins/eval/nbdkit-eval-plugin.pod | 3 +- plugins/sh/nbdkit-sh-plugin.pod | 46 +++++- tests/Makefile.am | 4 + plugins/sh/call.h | 11 +- plugins/sh/call.c | 92 +++++------ plugins/sh/methods.c | 6 +- tests/test-eval-disconnect.sh | 236 ++++++++++++++++++++++++++++ tests/test-eval-dump-plugin.sh | 43 +++++ 8 files changed, 383 insertions(+), 58 deletions(-) create mode 100755 tests/test-eval-disconnect.sh create mode 100755 tests/test-eval-dump-plugin.sh -- 2.38.1 _______________________________________________ Libguestfs mailing list Libguestfs@redhat.com https://listman.redhat.com/mailman/listinfo/libguestfs