Little more context (hate it when issues lack much description), 'tor --digests' provides the sha1 of the source files...
% tor --digestsTor version 0.2.6.2-alpha-dev (git-518b0b3c5fefba24).388282ad2a9be7209d64f18d05b1ba65fd254dc8 src/common/aes.c14f1090665483d0cab4c0ba789d574e71e58d0e2 src/common/crypto.c0b74196174dd659e06d2acc2a9eeb3894d199b37 src/common/crypto_pwbox.c2c2f6be4d102cfa5809e0feccc965de328455e5f src/common/crypto_s2k.c
This presently isn't mentioned in our manual so there's no reason anyone would even know it exists. I only spotted it because we have a cli test for it...
Some other things I'm coming across while testing this...
'tor --dump-config' should provide usage information when no arguments are provided. Presently I guess it's just a no-op which is confusing.
atagar@odin:~/Desktop/stem$ tor --dump-configatagar@odin:~/Desktop/stem$ tor --dump-config shortDataDirectory /home/atagar/.tor
'tor --dump-config [invalid_option]' gives usage information, but doesn't end with a newline.
atagar@odin:~/Desktop/stem$ tor --dump-config foobarfoobar is not a recognized argument to --dump-config. Please select 'short', 'non-builtin', or 'full'atagar@odin:~/Desktop/stem$
Output of 'tor --hash-password' is unnecessarily noisy. Trivial improvement would be for '--hash-password' to implicitly include '--hush'.
atagar@odin:~/Desktop/stem$ tor --hash-password fooFeb 06 09:35:46.451 [notice] Tor v0.2.6.2-alpha-dev (git-518b0b3c5fefba24) running on Linux with Libevent 2.0.16-stable, OpenSSL 1.0.1 and Zlib 1.2.3.4.Feb 06 09:35:46.451 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warningFeb 06 09:35:46.451 [notice] This version is not a stable Tor release. Expect more bugs than usual.16:59BB327C197C7A4B60C2DABC2ED2A9BACA04E4C48D138EF942D7A1E75Catagar@odin:~/Desktop/stem$ tor --hash-password foo --hush16:C51947FB29F63FAB606357CFE214C4EC3927CE7086FC5E9C65A212D657
Certainly, as mentioned on irc feel free to split this if you'd like. Just about done porting the tests so should be done soon. Another thing is that we have special behaviour when a config option when a config option is passed on the commandline with a '+' or '/'...
This looks to presently be undocumented. Obvious guess is 'adds/removed from existing config rather than replacing' but I'm getting some unexpected behavior when I pass '/PublishServerDescriptor'. Probably only works properly for LineList arguments.
So, here's why I think that the --digests option might not be so useful after all:
It isn't a security tool. If somebody is surreptitiously modifying your tor source before you compile, they can surreptitiously modify the build system so that the digests seem like whatever they want them to. So let's not consider security use-cses.
It's mostly redundant with the version number Tor displays when it starts. If you are building from a tarball, you get the exact version from the tarball. If you are building from git, you get the current git commit (eg Tor v0.2.7.0-alpha-dev (git-f70f1d283e4fb468)).