Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Trac Trac
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Service Desk
    • Milestones
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
  • Wiki
    • Wiki
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • Legacy
  • TracTrac
  • Issues
  • #11216

Closed (moved)
(moved)
Open
Created Mar 16, 2014 by Isis Lovecruft@isis

BridgeDB is parsing PTs from `cached-extrainfo*` files cumulatively

This is causing a bridge whose extrainfo descriptor is in both cached-extrainfo and cached-extrainfo.new to have its transport lines added twice to BridgeDB's list of pluggable transports. This is likely what was causing #9264 (moved).

This is easily reproducible: simply generate some fake descriptors, copy the cached-extrainfo.new file to cached-extrainfo (each fake descriptor currently always has exactly two transport lines -- one obfs2 and one obfs3), and start bridgedb:

git clone https://gitweb.torproject.org/bridgedb.git && cd bridgedb && make install
pip install leekspin
generate-OR-descriptors -n 50
cp cached-extrainfo.new cached-extrainfo
bridgedb

If you do tail -f bridgedb.log, you'll see the following lines confirming the bug:

Mar 14 04:14:14 [DEBUG] 836f58807dc44a248c684da0be18b918badef421 supports 4 transports
Mar 14 04:14:14 [DEBUG] e79da1d32ad16e000149449ea191a0e4baa32ca0 supports 4 transports
Mar 14 04:14:14 [DEBUG] 8de1a8fb8c0e2d1885fd05e39541a50a507685ff supports 4 transports
Mar 14 04:14:14 [DEBUG] d0ee79b3bad89ebe6cb1e833e8ba8003ad315e06 supports 4 transports
Mar 14 04:14:14 [DEBUG] Saving state to:        '/home/isis/code/torproject/bridgedb/run-manual/bridgedb.state'
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking