Ubuntu 16.04 no longer includes a 'python' executable.
If none of {$PYTHON,python,python2,python3} are usable, we advise
the user to either set PYTHON or install a usable python.
Hi, I'm trying to package Mininet for Guix which doesn't symlink cc to gcc and this would make it easier to package, as well as configure it for alternative compilers.
change isShellBuiltin to have each builtin as a different token in a set and lookup cmd to be an element of the set instead of a sequence of characters in a string (tested only on Python 3.6.7). Corrected according to @lantz comments.
This can happen when adjusting a tmux pane running mininet cli. The
process will receive SIGWINCH causing the poll() call to raise
select.error
Below is a session dump with strace
09:55:52.498106 poll([{fd=0, events=POLLIN}, {fd=28, events=POLLIN}], 2, -1) = ? ERESTART_RESTARTBLOCK (Interrupted by signal)
09:55:52.606734 --- SIGWINCH {si_signo=SIGWINCH, si_code=SI_KERNEL} ---
09:55:52.606770 rt_sigreturn({mask=[]}) = -1 EINTR (Interrupted system call)
Traceback (most recent call last):
File "examples/topofac.py", line 527, in <module>
run()
File "examples/topofac.py", line 522, in run
CLI( net )
File "/home/yunion/git-repo/mininet/mininet/cli.py", line 68, in __init__
self.run()
File "/home/yunion/git-repo/mininet/mininet/cli.py", line 103, in run
self.cmdloop()
File "/home/yunion/.usr/lib/python2.7/cmd.py", line 142, in cmdloop
stop = self.onecmd(line)
File "/home/yunion/.usr/lib/python2.7/cmd.py", line 220, in onecmd
return self.default(line)
File "/home/yunion/git-repo/mininet/mininet/cli.py", line 422, in default
self.waitForNode( node )
File "/home/yunion/git-repo/mininet/mininet/cli.py", line 440, in waitForNode
bothPoller.poll()
select.error: (4, 'Interrupted system call')
09:55:52.622076 rt_sigaction(SIGINT, {SIG_DFL, [], SA_RESTORER, 0x7ff9a9b936d0}, {0x7ff9a9ef2230, [], SA_RESTORER, 0x7ff9a9b936d0}, 8) = 0
09:55:52.631905 +++ exited with 1 +++
Previously we looked for 'eth0', but linux has renamed interfaces.
Instead of looking by name, we now look for an interface which
is the appropriate gateway to a remote server address.
fixes#831
The redirection of stderr towards stdout means calls to "which program"
always return something even when "program" is not installed.
This patch checks for the return value instead before returning the
value.
See #814.