[tor-bugs] #25140 [Core Tor/Tor]: Parse only .torrc files in torrc.d directory

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Jun 4 00:04:40 UTC 2020


#25140: Parse only .torrc files in torrc.d directory
-------------------------------------------------+-------------------------
 Reporter:  iry                                  |          Owner:
                                                 |  Jigsaw52
     Type:  task                                 |         Status:
                                                 |  needs_review
 Priority:  High                                 |      Milestone:  Tor:
                                                 |  0.4.4.x-final
Component:  Core Tor/Tor                         |        Version:  Tor:
                                                 |  0.3.3.1-alpha
 Severity:  Major                                |     Resolution:
 Keywords:  034-triage-20180328,                 |  Actual Points:
  035-removed-20180711, 042-deferred-20190918,   |
  043-deferred                                   |
Parent ID:                                       |         Points:
 Reviewer:  ahf                                  |        Sponsor:
-------------------------------------------------+-------------------------
Changes (by Jigsaw52):

 * status:  needs_revision => needs_review


Comment:

 I've made a new and simpler implementation. I've ended up not using
 fnmatch but I use PatchMatchSpec on Windows, which does the same as
 fnmatch. Most of the complexity of the previous implementation came from
 the use of code similar to tor_listdir in the Windows implementation of
 tor_glob and the attempt to join both of those with get_globed_opened
 files in a single configurable function.

 In this version:
 - I've left tor_listdir unchanged
 - the Windows implementation of tor_glob uses tor_listdir along with
 PatchMatchSpec
 - the Linux implementation of tor_glob remains the same as is not very
 complex due to glob already providing all the required functionality
 - get_glob_opened_files shares most of the code with the Windows
 implementation of tor_glob (they both transverse paths with globs
 manually) in function get_glob_paths and the differences are isolated into
 two separate functions.
 - I've isolated the wildcards related code from conffile.c into the
 function expand_glob to make config_get_file_list smaller
 - I've added an integration test that checks the reloading of the
 configuration files containing %includes when seccomp is enabled among
 other functionalities related to %include. This test is based on
 test_rebind

 I've closed the old pull request as both the comments and commit history
 had become a mess with all the previous back and forth. The new pull
 request is here: https://github.com/torproject/tor/pull/1915

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


More information about the tor-bugs mailing list