| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
Otherwise, it's possible to create streams or circuits with these
bogus IDs, leading to orphaned circuits or streams, or to ones that
can cause bandwidth DOS problems.
Fixes bug 7889; bugfix on all released Tors.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If we completed the handshake for the v2 link protocol but wound up
negotiating the wong protocol version, we'd become so confused about
what part of the handshake we were in that we'd promptly die with an
assertion.
This is a fix for CVE-2012-2250; it's a bugfix on 0.2.3.6-alpha.
All servers running that version or later should really upgrade.
Bug and fix from "some guy from France." I tweaked his code slightly
to make it log the IP of the offending node.
|
|
|
|
|
|
| |
Failure to do so left us open to a remotely triggerable assertion
failure. Fixes CVE-2012-2249; bugfix on 0.2.3.6-alpha. Reported by
"some guy from France".
|
|
|
|
|
| |
In the past we had used reason "internal", which is more vague than
it needs to be. Resolves bug 7037.
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| | |
Fix for 4369.
|
|/ |
|
|\
| |
| |
| |
| | |
Conflicts:
src/or/command.c
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes bug 4893.
These changes are pure mechanical, and were generated with this
perl script:
/usr/bin/perl -w -i.bak -p
s/crypto_pk_env_t/crypto_pk_t/g;
s/crypto_dh_env_t/crypto_dh_t/g;
s/crypto_cipher_env_t/crypto_cipher_t/g;
s/crypto_digest_env_t/crypto_digest_t/g;
s/aes_free_cipher/aes_cipher_free/g;
s/crypto_free_cipher_env/crypto_cipher_free/g;
s/crypto_free_digest_env/crypto_digest_free/g;
s/crypto_free_pk_env/crypto_pk_free/g;
s/_crypto_dh_env_get_dh/_crypto_dh_get_dh/g;
s/_crypto_new_pk_env_rsa/_crypto_new_pk_from_rsa/g;
s/_crypto_pk_env_get_evp_pkey/_crypto_pk_get_evp_pkey/g;
s/_crypto_pk_env_get_rsa/_crypto_pk_get_rsa/g;
s/crypto_new_cipher_env/crypto_cipher_new/g;
s/crypto_new_digest_env/crypto_digest_new/g;
s/crypto_new_digest256_env/crypto_digest256_new/g;
s/crypto_new_pk_env/crypto_pk_new/g;
s/crypto_create_crypto_env/crypto_cipher_new/g;
s/connection_create_listener/connection_listener_new/g;
s/smartlist_create/smartlist_new/g;
s/transport_create/transport_new/g;
|
| | |
|
| |
| |
| |
| | |
This needs a changes file and more testing.
|
|\ \ |
|
| |/ |
|
| |
| |
| |
| |
| |
| | |
Clock skew made this situation way too frequent so we demoted it to
"protocol_warn", but when there's an authority, it should really just
be warn.
|
| | |
|
| |
| |
| |
| | |
Fixes bug 4368; fix on 0.2.3.6-alpha; bug found by "frosty".
|
|/
|
|
| |
Found by frosty_un, bugfix on 0.2.3.6-alpha, fix suggested by arma.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We would stash the certs in the handshake state before checking them
for validity... and then if they turned out to be invalid, we'd give
an error and free them. Then, later, we'd free them again when we
tore down the connection.
Fixes bug 4343; fix on 0.2.3.6-alpha.
|
|\ \
| |/
|/|
| |
| | |
Conflicts:
src/or/command.c
|
| |
| |
| |
| | |
Fix for bug 4299
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/common/tortls.c
src/or/connection_or.c
src/or/dirserv.c
src/or/or.h
|
| |\
| | |
| | |
| | |
| | | |
Conflicts:
src/or/connection_or.c
|
| | | |
|
| | |
| | |
| | |
| | | |
Fix suggested by Nick Mathewson.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
Addresses issue 4287; issue not in any released Tor.
|
| | |
| | |
| | |
| | | |
This fixes part of bug4252. Bug not in any released version.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
We didn't need to record this value; it was already recorded
implicitly while computing cell digests for later examination in the
authenticate cells.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Right now we can take the digests only of an RSA key, and only expect to
take the digests of an RSA key. The old tor_cert_get_id_digests() would
return a good set of digests for an RSA key, and an all-zero one for a
non-RSA key. This behavior is too error-prone: it carries the risk that
we will someday check two non-RSA keys for equality and conclude that
they must be equal because they both have the same (zero) "digest".
Instead, let's have tor_cert_get_id_digests() return NULL for keys we
can't handle, and make its callers explicitly test for NULL.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Also add some info log messages for the steps of the v3 handshake.
Now my test network bootstraps!
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Also, define all commands > 128 as variable-length when using
v3 or later link protocol. Running into a var cell with an
unrecognized type is no longer a bug.
|