summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2014-09-02Fix more (void*)11 warnings in the testsNick Mathewson
2014-09-02Make iter for DECLARE_TYPED_DIGESTMAP_FNS be a pointer.Nick Mathewson
This fixes a clangalyzer warning, and makes our C slightly better C.
2014-09-02Use real pointers in unit tests, not (void*)101 etcNick Mathewson
The clangalyzer hates (void*)101 etc
2014-09-02Don't include a backtrace test for dereferencing 0 under analyzersNick Mathewson
They hate this.
2014-09-02Add more assertions to esc_for_log to please the clangalyzer.Nick Mathewson
2014-09-02Add an assertion to read_file_to_str_until_eofNick Mathewson
The clangalyzer doesn't believe our math here. I'm pretty sure our math is right. Also, add some unit tests.
2014-09-02Explicitly initialize addresses in tor_ersatz_socketpairNick Mathewson
This should stop a false positive from the clangalyzer.
2014-09-02Apply the MALLOC_ZERO_WORKS fixup to tor_realloc as well.Nick Mathewson
Also, make MALLOC_ZERO_WORKS never get applied when clang analyzer is running. This should make the clangalyzer a little happier.
2014-09-02Another clang analyzer complaint wrt HT_GENERATENick Mathewson
We're calling mallocfn() and reallocfn() in the HT_GENERATE macro with the result of a product. But that makes any sane analyzer worry about overflow. This patch keeps HT_GENERATE having its old semantics, since we aren't the only project using ht.h. Instead, define a HT_GENERATE2 that takes a reallocarrayfn.
2014-09-02Merge remote-tracking branch 'origin/maint-0.2.5'Nick Mathewson
2014-09-02Fix a number of clang analyzer false-positivesNick Mathewson
Most of these are in somewhat non-obvious code where it is probably a good idea to initialize variables and add extra assertions anyway. Closes 13036. Patches from "teor".
2014-09-01Avoid unsigned/sign compare warning from last patch.Nick Mathewson
2014-09-01Bounds check while looping over a fixed size table or arrayPhilip Van Hoof
(Edited to use existing ARRAY_LENGTH macro --nickm)
2014-08-29Merge remote-tracking branch 'origin/maint-0.2.5'Nick Mathewson
2014-08-29Merge remote-tracking branch 'arma/bug12996b' into maint-0.2.5Nick Mathewson
2014-08-29Downgrade "Unexpected onionskin length after decryption" warningRoger Dingledine
It's now a protocol-warn, since there's nothing relay operators can do about a client that sends them a malformed create cell. Resolves bug 12996; bugfix on 0.0.6rc1.
2014-08-29Merge remote-tracking branch 'origin/maint-0.2.5'Nick Mathewson
2014-08-29Improve "Tried to establish rendezvous on non-OR or non-edge circuit"Nick Mathewson
Instead of putting it all in one warning message, log what exactly was wrong with the circuit. Resolves ticket 12997.
2014-08-29Fix some coverity warnings in new routerset testsNick Mathewson
2014-08-29Introduce full coverage tests for module routerset.c.dana koch
This is using the paradigm introduced for test_status.c.
2014-08-28Merge remote-tracking branch 'origin/maint-0.2.5'Nick Mathewson
2014-08-28Resume expanding abbreviations for command-line optionsRoger Dingledine
The fix for bug 4647 accidentally removed our hack from bug 586 that rewrote HashedControlPassword to __HashedControlSessionPassword when it appears on the commandline (which allowed the user to set her own HashedControlPassword in the torrc file while the controller generates a fresh session password for each run). Fixes bug 12948; bugfix on 0.2.5.1-alpha.
2014-08-27Initialize crash handler in unit testsNick Mathewson
This way, we don't get locking failures when we hit an assertion in the unit tests. Also, we might find out about unit test bugs from folks who can't do gdb.
2014-08-26Merge remote-tracking branch 'public/bug10163'Nick Mathewson
2014-08-25Remove the assigned-but-unused chosen_named_idx local variableNick Mathewson
It had been used in consensus method 1. But now that 13 is the minimum (see #10163), we don't need it around. Found by sysrqb.
2014-08-25Fix another memory leak case in sandbox.c:prot_strings()Nick Mathewson
This is related to the rest of 523587a5cf62119baa01822e2e783925726a790b
2014-08-24Use the ARRAY_LENGTH macro more consistently.Nick Mathewson
2014-08-24Remove the non-implemented versions of the sandbox _array() functionsNick Mathewson
2014-08-24Whitespace fixesNick Mathewson
2014-08-24Terser ways to sandbox-allow related filenamesNick Mathewson
Using the *_array() functions here confused coverity, and was actually a bit longer than we needed. Now we just use macros for the repeated bits, so that we can mention a file and a suffix-appended version in one line.
2014-08-24Merge branch 'bug11792_1_squashed'Nick Mathewson
Conflicts: src/or/circuitlist.c
2014-08-24When looking for conns to close, count the age of linked queued dataNick Mathewson
Specifically, count the age of the data queued in a linked directory connection's buffers when counting a stream's age.
2014-08-24Kill non-tunneled directory connections when handling OOM.Nick Mathewson
Another part of 11792.
2014-08-24Count zlib buffer memory towards OOM totals.Nick Mathewson
Part of 11792. (Uses the zlib-endorsed formula for memory needs for inflate/deflate from "zconf.h".)
2014-08-22Tidy status handling in rendservice.cNick Mathewson
We had some code to fix up the 'status' return value to -1 on error if it wasn't set, but it was unreachable because our code was correct. Tweak this by initializing status to -1, and then only setting it to 0 on success. Also add a goto which was missing: its absence was harmless. [CID 718614, 718616]
2014-08-21fix memory leak on failure in sandbox.c:prot_strings()Nick Mathewson
[CID 1205014]
2014-08-21Store sandbox params as char *, since that's what they are.Nick Mathewson
This allows coverity to infer that we aren't leaking them. [Fixes a lot of CIDs]
2014-08-21Check for duplicate arguments to tor-gencertNick Mathewson
Found by coverity, which noticed that if you said tor-gencert -i identity1 -i identity2 we would leak "identity1". [CID 1198201, 1198202, 1198203]
2014-08-21Mark one use of networkstatus_check_document_signature as (void)Nick Mathewson
Also explain why we aren't checking its return value. [CID 1198197]
2014-08-21remove meaningless checks for chunks==NULL in dirserv stuffNick Mathewson
Also, make it clearer that chunks cannot be NULL [CID 1031750, 1031751]
2014-08-21Suppress coverity warning about overflowing in safe_mem_is_zeroNick Mathewson
The unsigned underflow here is defined and intentional. CID 202482
2014-08-21Avoid performing an assert on an always-true valueNick Mathewson
This was freaking out coverity. [CID 743379]
2014-08-21Suppress coverity warning about overflowing in tor_memeq.Nick Mathewson
The unsigned underflow here is defined and intentional. CID 202482
2014-08-21Check return values for fcntl in tor_spawn_background.Nick Mathewson
[CID 718609]
2014-08-21Allow rend_service_intro_free to get called with NULLNick Mathewson
(We allowed it previously, but produced an LD_BUG message when it happened, which is not consistent Also, remove inconsistent NULL checks before calling rend_service_intro_free. (Removing the check is for CID 718613)
2014-08-21Remove a dead check for errmsg in handle_control_authenticateNick Mathewson
Coverity doesn't like doing NULL checks on things that can't be NULL; I like checking things where the logic for their not being NULL is nontrivial. Let's compromise, and make it obvious that this field can't be NULL. [Coverity CID 202004]
2014-08-21Add a missing goto to an unusable branch and make the branch LD_BUG.Nick Mathewson
(It's LD_BUG to reach this point because the hashed password values were tested earlier from options_validate) [Coverity CID 1232091]
2014-08-21Explicitly cast when dividing ints then implicitly casting to double.Nick Mathewson
Coverity thinks that when we do "double x = int1/int2;", we probably meant "double x = ((double)int1) / int2;". In these cases, we didn't. [Coverity CID 1232089 and 1232090]
2014-08-21Fix memory leaks in test_entrynodes.cNick Mathewson
[Coverity CID 1232087 and 1232088]
2014-08-21Make the two branches of tor_tls_used_v1_handshake into one.Nick Mathewson
(Coverity thinks that "if (a) X; else X;" is probably a bug.) [Coverity CID 1232086]