1. 03 Aug, 2020 1 commit
  2. 22 Jul, 2020 1 commit
  3. 26 Jun, 2020 1 commit
    • Nick Mathewson's avatar
      Store errors from TLS write and handshake in the tls_error field. · d486c6cf
      Nick Mathewson authored
      Previously, we would only update this field when the error happened
      during a read.
      
      This will improves our reporting for our bootstrap status, and help
      to address #32622.  The problem is not completely solved by this
      patch, however: too many errors are still lumped into "MISC".
      d486c6cf
  4. 05 May, 2020 1 commit
  5. 24 Mar, 2020 3 commits
  6. 13 Mar, 2020 1 commit
    • teor's avatar
      connection: Stop forcing some ports to prefer IPv6 · cc2fb91e
      teor authored
      Stop forcing all non-SOCKSPorts to prefer IPv6 exit connections.
      Instead, prefer IPv6 connections by default, but allow users to change
      their configs using the "NoPreferIPv6" port flag.
      
      Fixes bug 33608; bugfix on 0.4.3.1-alpha.
      cc2fb91e
  7. 14 Feb, 2020 1 commit
    • teor's avatar
      mainloop: Explain local connections better · 98899f20
      teor authored
      Some connections aren't counted for statistics or accounting,
      because they have been specifically configured by the user to
      local addresses.
      
      Comment-only change.
      
      Closes 33201.
      98899f20
  8. 11 Feb, 2020 4 commits
  9. 29 Jan, 2020 1 commit
    • teor's avatar
      connection: Improve function comments · d873674f
      teor authored
      Improve the function comments on connection_finished_connecting(),
      to describe what the function actually does.
      
      Part of 33091.
      d873674f
  10. 20 Jan, 2020 1 commit
    • teor's avatar
      config: Make clients tell dual-stack exits they prefer IPv6 · bf2a399f
      teor authored
      Make Tor clients tell dual-stack exits that they prefer IPv6
      connections.
      
      This change is equivalent to setting the PreferIPv6 flag on
      SOCKSPorts (and most other listener ports). Tor Browser has
      been setting this flag for some time, and we want to remove a
      client distinguisher at exits.
      
      Also update the man page, putting all the IP flags in their
      non-default forms.
      
      Closes ticket 32637.
      bf2a399f
  11. 16 Jan, 2020 1 commit
  12. 08 Jan, 2020 1 commit
  13. 07 Jan, 2020 1 commit
  14. 06 Jan, 2020 1 commit
  15. 20 Dec, 2019 1 commit
    • teor's avatar
      Replace several C identifiers. · 8c23ac4a
      teor authored
      This is an automated commit, generated by this command:
      
      ./scripts/maint/rename_c_identifier.py \
              EXPOSE_CLEAN_BACKTRACE BACKTRACE_PRIVATE \
              TOR_CHANNEL_INTERNAL_ CHANNEL_OBJECT_PRIVATE \
              CHANNEL_PRIVATE_ CHANNEL_FILE_PRIVATE \
              EXPOSE_ROUTERDESC_TOKEN_TABLE ROUTERDESC_TOKEN_TABLE_PRIVATE \
              SCHEDULER_PRIVATE_ SCHEDULER_PRIVATE
      8c23ac4a
  16. 19 Dec, 2019 1 commit
    • teor's avatar
      Code Style: Delete PRIVATE defines that are never used · d8b868e4
      teor authored
      Some ".c" files define *_PRIVATE macros, but those macros are
      not used in any header file. Delete them.
      
      These changes were created using the "make autostyle" from
      32522, and then split into commits.
      d8b868e4
  17. 17 Oct, 2019 2 commits
  18. 09 Oct, 2019 1 commit
  19. 30 Sep, 2019 1 commit
  20. 05 Sep, 2019 1 commit
  21. 05 Jun, 2019 1 commit
  22. 29 May, 2019 1 commit
    • Nick Mathewson's avatar
      Make get_proxy_type() connection-specific · 5cbd71b9
      Nick Mathewson authored
      Previously, we were looking at our global settings to see what kind
      of proxy we had.  But doing this would sometimes give us the wrong
      results when we had ClientTransportPlugin configured but we weren't
      using it for a particular connection.  In several places in the
      code, we had added checks to see if we were _really_ using a PT or
      whether we were using a socks proxy, but we had forgotten to do so
      in at least once case.  Instead, since every time we call this
      function we are asking about a single connection, it is probably
      best just to make this function connection-specific.
      
      Fixes bug 29670; bugfix on 0.2.6.2-alpha.
      5cbd71b9
  23. 03 May, 2019 2 commits
  24. 30 Apr, 2019 1 commit
  25. 25 Apr, 2019 1 commit
    • Nick Mathewson's avatar
      When parsing a multiline controller command, be careful with linebreaks · dbfe1a14
      Nick Mathewson authored
      The first line break in particular was mishandled: it was discarded
      if no arguments came before it, which made it impossible to
      distinguish arguments from the first line of the body.
      
      To solve this, we need to allocate a copy of the command rather than
      using NUL to separate it, since we might have "COMMAND\n" as our input.
      
      Fixes ticket 29984.
      dbfe1a14
  26. 29 Mar, 2019 1 commit
  27. 25 Mar, 2019 2 commits
    • Nick Mathewson's avatar
      Split all controller events code into a new control_events.c · a49f506e
      Nick Mathewson authored
      Also, split the formatting code shared by control.c and
      control_events.c into controller_fmt.c.
      a49f506e
    • Taylor Yu's avatar
      Correctly report PT vs proxy during bootstrap · 5d2f5e48
      Taylor Yu authored and teor's avatar teor committed
      Previously, or_connection_t did not record whether or not the
      connection uses a pluggable transport. Instead, it stored the
      underlying proxy protocol of the pluggable transport in
      proxy_type. This made bootstrap reporting treat pluggable transport
      connections as plain proxy connections.
      
      Store a separate bit indicating whether a pluggable transport is in
      use, and decode this during bootstrap reporting.
      
      Fixes bug 28925; bugfix on 0.4.0.1-alpha.
      5d2f5e48
  28. 01 Mar, 2019 1 commit
  29. 09 Feb, 2019 1 commit
  30. 16 Jan, 2019 2 commits
  31. 21 Dec, 2018 1 commit
    • Taylor Yu's avatar
      Add ORCONN event pubsub system · 271b50f5
      Taylor Yu authored
      Add a publish-subscribe subsystem to publish messages about changes to
      OR connections.
      
      connection_or_change_state() in connection_or.c and
      control_event_or_conn_event() in control.c publish messages to this
      subsystem via helper functions.
      
      Move state constants from connection_or.h to orconn_state.h so that
      subscribers don't have to include all of connection_or.h to take
      actions based on changes in OR connection state.  Move event constants
      from control.h for similar reasons.
      
      Part of ticket 27167.
      271b50f5