Default parsing order of config files in Debain tor package

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Hello, Tor developers! With the implementation of torrc.d, there will be at least two Tor config files and one Tor config directory by default in Debian tor package. However, I am not able to find the documents on what the parsing order Tor follows. My guess is that: 1. /usr/share/tor/tor-service-defaults-torrc is parsed first 2. /etc/torrc.d is parsed next (in lexical order) 3. /etc/torrc is parsed at last 4. and the lines in config files parsed later will overwrite similar lines in config files that are parsed earlier Could anyone familiar with the problem help me please? This will be really helpful to my future work and I really appreciate your help! Thank you very much! Best, iry -----BEGIN PGP SIGNATURE----- iQIcBAEBCgAGBQJZWPgFAAoJEKFLTbxtzdU8HpoP/3dz869rQmlAMC4v/2UAO0F+ hPtC/L27ILeICraQRc2sJOsf7FTueKD/a6GadUbCbWBwWyyzdBXotqADnmJdvNnm hSgkE1mYz27+eI2NUd7UpHs+NrP7FXdjufGkHxZfJPrhTbGKPCC66HouT+T1vdh5 PTRBjc6M/+C2yRuteGRcAW6Be3NJ+3HRuFC5THJd6b+p0WmP+OYXdVlq7cXuY3zj ffaXvX7WGOH2J+ALIaspc0wjLiieUCq5wrO7REkeUM0TuqjhWWGBhANqVM1Qrfs+ 0jWPRklFq/7BkfySUZA88H6D5pkpBX3eVDsUlduxvoSS/F8ksWzAIdMMFaz9a7tR GpCEBBmbJIN3d4ApF78h//Y9XkaBsAotf40YEC4uZ4h3iW4rlyojWuU7N78A36PL MJ0IdUm52hWy7ySRDFi9lr7y1xtGQ9qO1gAYCq7D+qeKte+E7UO/QKZjOkAMBBir hxLimroNtL708rcDzLegstWt5Rpf2iJOYP1wOYnAeYfkSeXXW5KQBDJEd1botJg6 YRa69iICoLBNY+4z6i3t5lVlMolqPyAAwEfA1j4yXBrtBed8ISKx4V44y5JeGnZ2 SjMfHM6XJB95Bu8sWVQc1dQ+eBBiFYHbP4s4n1+jsTbmImg2bc+LauxChwRmAHek o9KiSasLITPC7zIv1m2o =KrAy -----END PGP SIGNATURE-----

Hello iry, The precedence for tor options is the following (1 overrides 2, etc...): 1. Command line options. 2. Configuration file options (your /etc/torrc). 3. Defaults file options (your /usr/share/tor/tor-service-defaults-torrc). In the same file, options that appear later override earlier options. Currently, there is no torrc.d directory created when you install the tor package. However, you can use a %include in the configuration file or in the defaults file. When you insert a %include in a file, it works as if all the options for the included file or folder were written on the line of the %include. If you're including a folder, the files will be processed in lexicographic order and files starting with a dot will be ignored. Here is an example: tor-service-defaults-torrc: SomeOption 0 %include /etc/tor/torrc.d/ # SomeOption is now 2 SomeOption 3 # SomeOption is now 3 /etc/tor/torrc.d/01_one: SomeOption 1 /etc/tor/torrc.d/02_two: SomeOption 2 With this configuration, the value for some option is 3. But we can have a torrc with %include too: /etc/torrc: SomeOption 4 # SomeOption is now 4 %include /etc/tor/foo.torrc # SomeOption is now 5 SomeOption 6 # SomeOption is now 6 /etc/tor/foo.torrc: SomeOption 5 With both these files, the value for SomeOption is 6. There are also different types of options and some can take multiple values. For more information see the section "Mid-level semantics" on this file: https://gitweb.torproject.org/tor.git/tree/doc/torrc_format.txt Best regards, Daniel Às 14:42 de 02-07-2017, iry escreveu:
Hello, Tor developers!
With the implementation of torrc.d, there will be at least two Tor config files and one Tor config directory by default in Debian tor package. However, I am not able to find the documents on what the parsing order Tor follows.
My guess is that: 1. /usr/share/tor/tor-service-defaults-torrc is parsed first 2. /etc/torrc.d is parsed next (in lexical order) 3. /etc/torrc is parsed at last 4. and the lines in config files parsed later will overwrite similar lines in config files that are parsed earlier
Could anyone familiar with the problem help me please? This will be really helpful to my future work and I really appreciate your help!
Thank you very much!
Best, iry
_______________________________________________ tor-dev mailing list tor-dev@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev
participants (2)
-
Daniel Pinto
-
iry