Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • briar briar
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 789
    • Issues 789
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 9
    • Merge requests 9
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • briar
  • briarbriar
  • Issues
  • #228

Closed
Open
Created Jan 21, 2016 by str4d@str4dGuest

Briar crashes when TorPlugin tries to create a connection

java.lang.NullPointerException: Attempt to write to field 'java.io.OutputStream net.sourceforge.jsocks.Proxy.out' on a null object reference
 at net.sourceforge.jsocks.SocksSocket.doDirect(SocksSocket.java:279)
 at net.sourceforge.jsocks.SocksSocket.<init>(SocksSocket.java:100)
 at org.briarproject.plugins.tor.TorPlugin.createConnection(TorPlugin.java:536)
 at org.briarproject.plugins.tor.TorPlugin$2.run(TorPlugin.java:515)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
 at java.lang.Thread.run(Thread.java:818)

In the library sources that Gradle downloaded for me, it looks like the proxy field of the jsocks SocksSocket constructor is ignored completely, but the doDirect() internal function called by that constructor uses the unset proxy variable. This looks like an upstream bug. I don't know how this is working for anyone else, given that the jsocks library is verified by Gradle Witness.

Assignee
Assign to
Time tracking