2
* xen_internal.h: internal API for direct access to Xen hypervisor level
4
* Copyright (C) 2005 Red Hat, Inc.
6
* See COPYING.LIB for the License of this software
8
* Daniel Veillard <veillard@redhat.com>
11
#ifndef __VIR_XEN_INTERNAL_H__
12
#define __VIR_XEN_INTERNAL_H__
14
#include <libxml/uri.h>
17
#include "capabilities.h"
20
extern struct xenUnifiedDriver xenHypervisorDriver;
21
int xenHypervisorInit (void);
23
virCapsPtr xenHypervisorMakeCapabilities (virConnectPtr conn);
25
/* The following calls are made directly by the Xen proxy: */
28
xenHypervisorLookupDomainByID (virConnectPtr conn,
31
xenHypervisorLookupDomainByUUID (virConnectPtr conn,
32
const unsigned char *uuid);
34
xenHypervisorDomainGetOSType (virDomainPtr dom);
37
xenHypervisorOpen (virConnectPtr conn,
38
virConnectAuthPtr auth,
40
int xenHypervisorClose (virConnectPtr conn);
41
int xenHypervisorGetVersion (virConnectPtr conn,
42
unsigned long *hvVer);
44
xenHypervisorMakeCapabilitiesInternal(virConnectPtr conn,
45
const char *hostmachine,
49
xenHypervisorGetCapabilities (virConnectPtr conn);
51
xenHypervisorGetDomMaxMemory (virConnectPtr conn,
53
int xenHypervisorNumOfDomains (virConnectPtr conn);
54
int xenHypervisorListDomains (virConnectPtr conn,
57
int xenHypervisorGetMaxVcpus (virConnectPtr conn,
59
int xenHypervisorDestroyDomain (virDomainPtr domain);
60
int xenHypervisorResumeDomain (virDomainPtr domain);
61
int xenHypervisorPauseDomain (virDomainPtr domain);
62
int xenHypervisorGetDomainInfo (virDomainPtr domain,
63
virDomainInfoPtr info);
64
int xenHypervisorGetDomInfo (virConnectPtr conn,
66
virDomainInfoPtr info);
67
int xenHypervisorSetMaxMemory (virDomainPtr domain,
68
unsigned long memory);
69
int xenHypervisorCheckID (virConnectPtr conn,
71
int xenHypervisorSetVcpus (virDomainPtr domain,
73
int xenHypervisorPinVcpu (virDomainPtr domain,
75
unsigned char *cpumap,
77
int xenHypervisorGetVcpus (virDomainPtr domain,
80
unsigned char *cpumaps,
82
int xenHypervisorGetVcpuMax (virDomainPtr domain);
84
char * xenHypervisorGetSchedulerType (virDomainPtr domain,
87
int xenHypervisorGetSchedulerParameters(virDomainPtr domain,
88
virSchedParameterPtr params,
91
int xenHypervisorSetSchedulerParameters(virDomainPtr domain,
92
virSchedParameterPtr params,
95
int xenHypervisorDomainBlockStats (virDomainPtr domain,
97
struct _virDomainBlockStats *stats);
98
int xenHypervisorDomainInterfaceStats (virDomainPtr domain,
100
struct _virDomainInterfaceStats *stats);
102
int xenHypervisorNodeGetCellsFreeMemory(virConnectPtr conn,
103
unsigned long long *freeMems,
107
int xenHavePrivilege(void);
109
#endif /* __VIR_XEN_INTERNAL_H__ */