[tor-bugs] #28205 [Obfuscation/Snowflake]: linking against other libwebrtc binaries errors out on missing symbols

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Nov 20 14:47:50 UTC 2018


#28205: linking against other libwebrtc binaries errors out on missing symbols
-----------------------------------+---------------------------
 Reporter:  eighthave              |          Owner:  eighthave
     Type:  defect                 |         Status:  accepted
 Priority:  Medium                 |      Milestone:
Component:  Obfuscation/Snowflake  |        Version:
 Severity:  Major                  |     Resolution:
 Keywords:  android                |  Actual Points:
Parent ID:                         |         Points:
 Reviewer:                         |        Sponsor:
-----------------------------------+---------------------------

Comment (by n8fr8):

 Replying to [comment:32 dcf]:
 > Replying to [comment:30 arlolra]:
 > > > Now its moved on to a new an exciting error that is totally opaque
 to me:
 > >
 > > Here're some similar issues that came up,
 > > https://github.com/golang/go/issues/27297
 > > https://github.com/golang/go/issues/24882
 >
 > 27297 is about packaging v2ray -- that's another circumvention program
 :)
 >
 > > The second one seems to hint that `<-chan struct{}` is an unsupported
 type to export,
 > > https://godoc.org/golang.org/x/mobile/cmd/gobind#hdr-Type_restrictions

 We shouldn't be running "gomobile bind" on the webrtc library it self.
 That should all be building and linking within goland land. The "bind
 command is for the final primary Go class "snowflake.go" that is going to
 be exposed as the shared library interface.

 I think the main() function here needs to be changed for something else:
 https://gitlab.com/eighthave/snowflake/blob/master/client/snowflake.go#L125

 > So I guess this means we need changes to go-webrtc to remove such
 incompatible type signatures from the public interface?

 I don't think so, again, because aren't binding() against that library, we
 are linking it into Snowflake. What we public generate the JNI bind
 interface for is snowflake.go

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28205#comment:37>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list