Annotate some virConnectPtr as mandatory non-null

Use the ATTRIBUTE_NONNULL annotation to mark some virConnectPtr
args as mandatory non-null so the compiler can warn of mistakes

* src/conf/domain_event.h: All virConnectPtr args must be non-null
* src/qemu/qemu_conf.h: qemudBuildCommandLine and
  qemudNetworkIfaceConnect() must be given non-null connection
* tests/qemuxml2argvtest.c: Provide a non-null (dummy) connection to
  qemudBuildCommandLine()
This commit is contained in:
Daniel P. Berrange 2010-02-10 13:19:17 +00:00
parent c4dcf043ca
commit 38536d6f7f
3 changed files with 20 additions and 7 deletions

View File

@ -50,18 +50,23 @@ int virDomainEventCallbackListAdd(virConnectPtr conn,
virDomainEventCallbackListPtr cbList,
virConnectDomainEventCallback callback,
void *opaque,
virFreeCallback freecb);
virFreeCallback freecb)
ATTRIBUTE_NONNULL(1);
int virDomainEventCallbackListRemove(virConnectPtr conn,
virDomainEventCallbackListPtr cbList,
virConnectDomainEventCallback callback);
virConnectDomainEventCallback callback)
ATTRIBUTE_NONNULL(1);
int virDomainEventCallbackListRemoveConn(virConnectPtr conn,
virDomainEventCallbackListPtr cbList);
virDomainEventCallbackListPtr cbList)
ATTRIBUTE_NONNULL(1);
int virDomainEventCallbackListMarkDelete(virConnectPtr conn,
virDomainEventCallbackListPtr cbList,
virConnectDomainEventCallback callback);
virConnectDomainEventCallback callback)
ATTRIBUTE_NONNULL(1);
int virDomainEventCallbackListPurgeMarked(virDomainEventCallbackListPtr cbList);
/**

View File

@ -188,7 +188,8 @@ int qemudBuildCommandLine (virConnectPtr conn,
const char ***retenv,
int **tapfds,
int *ntapfds,
const char *migrateFrom);
const char *migrateFrom)
ATTRIBUTE_NONNULL(1);
/* With vlan == -1, use netdev syntax, else old hostnet */
char * qemuBuildHostNetStr(virDomainNetDefPtr net,
@ -241,7 +242,8 @@ char * qemuBuildUSBHostdevDevStr(virDomainHostdevDefPtr dev);
int qemudNetworkIfaceConnect (virConnectPtr conn,
struct qemud_driver *driver,
virDomainNetDefPtr net,
unsigned long long qemuCmdFlags);
unsigned long long qemuCmdFlags)
ATTRIBUTE_NONNULL(1);
int qemudProbeMachineTypes (const char *binary,
virCapsGuestMachinePtr **machines,

View File

@ -13,6 +13,7 @@
#include "internal.h"
#include "testutils.h"
#include "qemu/qemu_conf.h"
#include "datatypes.h"
#include "testutilsqemu.h"
@ -36,6 +37,10 @@ static int testCompareXMLToArgvFiles(const char *xml,
unsigned long long flags;
virDomainDefPtr vmdef = NULL;
virDomainChrDef monitor_chr;
virConnectPtr conn;
if (!(conn = virGetConnect()))
goto fail;
if (virtTestLoadFile(cmd, &expectargv, MAX_FILE) < 0)
goto fail;
@ -75,7 +80,7 @@ static int testCompareXMLToArgvFiles(const char *xml,
}
if (qemudBuildCommandLine(NULL, &driver,
if (qemudBuildCommandLine(conn, &driver,
vmdef, &monitor_chr, 0, flags,
&argv, &qenv,
NULL, NULL, migrateFrom) < 0)
@ -137,6 +142,7 @@ static int testCompareXMLToArgvFiles(const char *xml,
free(qenv);
}
virDomainDefFree(vmdef);
virUnrefConnect(conn);
return ret;
}