Details
Description
The KMIPService constructor uses the Status that it gets from _initServerConnection() only to set _isValid to true or false. This means that the error message which _initServerConnection() might have stored in the Status is thrown away, which is undesirable from a usability perspective.
_isValid should be converted from a bool to a Status, and used to store the result of _initServerConnection. Then where kmipService.isValid() is called in getKeyFromKMIPServer(), it should include any non-OK Status from kmipService in the Status that it returns.