Age | Commit message (Collapse) | Author |
|
This function has been present since Windows XP.
|
|
|
|
|
|
|
|
This change makes it possible for us to change the list of libraries
more easily, without changing every single linker line.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This is needed so llvm_fuzz will see it too.
|
|
Fixes a race condition; resolves 23954.
|
|
|
|
This function -- a mock replacement used only for fuzzing -- would
have a buffer overflow if it got an RSA key whose modulus was under
20 bytes long.
Fortunately, Tor itself does not appear to have a bug here.
Fixes bug 24247; bugfix on 0.3.0.3-alpha when fuzzing was
introduced. Found by OSS-Fuzz; this is OSS-Fuzz issue 4177.
|
|
|
|
If it decrypts something that turns out to start with a NUL byte,
then decrypt_desc_layer() will return 0 to indicate the length of
its result. But 0 also indicates an error, which causes the result
not to be freed by decrypt_desc_layer()'s callers.
Since we're trying to stabilize 0.3.2.x, I've opted for the simpler
possible fix here and made it so that an empty decrypted string will
also count as an error.
Fixes bug 24150 and OSS-Fuzz issue 3994.
The original bug was present but unreachable in 0.3.1.1-alpha. I'm
calling this a bugfix on 0.3.2.1-alpha since that's the first version
where you could actually try to decrypt these descriptors.
|
|
|
|
|
|
Fixes bug 24082; bugfix on 0.3.0.3-alpha. Found by Brian Carpenter.
|
|
The new decryption function performs no decryption, skips the salt,
and doesn't check the mac. This allows us to fuzz the
hs_descriptor.c code using unencrypted descriptor test, and exercise
more of the code.
Related to 21509.
|
|
Fixes #21509
Signed-off-by: David Goulet <dgoulet@torproject.org>
|
|
This reverts commit 5ef656e7d1b1e1e74c46bd02ce8faaa1d8d09403.
|
|
At first, we put the tor_git_revision constant in tor_main.c, so
that we wouldn't have to recompile config.o every time the git
revision changed. But putting it there had unintended side effect
of forcing every program that wanted to link libor.a (including
test, test-slow, the fuzzers, the benchmarks, etc) to declare their
own tor_git_revision instance.
That's not very nice, especially since we want to start supporting
others who want to link against Tor (see 23846).
So, create a new git_revision.c file that only contains this
constant, and remove the duplicated boilerplate from everywhere
else.
Part of implementing ticket 23845.
|
|
|
|
|
|
|
|
Turns out, it wasn't up-to-date with the latest v3 hs API :(
|
|
|
|
|
|
- make tor_util static library name configurable
- fix Rust libary dependency order for Windows
|
|
The code in fuzz_hsdescv3.c fuzzes the unencrypted layer of the hsv3
descriptor. We need to fuzz the encrypted layer later.
|
|
|
|
|
|
See may 3 changes to prop140 for more background.
|
|
Introduce a way to optionally enable Rust integration for our builds. No
actual Rust code is added yet and specifying the flag has no effect
other than failing the build if rustc and cargo are unavailable.
|
|
This patch cleans up in various places where 'zlib' is mentioned.
|
|
|
|
This patch adds support for enabling support for Zstandard to our configure
script. By default, the --enable-zstd option is set to "auto" which means if
libzstd is available we'll build Tor with Zstandard support.
See: https://bugs.torproject.org/21662
|
|
This patch adds support for enabling support for LZMA to our configure
script. By default, the --enable-lzma option is set to "auto" which
means if liblzma is available we'll build Tor with LZMA support.
See: https://bugs.torproject.org/21662
|
|
It was very error-prone to maintain this by hand.
|
|
|
|
This takes two fuzzers: one which generates a diff and makes sure it
works, and one which applies a diff.
So far, they won't crash, but there's a bug in my
string-manipulation code someplace that I'm having to work around,
related to the case where you have a blank line at the end of a
file, or where you diff a file with itself.
|
|
|
|
|
|
|
|
|
|
|