libvir.c: avoid NULL dereference in virStoragePoolSetAutostart

* src/libvirt.c (virStoragePoolSetAutostart): Return -1 if the pool
argument is invalid, rather than "goto error" where we could dereference
that possibly-NULL "pool".
(virConnectFindStoragePoolSources): Likewise.
(virConnectNumOfDomains): Likewise.
Daniel P. Berrange spotted that the two latter functions
needed the same treatment.
This commit is contained in:
Jim Meyering 2009-09-02 17:47:51 +02:00
parent 1f5e292520
commit d9b4538469

View File

@ -1606,7 +1606,7 @@ virConnectNumOfDomains(virConnectPtr conn)
if (!VIR_IS_CONNECT(conn)) {
virLibConnError(NULL, VIR_ERR_INVALID_CONN, __FUNCTION__);
goto error;
return -1;
}
if (conn->driver->numOfDomains) {
@ -6451,7 +6451,7 @@ virConnectFindStoragePoolSources(virConnectPtr conn,
if (!VIR_IS_CONNECT(conn)) {
virLibConnError(NULL, VIR_ERR_INVALID_CONN, __FUNCTION__);
goto error;
return NULL;
}
if (type == NULL) {
virLibConnError(conn, VIR_ERR_INVALID_ARG, __FUNCTION__);
@ -7339,7 +7339,7 @@ virStoragePoolSetAutostart(virStoragePoolPtr pool,
if (!VIR_IS_CONNECTED_STORAGE_POOL(pool)) {
virLibStoragePoolError(NULL, VIR_ERR_INVALID_STORAGE_POOL, __FUNCTION__);
goto error;
return -1;
}
if (pool->conn->flags & VIR_CONNECT_RO) {