1

here's what I'm trying to do: build GUI program using PyQt4 to make testing connection between 2 computers easier (to minimize human errors). So, part of this program is to use QProcess to begins the iperf3, acting as either client or server. QProcess was able to begin iperf3 successfully and output the results, however, for some reason, iperf3 client in PyQt cannot connect to server despite the fact that I was able to connect to the server from the terminal.

Here's brief description of situation and combinations of which acts as server and client

  • iperf3 in terminal as client -> iperf3 in PyQt as server - success
  • iperf3 in terminal as client -> iperf3 in terminal as server - success
  • iperf3 in PyQt as client -> iperf3 in PyQt as server - unable to connect
  • iperf3 in PyQt as client -> iperf3 in terminal as server - unable to connect

I checked on firewall and I disabled it to see if it resolves the issue, it didn't. Just in case if you're wondering about what commands I used for iperf3 in terminal, here is it:

  • Client - iperf3 -c 127.0.0.1 -u -t 10
  • Server - iperf3 -s

As for the QProcess:

  • self.process.start('iperf3',['-c 127.0.0.1 -u -t 10'])
  • self.process.start('iperf3',['-s'])

If you need more information, please let me know. I appreciate any help / insight with this issue. Btw, I should mention I'm testing this program on laptop locally for now, thus the loopback address.

1 Answers1

1

Okay, I figured it out. The mistake was in the code for QProcess, which is

self.process.start('iperf3',['-c 127.0.0.1 -u -t 10'])

It should have been

self.process.start('iperf3',['-c','127.0.0.1','-u','-t','10'])