block: fix attaching r/o devices (cdrom for example)
This commit is contained in:
parent
5b10d958a6
commit
159eea7ac8
@ -124,6 +124,7 @@ class QubesBlockDevicesManager():
|
|||||||
entry = { 'dev': dev['device'],
|
entry = { 'dev': dev['device'],
|
||||||
'backend_name': dev['vm'],
|
'backend_name': dev['vm'],
|
||||||
'desc': dev['desc'],
|
'desc': dev['desc'],
|
||||||
|
'mode': dev['mode'],
|
||||||
'size': size_str,
|
'size': size_str,
|
||||||
'attached_to': att, }
|
'attached_to': att, }
|
||||||
return entry
|
return entry
|
||||||
@ -131,11 +132,12 @@ class QubesBlockDevicesManager():
|
|||||||
def attach_device(self, vm, dev):
|
def attach_device(self, vm, dev):
|
||||||
backend_vm_name = self.free_devs[dev]['backend_name']
|
backend_vm_name = self.free_devs[dev]['backend_name']
|
||||||
dev_id = self.free_devs[dev]['dev']
|
dev_id = self.free_devs[dev]['dev']
|
||||||
|
mode = self.free_devs[dev]['mode']
|
||||||
backend_vm = self.qvm_collection.get_vm_by_name(backend_vm_name)
|
backend_vm = self.qvm_collection.get_vm_by_name(backend_vm_name)
|
||||||
if self.tray_message_func:
|
if self.tray_message_func:
|
||||||
self.tray_message_func("{0} - attaching {1}"
|
self.tray_message_func("{0} - attaching {1}"
|
||||||
.format(vm.name, dev), msecs=3000)
|
.format(vm.name, dev), msecs=3000)
|
||||||
qubesutils.block_attach(vm, backend_vm, dev_id)
|
qubesutils.block_attach(vm, backend_vm, dev_id, mode=mode)
|
||||||
|
|
||||||
def detach_device(self, vm, dev_name):
|
def detach_device(self, vm, dev_name):
|
||||||
dev_id = self.attached_devs[dev_name]['attached_to']['devid']
|
dev_id = self.attached_devs[dev_name]['attached_to']['devid']
|
||||||
|
Loading…
Reference in New Issue
Block a user