# Builtin libxl types
#
-libxl_ctx = Builtin("ctx")
+libxl_domid = Builtin("domid")
libxl_uuid = Builtin("uuid")
libxl_mac = Builtin("mac")
libxl_cpumap = Builtin("cpumap", destructor_fn="libxl_cpumap_destroy", passby=PASS_BY_REFERENCE)
#
libxl_dominfo = Struct("dominfo",[
("uuid", libxl_uuid),
- ("domid", domid),
+ ("domid", libxl_domid),
("running", BitField(uint8, 1)),
("blocked", BitField(uint8, 1)),
("paused", BitField(uint8, 1)),
libxl_vminfo = Struct("vminfo", [
("uuid", libxl_uuid),
- ("domid", domid),
+ ("domid", libxl_domid),
], destructor_fn=None)
libxl_version_info = Struct("version_info", [
], destructor_fn=None)
libxl_device_model_info = Struct("device_model_info",[
- ("domid", integer),
+ ("domid", libxl_domid),
("uuid", libxl_uuid, False, "this is use only with stubdom, and must be different from the domain uuid"),
("dom_name", string),
("device_model_version", libxl_device_model_version),
Network is missing""")
libxl_device_vfb = Struct("device_vfb", [
- ("backend_domid", uint32),
+ ("backend_domid", libxl_domid),
("devid", integer),
("vnc", bool, False, "vnc enabled or disabled"),
("vnclisten", string, False, "address:port that should be listened on for the VNC server if vnc is set"),
])
libxl_device_vkb = Struct("device_vkb", [
- ("backend_domid", uint32),
+ ("backend_domid", libxl_domid),
("devid", integer),
])
libxl_device_console = Struct("device_console", [
- ("backend_domid", uint32),
+ ("backend_domid", libxl_domid),
("devid", integer),
("consback", libxl_console_backend),
("build_state", Reference(libxl_domain_build_state), True),
])
libxl_device_disk = Struct("device_disk", [
- ("backend_domid", uint32),
+ ("backend_domid", libxl_domid),
("pdev_path", string),
("vdev", string),
("backend", libxl_disk_backend),
])
libxl_device_nic = Struct("device_nic", [
- ("backend_domid", uint32),
+ ("backend_domid", libxl_domid),
("devid", integer),
("mtu", integer),
("model", string),
*val = tmp;
return 0;
}
+
static int fixed_bytearray_set(PyObject *v, uint8_t *ptr, size_t len)
{
char *tmp;
return fixed_bytearray_set(v, libxl_uuid_bytearray(pptr), 16);
}
+int attrib__libxl_domid_set(PyObject *v, libxl_domid *domid) {
+ *domid = PyInt_AsLong(v);
+ return 0;
+}
+
int attrib__struct_in_addr_set(PyObject *v, struct in_addr *pptr)
{
PyErr_SetString(PyExc_NotImplementedError, "Setting in_addr");
return fixed_bytearray_get(libxl_uuid_bytearray(pptr), 16);
}
+PyObject *attrib__libxl_domid_get(libxl_domid *domid) {
+ return PyInt_FromLong(*domid);
+}
+
PyObject *attrib__struct_in_addr_get(struct in_addr *pptr)
{
PyErr_SetString(PyExc_NotImplementedError, "Getting in_addr");