- Apr 25, 2014
-
-
Nick Mathewson authored
-
Nick Mathewson authored
-
- Apr 24, 2014
-
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
When I merged the fix for #7351, and implemented proposal 214 (4-byte circuit IDs), I forgot to add a changes file. Later, we never noticed that it didn't have one. Resolves ticket #11555. Thanks to cypherpunks for noticing this was missing. This is a cherry-pick of 75e10f58 into the master branch.
-
Nick Mathewson authored
Also, add a script to do this, since doing it manually with fmt sucks.
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
Conflicts: src/or/main.c
-
Nick Mathewson authored
That is, GETINFO limits/max-mem-in-queues
-
Nick Mathewson authored
If we can't detect the physical memory, the new default is 8 GB on 64-bit architectures, and 1 GB on 32-bit architectures. If we *can* detect the physical memory, the new default is CLAMP(256 MB, phys_mem * 0.75, MAX_DFLT) where MAX_DFLT is 8 GB on 64-bit architectures and 2 GB on 32-bit architectures. You can still override the default by hand. The logic here is simply trying to choose a lower default value on systems with less than 12 GB of physical RAM.
-
Nick Mathewson authored
-
- Apr 23, 2014
-
-
Nick Mathewson authored
-
Nick Mathewson authored
Conflicts: src/or/circuitbuild.c
-
Nick Mathewson authored
Use a per-channel ratelim_t to control the rate at which we report failures for each channel. Explain why I picked N=32. Never return a zero circID. Thanks to Andrea and to cypherpunks.
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Nick Mathewson authored
-
Make it clear that a SIGHUP is not the only action that can cause a config re-read.
-
Since we need to toggle that element in non-SIGHUP situations too where the config was re-read (like in SETCONF or RESETCONF).
-
Instead, figure out if we should restart PT proxies _immediately_ after we re-read the config file.
-
Nick Mathewson authored
This is an "ours" merge, to avoid taking the 0.2.4 version of the
-
Nick Mathewson authored
-
Nick Mathewson authored
Conflicts: src/or/entrynodes.c
-
- Apr 19, 2014
-
-
Nick Mathewson authored
The memarea_strndup() function would have hit undefined behavior by creating an 'end' pointer off the end of a string if it had ever been given an 'n' argument bigger than the length of the memory ares that it's scanning. Fortunately, we never did that except in the unit tests. But it's not a safe behavior to leave lying around.
-
Nick Mathewson authored
If we had an address of the form "1.2.3.4" and we tried to pass it to tor_inet_pton with AF_INET6, it was possible for our 'eow' pointer to briefly move backwards to the point before the start of the string, before we moved it right back to the start of the string. C doesn't allow that, and though we haven't yet hit a compiler that decided to nuke us in response, it's best to fix. So, be more explicit about requiring there to be a : before any IPv4 address part of the IPv6 address. We would have rejected addresses without a : for not being IPv6 later on anyway.
-
Nick Mathewson authored
Instead of taking the length of a buffer, we were taking the length of a pointer, so that our debugging log would cover only the first sizeof(void*) bytes of the client nonce.
-
Nick Mathewson authored
We meant to using random bytes to fill a buffer, up to 3000 at a time. Instead we were taking them sizeof(void*) at a time.
-
Nick Mathewson authored
This is harmless, since tor-gencert exits right afterwards, but it's best to clean up after ourselves.
-
Nick Mathewson authored
scan-build didn't like the unlimited version since we might need to overflow size_t to hexify a string that took up half our address space. (!)
-
Nick Mathewson authored
scan-build recognizes that in theory there could be a numeric overflow here. This can't numeric overflow can't trigger IRL, since in order to fill a hash table with more than P=402653189 buckets with a reasonable load factor of 0.5, we'd first have P/2 malloced objects to put in it--- and each of those would have to take take at least sizeof(void*) worth of malloc overhead plus sizeof(void*) content, which would run you out of address space anyway on a 32-bit system.
-
Nick Mathewson authored
If 'intro' is NULL in these functions, I'm pretty sure that the error message must be set before we hit the end. But scan-build doesn't notice that, and is worried that we'll do a null-pointer dereference in the last-chance errormsg generation.
-
Nick Mathewson authored
As it stands, it relies on the fact that onion_queue_entry_remove will magically remove each onionskin from the right list. This patch changes the logic to be more resilient to possible bugs in onion_queue_entry_remove, and less confusing to static analysis tools.
-
Nick Mathewson authored
scan-build doesn't realize that a request can't be timed at the end unless it's timed at the start, and so it's not possible for us to be subtracting start from end without start being set. Nevertheless, let's not confuse it.
-
Nick Mathewson authored
When get_proxy_addrport returned PROXY_NONE, it would leave addr/port unset. This is inconsistent, and could (if we used the function in a stupid way) lead to undefined behavior. Bugfix on 5b050a9b, though I don't think it affects tor-as-it-is.
-
Nick Mathewson authored
Throughout circuituse, when we log about a circuit, we log its desired path length from build_state. scan-build is irrationally concerned that build_state might be NULL.
-
Nick Mathewson authored
In circuitmux_detach_all_circuits, we check whether an HT iterator gives us NULL. That should be impossible for an HT iterator. But our checking it has confused scan-build (justly) into thinking that our later use of HT_NEXT_RMV might not be kosher. I'm taking the coward's route here and strengthening the check. Bugfix on fd31dd44. (Not a real bug though)
-
Nick Mathewson authored
-