[tor-bugs] #28760 [Core Tor/Tor]: Option/* format for ControlPort options needs to be homogeneous

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Dec 6 19:32:06 UTC 2018


#28760: Option/* format for ControlPort options needs to be homogeneous
-----------------------------------+------------------------------
 Reporter:  wagon                  |          Owner:  (none)
     Type:  defect                 |         Status:  new
 Priority:  Medium                 |      Component:  Core Tor/Tor
  Version:  Tor: 0.3.4.9           |       Severity:  Normal
 Keywords:  tor-control, tor-spec  |  Actual Points:
Parent ID:                         |         Points:
 Reviewer:                         |        Sponsor:
-----------------------------------+------------------------------
 According to [[https://gitweb.torproject.org/torspec.git/tree/control-
 spec.txt|control-spec.txt]]:

 > The OptionPrefix form indicates a number of options beginning with the
 prefix. So if `config/*` is listed, other options beginning with `config/`
 will work, but `config/*` itself is not an option.

 In Nyx and `tor-prompt` interpreters' `/help`, if the format `Option/*` is
 used to name a group of options (each of them is still described
 separately), it must be done for everything. However, e.g., we have many
 options inside `accounting`, but key `accounting/*` doesn't exist:

 {{{
 accounting/bytes          - Number of bytes read/written so far in the
 accounting interval.
 accounting/bytes-left     - Number of bytes left to write/read so far in
 the accounting interval.
 accounting/enabled        - Is accounting currently enabled?
 accounting/hibernating    - Are we hibernating or awake?
 accounting/interval-end   - Time when the accounting period ends.
 accounting/interval-start - Time when the accounting period starts.
 accounting/interval-wake  - Time to wake up in this accounting period.
 }}}

 Compare it with:

 {{{
 config/*                  - Current configuration values.
 config/defaults           - List of default values for configuration
 options. See also config/names
 config/names              - List of configuration options, types, and
 documentation.
 }}}

 If grouping syntax is used, it should be used everywhere (for all groups)
 or nowhere. Otherwise, it is confusing, because for many other options the
 syntax `option/*` implies that something not listed here (in list of
 options) should be substituted (e.g. fingerprint of a relay, IP address,
 etc.).

 P.S. At first glance it looks like Nyx controller interpreter's bug, but
 atagar
 [[https://trac.torproject.org/projects/tor/ticket/28300#comment:5|says]]
 that it is taken literally from `control-spec.txt`. Initially it was
 reported in
 [[https://trac.torproject.org/projects/tor/ticket/28300#comment:6|this
 comment]]. Separate ticket was created because of
 [[https://trac.torproject.org/projects/tor/ticket/28676#comment:8|teor's
 suggestion]].

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


More information about the tor-bugs mailing list