Parcourir la source

Handle an exception when using addresses like ff02::1%eth0

Baptiste Jonglez il y a 10 ans
Parent
commit
4fbf9fe145
1 fichiers modifiés avec 6 ajouts et 1 suppressions
  1. 6 1
      peerfinder.py

+ 6 - 1
peerfinder.py

@@ -244,7 +244,12 @@ def submit_job():
             targets = [Target(target, public)]
         else:
             # DNS name, might give multiple IP
-            targets = [Target(ip, public) for ip in resolve_name(target)]
+            ip_addresses = resolve_name(target)
+            try:
+                # We might still fail to recognise some addresses (e.g. "ff02::1%eth0")
+                targets = [Target(ip, public) for ip in ip_addresses]
+            except netaddr.core.AddrFormatError:
+                return render_template('submit_error.html', target=request.form['target'])
         if targets == []:
             return render_template('submit_error.html', target=request.form['target'])
         # Check for forbidden targets