Commit Graph

110 Commits

Author SHA1 Message Date
Jim Meyering
fb66d5ab92 Eliminate all uses of virBufferAdd with string literals.
* Makefile.maint (sc_prohibit_virBufferAdd_with_string_literal):
New rule.
* src/buf.h (virBufferAddLit): Define.
* src/conf.c (virConfSaveValue): Use virBufferAddLit, in place
of virBufferAdd everywhere possible.
(virConfSaveEntry): Likewise.
* src/qemu_conf.c (qemudGenerateXML, qemudGenerateNetworkXML): Likewise.
* src/qemu_driver.c (qemudGetFeatures, qemudGetCapabilities): Likewise.
* src/test.c (testDomainDumpXML, testNetworkDumpXML): Likewise.
* src/xen_internal.c (xenHypervisorMakeCapabilitiesXML): Likewise.
* src/xend_internal.c (xend_parse_sexp_desc_os): Likewise.
(xend_parse_sexp_desc, sexpr_to_xend_topology_xml): Likewise.
* src/xm_internal.c (xenXMDomainFormatXML, xenXMDomainPinVcpu): Likewise.
* src/xml.c (virSaveCpuSet, virParseXenCpuTopology): Likewise.
(virDomainParseXMLGraphicsDescImage): Likewise.
(virDomainParseXMLGraphicsDescVFB, virDomainParseXMLOSDescHVM): Likewise.
(virDomainParseXMLOSDescPV, virDomainParseXMLDiskDesc): Likewise.
(virDomainParseXMLIfDesc, virDomainParseXMLDesc): Likewise.
2008-02-05 14:22:28 +00:00
Jim Meyering
a378188194 Enable the <config.h>-requiring test; fix violations
Use <config.h>, not "config.h", per autoconf documentation.
* Makefile.cfg (local-checks-to-skip) [sc_require_config_h]: Enable.
* .x-sc_require_config_h: New file, to list exempted files.
* Makefile.am (EXTRA_DIST): Add .x-sc_require_config_h.
2008-01-29 18:15:54 +00:00
Jim Meyering
acff2d11ac Given code like if (foo) free (foo); remove the useless "if (foo) " part.
Likewise, given if (foo != NULL) free (foo); remove the useless "if" test.

* proxy/libvirt_proxy.c: Remove unnecessary "if" test before free.
* python/generator.py: Likewise.
* qemud/qemud.c: Likewise.
* src/buf.c: Likewise.
* src/conf.c: Likewise.
* src/hash.c: Likewise.
* src/iptables.c: Likewise.
* src/libvirt.c: Likewise.
* src/openvz_conf.c: Likewise.
* src/qemu_conf.c: Likewise.
* src/qemu_driver.c: Likewise.
* src/remote_internal.c: Likewise.
* src/test.c: Likewise.
* src/virsh.c: Likewise.
* src/virterror.c: Likewise.
* src/xen_internal.c: Likewise.
* src/xen_unified.c: Likewise.
* src/xend_internal.c: Likewise.
* src/xm_internal.c: Likewise.
* src/xml.c: Likewise.
* src/xmlrpc.c: Likewise.
* src/xs_internal.c: Likewise.
* tests/testutils.c: Likewise.
* tests/xencapstest.c: Likewise.
* tests/xmconfigtest.c: Likewise.
2008-01-29 17:41:07 +00:00
Daniel Veillard
aab826d4cc Fix VIR_DOMAIN_NONE into VIR_DOMAIN_NOSTATE
* src/xen_internal.c: fix an erronous use of VIR_DOMAIN_NONE instead
  of VIR_DOMAIN_NOSTATE (both defined as 0, no regression)
Daniel
2008-01-25 09:47:51 +00:00
Daniel P. Berrange
9d11255a47 Fix vcpupin hypercall map data to be 8-bytes 2008-01-09 21:08:29 +00:00
Jim Meyering
49230350fa Use a variable name as sizeof argument, not a type name.
Given code like: T *var = calloc (n, sizeof (T));
Convert to this: T *var = calloc (n, sizeof (*var));
This first-cut change adjusts all malloc, calloc, and
realloc statements.

The only binary differences are in remote_internal.c
(due to the bug fix) and in xmlrpc.c (due to factorization).

* python/libvir.c: As above.
* qemud/event.c: Likewise.
* qemud/mdns.c: Likewise.
* qemud/qemud.c: Likewise.
* qemud/remote.c: Likewise.
* src/bridge.c: Likewise.
* src/buf.c: Likewise.
* src/conf.c: Likewise.
* src/hash.c: Likewise.
* src/iptables.c: Likewise.
* src/openvz_conf.c: Likewise.
* src/qemu_conf.c: Likewise.
* src/qemu_driver.c: Likewise.
* src/test.c: Likewise.
* src/xen_internal.c: Likewise.
* src/xen_unified.c: Likewise.
* src/xm_internal.c: Likewise.
* src/xml.c: Likewise.
* tests/qemuxml2argvtest.c: Likewise.
* src/xmlrpc.c (xmlRpcValuePtr): Likewise, and minor factorization.
* src/remote_internal.c (remoteAuthMakeCredentials): Use the right
type when allocating space for an array of cred _pointers_.
2007-12-11 21:57:29 +00:00
Daniel P. Berrange
7fa9ceb740 Added public API for authentication credential callback support 2007-12-05 18:28:05 +00:00
Daniel Veillard
ed5e20baab * src/xen_unified.[ch] src/proxy_internal.c src/xen_internal.c
src/xend_internal.c src/xm_internal.c src/xs_internal.c:
  cleanup the xen subdriver table, remove the type entry and
  always return "Xen" from the unified entry point.
Daniel
2007-12-03 09:34:38 +00:00
Richard W.M. Jones
7a66394fcb Thu Nov 15 17:40:15 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* docs/hvsupport.html, docs/libvir.html: Document HV support
	  for virNodeGetFreeMemory and virNodeGetCellsFreeMemory.
	* src/libvirt.c: Add DEBUG to virNodeGetFreeMemory and
	  virNodeGetCellsFreeMemory.
	* src/xen_internal.c: virXenError* functions now take an
	  additional virConnectPtr argument, and set it where possible.
2007-11-15 17:44:06 +00:00
Richard W.M. Jones
3ba58f158d Wed Nov 14 11:55:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/stats_linux.c, src/stats_linux.h, src_xen_internal.c:
	  Abstract out the Linux-specific statistics.  Fixed parsing
	  of 64 bit numbers.
	* src/Makefile.am: Updated Makefile for new files.
2007-11-14 11:58:36 +00:00
Richard W.M. Jones
88f28d6980 Wed Nov 14 11:36:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/libvirt.c and all internal driver interfaces: Parse the
	  URI only once and pass it to virDrvOpen instead of the
	  unparsed name string.
2007-11-14 11:40:57 +00:00
Daniel Veillard
a500a479b0 Begin fixing uses of strtol: parse integers more carefully.
Patch from Jim Meyering
* src/internal.h: Include <errno.h>.
  Define new static inline function, xstrtol_i.
* src/virsh.c: Detect integer overflow in domain ID number
  in vshCommandOptDomainBy. Detect overflow and invalid port
  number suffix in cmdVNCDisplay.
* src/xend_internal.c: Parse CPU number more carefully in
  xenDaemonDomainGetVcpus.
* tests/int-overflow: New script. Test for the above-fixed bug.
* tests/Makefile.am: Add int-overflow to TESTS. Define
  TESTS_ENVIRONMENT, to propagate $abs_top_* variables into the
  int-overflow script. Adapt the "valgrind" rule not to clobber
  new TESTS_ENVIRONMENT.
Daniel
2007-11-12 14:00:32 +00:00
Daniel Veillard
390cca8125 * proxy/libvirt_proxy.c src/proxy_internal.[ch] src/xen_internal.c
src/xen_unified.[ch] src/xend_internal.[ch] src/xml.[ch]: last
  patch for the library NUMA support, allow to serialize CPU pinning
  to domain configs (but won't work though proxy access), includes
  many patches from Saori Fukuta.
Daniel
2007-10-31 09:39:13 +00:00
Daniel Veillard
cfb192ad1e * docs/format.html docs/libvir.html: documentation cleaups
from Jim Paris
Daniel
2007-10-22 20:28:55 +00:00
Daniel P. Berrange
0e7aa57385 Solaris hypercall compatability fixes (Mark Johnson) 2007-09-29 18:37:47 +00:00
Daniel Veillard
4bf3bc9eda * include/libvirt/libvirt.h[.in] src/driver.h src/openvz_driver.c
src/qemu_driver.c src/remote_internal.c src/test.c
  src/xen_internal.[ch] src/xen_unified.c src/xend_internal.[ch]
  src/libvirt.c src/libvirt_sym.version: adding NUMA support patches
  from Beth Kon adding new virNodeGetCellsFreeMemory entry point
  and extending the virConnectGetCapabilities one. Fix a couple of
  issues in the patch and add to exported symbols from shared lib.
* docs/virsh.pod docs/virsh.1 src/virsh.c: added new command
  freecell to get the available memory on the node or in a NUMA cell.
* docs/*: updated and regenerated the documentation
Daniel
2007-09-28 14:28:12 +00:00
Richard W.M. Jones
b001650c7d Wed Aug 29 14:43:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/xen_internal.c (xenHypervisorDomainInterfaceStats): Swap
	  TX & RX network stats so they appear correct from the point
	  of view of the domain.
2007-08-29 13:35:15 +00:00
Richard W.M. Jones
442a15770c Tue Aug 21 10:58:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/libvirt.c (virDomainBlockStats, virDomainInterfaceStats):
	  Added block device and network interface statistics.
	* src/xen_internal.c: Support for stats from Xen domains.
	* qemud/remote.c, qemud/remote_protocol.x, qemud/remote_internal.c:
	  Support for fetching device and network interface stats
	  across remote connections.
	* src/virsh.c: Added 'virsh domblkstat' and 'virsh domifstat'
	  commands to display stats.
	* docs/libvir.html, docs/hvsupport.html: Updated hvsupport
	  documentation.
2007-08-21 10:08:12 +00:00
Richard W.M. Jones
81005437f4 Tue Aug 21 10:21:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/libvirt.c (virDomainMigrate): Added virDomainMigrate
	  API call.
	* src/xend_internal.c, src/xen_unified.c: Support for migration
	  of Xen domains.
	* src/xen_internal.c: Xen capabilities indicates level of
	  support for migration.
	* qemud/remote.c, qemud/remote_protocol.x, src/remote_internal.c:
	  Support for migration between remote hypervisors.
	* src/virsh.c: Added 'virsh migrate' command.
	* docs/libvir.html, docs/hvsupport.html: Updated hvsupport
	  documentation.
2007-08-21 09:31:12 +00:00
Daniel P. Berrange
9112a139df Speed up impl of lookupbyid/uuid and getostype for Xen by using HV where available 2007-08-10 18:25:15 +00:00
Daniel Veillard
86d352d4fe * src/xen_internal.c: add report of ACPI/APIC for Xen fully virt,
patch from David Lutterkort
* tests/xencapsdata/xen-i686-pae-hvm.xml
  tests/xencapsdata/xen-ia64-be-hvm.xml
  tests/xencapsdata/xen-ia64-hvm.xml
  tests/xencapsdata/xen-x86_64-hvm.xml: this also affects a few tests
Daniel
2007-07-30 10:15:58 +00:00
Daniel Veillard
46da4f268f * src/xen_internal.c: and nother one again from Saori Fukuta
Daniel
2007-07-20 10:53:31 +00:00
Daniel Veillard
90ae19cccf * src/xen_internal.c: some error handling improvements from Saori Fukuta
Daniel
2007-07-20 10:44:24 +00:00
Richard W.M. Jones
e2ea955881 Thu Jul 19 16:35:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* configure.in, src/xen_internal.c: Newer Xen uses
          <xen/sys/privcmd.h>.  Added detection code for this in
          configure.in.
2007-07-19 15:37:54 +00:00
Daniel Veillard
30c10b82c1 * src/xen_internal.c: rewrite of range check in credit scheduler
initially suggested by Atsushi SAKAI
Daniel
2007-07-19 13:39:26 +00:00
Daniel Veillard
bb6476e771 * src/xen_internal.c: applied patch from Christian Ehrhardt to
fix Xen hypervisor alignment problems on PPC64
* AUTHORS: added Christian
Daniel
2007-07-12 08:57:52 +00:00
Richard W.M. Jones
4ea0ef797f Fri Jul 6 16:08:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/proxy_internal.c, src/proxy_internal.h,
	  src.xen_internal.c, src/xen_internal.h,
	  src/xen_unified.c, src/xen_unified.h,
	  src/xend_internal.c, src/xend_internal.h,
	  src/xm_internal.c, src/xm_internal.h,
	  src/xs_internal.c, src/xs_internal.h: The interface
	  between xen_unified.c and its underlying driver now uses
	  a custom structure (struct xenUnifiedDriver) instead
	  of reusing virDriver.
	* src/xen_unified.c: virDomainLookup* functions in Xen
	  now throw VIR_ERR_NO_DOMAIN if the domain does not exist.
	* src/xs_internal.c: Fix indentation.
2007-07-06 15:11:22 +00:00
Richard W.M. Jones
9cd405497f Wed Jul 4 10:14:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/conf.c, src/test.c, src/xen_internal.c: Readd checking
          of errors from virBuffer functions.
        * src/sexpr.c: Add comment about use of _GNU_SOURCE.
        * src/virsh.c: Remove use of _GNU_SOURCE / isblank.
        * src/xml.c, tests/Makefile.am: Minor cleanup.
2007-07-04 09:16:23 +00:00
Daniel P. Berrange
2f02d292da Move virBuffer functions into src/buf.c,h 2007-06-26 22:33:22 +00:00
Richard W.M. Jones
2be812bbc9 Tue Jun 26 12:40:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* include/libvirt/libvirt.h.in, src/libvirt.c: (and numerous
	  other files) Added support for virConnectGetHostname
	  and virConnectGetURI calls.
2007-06-26 11:42:46 +00:00
Richard W.M. Jones
29ee614511 Fri Jun 22 12:40:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/internal.h: Added STREQ and STRCASEEQ macros for clearer
	  equality testing of strings.
	* src/xen_internal.c: Fix handling of the scheduler parameters
	  field string so that the field doesn't contain garbage
	  after the string.
2007-06-22 11:42:22 +00:00
Daniel Veillard
7eed474dd3 * src/virsh.c: added a logging option to a file based on
Nobuhiro Itou patch
* src/xen_internal.c: small TODO comment from Atsushi SAKAI
Daniel
2007-06-06 12:24:31 +00:00
Daniel Veillard
75e63ce86e * src/xen_internal.c: fix from Hugh Brock to allow compiling
with -Werror after the previous patch
Daniel
2007-06-05 20:56:53 +00:00
Daniel Veillard
a62e008365 Oops2, Daniel 2007-06-05 13:11:48 +00:00
Daniel Veillard
3e255474d3 oops, Daniel 2007-06-05 13:10:09 +00:00
Daniel Veillard
652f3bb13b * include/libvirt/libvirt.h include/libvirt/libvirt.h.in
src/driver.h src/libvirt.c src/libvirt_sym.version
  src/proxy_internal.c src/qemu_internal.c src/test.c
  src/virsh.c src/xen_internal.c src/xen_internal.h src/xen_unified.c
  src/xend_internal.c src/xm_internal.c src/xs_internal.c:
  Applied patches from Atsushi SAKAI to add the scheduler API,
  with patch from Rich Jones for error handing, and a number
  of cleanups and more error checking from me
Daniel
2007-06-05 12:06:08 +00:00
Daniel Veillard
c3e814684a oops, Daniel 2007-05-29 14:19:06 +00:00
Daniel Veillard
7b88f59ce4 * src/virsh.c src/xen_internal.c src/xend_internal.c: memory leaks
fixed by a patch from Masayuki Sunou
Daniel
2007-05-29 13:55:19 +00:00
Richard W.M. Jones
94033dd73f Mon Apr 30 18:33:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/libvirt.c, src/driver.h, src/proxy_internal.c,
	  src/qemu_internal.c, src/test.c, src/xen_internal.c,
	  src/xend_internal.c, src/xs_internal.c,
	  proxy/libvirt_proxy.c: Remove VIR_DRV_OPEN_QUIET.
2007-04-30 17:30:11 +00:00
Daniel P. Berrange
42ee7111c3 Fixed up various functions for Xen 3.0.5 2007-04-13 00:43:57 +00:00
Richard W.M. Jones
18cd1a1e57 Wed Apr 4 15:18:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/xen_unified.c et al: Unified Xen driver.  Architecture
	  described here:
	  https://www.redhat.com/archives/libvir-list/2007-March/msg00396.html
2007-04-04 14:19:49 +00:00
Daniel Veillard
6ec6b79669 * src/xen_internal.c: applied patch from Masayuki Sunou fixing the
erroneous value of the hypercall XEN_V2_OP_SETMAXMEM
* libvirt.spec.in: applies changes from Jeremy Katz for libvirt
  spec and also another fix from Michael Schwendt fixing rhbz#233874
Daniel
2007-03-28 08:48:52 +00:00
Daniel P. Berrange
348209ca26 Fixed Xen capabilities parsing & added test suite 2007-03-27 14:45:17 +00:00
Richard W.M. Jones
ba83eae40f * src/xen_internal.c: Fix detection of host PAE capabilities,
nul-terminate the token in the output XML and a couple of
  cleanups for determining structure sizes.
2007-03-23 09:18:24 +00:00
Daniel Veillard
633a3bef0d * src/xen_internal.c: applied patch from Atsushi SAKAI fixing
direct hypervisor calls on some recent Xen versions
Daniel
2007-03-20 15:22:39 +00:00
Daniel P. Berrange
d59c9d2fa8 Fixed use of regexps in capabilities APIs 2007-03-15 18:59:47 +00:00
Daniel P. Berrange
6d11322bc7 Fixed uninitialized value warning 2007-03-15 18:15:14 +00:00
Daniel Veillard
635ae38979 * include/libvirt/libvirt.h[.in] include/libvirt/virterror.h
proxy/libvirt_proxy.c qemud/Makefile.am qemud/conf.c qemud/conf.h
  qemud/dispatch.c qemud/internal.h qemud/protocol.h
  src/driver.h src/internal.h src/libvirt.c src/libvirt_sym.version
  src/proxy_internal.c src/proxy_internal.h src/qemu_internal.c
  src/test.c src/virsh.c src/virterror.c src/xen_internal.c
  src/xen_internal.h src/xend_internal.c src/xm_internal.c
  src/xml.h src/xs_internal.c: applied patch from Richard Jones
  adding virConnectGetCapabilities(), plus various small little
  fixes
* docs/*: fixed the api extractor script and regenerated
Daniel
2007-03-15 17:24:56 +00:00
Daniel Veillard
6f7f84a772 * src/virsh.c src/xen_internal.c: applied patch from Atsushi SAKAI
to better handle the case where there is no limit in the domain
  upper memory size
* docs/architecture.html docs/format.html docs/intro.html
  docs/libvir.html: started to update the documentation to reflect
  the current state
Daniel
2007-03-15 14:27:09 +00:00
Daniel Veillard
181ce1fdc6 * configure.in proxy/Makefile.am proxy/libvirt_proxy.c
src/Makefile.am src/libvirt.c src/qemu_internal.c src/test.c
  src/xen_internal.c src/xen_internal.h src/xend_internal.c
  src/xm_internal.c src/xml.c src/xs_internal.c
  tests/Makefile.am tests/sexpr2xmltest.c tests/xmconfigtest.c:
  allow selective compilation of Xen,QEmu/KVM and test support
  in or out at configure time. Also allows to compile on a system
  without Xen development installed. All drivers are selected by
  default.
Daniel
2007-03-15 07:43:16 +00:00