Windows twisted.internet.stdio.StandardIO.__init__ lacks "stdin" keyword argument.
I see this error when I try to run obfs-flash-client on Windows:
$ TOR_PT_STATE_LOCATION=. TOR_PT_MANAGED_TRANSPORT_VER=1 TOR_PT_CLIENT_TRANSPORTS=obfs3_flashproxy ./obfs-flash-client 2334
VERSION 1
Traceback (most recent call last):
File "obfs-flash-client", line 272, in <module>
File "obfs-flash-client", line 267, in main
File "obfs-flash-client", line 217, in obfs3_flashproxy
File "obfs-flash-client", line 188, in pt_launch_child
TypeError: __init__() got an unexpected keyword argument 'stdin'
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
File "atexit.pyc", line 24, in _run_exitfuncs
File "pyptlib\util\subproc.pyc", line 186, in killall
File "twisted\internet\base.pyc", line 582, in stop
ReactorNotRunning: Can't stop reactor that isn't running.
Error in sys.exitfunc:
Traceback (most recent call last):
File "atexit.pyc", line 24, in _run_exitfuncs
File "pyptlib\util\subproc.pyc", line 186, in killall
File "twisted\internet\base.pyc", line 582, in stop
twisted.internet.error.ReactorNotRunning: Can't stop reactor that isn't running.
The line in question is
StandardIO(sub_protocol, stdin=sub_proc.stdout.fileno(), reactor=reactor)
The stdio module is implemented by one of the two modules _posixstdio and _win32stdio. The constructor for _posixstdio has the stdin
keyword argument, but the constructor for _win32stdio does not.
Some web searching turned up the bug report
I'm using Twisted 12.3.