core: handle errors with xenstore access during VM shutdown
When netvm and firewallvm is shut down, netvm handling code will try to revoke firewallvm access to external IP. But if netvm shutdown happens in the meantime, xenstore will throw ENOENT error.
This commit is contained in:
		
							parent
							
								
									840dc38730
								
							
						
					
					
						commit
						9768b38ffc
					
				| @ -22,6 +22,7 @@ | ||||
| # | ||||
| import sys | ||||
| import os.path | ||||
| import xen.lowlevel.xs | ||||
| 
 | ||||
| from qubes.qubes import QubesVm,register_qubes_vm_class,xs,dry_run | ||||
| from qubes.qubes import defaults,system_path,vm_files | ||||
| @ -120,8 +121,12 @@ class QubesNetVm(QubesVm): | ||||
|         for xid in self.__external_ip_allowed_xids: | ||||
|             perms.append({ 'dom': xid, 'read': True }) | ||||
| 
 | ||||
|         xs.set_permissions('', '/local/domain/{0}/qubes-netvm-external-ip'.format(xid), | ||||
|                 perms) | ||||
|         try: | ||||
|             xs.set_permissions('', '/local/domain/{0}/qubes-netvm-external-ip'.format(xid), | ||||
|                     perms) | ||||
|         except xen.lowlevel.xs.Error as e: | ||||
|             print >>sys.stderr, "WARNING: failed to update external IP " \ | ||||
|                                 "permissions: %s" % (str(e)) | ||||
| 
 | ||||
|     def start(self, **kwargs): | ||||
|         if dry_run: | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Marek Marczykowski-Górecki
						Marek Marczykowski-Górecki