Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
Trac
Trac
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar

GitLab is used only for code review, issue tracking and project management. Canonical locations for source code are still https://gitweb.torproject.org/ https://git.torproject.org/ and git-rw.torproject.org.

  • Legacy
  • TracTrac
  • Issues
  • #8353

Closed
Open
Opened Feb 28, 2013 by Isis Lovecruft@isis

ooni: Add support for manual TLS/SSL handshakes to tls_handshake.py

The previous version of nettests/experimental/tls_handshake.py used Twisted/pyOpenSSL's do_handshake() method, which rather automagically handles handshaking without allowing any control or insight into the steps taken, which parameters (such as the client ciphersuite list, or which TLS/SSL context method) are set. Because of that, it is impossible to tell where or why a handshake fails, which would be incredibly useful information for helping to determine how Tor is being censored in any given place.

To implement this, we will need to manually handle stepping through OpenSSL's memory BIO state machine asynchronously...a quite non-trivial task.

I believe this is important, and the tls_handshake test is not nearly as useful as it could be without it.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: legacy/trac#8353