[tor-bugs] #19327 [Core Tor/Tor]: controller: expose fine-grained circuit detail.

Tor Bug Tracker & Wiki blackhole at torproject.org
Sat Sep 21 16:28:55 UTC 2019


#19327: controller: expose fine-grained circuit detail.
-------------------------------------------------+-------------------------
 Reporter:  nickm                                |          Owner:  (none)
     Type:  enhancement                          |         Status:  new
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  unspecified
Component:  Core Tor/Tor                         |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  tor-control isolation test-support   |  Actual Points:
  intro                                          |
Parent ID:  #17284                               |         Points:  2
 Reviewer:                                       |        Sponsor:
                                                 |  SponsorS-can
-------------------------------------------------+-------------------------

Comment (by aveuiller):

 Hello,

 I'm willing to work on this task, as it seems a good first issue on the
 project.

 If I understand well, that's a control socket that will only be used for
 monitoring or debug,
 so the size of the output may not be a problem?

 I looked at the `origin_circuit_st` struct and wanted to be sure that I
 understood the meaning and
 importance of the different attributes in the call result.
 So I made a listing of the printed attributes, as well as the one I intend
 to add on the output
 and the one remaining, so you can assert that I did not misunderstood some
 of them.

 The following attributes seem to be used in the controller output:

 - global_identifier
 - build_state
 - cpath
 - hs_ident
 - rend_data
 - socks_username_len
 - socks_password_len
 - socks_username
 - socks_password

 The following attributes seem to be interesting to add with the proposed
 keyword:

 - associated_isolated_stream_global_id (ASSOCIATED_STREAM_ID)
 - circuit_idle_timeout (IDLE_TIMEOUT)
 - n_read_circ_bw (BYTE_READ_BW)
 - n_written_circ_bw (BYTE_WRITTEN_BW)
 - n_delivered_read_circ_bw (CELL_READ_BW)
 - n_delivered_written_circ_bw (CELL_WRITTEN_BW)
 - n_overhead_read_circ_bw (CELL_OVER_READ_BW)
 - n_overhead_written_circ_bw (CELL_OVER_WRITTEN_BW)
 - relaxed_timeout (HAS_RELAXED_TIMEOUT)
 - remaining_relay_early_cells (REMAINING_RELAY_EARLY_CELLS)
 - is_ancient (IS_ANCIENT)
 - has_opened (HAS_OPENED)
 - unusable_for_new_conns (UNUSABLE_FOR_NEW_CONNS)
 - padding_negotiation_failed (PADDING_NEGOTIATION_FAILED)
 - path_state (PATH_STATE)
 - hs_circ_has_timed_out (HS_HAS_TIMED_OUT)
 - isolation_values_set (ISOLATION_SET)
 - isolation_flags_mixed (ISOLATION_MIXED)
 - isolation_any_streams_attached (ANY_STREAM_ATTACHED)
 - client_proto_type (CLIENT_PROTO_TYPE)
 - client_proto_socksver (CLIENT_PROTO_SOCKSVER)
 - dest_port (DEST_PORT)
 - client_addr (CLIENT_ADDR)
 - dest_address (DEST_ADDRESS)
 - session_group (SESSION_GROUP)
 - nym_epoch (NYM_EPOCH)
 - prepend_policy (PREPEND_POLICY)

 This makes the following attributes remaining non-printed:

 - p_streams
 - half_streams
 - guard_state
 - global_origin_circuit_list_idx
 - pathbias_probe_id
 - pathbias_probe_nonce
 - hs_service_side_rend_circ_has_been_relaunched
 - relay_early_commands
 - relay_early_cells_sent
 - next_stream_id
 - intro_key

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


More information about the tor-bugs mailing list