Opened 6 years ago

Closed 6 years ago

#10005 closed defect (fixed)

obfs-flash-client incompatible with Twisted 12

Reported by: dcf Owned by: infinity0
Priority: Medium Milestone:
Component: Circumvention/Pluggable transport Version:
Severity: Keywords:
Cc: asn Actual Points:
Parent ID: #10006 Points:
Reviewer: Sponsor:

Description

In comment:40:ticket:7167, asn reported an error when running obfs-flash-client:

Traceback (most recent call last):
  File "./obfs-flash-client", line 270, in <module>
    sys.exit(main(*sys.argv[1:]))
  File "./obfs-flash-client", line 265, in main
    obfs3_flash(reactor, client, opts.obfs_out, opts.fp_remote)
  File "./obfs-flash-client", line 217, in obfs3_flash
    ["websocket"], [fp_client, '127.0.0.1:%s' % fp_local, fp_remote])
  File "./obfs-flash-client", line 189, in pt_launch_child
    StandardIO(sub_protocol, stdin=sub_proc.stdout.fileno(), reactor=reactor)
TypeError: __init__() got an unexpected keyword argument 'reactor'

I just got the exact same error, running obfs-flash-client with a Twisted from Debian stable, which is version 12. Running with the Twisted from Debian testing (currently 13), I don't get an error. Sure enough, the reactor argument was added between versions 12 and 13:

asn reports that the program works after simply removing the argument. Debian stable is relevant because that's what we are currently using to build the PT bundles.

Child Tickets

Change History (4)

comment:1 Changed 6 years ago by infinity0

I could fix this in obfs-flash, but is it essential to be building from wheezy? In general, we are not developing from wheezy machines, and PTBB is only going to be built by other developers. (The end product is a self-contained bundle so it should not matter where the build takes place.)

I had some shell script snippets to add a Debian unstable repo to a Debian stable system, pinned at low priority so that libraries would only be installed if manually specified. Would this interest you as an alternative? You could then avoid cloning txsocksx too.

comment:2 in reply to:  1 Changed 6 years ago by dcf

Replying to infinity0:

I could fix this in obfs-flash, but is it essential to be building from wheezy? In general, we are not developing from wheezy machines, and PTBB is only going to be built by other developers. (The end product is a self-contained bundle so it should not matter where the build takes place.)

I had some shell script snippets to add a Debian unstable repo to a Debian stable system, pinned at low priority so that libraries would only be installed if manually specified. Would this interest you as an alternative? You could then avoid cloning txsocksx too.

If a one-line change is really all it takes to get things working, then yes, please let's just make the one-line change.

I'm interested in hearing about potential build system improvements, but I don't think it's best to do while I'm in the middle of making bundles. I do release builds in a VM just for hygiene reasons, just so there's no chance of random stuff from my desktop system finding its way into the releases.

Also, keep in mind that the tbb-3.0 bundles currently use (I think) either Ubuntu lucid or precise, which seem to have Twisted 10 and Twisted 11. Since we are moving to that system for the PT bundle, it might be better to focus your effort on making changes for tbb-3.0. (I'm kind of hoping that this obfs-flash bundle will be the last major bundle we make with the bundle.git system.)

comment:3 Changed 6 years ago by dcf

Parent ID: #10006
Note: See TracTickets for help on using tickets.