On 05/13/2011 02:10 PM, Cole Robinson wrote: > v2: > Use virCommand auto-cleanup > > Signed-off-by: Cole Robinson <[email protected]> > --- > src/storage/storage_backend_iscsi.c | 23 +++++++++++------------ > 1 files changed, 11 insertions(+), 12 deletions(-) >
> memset(line, 0, LINE_SIZE);
>
> - if (virExec(prog, NULL, NULL, &child, -1, &fd, NULL, VIR_EXEC_NONE) < 0)
> {
> - virStorageReportError(VIR_ERR_INTERNAL_ERROR,
> - _("Failed to run '%s' when looking for
> existing interface with IQN '%s'"),
> - prog[0], initiatoriqn);
> -
> + virCommandSetOutputFD(cmd, &fd);
> + if (virCommandRunAsync(cmd, NULL) < 0) {
> ret = IQN_ERROR;
...
>
> + if (virCommandWait(cmd, NULL) < 0)
> + ret = IQN_ERROR;
> +
> out:
> if (ret == IQN_MISSING) {
> VIR_DEBUG("Could not find interface with IQN '%s'", iqn);
> @@ -259,6 +257,7 @@ out:
> VIR_FREE(line);
> VIR_FORCE_FCLOSE(fp);
> VIR_FORCE_CLOSE(fd);
> + virCommandFree(cmd);
Yep, that does the trick for auto-cleanup (I'm liking virCommand more
and more as we convert things to use it).
ACK.
--
Eric Blake [email protected] +1-801-349-2682
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/libvir-list
