zfs/lib/libzfs
Brian Behlendorf 6466b61db6 Make `zpool import -d|-c` behave consistently
When importing pools with zpool import -aN there is inconsistent
behavior between '-d /dev/disk/by-id' (or another path) and
'-c /etc/zfs/zpool.cache'.

The difference in behavior is caused by zpool_find_import_cached()
returning an empty nvlist_t when there are no pools to import but
zpool_find_import_impl() returns NULL for the same situation. The
behavior of zpool_find_import_cached() is arguably more correct
because it allows returning NULL to be used for an error case and
not an empty set.

This change resolves the issue by updating get_configs() such that
it returns an empty set instead of NULL when no config is found.
The updated behavior will now always return 0 for this case.

$ zpool import -aN; echo $?
no pools available to import
0

$ zpool import -aN -d /var/tmp/; echo $?
no pools available to import
0

$ zpool import -aN -c /etc/zfs/zpool.cache; echo $?
no pools available to import
0

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #2080
2015-01-28 11:12:31 -08:00
..
.gitignore Add a pkgconfig file 2014-08-28 07:59:43 -07:00
Makefile.am Add a pkgconfig file 2014-08-28 07:59:43 -07:00
libzfs.pc.in Add a pkgconfig file 2014-08-28 07:59:43 -07:00
libzfs_changelist.c Remove ZFC_IOC_*_MINOR ioctl()s 2013-12-16 09:15:57 -08:00
libzfs_config.c Illumos #3464 2013-09-04 16:01:24 -07:00
libzfs_core.pc.in Add a pkgconfig file 2014-08-28 07:59:43 -07:00
libzfs_dataset.c Illumos 4368, 4369. 2014-07-29 10:55:29 -07:00
libzfs_diff.c Illumos #3464 2013-09-04 16:01:24 -07:00
libzfs_fru.c cstyle: Resolve C style issues 2013-12-18 16:46:35 -08:00
libzfs_graph.c Illumos #3464 2013-09-04 16:01:24 -07:00
libzfs_import.c Make `zpool import -d|-c` behave consistently 2015-01-28 11:12:31 -08:00
libzfs_iter.c Illumos 4368, 4369. 2014-07-29 10:55:29 -07:00
libzfs_mount.c Check the dataset type more rigorously when fetching properties. 2014-05-06 10:41:46 -07:00
libzfs_pool.c Implement -t option to zpool create for temporary pool names 2014-09-30 10:46:59 -07:00
libzfs_sendrecv.c zfs send -p send properties only for snapshots that are actually sent 2014-10-02 16:52:02 -07:00
libzfs_status.c Add generic errata infrastructure 2014-02-21 12:10:40 -08:00
libzfs_util.c Properly NULL terminate string in zfs_strcmp_pathname 2014-09-23 10:32:21 -07:00