nbd/ericb.git
8 years agoVersion 1.1.8.v1.1.8
Richard W.M. Jones [Sat, 21 Jun 2014 21:18:53 +0000 (21 22:18 +0100)]
Version 1.1.8.

8 years agoAdd Curl plugin for HTTP/FTP/etc.
Richard W.M. Jones [Sat, 21 Jun 2014 11:39:26 +0000 (21 12:39 +0100)]
Add Curl plugin for HTTP/FTP/etc.

8 years agoVersion 1.1.7.v1.1.7
Richard W.M. Jones [Fri, 20 Jun 2014 21:46:02 +0000 (20 22:46 +0100)]
Version 1.1.7.

8 years agoFix parsing of long options.
Richard W.M. Jones [Fri, 20 Jun 2014 21:05:13 +0000 (20 22:05 +0100)]
Fix parsing of long options.

Unknown long options would cause a segfault, because the list of long
options was not NULL-terminated.  Oops.

8 years agoDocument signals handled by the server.
Richard W.M. Jones [Fri, 20 Jun 2014 21:00:19 +0000 (20 22:00 +0100)]
Document signals handled by the server.

However don't document SIGHUP, since in future we might want this to
do something different, eg. reload configuration.

Thanks: Cristian Ciupitu.

8 years agotests: Test the nbdkit command line more thoroughly.
Richard W.M. Jones [Sun, 16 Feb 2014 12:10:01 +0000 (16 12:10 +0000)]
tests: Test the nbdkit command line more thoroughly.

8 years agoDon't pass NULL pointer to asprintf when generating --run command.
Richard W.M. Jones [Sun, 16 Feb 2014 12:55:48 +0000 (16 12:55 +0000)]
Don't pass NULL pointer to asprintf when generating --run command.

This fixes commit 4ce0dbc3f425e6d609cc6739dac8c23b44b1c61b.

8 years agoVersion 1.1.6.v1.1.6
Richard W.M. Jones [Sun, 16 Feb 2014 10:50:51 +0000 (16 10:50 +0000)]
Version 1.1.6.

8 years agoAdd --run option to run captive nbdkit.
Richard W.M. Jones [Sun, 16 Feb 2014 09:55:46 +0000 (16 09:55 +0000)]
Add --run option to run captive nbdkit.

8 years agodocs: Link to Perl & Python plugins from main nbdkit(1) man page.
Richard W.M. Jones [Sat, 15 Feb 2014 13:48:38 +0000 (15 13:48 +0000)]
docs: Link to Perl & Python plugins from main nbdkit(1) man page.

8 years agodocs: Add documentation for installing the plugin and writing plugins in other languages.
Richard W.M. Jones [Sat, 15 Feb 2014 11:40:41 +0000 (15 11:40 +0000)]
docs: Add documentation for installing the plugin and writing plugins in other languages.

8 years agotests: Enable maximal debugging.
Richard W.M. Jones [Sat, 15 Feb 2014 09:11:36 +0000 (15 09:11 +0000)]
tests: Enable maximal debugging.

The debugging is written to the tests/*.log files.  Make sure we
collect as much debugging as possible in case there are any problems.

8 years agotests: Add a comment about use of temporary directories.
Richard W.M. Jones [Sat, 15 Feb 2014 09:11:17 +0000 (15 09:11 +0000)]
tests: Add a comment about use of temporary directories.

8 years agopython: Add a test for the Python plugin.
Richard W.M. Jones [Sat, 15 Feb 2014 09:03:02 +0000 (15 09:03 +0000)]
python: Add a test for the Python plugin.

8 years agoperl: Add a test for the Perl plugin.
Richard W.M. Jones [Sat, 15 Feb 2014 08:49:25 +0000 (15 08:49 +0000)]
perl: Add a test for the Perl plugin.

8 years agoREADME: Clarify and fix dependencies.
Richard W.M. Jones [Sat, 15 Feb 2014 08:30:05 +0000 (15 08:30 +0000)]
README: Clarify and fix dependencies.

8 years agoVersion 1.1.5.v1.1.5
Richard W.M. Jones [Sat, 15 Feb 2014 07:35:51 +0000 (15 07:35 +0000)]
Version 1.1.5.

8 years agopython: Fix name of example script in EXTRA_DIST.
Richard W.M. Jones [Sat, 15 Feb 2014 07:36:54 +0000 (15 07:36 +0000)]
python: Fix name of example script in EXTRA_DIST.

8 years agopython: New plugin that lets you write plugins as Python scripts.
Richard W.M. Jones [Mon, 10 Feb 2014 14:17:15 +0000 (10 15:17 +0100)]
python: New plugin that lets you write plugins as Python scripts.

8 years agoperl: Fix typo'd function name in manual page.
Richard W.M. Jones [Fri, 14 Feb 2014 17:40:23 +0000 (14 17:40 +0000)]
perl: Fix typo'd function name in manual page.

8 years agoRetrieve libperl linking information from ExtUtils::Embed as suggested by perlembed(1)
Hilko Bengen [Thu, 13 Feb 2014 17:54:29 +0000 (13 18:54 +0100)]
Retrieve libperl linking information from ExtUtils::Embed as suggested by perlembed(1)

perl -MConfig -e 'print $Config{ldflags}' gave me

    -lgdbm -lgdbm_compat -ldb -ldl -lm -lpthread -lc -lcrypt

with Perl 5.18 as configured on Debian/unstable.

8 years agoWork around what seems like an bug in automake 1.14
Hilko Bengen [Thu, 13 Feb 2014 17:51:48 +0000 (13 18:51 +0100)]
Work around what seems like an bug in automake 1.14

"AM_INIT_AUTOMAKE(foreign) dnl ..." seems to trigger Debian bug#738716

8 years agodocs: Fix man page name in various plugin man pages.
Richard W.M. Jones [Mon, 10 Feb 2014 13:50:09 +0000 (10 14:50 +0100)]
docs: Fix man page name in various plugin man pages.

8 years agodocs: Link to nbdkit-perl-plugin(3) in the nbdkit-plugin(3) man page.
Richard W.M. Jones [Mon, 10 Feb 2014 13:48:11 +0000 (10 14:48 +0100)]
docs: Link to nbdkit-perl-plugin(3) in the nbdkit-plugin(3) man page.

8 years agoperl: Enhance nbdkit-perl-plugin man page.
Richard W.M. Jones [Mon, 10 Feb 2014 13:47:56 +0000 (10 14:47 +0100)]
perl: Enhance nbdkit-perl-plugin man page.

8 years agoperl: Move nbdkit-perl-plugin man page to section 3.
Richard W.M. Jones [Mon, 10 Feb 2014 13:47:30 +0000 (10 14:47 +0100)]
perl: Move nbdkit-perl-plugin man page to section 3.

Since it's a programming man page.

This fixes commit 6edf6b4e261011342c40e871231d8430db31f490.

8 years agoperl: Enhance documentation for example plugin.
Richard W.M. Jones [Mon, 10 Feb 2014 13:46:41 +0000 (10 14:46 +0100)]
perl: Enhance documentation for example plugin.

This fixes commit 6edf6b4e261011342c40e871231d8430db31f490.

8 years agoVersion 1.1.4.v1.1.4
Richard W.M. Jones [Mon, 10 Feb 2014 11:47:57 +0000 (10 12:47 +0100)]
Version 1.1.4.

8 years agoAdd Perl example to EXTRA_DIST.
Richard W.M. Jones [Mon, 10 Feb 2014 11:50:56 +0000 (10 12:50 +0100)]
Add Perl example to EXTRA_DIST.

This fixes commit 6edf6b4e261011342c40e871231d8430db31f490.

8 years agoperl: New plugin lets you write plugins as Perl scripts.
Richard W.M. Jones [Thu, 6 Feb 2014 13:42:38 +0000 (6 13:42 +0000)]
perl: New plugin lets you write plugins as Perl scripts.

8 years agoUpdate TODO file with further ideas.
Richard W.M. Jones [Thu, 6 Feb 2014 13:21:37 +0000 (6 13:21 +0000)]
Update TODO file with further ideas.

8 years agoAdd nbdkit --dump-config option to print libdir, plugindir.
Richard W.M. Jones [Thu, 6 Feb 2014 13:20:01 +0000 (6 13:20 +0000)]
Add nbdkit --dump-config option to print libdir, plugindir.

8 years agoAdd a shorter syntax for plugin names.
Richard W.M. Jones [Thu, 6 Feb 2014 13:10:42 +0000 (6 13:10 +0000)]
Add a shorter syntax for plugin names.

You can now write:

  nbdkit gzip [args..]

instead of having to specify the plugin directory:

  nbdkit /usr/lib64/nbdkit/plugins/nbdkit-gzip-plugin.so

8 years agosrc: Refactor dlopen into separate function.
Richard W.M. Jones [Thu, 6 Feb 2014 11:26:00 +0000 (6 11:26 +0000)]
src: Refactor dlopen into separate function.

This is just code motion.

8 years agoplugins: Fix small typo in man pages.
Richard W.M. Jones [Thu, 6 Feb 2014 11:17:26 +0000 (6 11:17 +0000)]
plugins: Fix small typo in man pages.

8 years agonbdkit: Fix documentation for -U option.
Richard W.M. Jones [Mon, 23 Sep 2013 12:31:13 +0000 (23 13:31 +0100)]
nbdkit: Fix documentation for -U option.

nbdkit -U does create the socket which is not what was stated in the
documentation before.  However the permissions are likely to be too
permissive by default, so note how the caller can protect the socket.

Also the caller will probably want to delete the socket file
afterwards.

8 years agoVersion 1.1.3.v1.1.3
Richard W.M. Jones [Sun, 4 Aug 2013 21:37:42 +0000 (4 22:37 +0100)]
Version 1.1.3.

8 years agotests: Use check_LTLIBRARIES instead of noinst_LTLIBRARIES.
Richard W.M. Jones [Sun, 4 Aug 2013 21:33:17 +0000 (4 22:33 +0100)]
tests: Use check_LTLIBRARIES instead of noinst_LTLIBRARIES.

8 years agotests: Use check_DATA instead of noinst_DATA for test files.
Richard W.M. Jones [Sun, 4 Aug 2013 21:30:54 +0000 (4 22:30 +0100)]
tests: Use check_DATA instead of noinst_DATA for test files.

This prevents the files needing to be created / guestfish being run
outside 'make check'.

8 years agoIgnore test files.
Richard W.M. Jones [Sun, 4 Aug 2013 21:32:01 +0000 (4 22:32 +0100)]
Ignore test files.

9 years ago'struct sockaddr' is not large enough to store a general sockaddr.
Michael Scherer [Sun, 21 Jul 2013 20:59:28 +0000 (21 21:59 +0100)]
'struct sockaddr' is not large enough to store a general sockaddr.

In particular, if IPv6 is used, then sizeof sockaddr_in6 > sizeof sockaddr,
resulting in a segfault:

https://bugzilla.redhat.com/show_bug.cgi?id=986601

RWMJ:
 - Minor formatting
 - Free tls->addr on normal exit path

9 years agoVersion 1.1.2.v1.1.2
Richard W.M. Jones [Tue, 16 Jul 2013 11:04:49 +0000 (16 12:04 +0100)]
Version 1.1.2.

9 years agodocs: Add complete list of plugins to nbdkit(1).
Richard W.M. Jones [Tue, 16 Jul 2013 11:03:40 +0000 (16 12:03 +0100)]
docs: Add complete list of plugins to nbdkit(1).

9 years agoAdd VMware VDDK plugin.
Richard W.M. Jones [Thu, 27 Jun 2013 13:11:48 +0000 (27 14:11 +0100)]
Add VMware VDDK plugin.

This can currently only access VMDK files, but it would not be hard to
extend it to access ESX servers and Virtual Center.

9 years agoREADME: Add guestfish, needed to run some parts of the test suite.
Richard W.M. Jones [Thu, 27 Jun 2013 11:15:50 +0000 (27 12:15 +0100)]
README: Add guestfish, needed to run some parts of the test suite.

This updates commit 3030b5c61074eb9a2b9348049c6e2891bca718e3.

9 years agoAdd build instructions to README file.
Richard W.M. Jones [Thu, 27 Jun 2013 11:02:34 +0000 (27 12:02 +0100)]
Add build instructions to README file.

9 years agoUpdate TODO.
Richard W.M. Jones [Thu, 27 Jun 2013 10:56:01 +0000 (27 11:56 +0100)]
Update TODO.

9 years agoSmall tweak to README file.
Richard W.M. Jones [Tue, 25 Jun 2013 22:51:44 +0000 (25 23:51 +0100)]
Small tweak to README file.

9 years agotests: Add test of file plugin.
Richard W.M. Jones [Tue, 25 Jun 2013 22:37:35 +0000 (25 23:37 +0100)]
tests: Add test of file plugin.

9 years agotests: Remove unnecessary comment from code.
Richard W.M. Jones [Tue, 25 Jun 2013 22:37:17 +0000 (25 23:37 +0100)]
tests: Remove unnecessary comment from code.

9 years agotests: Add a test of the xz plugin.
Richard W.M. Jones [Tue, 25 Jun 2013 22:22:03 +0000 (25 23:22 +0100)]
tests: Add a test of the xz plugin.

9 years agotests: Add a test of the gzip plugin.
Richard W.M. Jones [Tue, 25 Jun 2013 22:16:29 +0000 (25 23:16 +0100)]
tests: Add a test of the gzip plugin.

9 years agoVersion 1.1.1v1.1.1
Richard W.M. Jones [Tue, 25 Jun 2013 21:22:49 +0000 (25 22:22 +0100)]
Version 1.1.1

9 years agoAdd test framework and some tests.
Richard W.M. Jones [Tue, 25 Jun 2013 20:21:39 +0000 (25 21:21 +0100)]
Add test framework and some tests.

9 years agoserver: Fix -U option so it copies trailing ASCII NUL character.
Richard W.M. Jones [Tue, 25 Jun 2013 20:50:18 +0000 (25 21:50 +0100)]
server: Fix -U option so it copies trailing ASCII NUL character.

The existing code calculated the length of the string to copy
incorrectly, resulting in it creating a garbage socket name.

9 years agoAdd libguestfs plugin.
Richard W.M. Jones [Tue, 25 Jun 2013 12:31:28 +0000 (25 13:31 +0100)]
Add libguestfs plugin.

9 years agoNew development branch.
Richard W.M. Jones [Mon, 24 Jun 2013 18:34:20 +0000 (24 19:34 +0100)]
New development branch.

9 years agoplugins/example3: Minor typo in man page.
Richard W.M. Jones [Mon, 24 Jun 2013 18:09:49 +0000 (24 19:09 +0100)]
plugins/example3: Minor typo in man page.

9 years agoVersion 1.0.0.v1.0.0
Richard W.M. Jones [Mon, 24 Jun 2013 14:35:15 +0000 (24 15:35 +0100)]
Version 1.0.0.

Declare the interface stable.

9 years agoplugins/xz: Fix debug vs error mixup.
Richard W.M. Jones [Mon, 24 Jun 2013 14:43:20 +0000 (24 15:43 +0100)]
plugins/xz: Fix debug vs error mixup.

9 years agoplugins/example1: Fix EXTRA_DIST rule.
Richard W.M. Jones [Mon, 24 Jun 2013 14:36:47 +0000 (24 15:36 +0100)]
plugins/example1: Fix EXTRA_DIST rule.

9 years agoUpdate TODO file.
Richard W.M. Jones [Mon, 24 Jun 2013 14:34:02 +0000 (24 15:34 +0100)]
Update TODO file.

9 years agoxz: Add a reasonable block cache.
Richard W.M. Jones [Mon, 24 Jun 2013 14:32:04 +0000 (24 15:32 +0100)]
xz: Add a reasonable block cache.

LRU with a default depth of 8.

Random access to a Windows guest gets ~85% hit rate, which is
considerably better than the < 30% hit rate achieved by the previous
effort.

9 years agoUpdate TODO file.
Richard W.M. Jones [Mon, 24 Jun 2013 13:40:50 +0000 (24 14:40 +0100)]
Update TODO file.

9 years agoxzfile: lzma_code does not necessarily consume all input.
Richard W.M. Jones [Mon, 24 Jun 2013 12:39:52 +0000 (24 13:39 +0100)]
xzfile: lzma_code does not necessarily consume all input.

9 years agoAdd xz plugin.
Richard W.M. Jones [Sat, 22 Jun 2013 12:39:36 +0000 (22 13:39 +0100)]
Add xz plugin.

9 years agonbdkit_parse_size: Fix parsing of numbers followed by qualifier character.
Richard W.M. Jones [Mon, 24 Jun 2013 11:20:02 +0000 (24 12:20 +0100)]
nbdkit_parse_size: Fix parsing of numbers followed by qualifier character.

9 years agoplugins: Rename from libnbdkit-foo to nbdkit-foo-plugin.
Richard W.M. Jones [Sat, 22 Jun 2013 12:54:18 +0000 (22 13:54 +0100)]
plugins: Rename from libnbdkit-foo to nbdkit-foo-plugin.

libtool supports the -module option which stops it from whinging about
filenames.

9 years agodoc: Add a note about using your own mutexes in plugins.
Richard W.M. Jones [Sat, 22 Jun 2013 10:26:09 +0000 (22 11:26 +0100)]
doc: Add a note about using your own mutexes in plugins.

9 years agoAdd gzip plugin.
Richard W.M. Jones [Fri, 21 Jun 2013 16:56:56 +0000 (21 17:56 +0100)]
Add gzip plugin.

9 years agoserver: If plugin data call doesn't set errno, return EIO.
Richard W.M. Jones [Fri, 21 Jun 2013 17:20:18 +0000 (21 18:20 +0100)]
server: If plugin data call doesn't set errno, return EIO.

Ensure that *error is set to something, else we do undesirable things
like reading garbage data or ignore writes without indicating to the
client that there was an error.

9 years agoserver: Add gcc format attribute to detect errors in nbdkit_error/nbdkit_debug.
Richard W.M. Jones [Fri, 21 Jun 2013 16:58:46 +0000 (21 17:58 +0100)]
server: Add gcc format attribute to detect errors in nbdkit_error/nbdkit_debug.

Also fix one actual bug.

9 years agoserver: Add nbdkit_v{debug,error} va args variants.
Richard W.M. Jones [Fri, 21 Jun 2013 16:56:13 +0000 (21 17:56 +0100)]
server: Add nbdkit_v{debug,error} va args variants.

9 years agoAdd file plugin.
Richard W.M. Jones [Fri, 21 Jun 2013 15:41:26 +0000 (21 16:41 +0100)]
Add file plugin.

9 years agogitignore: Ignore gdb history file.
Richard W.M. Jones [Fri, 21 Jun 2013 16:55:18 +0000 (21 17:55 +0100)]
gitignore: Ignore gdb history file.

9 years agoChange the open call to pass in the 'readonly' flag.
Richard W.M. Jones [Fri, 21 Jun 2013 15:58:21 +0000 (21 16:58 +0100)]
Change the open call to pass in the 'readonly' flag.

Not ABI stable quite yet, but soon ...

9 years agoserver: Make the usage output more readable.
Richard W.M. Jones [Fri, 21 Jun 2013 15:15:55 +0000 (21 16:15 +0100)]
server: Make the usage output more readable.

9 years agodocs: Link to plugin man pages from nbdkit(1).
Richard W.M. Jones [Fri, 21 Jun 2013 15:15:32 +0000 (21 16:15 +0100)]
docs: Link to plugin man pages from nbdkit(1).

9 years agoAdd a libvirt plugin.
Richard W.M. Jones [Fri, 21 Jun 2013 13:27:11 +0000 (21 14:27 +0100)]
Add a libvirt plugin.

9 years agoserver: Fix command line parsing when there are multiple parameters.
Richard W.M. Jones [Fri, 21 Jun 2013 14:26:56 +0000 (21 15:26 +0100)]
server: Fix command line parsing when there are multiple parameters.

9 years agoAdd developer information to the README file.
Richard W.M. Jones [Fri, 21 Jun 2013 13:06:03 +0000 (21 14:06 +0100)]
Add developer information to the README file.

9 years agoplugins: Don't created versioned libraries (ie. no *.so.0* files).v0.1.0
Richard W.M. Jones [Fri, 21 Jun 2013 12:57:12 +0000 (21 13:57 +0100)]
plugins: Don't created versioned libraries (ie. no *.so.0* files).

9 years agodist: Add correct EXTRA_DIST rules.
Richard W.M. Jones [Fri, 21 Jun 2013 12:27:31 +0000 (21 13:27 +0100)]
dist: Add correct EXTRA_DIST rules.

Also add CLEANFILES everywhere.

9 years agoAdd third example plugin, fix existing plugins.
Richard W.M. Jones [Fri, 21 Jun 2013 11:13:01 +0000 (21 12:13 +0100)]
Add third example plugin, fix existing plugins.

9 years agoUpdate README.
Richard W.M. Jones [Fri, 21 Jun 2013 09:50:04 +0000 (21 10:50 +0100)]
Update README.

9 years agoImplement nbdkit server.
Richard W.M. Jones [Sat, 15 Jun 2013 15:51:53 +0000 (15 16:51 +0100)]
Implement nbdkit server.

9 years agoDocument the plugin API.
Richard W.M. Jones [Wed, 12 Jun 2013 17:46:30 +0000 (12 18:46 +0100)]
Document the plugin API.

9 years agoAdd initial sources.
Richard W.M. Jones [Wed, 12 Jun 2013 14:38:48 +0000 (12 15:38 +0100)]
Add initial sources.

9 years agoFurther configuration updates.
Richard W.M. Jones [Wed, 12 Jun 2013 15:49:26 +0000 (12 16:49 +0100)]
Further configuration updates.

9 years agoSet up configure environment.
Richard W.M. Jones [Wed, 12 Jun 2013 13:00:03 +0000 (12 14:00 +0100)]
Set up configure environment.