[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [RFC PATCH 2/2] libxl: prototype libxl_device_nic_add/remove with IDL
Add a DeviceFunction class and describe prototypes for libxl_device_nic_add/remove in libxl_types.idl. Signed-off-by: Nick Rosbrook <rosbrookn@xxxxxxxxxxxx> -- This is mostly to serve as an example of how the first patch would be used for function support in the IDL. --- tools/libxl/idl.py | 8 ++++++++ tools/libxl/libxl_types.idl | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/tools/libxl/idl.py b/tools/libxl/idl.py index 1839871f86..15085af8c7 100644 --- a/tools/libxl/idl.py +++ b/tools/libxl/idl.py @@ -386,6 +386,14 @@ class CtxFunction(Function): Function.__init__(self, name, params, return_type, return_is_status) +class DeviceFunction(CtxFunction): + """ A function that modifies a device. """ + def __init__(self, name=None, device_param=None): + params = [ ("domid", uint32), device_param ] + + CtxFunction.__init__(self, name=name, params=params, return_type=integer, + return_is_status=True, is_asyncop=True) + def parse(f): print("Parsing %s" % f, file=sys.stderr) diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl index 9d3f05f399..22ba93ee4b 100644 --- a/tools/libxl/libxl_types.idl +++ b/tools/libxl/libxl_types.idl @@ -769,6 +769,12 @@ libxl_device_nic = Struct("device_nic", [ ("colo_checkpoint_port", string) ]) +libxl_device_nic_add = DeviceFunction("device_nic_add", + ("nic", libxl_device_nic)) + +libxl_device_nic_remove = DeviceFunction("device_nic_remove", + ("nic", libxl_device_nic)) + libxl_device_pci = Struct("device_pci", [ ("func", uint8), ("dev", uint8), -- 2.17.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |