I found that when using zxfer(8) to transfer iocage(8) datasets I was getting a "too many arguments".
Running with /bin/sh -x I was able to see that the values of zfs create options were not being quoted, and values with spaces were being interpreted as a value plus additional arguments to zfs(8).
Although I see #25 added the code to include quoting values, it looks like eval was removing them. By adding additional escapes, eval does not remove them and so the values are correctly quoted.
I found that when using zxfer(8) to transfer iocage(8) datasets I was getting a "too many arguments". Running with
/bin/sh -x
I was able to see that the values ofzfs create
options were not being quoted, and values with spaces were being interpreted as a value plus additional arguments to zfs(8).Although I see #25 added the code to include quoting values, it looks like
eval
was removing them. By adding additional escapes,eval
does not remove them and so the values are correctly quoted.