commit:     195781b8fbfe3ee52ceb478de5058e2745d24aa2
Author:     Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Mon May 27 17:02:02 2019 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Mon May 27 17:07:45 2019 +0000
URL:        https://gitweb.gentoo.org/proj/mirrorselect.git/commit/?id=195781b8

netselect: use -4/-6 options (bug 582508)

Requires >=net-analyzer/netselect-0.4[ipv6(+)].

Bug: https://bugs.gentoo.org/582508
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>

 mirrorselect/selectors.py | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/mirrorselect/selectors.py b/mirrorselect/selectors.py
index 4b7e7a2..e3f718c 100644
--- a/mirrorselect/selectors.py
+++ b/mirrorselect/selectors.py
@@ -65,6 +65,7 @@ class Shallow(object):
        """handles rapid server selection via netselect"""
 
        def __init__(self, hosts, options, output):
+               self._options = options
                self.output = output
                self.urls = []
 
@@ -94,10 +95,18 @@ class Shallow(object):
 
                host_string = ' '.join(hosts)
 
-               self.output.write('\nnetselect(): running "netselect -s%d %s"\n'
-                       % (int(number), host_string), 2)
+               cmd = ['netselect', '-s%d' % (number,)]
+               if self._options.ipv4:
+                       cmd.append('-4')
+               elif self._options.ipv6:
+                       cmd.append('-6')
 
-               proc = subprocess.Popen( ['netselect', '-s%d' % (number,)] + 
hosts,
+               cmd.extend(hosts)
+
+               self.output.write('\nnetselect(): running "%s"\n'
+                       % ' '.join(cmd), 2)
+
+               proc = subprocess.Popen(cmd,
                        stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 
                out, err = proc.communicate()

Reply via email to