lib/libkvm: start adding basic tests for kvm(3)
- kvm_close: add a testcase to verify support for errno = EINVAL / -1 (see D10065) when kd == NULL is provided to the libcall.
- kvm_geterr:
- Add a negative testcase for kd == NULL returning "" (see D10022).
- Add two positive testcases:
- test the error case using kvm_write on a O_RDONLY descriptor.
- test the "no error" case using kvm_read(3) and kvm_nlist(3) as helper routines and by injecting a bogus error message via _kvm_err (an internal API) _kvm_err was used as there isn't a formalized way to clear the error output, and because kvm_nlist always returns ENOENT with the NULL terminator today.
- kvm_open, kvm_open2:
- Add some basic negative tests for kvm_open(3) and kvm_open2(3). Testing positive cases with a specific corefile/execfile/resolver requires more work and would require user intervention today in order to reliably test this out.
Reviewed by: markj
MFC after: 2 months
Sponsored by: Dell EMC Isilon
Differential Revision: D10024