Set all spawned server threads to be daemonic and make sure their
sockets are closed properly using shutdown() and close(), otherwise
reload will complain about the "Address still in use."
Signed-off-by: Alastair Tse <atse@xensource.com>
MESSAGE_METHOD_UNKNOWN. Only add the Xen-API methods to the official Xen-API
XML-RPC server, not to the legacy one.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
code from the relocation protocol handling and some plumbing. Add a new
configuration entry for the Xen-API server, including use of this mechanism.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
11863:7633398447846679342b197a79bc375b996d9026, with conflict resolution by
Ewan Mellor.
[XM] Allow empty resource strings (e.g., when creating an empty CDROM
device). Also clean up error/acces-denied path.
Signed-off-by: Keir Fraser <keir@xensource.com>
11839:328606e0705f0341bebda14cdd17962e463868e8.
Use the name of the title of the system to boot into (instead of the
kernel version) to determine where to make the entry into the grub
configuration file.
Signed-off-by: Reiner Sailer <sailer@us.ibm.com>
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
file. Without this patch, multiple representations of the same
resource can co-exist in the resource label file and lead to errors
during operation.
Ensures that all resource file names are stored with absolute
path name and are unique. Setting labels of phy-resources, relative
paths will automatically be pre-pended with '/dev/'; labeling
file-resources with relative paths will raise an error.
Signed-off by: Reiner Sailer <sailer@us.ibm.com>
* Moved xenapi transport util method, stringify to xen.util.xmlrpclib2
* XenVDI now preserves configuration to an XML-ish file
* Update Xen API's class names to be all lowercase
* Update get_by_label to get_by_name_label and return sets as the API
expects.
* Add support for VBD creation with a VDI reference.
Signed-off-by: Alastair Tse <atse@xensource.com>
If a Xen guest has a bootloader configured, then it will fail to start
on a blktap image. The problem is blkdev_uname_to_file, which cannot
parse the "tap:aio:$filename" image strings: it tries to split the
string apart at ":" and assign the result to a 2-tuple, and this
results in a python error if the split results in three or more
strings.
The fix is to split only at the first ":", and then to split again
if we detect "tap:" as the image type.
Signed-off-by: Stephen Tweedie <sct@redhat.com>
be under /var/log/xen instead of under /var/log directly. This has
the advantage of cleaning things up a little and also can make it
easier to restrict the permissions needed by xend.
Signed-off-by: Jeremy Katz <katzj@redhat.com>
the corresponding fields to the PCI bus manager via sysfs nodes:
/sys/bus/pci/drivers/pciback/quirks
/sys/bus/pci/drivers/pciback/permissive
xend reads the policy file every time it creates a new domain that was
assigned a PCI device.
Signed-off-by: Chris Bookholt <hap10@tycho.ncsc.mil>
This patch adds new xm subcommands to support working with resource
labels. The new subcommands are 'xm resources', 'xm rmlabel', 'xm
getlabel' and 'xm dry-run'. In addition, the 'xm addlabel' subcommand
now uses an updated syntax to support labeling both domains and
resources. See the xm man page for details on each subcommand.
Beyond the new subcommands, this patch allows users to immediately see
when security checks will fail by pushing some basic security checking
into the beginning of 'xm create' and 'xm block-attach'. ACM security
attributes for block devices are added to XenStore in order to support
the final security enforcement, which will be performed in the kernel
and included in a separate patch.
Signed-off-by: Bryan D. Payne <bdpayne@us.ibm.com>
Signed-off-by: Reiner Sailer <sailer@us.ibm.com>
shouldn't be needed but it appears to be necessary as the Python client
just does a wfile.read() instead of only reading the reported Content-Length.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
transport when running on Python <2.4. SSHTransport uses the new subprocess
class, and so it doesn't work on older versions.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
the previous submission in that it now uses lazy evaluation to connect
to the remote server and provides more user friendly error messages if ssh
is not available.
Signed-off-by: Anthony Liguori
This patch fixes a few bugs in the Python SimpleXMLRPC server and enables
HTTP/1.1 by default. This allows a client to use Keep-Alive. Keep-Alive
improves performance by eliminating the overhead of connection setup and,
more importantly, avoids credential caching when executing multiple
commands over a secure connection.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Subsequent patches will follow in the coming weeks that will enable
Xen ACM to control assignment of resources (e.g., block devices and
networking) to virtual machines based on resource labels and the
active security policy.
Signed-off-by: Bryan D. Payne <bdpayne@us.ibm.com>
Signed-off-by: Reiner Sailer <sailer@us.ibm.com>
util/security.py to be either strings or ints (previously only strings
would work due to the underlying call to lowlevel.acm).
Signed-off-by: Bryan D. Payne <bdpayne@us.ibm.com>
Signed-off-by: Reiner Sailer <sailer@us.ibm.com>
integrate into Xen Management and which support the new access control
labels (labels replace the ssidref numbers at the management user
interface).
Signed-off by: Reiner Sailer <sailer@us.ibm.com>
of the encoding used, one still may not include non-printable characters in an
XML document. When a dmesg contains a ^D character, something seen on one of
our test machines, an invalid XML document is generated.
Use a trick by David Mertz to work around this -- escape the string using
Python's repr function.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
UTF-8 if given a string containing high-bit characters, so instead pass in
Unicode strings, for which the escaping is correct.
This fixes a bug seen when the dmesg of a machine contains high bit characters,
but I'm sure there are other ways in which it might be triggered.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
cannot use the socket.
This closes a security hole, and fixes the intermittent failure
of xm-test/06_list_nonroot.test.
c.f. xen-unstable changeset 9205:faa1eb1621b9 (same bug, different socket).
Signed-off-by: Ewan Mellor <ewan@xensource.com>
under Python 2.3; traceback.format_exc was introduced in 2.4, so we can't use
it.
Added some exception logging.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
UnixXMLRPCRequestHandler through to TCPXMLRPCServer.
Do not log requests -- this fills up xend-debug.log uselessly.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
This changeset introduces a new XML-RPC service that runs in Xend and the
required changes to have xm use this new service by default.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Replace the old pciif DevController class with a new one that
configures the PCI backend. A util class detects the resource usage of
the specified PCI devices and pciif interacts with Xen to permit a
driver domain to directly access those physical I/O resources.
Signed-off-by: Ryan Wilson <hap9@epoch.ncsc.mil>