/*
* domain_nwfilter.c:
*
+ * Copyright (C) 2014 Red Hat, Inc.
* Copyright (C) 2010 IBM Corporation
*
* This library is free software; you can redistribute it and/or
static virDomainConfNWFilterDriverPtr nwfilterDriver;
void
-virDomainConfNWFilterRegister(virDomainConfNWFilterDriverPtr driver) {
+virDomainConfNWFilterRegister(virDomainConfNWFilterDriverPtr driver)
+{
nwfilterDriver = driver;
}
int
virDomainConfNWFilterInstantiate(virConnectPtr conn,
const unsigned char *vmuuid,
- virDomainNetDefPtr net) {
+ virDomainNetDefPtr net)
+{
if (nwfilterDriver != NULL)
return nwfilterDriver->instantiateFilter(conn, vmuuid, net);
/* driver module not available -- don't indicate failure */
}
void
-virDomainConfNWFilterTeardown(virDomainNetDefPtr net) {
+virDomainConfNWFilterTeardown(virDomainNetDefPtr net)
+{
if (nwfilterDriver != NULL)
nwfilterDriver->teardownFilter(net);
}
void
-virDomainConfVMNWFilterTeardown(virDomainObjPtr vm) {
+virDomainConfVMNWFilterTeardown(virDomainObjPtr vm)
+{
size_t i;
if (nwfilterDriver != NULL) {
virInterfaceDefDevFormat(virBufferPtr buf, const virInterfaceDef *def);
static
-void virInterfaceIpDefFree(virInterfaceIpDefPtr def) {
+void virInterfaceIpDefFree(virInterfaceIpDefPtr def)
+{
if (def == NULL)
return;
VIR_FREE(def->address);
}
static
-void virInterfaceProtocolDefFree(virInterfaceProtocolDefPtr def) {
+void virInterfaceProtocolDefFree(virInterfaceProtocolDefPtr def)
+{
size_t i;
if (def == NULL)
static int
virInterfaceDefParseName(virInterfaceDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
char *tmp;
tmp = virXPathString("string(./@name)", ctxt);
static int
virInterfaceDefParseMtu(virInterfaceDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
unsigned long mtu;
int ret;
static int
virInterfaceDefParseStartMode(virInterfaceDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
char *tmp;
tmp = virXPathString("string(./start/@mode)", ctxt);
}
static int
-virInterfaceDefParseBondMode(xmlXPathContextPtr ctxt) {
+virInterfaceDefParseBondMode(xmlXPathContextPtr ctxt)
+{
char *tmp;
int ret = 0;
}
static int
-virInterfaceDefParseBondMiiCarrier(xmlXPathContextPtr ctxt) {
+virInterfaceDefParseBondMiiCarrier(xmlXPathContextPtr ctxt)
+{
char *tmp;
int ret = 0;
}
static int
-virInterfaceDefParseBondArpValid(xmlXPathContextPtr ctxt) {
+virInterfaceDefParseBondArpValid(xmlXPathContextPtr ctxt)
+{
char *tmp;
int ret = 0;
static int
virInterfaceDefParseDhcp(virInterfaceProtocolDefPtr def,
- xmlNodePtr dhcp, xmlXPathContextPtr ctxt) {
+ xmlNodePtr dhcp, xmlXPathContextPtr ctxt)
+{
xmlNodePtr save;
char *tmp;
int ret = 0;
static int
virInterfaceDefParseIp(virInterfaceIpDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
int ret = 0;
char *tmp;
long l;
static int
virInterfaceDefParseProtoIPv4(virInterfaceProtocolDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
xmlNodePtr dhcp;
xmlNodePtr *ipNodes = NULL;
int nIpNodes, ret = -1;
static int
virInterfaceDefParseProtoIPv6(virInterfaceProtocolDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
xmlNodePtr dhcp, autoconf;
xmlNodePtr *ipNodes = NULL;
int nIpNodes, ret = -1;
static int
virInterfaceDefParseIfAdressing(virInterfaceDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
xmlNodePtr save;
xmlNodePtr *protoNodes = NULL;
int nProtoNodes, pp, ret = -1;
static int
virInterfaceDefParseBridge(virInterfaceDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
xmlNodePtr *interfaces = NULL;
xmlNodePtr bridge;
virInterfaceDefPtr itf;
static int
virInterfaceDefParseBondItfs(virInterfaceDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
xmlNodePtr *interfaces = NULL;
xmlNodePtr bond = ctxt->node;
virInterfaceDefPtr itf;
static int
virInterfaceDefParseBond(virInterfaceDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
int res;
def->data.bond.mode = virInterfaceDefParseBondMode(ctxt);
static int
virInterfaceDefParseVlan(virInterfaceDefPtr def,
- xmlXPathContextPtr ctxt) {
+ xmlXPathContextPtr ctxt)
+{
def->data.vlan.tag = virXPathString("string(./@tag)", ctxt);
if (def->data.vlan.tag == NULL) {
virReportError(VIR_ERR_XML_ERROR,
}
static virInterfaceDefPtr
-virInterfaceDefParseXML(xmlXPathContextPtr ctxt, int parentIfType) {
+virInterfaceDefParseXML(xmlXPathContextPtr ctxt, int parentIfType)
+{
virInterfaceDefPtr def;
int type;
char *tmp;
static bool initialized = false;
void
-virNWFilterReadLockFilterUpdates(void) {
+virNWFilterReadLockFilterUpdates(void)
+{
virRWLockRead(&updateLock);
}
void
-virNWFilterWriteLockFilterUpdates(void) {
+virNWFilterWriteLockFilterUpdates(void)
+{
virRWLockWrite(&updateLock);
}
void
-virNWFilterUnlockFilterUpdates(void) {
+virNWFilterUnlockFilterUpdates(void)
+{
virRWLockUnlock(&updateLock);
}
void
-virNWFilterRuleDefFree(virNWFilterRuleDefPtr def) {
+virNWFilterRuleDefFree(virNWFilterRuleDefPtr def)
+{
size_t i;
if (!def)
return;
static void
-virNWFilterIncludeDefFree(virNWFilterIncludeDefPtr inc) {
+virNWFilterIncludeDefFree(virNWFilterIncludeDefPtr inc)
+{
if (!inc)
return;
virNWFilterHashTableFree(inc->params);
static void
-virNWFilterEntryFree(virNWFilterEntryPtr entry) {
+virNWFilterEntryFree(virNWFilterEntryPtr entry)
+{
if (!entry)
return;
void
-virNWFilterDefFree(virNWFilterDefPtr def) {
+virNWFilterDefFree(virNWFilterDefPtr def)
+{
size_t i;
if (!def)
return;
}
static virNWFilterDefPtr
-virNWFilterDefParseXML(xmlXPathContextPtr ctxt) {
+virNWFilterDefParseXML(xmlXPathContextPtr ctxt)
+{
virNWFilterDefPtr ret;
xmlNodePtr curr = ctxt->node;
char *uuid = NULL;
virNWFilterDefPtr
virNWFilterDefParseNode(xmlDocPtr xml,
- xmlNodePtr root) {
+ xmlNodePtr root)
+{
xmlXPathContextPtr ctxt = NULL;
virNWFilterDefPtr def = NULL;
static virNWFilterDefPtr
virNWFilterDefParse(const char *xmlStr,
- const char *filename) {
+ const char *filename)
+{
virNWFilterDefPtr def = NULL;
xmlDocPtr xml;