Look up the binary name upfront to avoid the error:
Cannot find 'pm-is-supported' in path: No such file or directory
In that case, we just assume nodesuspend is not available.
Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
#include "datatypes.h"
#include "viralloc.h"
+#include "virfile.h"
#include "virlog.h"
#include "virerror.h"
virNodeSuspendSupportsTargetPMUtils(unsigned int target, bool *supported)
{
VIR_AUTOPTR(virCommand) cmd = NULL;
- const char *binary = "pm-is-supported";
+ VIR_AUTOFREE(char *) binary = NULL;
int status;
*supported = false;
+ binary = virFindFileInPath("pm-is-supported");
+ if (!binary)
+ return -2;
+
switch (target) {
case VIR_NODE_SUSPEND_TARGET_MEM:
cmd = virCommandNewArgList(binary, "--suspend", NULL);