Commit Graph

708 Commits

Author SHA1 Message Date
Mark McLoughlin
fc11528f98 Fix compile error in --with-iptables-dir code 2008-01-10 13:48:44 +00:00
Mark McLoughlin
cf0ee0f6e4 Change virExec() such that with --enable-debug,
stdout and stderr no longer go to /dev/null.
2008-01-10 13:47:49 +00:00
Mark McLoughlin
77a2fc0061 Add virRun() helper function (Dan Berrange) 2008-01-10 13:46:10 +00:00
Daniel P. Berrange
9d11255a47 Fix vcpupin hypercall map data to be 8-bytes 2008-01-09 21:08:29 +00:00
Daniel P. Berrange
78f2cd3d2d Added graceful shutdown support to QEMU/KVM (patch from Guido Guenther) 2008-01-09 16:05:21 +00:00
Daniel P. Berrange
8796a9ff74 Fix warning in debug output 2008-01-08 17:52:10 +00:00
Daniel P. Berrange
8cd4774468 Fix buffer passed to free() 2008-01-08 16:17:15 +00:00
Daniel P. Berrange
94e49e3f0e Fix config file reading to not truncate large files 2008-01-07 15:21:33 +00:00
Richard W.M. Jones
029aef1d24 Miscellaneous fixes for building on Windows (MinGW).
* configure.in: xdr functions may require -lxdr.
	* configure.in, src/Makefile.am: Extra linking flags for
	  building libvirt DLL.
	* src/socketcompat.h: Hide Windows Winsock incompatibilities
	  in a separate header file.
	* src/remote_internal.c: Switch to using socketcompat.h /
	  socket_errno().
	* src/test.c: Switch to using socketcompat.h.
	* gnulib/lib/arpa/.cvsignore: Ignore another generated file.
	* src/qparams.c: Include <config.h>.
2008-01-05 16:06:36 +00:00
Daniel P. Berrange
76122538b6 Fix crash when no auth callback is provided 2008-01-02 22:48:04 +00:00
Daniel Veillard
7b40fcd11f * src/openvz.c: patch from Mikhail Pokidko to fix the OpenVZ
compilation error #426385
Daniel
2007-12-26 05:41:05 +00:00
Daniel P. Berrange
d575a83f81 Fix nodeinfo compat with Xen 3.2.0 2007-12-17 23:04:33 +00:00
Richard W.M. Jones
1be1fe69f5 Fix remote_internal.c error handling of qparam_get_query
* src/remote_internal.c: Fixed reversed check of error handling
          of qparam_get_query call (Dan Berrange).
2007-12-17 17:41:02 +00:00
Richard W.M. Jones
3b0149354b Add separate qparams module for handling query parameters.
* src/qparams.c, src/qparams.h, src/Makefile.am: Added a
	  separate 'qparams' module for handling query parameters.
	* src/remote_internal.c: Factor out query parameter code so
	  it uses the 'qparams' module.
2007-12-17 10:07:56 +00:00
Richard W.M. Jones
ed9788c796 Add extra utility functions to buf.c
* src/buf.c, src/buf.h: Added utility functions
	  virBufferURIEncodeString and virBufferAddChar to the
	  buffer module.
2007-12-17 10:05:35 +00:00
Daniel P. Berrange
a11494fd52 Don't invoke callback with unsupported credential types 2007-12-15 17:15:12 +00:00
Daniel Veillard
cc8e4ff318 fix setting CPU parameters in the config files
* src/xm_internal.c: patch from Saori Fukuta to fix setting
  CPU parameters in the config files, the value was overwritten
Daniel
2007-12-14 15:51:42 +00:00
Daniel Veillard
81acc14e3a fix the detach-disk command when using Xen tap devices
* src/xs_internal.[ch]: patch from Saori Fukuta to fix the
  detach-disk command when using Xen tap devices.
* docs/libvir.html: typo fix from Jim Meyering
Daniel
2007-12-14 15:38:02 +00:00
Richard W.M. Jones
b47ffc035c Fix virBufferEscapeString escaping of '<'
* src/buf.c (virBufferEscapeString): '<' escaped as "&lt;"
2007-12-12 16:27:10 +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
Richard W.M. Jones
0d14fc0cbb Fri Dec 7 14:49:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/console.c, src/console.h, src/virsh.c: Disable
	  text console on Windows.
	* src/libvirt.c: Use replacement getpass from Gnulib.
	* src/libvirt.c: Initialize Winsock before use.
	* src/remote_internal.c: Header file fixes for Windows.
	  Don't fail if AI_ADDRCONFIG isn't defined.  Disable
	  unsupported stuff under Windows.
	* src/uuid.c: ENODATA unavailable on Windows, use EIO instead.
	* src/virsh.c: No uid_t / getuid on Windows.
	* src/virsh.c: No O_SYNC on Windows.
2007-12-07 14:56:37 +00:00
Richard W.M. Jones
f3ebd20d35 Fri Dec 7 14:47:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/internal.h: Use gnulib gettext library.  Define
	  INET_ADDRSTRLEN unless already defined.
2007-12-07 14:52:24 +00:00
Richard W.M. Jones
f1f94721ae Fri Dec 7 14:36:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/.cvsignore: Ignore *.loT files (generated under Windows).
	* proxy/libvirt_proxy.c: Bail out earlier --without-xen.
	* src/proxy_internal.c: Don't build proxy client side if
	  configured --without-xen.
	* src/iptables.c, src/iptables.h: Disable this code if
	  configured --without-qemu.
	* src/nodeinfo.c: If no 'uname' function, set model name to
	  empty string (for Windows).
	* src/xen_unified.h, src/util.c, src/test.c: Include <winsock2.h>
	  on Windows.
	* src/util.c: Disable virExec* and virFileLinkPointsTo on
	  MinGW.
2007-12-07 14:45:39 +00:00
Richard W.M. Jones
36f0ce0472 Fri Dec 7 14:34:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/sexpr.c: Cosmetic rearrangement of headers.
2007-12-07 14:39:14 +00:00
Jim Meyering
4a2f8fc633 Include "config.h" in remaining non-generated files.
* proxy/libvirt_proxy.c: Likewise.
* python/libvir.c: Likewise.
* python/types.c: Likewise.
* src/event.c: Likewise.
* src/xm_internal.c: Likewise.
* tests/reconnect.c: Likewise.
* tests/testutils.c: Likewise.
2007-12-07 10:08:06 +00:00
Richard W.M. Jones
efd495d667 Thu Dec 6 16:32:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/virsh.c: The prompt should depend on readonly status,
	  not on the UID.
2007-12-06 16:36:21 +00:00
Richard W.M. Jones
ec38eb9388 Thu Dec 6 12:00:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/remote_internal.c: Clean up a warning if neither SASL
          nor PolKit are enabled.
2007-12-06 12:05:35 +00:00
Daniel Veillard
7633453cfa * configure.in src/Makefile.am src/virsh.c: fix compilation problems
when readline headers were found but not the library
Daniel
2007-12-06 10:24:52 +00:00
Jim Meyering
87396257fc Include "config.h".
* qemud/event.c: Likewise.
* src/buf.c: Likewise.
* src/hash.c: Likewise.
* src/nodeinfo.c: Likewise.
* src/openvz_conf.c: Likewise.
* src/proxy_internal.c: Likewise.
* src/virterror.c: Likewise.
* src/xmlrpc.c: Likewise.
* src/xs_internal.c: Likewise.
* tests/conftest.c: Likewise.
* tests/xmlrpctest.c: Likewise.
This fixes a mingw build failure reported by Rich Jones.

Author: Jim Meyering <meyering@redhat.com>
2007-12-05 21:40:15 +00:00
Jim Meyering
261e7581b1 Use gnulib, starting with its physmem and getaddrinfo modules.
New files go into these directories:
  gnulib/lib
  gnulib/m4
  gnulib/tests

* bootstrap: A wrapper around gnulib-tool.
* configure.in: Invoke gl_EARLY and gl_INIT, being careful to put gl_EARLY
before any macro that uses AC_COMPILE_IFELSE.
(AC_OUTPUT): Add lib/Makefile and gl-tests/Makefile.  Remove m4/Makefile.
* Makefile.am (SUBDIRS): Add gnulib/lib and remove m4.  Add gnulib/tests
early enough that those tests run before any libvirt unit tests.
* m4/Makefile.am: Remove file.  Not needed.
* src/Makefile.am (INCLUDES): Add -I$(top_srcdir)/gnulib/lib -I../gnulib/lib.
(LDADDS, libvirt_la_LIBADD): Add ../gnulib/lib/libgnu.la.
* src/nodeinfo.c: Include "physmem.h".
* qemud/qemud.c, src/remote_internal.c: Include "getaddrinfo.h".
(MEMINFO_PATH, linuxNodeInfoMemPopulate): Remove definitions.
(virNodeInfoPopulate): Use physmem_total, not linuxNodeInfoMemPopulate.
* tests/Makefile.am (INCLUDES): Add -I$(top_srcdir)/gnulib/lib -I../gnulib/lib.
(LDADDS): Add ../gnulib/lib/libgnu.la.
* qemud/Makefile.am (libvirtd_LDADD): Add ../gnulib/lib/libgnu.la.
* tests/nodeinfotest.c (linuxTestCompareFiles): No longer read total
memory from a file.
Update expected output not to include "Memory: NNNN"
* tests/nodeinfodata/linux-nodeinfo-1.txt:
* tests/nodeinfodata/linux-nodeinfo-2.txt:
* tests/nodeinfodata/linux-nodeinfo-3.txt:
* tests/nodeinfodata/linux-nodeinfo-4.txt:
* tests/nodeinfodata/linux-nodeinfo-5.txt:
* tests/nodeinfodata/linux-nodeinfo-6.txt:
* src/test.c [WITH_TEST]: Remove definition of _GNU_SOURCE that
would conflict with the one now in "config.h".
* autogen.sh: Add -I gnulib/m4.
* src/conf.c, src/sexpr.c: Don't define _GNU_SOURCE.
Instead, include "config.h".
* qemud/qemud.c: Remove definition of _GNU_SOURCE.
* src/openvz_driver.c: Likewise.
* src/qemu_driver.c: Likewise.
* src/remote_internal.c: Likewise.

* configure.in: Use AC_CONFIG_AUX_DIR(build-aux), so that a bunch
of gettextize-generated files go into build-aux/, rather than in
the top-level directory.
* .cvsignore: Adjust.
* build-aux/.cvsignore: New file.


Author: Jim Meyering <meyering@redhat.com>
2007-12-05 21:31:07 +00:00
Daniel P. Berrange
2add6b3026 Fix compile issues when SASL is disabled 2007-12-05 19:25:44 +00:00
Daniel P. Berrange
e332ccdf71 Wire up SASL interaction callbacks to libvirt callbacks. Provide default callback impl 2007-12-05 18:55:04 +00:00
Daniel P. Berrange
7fa9ceb740 Added public API for authentication credential callback support 2007-12-05 18:28:05 +00:00
Daniel P. Berrange
282342c1c5 Added PolicyKit authentication support 2007-12-05 18:21:27 +00:00
Richard W.M. Jones
ffdbb903e4 Wed Dec 5 18:00:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/Makefile.am, tests/Makefile.am: Remove LIBOBJS/LTLIBOBJS
          which were incorrectly committed earlier.
2007-12-05 18:05:13 +00:00
Daniel P. Berrange
ca71b87cb0 Quit virsh immediately if connection open fails, rather than giving a non-functional interactive shell 2007-12-05 16:24:22 +00:00
Daniel P. Berrange
bb5371f668 Add data encryption using SASL SSF layer 2007-12-05 15:27:08 +00:00
Daniel P. Berrange
1b1d647439 Initial integration of SASL authentication, working for Kerberos only 2007-12-05 15:24:15 +00:00
Daniel P. Berrange
a8977b62ba Strip autogenerated vnetXXX interfaces 2007-12-05 15:08:23 +00:00
Richard W.M. Jones
4bfdb77aae Wed Dec 5 13:48:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* python/libvir.c, python/libvirt_wrap.h, qemud/qemud.c,
        qemud/remote.c, src/internal.h, src/openvz_conf.c,
        src/openvz_driver.c, src/proxy_internal.h, src/qemu_conf.c,
        src/qemu_driver.c, src/remote_internal.h, src/test.h, src/util.c,
        src/xen_unified.c, src/xen_unified.h, tests/nodeinfotest.c,
        tests/qemuxml2argvtest.c, tests/qemuxml2xmltest.c, tests/reconnect.c,
        tests/sexpr2xmltest.c, tests/virshtest.c, tests/xencapstest.c,
        tests/xmconfigtest.c, tests/xml2sexprtest.c:
        Change #include <> to #include "" for local includes.
        Removed many includes from src/internal.h and put them in
        the C files which actually use them.
        Removed <ansidecl.h> - unused.
        Added a comment around __func__.
        Removed a clashing redefinition of VERSION symbol.
        All limits (PATH_MAX etc) now done in src/internal.h, so we
        don't need to include those headers in other files.
2007-12-05 13:56:22 +00:00
Richard W.M. Jones
4338271f1a Tue Dec 4 17:47:01 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* configure.in: curses is not actually required to build libvirt
	* configure.in, src/virsh.c: Make readline optional.  If not
	  available then virsh is built without support for command
	  line editing.
2007-12-04 18:27:52 +00:00
Richard W.M. Jones
78f756e081 Mon Dec 3 16:15:10 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/util.c: Fix header files for Windows builds.
2007-12-03 16:19:41 +00:00
Daniel P. Berrange
4cd62fe306 Move generic file & I/O routines out of QEMU driver into util.c 2007-12-03 14:30:46 +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
Daniel P. Berrange
2b3c49b6ab Fix numerous memory leaks 2007-12-01 15:45:25 +00:00
Daniel P. Berrange
b4f841d92f Fix buffer termination off-by-1 in link comparison code 2007-12-01 15:29:45 +00:00
Daniel P. Berrange
6d3f1d516e Disable Xen specific functions if Xen driver is disabled 2007-11-30 22:51:54 +00:00
Jim Meyering
c3c80a183e Detect heap allocation failure; factor out some duplication.
* qemud/qemud.c (tls_port, tcp_port, mdns_name, tls_allowed_ip_list):
  (tls_allowed_dn_list): Remove "const", now that we free these.
  (unix_sock_rw_mask): Rename from unix_sock_rw_perms, so that
  the latter name can be used as a local string variable, so that the
  variable name matches the config attribute name.
  (unix_sock_ro_mask): Rename from unix_sock_ro_perms, likewise.
  (remoteCheckDN, remoteCheckAccess): Adapt to const removal.
  (qemudDispatchServer): Check for heap allocation failure.
  (remoteConfigGetStringList): New function, based on code from Dan Berrangé.
  (CHECK_TYPE): Remove macro.
  (checkType): New function.
  (GET_CONF_INT, GET_CONF_STR): New macros.
  (remoteReadConfigFile): Use new macros to avoid duplication and to
  check for allocation failure.
* src/conf.h (virConfTypeName): New static inline function.
2007-11-30 15:43:42 +00:00
Richard W.M. Jones
d63034c018 Thu Nov 29 17:40:00 GMT 2007 Richard W.M. Jones <rjones@redhat.com>
* configure.in: Added CYGWIN_EXTRA_LDFLAGS, CYGWIN_EXTRA_LIBADD,
	  CYGWIN_EXTRA_PYTHON_LIBADD, CYGWIN automake conditional.
	* src/Makefile.am: Extra flags required to build DLL of libvirt
	  for Cygwin.
	* python/Makefile.am: Extra flags and rule required to build
	  Python module for Cygwin.
2007-11-29 17:44:01 +00:00
Richard W.M. Jones
ba75647b55 Thu Nov 29 09:15:00 GMT 2007 Richard W.M. Jones <rjones@redhat.com>
* src/virsh.c: Added #include <time.h> so it can compile
          on CentOS 4 (Carl Jones).
2007-11-29 09:18:04 +00:00
Richard W.M. Jones
df0525a911 Wed Nov 28 14:20:00 GMT 2007 Richard W.M. Jones <rjones@redhat.com>
* src/virsh.c: Missing comma.
2007-11-28 14:22:30 +00:00
Jim Meyering
55311d6c38 src/virsh.c (vshCloseLogFile): Diagnose close/write failure. 2007-11-28 13:22:33 +00:00
Richard W.M. Jones
208a450a53 Wed Nov 28 09:00:00 GMT 2007 Richard W.M. Jones <rjones@redhat.com>
* src/xm_internal.c, src/xm_internal.h: Added support for
          pinning inactive domains for Xen 3.0.3 (Saori Fukuta).
2007-11-28 10:11:18 +00:00
Jim Meyering
59a375812d When reporting errors, use "conn" whenever possible.
* src/remote_internal.c: change all error (NULL, ... to error (conn, ...
(check_cert_file): Add+use parameter, conn.
Adjust callers.
(initialise_gnutls): The "conn" parameter *is* used, so remove
ATTRIBUTE_UNUSED.


Author: Jim Meyering <meyering@redhat.com>
2007-11-27 18:18:23 +00:00
Daniel Veillard
1338ed4f25 * configure.in: when configuring with --prefix=/usr i.e. the same
prefix as the installed libvirt, use the same localstatedir /var
  (instead of /usr/var) and sysconfdir /etc (instead of /usr/etc) to
  be able to connect to the system daemon, and use the system local
  options
* src/xs_internal.c: avoid error message when non-root cannot open
  xenstore
* src/xend_internal.c: avoid error message when non-root cannot
  directly access xend, in those 2 cases the proxy (or remote code)
  should implement the access so there is no need to raise the error
  there.
Daniel
2007-11-27 14:39:42 +00:00
Richard W.M. Jones
851c651820 Mon Nov 26 12:12:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* configure.in, src/console.c: Replace cfmakeraw if not in
	  standard library.
2007-11-26 12:14:32 +00:00
Richard W.M. Jones
95585d7c94 Mon Nov 26 11:49:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/bridge.c, src/bridge.h, src/qemu_conf.c, src/qemu_conf.h,
	  src/qemu_driver.c, src/qemu_driver.h, src/test.c: Disable more
	  of qemu if configured --without-qemu.
2007-11-26 11:50:16 +00:00
Richard W.M. Jones
d6d1c629fa Mon Nov 26 11:47:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/remote_internal.c: Miscellaneous header file fixes for
	  Cygwin.
2007-11-26 11:47:15 +00:00
Richard W.M. Jones
46fdd02c75 Mon Nov 26 11:39:59 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* configure.in, src/internal.h, src/xml.c: <sys/syslimits.h>
	  is needed on Cygwin to get PATH_MAX.  HOST_NAME_MAX and
	  IF_NAMESIZE defined if not in header files.
2007-11-26 11:40:28 +00:00
Daniel Veillard
1ad3d2cdd8 * src/xm_internal.c: fix the parsing of predefined domains on
xen prior to 3.1 to take into accound the fact that disk can
  be shareable.
Daniel
2007-11-21 16:31:30 +00:00
Richard W.M. Jones
618db3deb7 Wed Nov 21 11:36:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/bridge.c, src/qemu_driver.c: Incorrect call to
	  brSetForwardDelay changed to brSetEnableSTP.
2007-11-21 11:46:05 +00:00
Daniel Veillard
61b113c623 Cleaned up a couple of comments/tests, Daniel 2007-11-20 18:57:41 +00:00
Richard W.M. Jones
4ef3a4ea7c Tue Nov 20 10:49:28 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/virterror.c, src/stats_linux.c, include/libvirt/virterror.h:
	  Renamed the VIR_FROM_LINUX error as VIR_FROM_STATS_LINUX for
	  consistency.
2007-11-20 10:58:21 +00:00
Daniel Veillard
aab34d876e * include/libvirt/virterror.h src/openvz_conf.c src/openvz_driver.c
src/stats_linux.c src/virterror.c src/xm_internal.c: patch from
  Saori Fukuta cleaning up various problems in the error reporting
  layers
Daniel
2007-11-20 10:15:38 +00:00
Daniel P. Berrange
2efc8ff757 Fixed 32-bit overflow 2007-11-17 11:53:44 +00:00
Daniel P. Berrange
6bb2d376b5 Refactor processing of incoming packets to remove dead code 2007-11-17 11:17:48 +00:00
Richard W.M. Jones
e714bb67ca Thu Nov 15 17:43:00 UTC 2007 Richard W.M. Jones <rjones@redhat.com>
* src/stats_linux.c: Fix parsing of short interface names
	  occurring in the /proc/net/dev file.
	* src/qemu_driver.c: Collect interface stats for QEMU & KVM
	  domains.
2007-11-15 17:45:44 +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
Daniel Veillard
a4499a22c5 * src/stats_linux.c: patch from Jim Paris to fix compilation
when Xen isn't installed
* src/qemu_conf.h: small cleanup of signedness of bitfields
  from Jim Paris
Daniel
2007-11-15 10:56:24 +00:00
Daniel Veillard
ec58960745 * doc/libvir.html doc/format.html: add missing docs for
<shareable/> on disk devices
* src/Makefile.am: fix the tst build rule for missing libraries
Daniel
2007-11-14 17:11:19 +00:00
Jim Meyering
a3d909888d Handle failed strdup and malloc.
* src/remote_internal.c: Don't dereference NULL after
failed strdup or malloc in doRemoteOpen.
2007-11-14 16:29:08 +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
Jim Meyering
5d25419188 Parse integers more carefully, cont'd.
* qemud/qemud.c: Replace uses of strtol with uses of xstrtol_i.
  Avoid overflow for very large --timeout=N values.
* src/nodeinfo.c: In linuxNodeInfoMemPopulate and
  linuxNodeInfoCPUPopulate, use xstrtol_i rather than strtol.
  Unlike in qemud.c, here we allow trailing "isspace", and in
  the case of "cpuinfo cpu MHz", also allow a "." terminator,
  since we ignore the decimal and any following digits.
* src/internal.h: Define xstrtol_ui, too.


Author: Jim Meyering <meyering@redhat.com>
2007-11-14 10:53:05 +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
906c1f5055 * src/virsh.c: initialize a couple of variable to avoid warnings
when compiling with Fedora.
Daniel
2007-11-08 18:07:02 +00:00
Daniel Veillard
710547590b * src/virsh.c: patch from Jim Meyering to use gcc's printf attribute.
Daniel
2007-11-08 18:00:52 +00:00
Daniel Veillard
b31ed75bff * src/virsh.c: patch from Jim Meyering to correct vshCommandOptInt
indentation
Daniel
2007-11-08 16:14:12 +00:00
Richard W.M. Jones
5a628880b0 Tue Nov 6 19:54:00 CET 2007 Jim Meyering <meyering@redhat.com>
Avoid risk of format string abuse (also avoids gcc warnings).
        * src/util.c (ReportError): Use a literal "%s" format string.
        * src/remote_internal.c (server_error): Likewise.
        * src/qemu_conf.c (qemudReportError): Likewise.
        * acinclude.m4: Add -Wformat -Wformat-security to default
          list of warning flags, to warn about errors such as the
          above.
2007-11-07 12:29:37 +00:00
Daniel Veillard
f2886d75e6 * src/xs_internals.c: patch from Chris Lalancette, forgot to
remove the domainDumpXML entry when changing the driver structure
Daniel
2007-11-06 16:25:32 +00:00
Daniel Veillard
9899932303 * src/xml.c src/xs_internal.c src/xs_internal.h: applied patch
from Masayuki Sunou to fix xend errors when adding disk
  devices, due to improper device id lookup.
Daniel
2007-11-06 11:49:01 +00:00
Daniel Veillard
31eade077e * src/virsh.c: patch from Masayuki Sunou to fix parameter
validation of virsh schedinfo parameters.
Daniel
2007-11-06 09:41:18 +00:00
Daniel Veillard
028275d6da * src/xml.c: patch from Beth Kon to fix a problem when the
cpuset parameter for numa uses cpu maxcpu-1
Daniel
2007-11-05 10:14:42 +00:00
Daniel Veillard
c33b54df47 * src/xm_internal.c: patches from Masayuki Sunou to fix a problem
when an HVM domain is started with a CD-Rom config, this should
  fix #328841
Daniel
2007-11-01 13:33:58 +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 P. Berrange
8a0711c758 Avoiding calling remote network driver recursively if inside daemon 2007-10-27 01:23:28 +00:00
Daniel P. Berrange
d6f351690e Support CDROM media change for QEMU/KVM 2007-10-27 01:21:09 +00:00
Daniel P. Berrange
97185033e5 Refactor shell escaping code 2007-10-27 01:19:51 +00:00
Daniel P. Berrange
eed1b17791 Refactor device parsing code 2007-10-27 01:18:38 +00:00
Daniel P. Berrange
79995893de Make qemudMonitorCommand append line endings 2007-10-27 01:16:53 +00:00
Daniel Veillard
2718513226 * src/xml.c: fix build when configured without Xen
Daniel
2007-10-26 13:41:18 +00:00
Daniel Veillard
211a20aefb * src/xml.c: applied patch from Jim Meyering fixing parseNumber
to detect overflow, and also reindented the module.
Daniel
2007-10-24 14:22:25 +00:00
Daniel Veillard
14c5c70a78 * src/xml.c: fix the build of the proxy broken on previous commit
Daniel
2007-10-23 15:31:33 +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 Veillard
a87420ae59 * src/xend_internal.c: update to cpuset parsing code for NUMA
Daniel
2007-10-22 13:06:15 +00:00
Daniel Veillard
d620b00ffa * src/Makefile.am: fix tst build rule
* src/buf.c: fix virBufferContentAndFree to make sure the string is
  always 0 terminated.
Daniel
2007-10-19 15:09:31 +00:00
Daniel Veillard
24abf6c925 * src/conf.c: fix bug on negative values in virConfParseLong()
raised by Tatsuro Enokura
Daniel
2007-10-19 10:01:01 +00:00
Daniel Veillard
69b9fcf297 * src/conf.c: documentation cleanups from Jim Meyering
* tests/conftest.c: Use fwrite, not printf, since the
  result buffer is not NUL-terminatedi, from Jim Meyering.
* tests/qemuxml2argvtest.c: Initialize vm.migrateFrom[0],
  to avoid "read-uninitialized" error from within
  qemudBuildCommandLinei, from Jim Meyering.
Daniel
2007-10-19 08:29:13 +00:00
Richard W.M. Jones
4e04ee2d2f Wed Oct 17 11:27:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/xend_internal.c (sexpr_get): Declare with gcc's printf
        attribute. (Jim Meyering)
2007-10-17 10:33:16 +00:00
Daniel P. Berrange
b4fab30b89 Mark XML param for attach/detach APIs const 2007-10-15 21:38:56 +00:00
Richard W.M. Jones
503cca7cee Mon Oct 15 15:31:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/test.c, include/libvirt/libvirt.h.in: Remove virDomainRestart
        from the public API (it was not used), and move it into the test
        driver where it is used for purely internal purposes.
2007-10-15 14:32:35 +00:00
Daniel P. Berrange
85ef19558c Added default example configs for libvirtd/qemu driver 2007-10-12 19:54:15 +00:00
Daniel P. Berrange
912c18afa3 Added QEMU driver config file 2007-10-12 16:05:44 +00:00
Daniel P. Berrange
af10d71cc2 Reset migration source after failed VM start 2007-10-10 19:46:17 +00:00
Daniel P. Berrange
175e1711a6 Fixed processing of vncdisplay/vncused params in XM config files 2007-10-10 17:55:38 +00:00
Daniel P. Berrange
bf70fe4883 Fix virtual networking XML -> XM config file conversion & a mem leak 2007-10-10 17:41:06 +00:00
Daniel Veillard
aa826860bc * src/xend_internal.c: applied patch from Beth Kon to fix
NUMA topology for cells without CPUs
Daniel
2007-10-08 15:02:47 +00:00
Daniel P. Berrange
77cf0390e4 Fix NUMA topology error handling (beth kon) 2007-10-05 01:08:17 +00:00
Daniel P. Berrange
c4461ff57b Only use bootloader for paravirt guests 2007-09-30 15:36:47 +00:00
Daniel Veillard
b5a3d4da61 * src/virsh.c: use virNodeGetFreeMemory() for freecell without
argument
* src/libvirt_sym.version: export virNodeGetFreeMemory()
Daniel
2007-09-30 13:22:16 +00:00
Daniel Veillard
ab0f561de6 Forgot one change, Daniel 2007-09-30 13:17:45 +00:00
Daniel Veillard
9f211bbf3a * include/libvirt/libvirt.h include/libvirt/libvirt.h.in
src/driver.h src/libvirt.c src/openvz_driver.c src/qemu_driver.c
  src/test.c src/xen_unified.c src/xend_internal.c: add new API
  virNodeGetFreeMemory(), extends the driver. Lacks remote and
  QEmu support though.
* src/libvirt.c: allows to fix virNodeGetCellsFreeMemory() adding
  parameter check for startCell.
* proxy/libvirt_proxy.c src/xend_internal.[ch]
  include/libvirt/libvirt.h include/libvirt/libvirt.h.in: applied
  vncpasswd dump patch from Mark Johnson but with the
  virDomainXMLFlags extension as suggested by Daniel Berrange
  this changed a couple of internal APIs too
* tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml: fix one of the
  tests affected by bootloader dump change.
Daniel
2007-09-30 13:09:07 +00:00
Daniel P. Berrange
0e7aa57385 Solaris hypercall compatability fixes (Mark Johnson) 2007-09-29 18:37:47 +00:00
Daniel P. Berrange
84b5415cbf Allow empty bootloader tag 2007-09-29 18:31:05 +00:00
Daniel P. Berrange
fb741174ad Solaris portability fix from Mark Johnson. Remove use of anonymous union members 2007-09-29 18:16:26 +00:00
Daniel P. Berrange
b876bf6ea5 Fixed crash prossing input tags 2007-09-28 20:47:58 +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
91076f111b * src/remote_internal.c: Fix handling of usernames (thanks to
Fabian Deutsch for finding and fixing this).
2007-09-25 13:54:17 +00:00
Daniel P. Berrange
136ebc6e3c Detect QEMU flags per VM instead of once for driver as a whole 2007-09-21 21:20:32 +00:00
Daniel P. Berrange
b32f429849 Added a no_tty param to remote URIs to stop SSH prompting for password 2007-09-21 20:17:09 +00:00
Daniel P. Berrange
01422bd794 Fixed QEMU uri parsing/detection 2007-09-21 19:32:02 +00:00
Richard W.M. Jones
0caf0d767c Thu Sep 20 19:37:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/bridge.c, src/qemu_driver.c, configure.in: Try to detect
        the paths of dnsmasq and brctl at compile time.  If found
        then compile them in, otherwise search $PATH at runtime.

        * libvirt.spec.in: BR dnsmasq and bridge-utils so we have their
        paths at compile time.
2007-09-20 18:40:36 +00:00
Richard W.M. Jones
9a79baba76 Thu Sep 20 18:10:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/qemu_driver.c, docs/libvir.html: Support virConnectGetHostname
        and virConnectGetURI for qemu driver.
2007-09-20 17:13:39 +00:00
Richard W.M. Jones
415015506f Thu Sep 20 13:02:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/libvirt.c: Don't try to generate an error message with
        an invalid connection object.
2007-09-20 12:04:57 +00:00
Richard W.M. Jones
18ec04c071 Thu Sep 20 12:59:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/xend_internal.c: Error message if we cannot connect
        to xend.
2007-09-20 12:02:18 +00:00
Daniel P. Berrange
736f0e2531 Fix waitpid() call to only run in error case (merge error) 2007-09-19 21:44:32 +00:00
Daniel P. Berrange
27b4293285 Switch to use pkg-config to find gnutls 2007-09-19 17:42:40 +00:00
Daniel P. Berrange
c79514fda0 Allow updating of existing timers & file handle event watches 2007-09-19 01:27:32 +00:00
Daniel P. Berrange
2384225b8b Avoid zombies with remote tunnels 2007-09-18 03:08:49 +00:00
Daniel P. Berrange
63dc047468 Fixed PXE network boot config 2007-09-13 22:06:54 +00:00
Richard W.M. Jones
cc82a93645 Wed Sep 12 16:35:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/xend_internal.c, src/xml.c, src/xml.h: Properly check buffer
        size in virDomainXMLDevID (Hugh Brock).
2007-09-12 15:41:51 +00:00
Richard W.M. Jones
5fac0c95e1 Wed Sep 12 11:30:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/xend_internal.c, src/xen_unified.c: Removed an annoying
	  warning when using Xen 3.0.3 and inactive domains.
2007-09-12 10:37:00 +00:00
Richard W.M. Jones
1361ddec0a Wed Sep 12 11:25:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/remote_internal.c: virDrvOpenRemoteFlags was accidentally
	  declared as a global variable, instead of the name an enum.
2007-09-12 10:33:48 +00:00
Daniel Veillard
fcf1b59128 * src/xend_internal.c: applied patch from Hugh Brock to allow
CD Rom device reload by reusing virDomainAttachDevice() with
  a new definition
Daniel
2007-09-10 11:47:17 +00:00
Daniel Veillard
298d289542 * include/libvirt/libvirt.h include/libvirt/libvirt.h.in
src/libvirt.c: fixes a few problems in the documentation
  pointed out by Toth Istvan.
* docs/*: regenerated the docs
Daniel
2007-09-10 09:37:10 +00:00
Daniel Veillard
5196e6cab7 * src/openvz_conf.c src/openvz_conf.h src/openvz_driver.c: a bit
of cleanup on top of previous patches.
Daniel
2007-09-03 16:30:00 +00:00
Daniel Veillard
b36902c37a * src/openvz_conf.c src/openvz_conf.h src/openvz_driver.c
src/openvz_driver.h: Applied patch from Shuveb Hussain and Anoop
  Cyriac to extent OpenVZ driver capabilities, especially Create().
Daniel
2007-09-03 15:37:07 +00:00
Daniel Veillard
3c999f7ff4 * src/buf.c: applied patch from Masayuki Sunou fixing a loop
due to an error in growing buffers.
Daniel
2007-08-30 13:12:44 +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
Daniel Veillard
b4d74032b0 * src/virsh.c: apply patch from Masayuki Sunou to fix the exit value
of vncdisplay command.
Daniel
2007-08-29 07:47:09 +00:00
Daniel Veillard
3d5e2a1532 * src/xend_internal.c: applied patch from Masayuki Sunou to avoid
memory corruption on very large XML dumps.
Daniel
2007-08-27 09:31:31 +00:00
Daniel Veillard
cb2e35b604 * configure.in libvirt.spec.in include/libvirt/libvirt.h docs/*:
preparing release of 0.3.2
* src/libvirt.c: fix a couple of comments
* po/*: string localization merge/update
Daniel
2007-08-21 14:59:47 +00:00
Daniel Veillard
3a4c8d219c * src/xs_internal.c: cleanup of memory leaks from Masayuki Sunou
* src/virsh.c: another memory leaks of virsh schedinfo cleanup from
  Saori Fukuta
* po/*: string localization merge/update
Daniel
2007-08-21 11:53:52 +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
Richard W.M. Jones
19e21d8672 Tue Aug 21 09:56:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* qemud/remote.c, qemud/remote_protocol.x, src/driver.h,
          src/internal.h, src/libvirt.c, src/libvirt_sym.version,
          src/qemu_driver.c, src/remote_internal.c, src/test.c:
          Add a private interface so that libvirt.c coordination
          functions can detect the availability of features in
          underlying drivers, using the VIR_DRV_SUPPORTS_FEATURE
          macro.
2007-08-21 09:03:55 +00:00
Richard W.M. Jones
9201909064 Tue Aug 21 09:45:00 BST 2007 Richard W.M. Jones <rjones@redhat.com>
* src/xend_internal.c: Return the interface device name as
          <target dev='vifX.Y'/> in domain XML.
        * tests/*: Update XML in regression tests.
2007-08-21 08:54:07 +00:00
Daniel Veillard
b8906a43fa * src/xend_internal.c: patch from Masayuki Sunou to avoid
attach-disk/attach-interface when < Xen 3.0.4
Daniel
2007-08-16 15:38:38 +00:00
Daniel Veillard
0ee4415cc6 * src/virsh.c: vshCommandOptInt was broken as it would not
detect non-int inputs, problem raised by Masayuki Sunou
Daniel
2007-08-16 13:21:36 +00:00
Daniel Veillard
d7b5e2c2d8 * src/virsh.c: fixed 2 small bugs in setvcpus command, after
Atsushi SAKAI pointed out a value checking problem
Daniel
2007-08-15 10:18:33 +00:00