From c23b5f3e4917cb0eced5d916e34be9b0783123ee Mon Sep 17 00:00:00 2001 From: gryf Date: Mon, 5 Jul 2021 12:39:28 +0200 Subject: [PATCH] Handle multiple forwarding ports --- box.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/box.py b/box.py index 6d3874a..4f7e920 100755 --- a/box.py +++ b/box.py @@ -580,9 +580,11 @@ class VBoxManage: self.vm_info['media'] = images + # get ssh port if len(gebtn('Forwarding')): - fw = gebtn('Forwarding')[0].getAttribute('hostport') - self.vm_info['port'] = fw + for rule in gebtn('Forwarding'): + if rule.getAttribute('guestport') == '22': + self.vm_info['port'] = rule.getAttribute('hostport') return self.vm_info @@ -763,8 +765,8 @@ class VBoxManage: gebtn = dom.getElementsByTagName if len(gebtn('Forwarding')): - used_ports[vm_name] = (gebtn('Forwarding')[0] - .getAttribute('hostport')) + for rule in gebtn('Forwarding'): + used_ports[vm_name] = rule.getAttribute('hostport') return used_ports def _get_vm_config(self):