mirror of https://gitee.com/openkylin/libvirt.git
114 lines
3.8 KiB
C
114 lines
3.8 KiB
C
/*
|
|
* driver-nwfilter.h: entry points for nwfilter drivers
|
|
*
|
|
* Copyright (C) 2006-2014 Red Hat, Inc.
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library. If not, see
|
|
* <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef LIBVIRT_DRIVER_NWFILTER_H
|
|
# define LIBVIRT_DRIVER_NWFILTER_H
|
|
|
|
# ifndef __VIR_DRIVER_H_INCLUDES___
|
|
# error "Don't include this file directly, only use driver.h"
|
|
# endif
|
|
|
|
typedef int
|
|
(*virDrvConnectNumOfNWFilters)(virConnectPtr conn);
|
|
|
|
typedef int
|
|
(*virDrvConnectListNWFilters)(virConnectPtr conn,
|
|
char **const names,
|
|
int maxnames);
|
|
|
|
typedef int
|
|
(*virDrvConnectListAllNWFilters)(virConnectPtr conn,
|
|
virNWFilterPtr **filters,
|
|
unsigned int flags);
|
|
|
|
typedef virNWFilterPtr
|
|
(*virDrvNWFilterLookupByName)(virConnectPtr conn,
|
|
const char *name);
|
|
|
|
typedef virNWFilterPtr
|
|
(*virDrvNWFilterLookupByUUID)(virConnectPtr conn,
|
|
const unsigned char *uuid);
|
|
|
|
typedef virNWFilterPtr
|
|
(*virDrvNWFilterDefineXML)(virConnectPtr conn,
|
|
const char *xmlDesc);
|
|
|
|
typedef int
|
|
(*virDrvNWFilterUndefine)(virNWFilterPtr nwfilter);
|
|
|
|
typedef char *
|
|
(*virDrvNWFilterGetXMLDesc)(virNWFilterPtr nwfilter,
|
|
unsigned int flags);
|
|
|
|
typedef virNWFilterBindingPtr
|
|
(*virDrvNWFilterBindingLookupByPortDev)(virConnectPtr conn,
|
|
const char *portdev);
|
|
|
|
typedef int
|
|
(*virDrvConnectListAllNWFilterBindings)(virConnectPtr conn,
|
|
virNWFilterBindingPtr **bindings,
|
|
unsigned int flags);
|
|
|
|
typedef virNWFilterBindingPtr
|
|
(*virDrvNWFilterBindingCreateXML)(virConnectPtr conn,
|
|
const char *xml,
|
|
unsigned int flags);
|
|
|
|
typedef char *
|
|
(*virDrvNWFilterBindingGetXMLDesc)(virNWFilterBindingPtr binding,
|
|
unsigned int flags);
|
|
|
|
typedef int
|
|
(*virDrvNWFilterBindingDelete)(virNWFilterBindingPtr binding);
|
|
typedef int
|
|
(*virDrvNWFilterBindingRef)(virNWFilterBindingPtr binding);
|
|
typedef int
|
|
(*virDrvNWFilterBindingFree)(virNWFilterBindingPtr binding);
|
|
|
|
|
|
typedef struct _virNWFilterDriver virNWFilterDriver;
|
|
typedef virNWFilterDriver *virNWFilterDriverPtr;
|
|
|
|
/**
|
|
* _virNWFilterDriver:
|
|
*
|
|
* Structure associated to a network filter driver, defining the various
|
|
* entry points for it.
|
|
*/
|
|
struct _virNWFilterDriver {
|
|
const char *name; /* the name of the driver */
|
|
virDrvConnectNumOfNWFilters connectNumOfNWFilters;
|
|
virDrvConnectListNWFilters connectListNWFilters;
|
|
virDrvConnectListAllNWFilters connectListAllNWFilters;
|
|
virDrvNWFilterLookupByName nwfilterLookupByName;
|
|
virDrvNWFilterLookupByUUID nwfilterLookupByUUID;
|
|
virDrvNWFilterDefineXML nwfilterDefineXML;
|
|
virDrvNWFilterUndefine nwfilterUndefine;
|
|
virDrvNWFilterGetXMLDesc nwfilterGetXMLDesc;
|
|
virDrvConnectListAllNWFilterBindings connectListAllNWFilterBindings;
|
|
virDrvNWFilterBindingLookupByPortDev nwfilterBindingLookupByPortDev;
|
|
virDrvNWFilterBindingCreateXML nwfilterBindingCreateXML;
|
|
virDrvNWFilterBindingDelete nwfilterBindingDelete;
|
|
virDrvNWFilterBindingGetXMLDesc nwfilterBindingGetXMLDesc;
|
|
};
|
|
|
|
|
|
#endif /* LIBVIRT_DRIVER_NWFILTER_H */
|