On 01/19/2018 09:23 AM, Richard W.M. Jones wrote: > This can be used to filter a single partition from a disk image. > --- > TODO | 2 - > configure.ac | 1 + > filters/Makefile.am | 3 +- > filters/delay/delay.c | 12 +-- > filters/offset/nbdkit-offset-filter.pod | 17 ++- > filters/offset/offset.c | 20 ++-- > filters/partition/Makefile.am | 62 +++++++++++ > filters/partition/nbdkit-partition-filter.pod | 94 +++++++++++++++++ > filters/partition/partition.c | 145 > ++++++++++++++++++++++++++ > 9 files changed, 336 insertions(+), 20 deletions(-) > > diff --git a/TODO b/TODO > index 3ec45fd..b1f922e 100644 > --- a/TODO
> +++ b/filters/delay/delay.c
> @@ -121,30 +121,30 @@ delay_config (nbdkit_next_config *next, void *nxdata,
>
> /* Read data. */
> static int
> -delay_pread (struct nbdkit_next *next, void *nxdata,
> +delay_pread (struct nbdkit_next_ops *next_ops, void *nxdata,
> void *handle, void *buf, uint32_t count, uint64_t offset)
Squashed into the wrong patch?
> +++ b/filters/offset/offset.c
> @@ -81,10 +81,10 @@ offset_config_complete (nbdkit_next_config_complete
> *next, void *nxdata)
>
> /* Get the file size. */
> static int64_t
> -offset_get_size (struct nbdkit_next *next, void *nxdata,
> +offset_get_size (struct nbdkit_next_ops *next_ops, void *nxdata,
Again, rebase churn not squashed correctly?
> +++ b/filters/partition/partition.c
> @@ -0,0 +1,145 @@
> +/* Called for each key=value passed on the command line. */
> +static int
> +partition_config (nbdkit_next_config *next, void *nxdata,
> + const char *key, const char *value)
> +{
> + if (strcmp (key, "partition") == 0) {
> + if (sscanf (value, "%d", &partnum) != 1 || partnum <= 0) {
I'm not a fan of scanf("%d") - it has undefined behavior on integer
overflow.
> +#define partition_config_help \
> + "partition=<PART> (required) The partition number (counting from 1)."
> +
> +#if 0
Hence the RFC :)
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3266
Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
