Nick Mathewson
029be5ad02
Move in-addr.arpa parsing and generation into address.c, and simplify the code that does it elsewhere. Incidentally, this lets exit servers answer requests for ip6.arpa addresses.
...
svn:r17707
2008-12-19 18:52:00 +00:00
Nick Mathewson
efb863189c
Expose hex_decode_digit from util.c
...
svn:r17706
2008-12-19 18:51:52 +00:00
Nick Mathewson
bf80e2df3f
Replace calls to time(NULL) that occur on the order of once per read, one per write, or once per cell with calls to a function that looks at a cached value of time. This is tricksy to benchmark, since it will only help on systems where time() is a syscall and syscalls are relatively slow.
...
svn:r17690
2008-12-18 17:19:04 +00:00
Nick Mathewson
b6f89a647a
One log.c XXX021 was a misunderstanding. Also, clip log messages passed to syslog to their maximum length when there is a maximum.
...
svn:r17688
2008-12-18 17:18:06 +00:00
Nick Mathewson
122170c1d3
Downlgrade tweak, and answer lots of XXX021s. No actual code fixes in this patch.
...
svn:r17686
2008-12-18 16:11:24 +00:00
Nick Mathewson
6c6b0283cb
Ben confirms that the MUST in rfc2631 is only for compatibility with X9.42, and isn't actually a security thing.
...
svn:r17685
2008-12-18 16:11:16 +00:00
Nick Mathewson
8d5a9d762c
Log an error on win32 if directory listing fails.
...
svn:r17684
2008-12-18 16:11:12 +00:00
Nick Mathewson
9c3d17ebb5
Fix a small memory leak of around 32 bytes per TLS connection opened. Bugfix on 0.2.1.1-alpha.
...
svn:r17678
2008-12-18 15:00:09 +00:00
Nick Mathewson
cebdf93949
Fix bug 889: share deep-copied keys between threads to avoid races in reference counts. Bugfix on 0.1.0.1-rc.
...
svn:r17672
2008-12-18 05:28:27 +00:00
Nick Mathewson
6693f32530
Resolve many DOCDOCs.
...
svn:r17662
2008-12-17 22:58:20 +00:00
Nick Mathewson
f43bcdc063
Use ctags and a python script to find identifiers that are never used anywhere, and remove the ones that we really want gone.
...
svn:r17651
2008-12-17 17:20:42 +00:00
Nick Mathewson
98066d62bc
Lower sprintf buffer max to ~SSIZE_T_MAX from SIZE_T_CEILING, since we need to compare it to a signed int.
...
svn:r17600
2008-12-11 21:11:22 +00:00
Nick Mathewson
4277b0e926
Remove some cargo-cult gcc hacks around tor_assert and predict_unlikely; instead, use the standard convert-to-boolean hack of "svn st"
...
svn:r17597
2008-12-11 20:23:46 +00:00
Nick Mathewson
3be88b2c70
Change test_memeq macro to not leak memory. Addresses coverity CID 47.
...
svn:r17577
2008-12-11 06:17:54 +00:00
Nick Mathewson
d60d8976b9
Better error message when told to setuid to ourself.
...
svn:r17543
2008-12-09 23:26:12 +00:00
Nick Mathewson
07c8b2be21
Compile without warnings on mingw.
...
svn:r17522
2008-12-08 19:52:26 +00:00
Nick Mathewson
6fb06f334a
Try to fix windows mmap code.
...
svn:r17493
2008-12-05 19:36:35 +00:00
Nick Mathewson
7f793fa733
Simplify mmap object layout to avoid confusing static analysis tools, and us too.
...
svn:r17490
2008-12-05 02:17:41 +00:00
Nick Mathewson
2be5215181
Fix a hard-to-trigger memory leak in log_credential status. Found by Coverity scan. CID 349.
...
svn:r17484
2008-12-05 01:29:59 +00:00
Nick Mathewson
37bd9181f0
Do not use O_APPEND on fd-based operations that do not really want it; have them just lseek instead.
...
svn:r17460
2008-12-02 23:49:40 +00:00
Roger Dingledine
96a185d9b7
style cleanup
...
svn:r17457
2008-12-02 23:42:21 +00:00
Nick Mathewson
bd6b3072f9
Change logging code to use fds instead of stdio. Fixes bug 861, and probably makes logging slightly faster. Not a backport candidate: bug 861 is too obscure and harmless.
...
svn:r17456
2008-12-02 23:36:58 +00:00
Nick Mathewson
6221bdd294
Add two lseek wrappers to compat.[ch]: one to return current fd position, and one to move the fd to the end of the file.
...
svn:r17454
2008-12-02 23:26:04 +00:00
Nick Mathewson
60738daf85
Define socklen_t before using it in compat.h
...
svn:r17444
2008-12-02 18:54:47 +00:00
Nick Mathewson
191197eff7
Revert my older supposed gcc-4.4 warning workaround. GCC was not being needlessly prissy; it was hinting at the wrongly pure smartlist_bsearch_idx.
...
svn:r17396
2008-11-26 17:14:59 +00:00
Nick Mathewson
651a0a2fb5
Stop marking bsearch_idx as pure; it is not.
...
svn:r17393
2008-11-26 16:57:46 +00:00
Nick Mathewson
4cddcf8873
Cast uid_t and gid_t to unsigned before passing to printf %u.
...
svn:r17392
2008-11-26 16:13:12 +00:00
Nick Mathewson
bc597758dc
Use fcntl for file locking when flock() is not available.
...
svn:r17391
2008-11-26 16:10:56 +00:00
Nick Mathewson
07a08d933d
Resolve a warning under gcc 4.4 trunk.
...
svn:r17357
2008-11-22 02:19:14 +00:00
Nick Mathewson
bdc0aec00a
Update _log_global_min_severity after switch_logs_debug(), so that USR2 will work again. Bugfix on 0.1.2.8-beta. Spotted by Geoff Down.
...
svn:r17317
2008-11-17 19:58:51 +00:00
Nick Mathewson
a790a13705
define get_uint8 and set_uint8 macros to make code cleaner.
...
svn:r17261
2008-11-12 14:39:25 +00:00
Nick Mathewson
a95e0e7355
apply sebastian's fix for bug 859. Apparently on win32 one must lock at least one byte when locking, but locking a nonexistant byte is okay. )
...
svn:r17244
2008-11-11 15:29:40 +00:00
Nick Mathewson
6c50ab6e61
Document a couple of functions.
...
svn:r17239
2008-11-10 20:40:01 +00:00
Roger Dingledine
c62d5f6a5c
beg nick for some documentation on the locking functions
...
svn:r17233
2008-11-10 00:48:13 +00:00
Roger Dingledine
0554e87f58
better error message when you set User but start tor as non-root.
...
hopefully will address bug 857.
svn:r17232
2008-11-10 00:41:07 +00:00
Nick Mathewson
13e079f9ec
Log a little more when credential-switching fails.
...
svn:r17228
2008-11-09 16:54:54 +00:00
Roger Dingledine
b32e600d50
while we're cleaning code, get rid of some unreachable code at
...
the bottom of switch_id
svn:r17205
2008-11-07 04:35:41 +00:00
Roger Dingledine
14773f42a7
now that we drop privs more thoroughly, switch_id() is no longer
...
idempotent. so now we remember if we've succeeded, and if so we
don't even try.
svn:r17204
2008-11-07 04:34:47 +00:00
Roger Dingledine
7c65792500
remove more redundant code from r17200
...
svn:r17203
2008-11-07 04:11:03 +00:00
Nick Mathewson
1b98f45b3d
Developers should usually configure with --enable-gcc-warnings, and should regularly make check-spaces. Also, int fn() does not mean the same in C as it does in C++ or Java.
...
svn:r17201
2008-11-07 02:53:46 +00:00
Steven Murdoch
9d68ed08e9
Patch from Jacob Appelbaum and me to make User option more robust, properly set supplementary groups, deprecated the Group option, and log more information on credential switching
...
svn:r17200
2008-11-07 02:06:12 +00:00
Nick Mathewson
3ebd1ebeca
The chunk_size field in memarea_t was never actually set. Remove the whole thing.
...
svn:r17195
2008-11-05 20:34:22 +00:00
Nick Mathewson
35bef7fefd
make read_all and write_all return ssize_t.
...
svn:r17194
2008-11-05 19:29:17 +00:00
Nick Mathewson
b56d1545db
Fix freebsd 7 compile by adding malloc_np.h header. Fix bug 850.
...
svn:r17190
2008-11-05 15:56:53 +00:00
Nick Mathewson
3f84ed3d46
Add a new memcmpstart to use instead of strcmpstart when the thing we are comparing is not nul-terminated.
...
svn:r17187
2008-11-03 16:35:48 +00:00
Nick Mathewson
361086005c
Fix a possible negative shift in address comparison. May fix bug 845 and bug 811
...
svn:r17169
2008-10-29 13:29:54 +00:00
Nick Mathewson
0ab45fee73
Document some dmalloc stuff and some stupid C tricks.
...
svn:r17161
2008-10-27 16:30:52 +00:00
Jacob Appelbaum
7873d324df
This patch changes some of the code in util.c to refactor calls to
...
dmalloc_malloc, dmalloc_realloc and dmalloc_strdup. It only calls those
functions if we're using the magic USE_DMALLOC macro. If we're not doing
that, we call the normal malloc, realloc and strdup. This is my first
night at malloc disambiguation club, so I had to disambiguate. Also, first commit, I have my commit bit now. Huzzzah!!!
svn:r17157
2008-10-26 22:56:53 +00:00
Roger Dingledine
c7af43a624
Now NodeFamily and MyFamily config options allow spaces in
...
identity fingerprints, so it's easier to paste them in.
Suggested by Lucky Green.
svn:r17021
2008-10-01 03:41:33 +00:00
Roger Dingledine
982a22a121
fix typo
...
svn:r16949
2008-09-24 00:49:29 +00:00
Nick Mathewson
f28fc83ea5
More logging for mtbf/wfu calculations.
...
svn:r16941
2008-09-23 18:24:20 +00:00
Nick Mathewson
f95d7c189b
Refactor unit test macros and tor_free_all() logic a bit so as to make it easier to free memory on failing tests, in order to suppress scanner warnings and to make dmalloc() usable with tests.
...
svn:r16816
2008-09-09 20:43:31 +00:00
Nick Mathewson
6c432a5565
Replace the dummy-use var in SMARTLIST_FOREACH_END() with one that is less likely to confuse analysis tools into thinking we do use after free. Arguably, (void)x should count as use in suppressing unused variable warnings, but not in generating hey-you-used-a-variable warnings. Arguably, though, it shouldn't.
...
svn:r16815
2008-09-09 19:29:33 +00:00
Nick Mathewson
aacda9cd8e
We should not alter an addr_policy_t that has been canonicalized.
...
svn:r16802
2008-09-09 03:48:01 +00:00
Nick Mathewson
339f094056
Refactor some code and add some asserts based on scanner results.
...
svn:r16783
2008-09-05 21:19:53 +00:00
Nick Mathewson
a345506672
Add an assert to make tools happier.
...
svn:r16782
2008-09-05 20:59:09 +00:00
Nick Mathewson
4d94e061c7
Clean up some redundant stuff in crypto_dh_new().
...
svn:r16778
2008-09-05 20:18:22 +00:00
Nick Mathewson
8ea780632f
Make severity args to add_*_log() functions be const
...
svn:r16775
2008-09-05 19:52:44 +00:00
Nick Mathewson
c33dde4ac1
Fix mingw build with --enable-gcc-warnings set.
...
svn:r16759
2008-09-04 21:58:09 +00:00
Nick Mathewson
fa2f72ded7
An asterisk makes a difference sometimes. Fixes bug 809.
...
svn:r16758
2008-09-04 20:42:02 +00:00
Roger Dingledine
ed45a42f98
take out the crazy line from last night that made no sense. apparently
...
it does work for tas after all.
svn:r16724
2008-09-01 21:24:25 +00:00
Roger Dingledine
9f823f54d5
remove some redundant includes. i expect the first one to be a problem
...
for tas, but who knows.
svn:r16723
2008-09-01 21:16:07 +00:00
Nick Mathewson
f80ac31d74
Add a lockfile to the Tor data directory to avoid situations where two Tors start with the same datadir, or where a --list-fingerprints races with a server to create keys, or such.
...
svn:r16722
2008-09-01 20:06:26 +00:00
Roger Dingledine
04eded4a5c
take out a line that i think is extraneous. come on, what could
...
go wrong?
svn:r16714
2008-09-01 08:01:40 +00:00
Roger Dingledine
6942bd66ea
Fix compile on OpenBSD 4.4-current. Bugfix on 0.2.1.5-alpha.
...
Reported by Tas.
svn:r16713
2008-09-01 08:01:22 +00:00
Roger Dingledine
4eab76f074
remove a code path that should never happen (and if it did, we'd be
...
complaining about an errno set from some arbitrary previous problem).
svn:r16684
2008-08-29 09:06:18 +00:00
Roger Dingledine
c5fef3c57f
commit jake's patch to include strings with socks5 error numbers
...
svn:r16657
2008-08-25 21:02:22 +00:00
Nick Mathewson
88e6162649
r17848@tombo: nickm | 2008-08-22 12:10:11 -0400
...
Make definition of tor_mutex_t go into compat.h, so that it is possible to inline mutexes in critical objects. Add init/uninit functions for mutexes allocated inside other structs.
svn:r16623
2008-08-22 16:24:52 +00:00
Nick Mathewson
0711408c22
Adjust definition of SMARTLIST_FOREACH_END() to enforce matching variable.
...
svn:r16597
2008-08-19 15:33:03 +00:00
Nick Mathewson
22259a0877
The first of Karsten's proposal 121 patches: configure and maintain client authorization data. Tweaked a bit: see comments on or-dev.
...
svn:r16475
2008-08-08 14:36:11 +00:00
Nick Mathewson
f6879caa04
Try once again to make BSD compilation happy.
...
svn:r16474
2008-08-08 12:58:17 +00:00
Nick Mathewson
d9601c65e0
r17666@tombo: nickm | 2008-08-07 15:12:30 -0400
...
Make tor_addr_from_sockaddr also give away the port in a useful format
svn:r16458
2008-08-07 19:13:35 +00:00
Nick Mathewson
2905291af2
r17659@tombo: nickm | 2008-08-06 12:22:11 -0400
...
Fix bug 794: recover 3 bytes wasted per memory chunk. Fix from rovv.
svn:r16447
2008-08-06 16:22:25 +00:00
Nick Mathewson
645cbd690b
r17643@31-33-44: nickm | 2008-08-05 16:18:25 -0400
...
Oops. Remove code to set (nonportable) sin_len fields. Added it to try to fix a bug that turned out to be something else.
svn:r16436
2008-08-05 20:18:28 +00:00
Nick Mathewson
960a0f0a99
r17641@31-33-44: nickm | 2008-08-05 16:07:53 -0400
...
Initial conversion of uint32_t addr to tor_addr_t addr in connection_t and related types. Most of the Tor wire formats using these new types are in, but the code to generate and use it is not. This is a big patch. Let me know what it breaks for you.
svn:r16435
2008-08-05 20:08:19 +00:00
Karsten Loesing
626fafe563
Make compiler with GCC warnings enabled happy.
...
svn:r16300
2008-07-31 10:33:02 +00:00
Nick Mathewson
f366d10a2f
r17435@tombo: nickm | 2008-07-30 08:50:54 -0400
...
Allow alternate form of SMARTLIST_FOREACH with paired BEGIN and END macros. This lets the compiler tell us which line an error has occurred on.
svn:r16256
2008-07-30 13:04:28 +00:00
Nick Mathewson
e5bc5f11b8
r17434@tombo: nickm | 2008-07-29 10:58:36 -0400
...
Refactor tor_addr_from_string: it didnt need most of parse_addr_mask_port_range, and its dependence on that latter function made it less flexible.
svn:r16255
2008-07-30 13:04:26 +00:00
Nick Mathewson
507b01357a
r17426@tombo: nickm | 2008-07-28 20:34:03 -0400
...
More test coverage for tor_addr_t; fix a couple of bugs.
svn:r16234
2008-07-29 00:34:50 +00:00
Nick Mathewson
056d97da0c
r17391@pc-10-8-1-079: nickm | 2008-07-25 17:11:17 +0200
...
Tor_addr_compare did a semantic comparison, such that ::1.2.3.4 and 1.2.3.4 were "equal". we sometimes need an exact comparison. Add a feature to do that.
svn:r16210
2008-07-25 15:11:21 +00:00
Nick Mathewson
9da0482007
r17358@pc-10-8-1-079: nickm | 2008-07-25 16:41:03 +0200
...
Split out the address manipulation functions from compat and util: they were about 21% of the total of those, and spread out too much.
svn:r16208
2008-07-25 14:43:24 +00:00
Nick Mathewson
3ce6e2fba2
r17346@aud-055: nickm | 2008-07-24 15:37:19 +0200
...
Make generic address manipulation functions work better. Switch address policy code to use tor_addr_t, so it can handle IPv6. That is a good place to start.
svn:r16178
2008-07-24 13:44:04 +00:00
Karsten Loesing
9231858ff5
Fix bug 763. When a hidden service is giving up on an introduction point candidate that was not included in the last published rendezvous descriptor, don't reschedule publication of the next descriptor.
...
svn:r15825
2008-07-10 21:02:01 +00:00
Nick Mathewson
cb7cc9e12d
r16882@tombo: nickm | 2008-07-10 14:31:25 -0400
...
Fix for session-related bug found by Geoff Goodell. backport candidate, once tested.
svn:r15821
2008-07-10 18:31:33 +00:00
Nick Mathewson
c5ec7a3677
Stop using __attribute__((nonnull)): It gets us occcasional warnings when we do something so foolish it can be detected without dataflow analysis, but it also eliminates some of our error checking code. Suggested by Peter Gutmann.
...
svn:r15803
2008-07-09 15:23:23 +00:00
Nick Mathewson
1a564901e4
Fix the rest of the GCC warnings on OpenBSD_malloc_linux.c
...
svn:r15698
2008-07-06 18:33:35 +00:00
Nick Mathewson
8bc2ab03f8
Remove spurious "netintet" check from configure.in
...
svn:r15672
2008-07-05 21:17:04 +00:00
Nick Mathewson
9d7a2d4eae
r16689@tombo: nickm | 2008-07-03 11:03:14 -0400
...
Fix for bug 742: do not use O_CREAT on 2-option version of open(). Especially do not use it on /dev/null. Fix from Michael Scherer. Bugfix on 0.0.2pre19 (wow).
svn:r15626
2008-07-03 15:04:16 +00:00
Nick Mathewson
3ec25c2410
r16587@tombo: nickm | 2008-06-28 00:13:40 -0400
...
fix for bug 704; found by sjmurdoch. Windows and recent openssl both want to define OCSP_RESPONSE; do not let them.
svn:r15533
2008-06-28 04:16:17 +00:00
Nick Mathewson
d4ed91c672
Set dynamic-locking callbacks in openssl. These can be more efficient when openssl uses them.
...
svn:r15222
2008-06-13 16:35:12 +00:00
Roger Dingledine
d395135e2f
fix a few typos, and give the bootstrap phase stuff a changelog entry.
...
svn:r15183
2008-06-13 04:26:05 +00:00
Nick Mathewson
22080354ed
r16217@tombo: nickm | 2008-06-12 21:13:09 -0400
...
Remove spurious debugging message.
svn:r15176
2008-06-13 01:13:12 +00:00
Nick Mathewson
617843988c
r16215@tombo: nickm | 2008-06-12 18:39:03 -0400
...
Implement code to manually force the OpenSSL client cipher list to match the one recommended in proposal 124, *even if* we do not know all those ciphers. This is a bit of a kludge, but it is at least decently well commented.
svn:r15173
2008-06-12 22:39:13 +00:00
Nick Mathewson
d0a4ad3a1c
r16127@tombo: nickm | 2008-06-10 14:03:01 -0400
...
Improved code for counting clients by country: support recording by number of directory status requests in addition to number of IPs seen.
svn:r15097
2008-06-10 18:08:56 +00:00
Nick Mathewson
ae2d022f0c
Remov unused macro in crypto.c
...
svn:r14950
2008-06-04 18:41:08 +00:00
Nick Mathewson
61ac80a914
Ouch. We were sometimes getting openssl compression by default. This is pointless for us, since the overwhelming majority of our cells are encrypted, full of compressed data, or both. This is also harmful, since doing piles of compression is not cheap. Backport candidate once more tested.
...
svn:r14830
2008-05-29 14:39:56 +00:00
Nick Mathewson
ac330d9ba7
New code to implement proposal for local geoip stats. Only enabled with --enable-geoip-stats passed to configure.
...
svn:r14802
2008-05-29 02:29:35 +00:00
Nick Mathewson
da67500336
If the user has an openssl that supports my "release buffer ram" patch, use it.
...
svn:r14671
2008-05-19 18:13:00 +00:00
Nick Mathewson
09cd8fa371
r19795@catbus: nickm | 2008-05-16 14:54:24 -0400
...
Rename tor_addr_t manipulation functions for a consistent style.
svn:r14639
2008-05-16 19:19:49 +00:00
Nick Mathewson
b7a80920e2
r15558@tombo: nickm | 2008-05-09 04:35:12 -0400
...
New (temporary) tool to dump the modulus of a key. May help with a project of weasel's.
svn:r14580
2008-05-09 08:35:38 +00:00
Nick Mathewson
1823c45a71
r19613@catbus: nickm | 2008-05-05 19:57:06 -0400
...
Log correct openssl buf capacity when using my sooper sekrit buffer hack. This will help test the aforementioned ssbh.
svn:r14567
2008-05-05 23:57:17 +00:00
Roger Dingledine
a364592ca0
make check-spaces wants a newline at the end of tortls
...
svn:r14508
2008-04-29 19:51:38 +00:00
Nick Mathewson
05b184de01
r15304@tombo: nickm | 2008-04-23 16:31:40 -0400
...
Forward-port: I had apparently broken OSX and Freebsd by not initializing threading before we initialize the logging system. This patch should do so, and fix bug 671.
svn:r14430
2008-04-23 20:32:31 +00:00
Nick Mathewson
299014b2c7
r15251@tombo: nickm | 2008-04-22 11:59:46 -0400
...
On platforms using pthreads, allow a thread to acquire a lock it already holds. This is crucial for logging: otherwise any log message thrown from inside the logging process (especially from control.c) will deadlock. Win32 CriticalSections are already recursive. Bug spotted by nwf. Bugfix on 0.2.0.16-alpha. Backport candidate. I hope this is portable.
svn:r14406
2008-04-22 15:59:59 +00:00
Nick Mathewson
b927ede48c
r15161@31-33-107: nickm | 2008-04-10 11:11:58 -0400
...
Make dumpstats() log the size and fullness of openssl-internal buffers, so I can test my hypothesis that many of them are empty, and my alternative hypothesis that many of them are mostly empty, against the null hypothesis that we really need to be burning 32K per open OR connection on this.
svn:r14350
2008-04-10 15:12:24 +00:00
Nick Mathewson
20cf4d1f09
r19283@catbus: nickm | 2008-04-09 21:44:18 -0400
...
The optimist calls the glass half full. The pessimist calls it half empty. The engineer says it is twice as large as it needs to be. In this case, the engineer says that the default smartlist size is twice as large as it needs to be and wouldn't it be nice to save half a megabyte with a one-line patch?
svn:r14341
2008-04-10 01:44:23 +00:00
Nick Mathewson
cc7a8a63b1
r15120@tombo: nickm | 2008-04-08 18:01:58 -0400
...
Add very short 0.2.1.x list based on discussion from arma. needs fleshing out and merging with other lists.
svn:r14324
2008-04-08 22:02:08 +00:00
Nick Mathewson
98aea7186c
r19249@catbus: nickm | 2008-04-08 14:04:02 -0400
...
Oops. Fix one last memarea freelist bug.
svn:r14322
2008-04-08 18:04:05 +00:00
Nick Mathewson
a725d5da5e
r19247@catbus: nickm | 2008-04-08 13:50:01 -0400
...
Fix behavior of memarea freelists.
svn:r14321
2008-04-08 17:50:03 +00:00
Nick Mathewson
f8bacfd724
r19245@catbus: nickm | 2008-04-08 13:33:27 -0400
...
Oops. It turns out that there are some subtle differences between >= and <.
svn:r14320
2008-04-08 17:33:29 +00:00
Nick Mathewson
31153d6374
r19243@catbus: nickm | 2008-04-08 13:28:59 -0400
...
Use a freelist to hold a few recent memarea chunks. We do a kazillion memarea allocs and frees; that cant be good for us.
svn:r14319
2008-04-08 17:29:05 +00:00
Nick Mathewson
a627407fcb
r19233@catbus: nickm | 2008-04-08 13:06:34 -0400
...
When we remove old routers, use Bloom filters rather than a digestmap-based set in order to tell which ones we absolutely need to keep. This will save us roughly a kazillion little short-lived allocations for hash table entries.
svn:r14318
2008-04-08 17:06:41 +00:00
Nick Mathewson
2d68487e7f
r19229@catbus: nickm | 2008-04-07 12:28:22 -0400
...
Add a new SMARTLIST_FOREACH_JOIN macro to iterate through two sorted lists in lockstep. This happens at least 3 times in the code so far, and is likely to happen more in the future. Previous attempts to do so proved touchy, tricky, and error-prone: now, we only need to get it right in one place.
svn:r14309
2008-04-07 16:28:34 +00:00
Nick Mathewson
4c04b7f4f6
r19201@catbus: nickm | 2008-04-04 14:23:19 -0400
...
Better macro documentation
svn:r14298
2008-04-04 21:18:51 +00:00
Peter Palfrader
9d132fbde6
Add --hush switch.
...
New --hush command-line option similar to --quiet. While --quiet disables all
logging to the console on startup, --hush limits the output to messages of
warning and error severity.
svn:r14222
2008-03-27 17:25:49 +00:00
Nick Mathewson
02acee891c
r19089@catbus: nickm | 2008-03-27 11:05:23 -0400
...
Free some static hashtables and the log mutex on exit. Backport candidate.
svn:r14212
2008-03-27 15:05:28 +00:00
Roger Dingledine
e9221f4a0d
fix a leak when adding a temp log
...
svn:r14203
2008-03-26 18:59:45 +00:00
Roger Dingledine
8dfccf6145
fix mem leak in parsing log config lines
...
svn:r14202
2008-03-26 18:36:46 +00:00
Nick Mathewson
e8cc756c13
r19072@catbus: nickm | 2008-03-26 13:50:24 -0400
...
Add code to debug memory area size. Use results of this code to set a couple of area sizes more sanely.
svn:r14201
2008-03-26 17:50:27 +00:00
Nick Mathewson
762d82cf74
r19062@catbus: nickm | 2008-03-26 12:56:25 -0400
...
Fix whitespace
svn:r14197
2008-03-26 16:56:37 +00:00
Nick Mathewson
e4ebe3409e
r19049@catbus: nickm | 2008-03-26 12:33:25 -0400
...
Add new stacklike, free-all-at-once memory allocation strategy. Use it when parsing directory information. This helps parsing speed, and may well help fragmentation some too. hidden-service-related stuff still uses the old tokenizing strategies.
svn:r14194
2008-03-26 16:33:33 +00:00
Nick Mathewson
df6b256bc0
r19041@catbus: nickm | 2008-03-25 16:20:42 -0400
...
More unit tests to improve coverage.
svn:r14185
2008-03-25 20:20:45 +00:00
Nick Mathewson
41deb5cd7b
r19039@catbus: nickm | 2008-03-25 12:15:58 -0400
...
Add some unit tests, particularly for AES counter mode.
svn:r14180
2008-03-25 16:16:05 +00:00
Roger Dingledine
901e2ad04b
correct a confusing log message
...
svn:r14165
2008-03-24 18:37:52 +00:00
Nick Mathewson
b5b77f8bf3
r19004@catbus: nickm | 2008-03-21 15:18:43 -0400
...
Use RAND_poll() again: the bug that made us stop using it has been fixed.
svn:r14150
2008-03-21 19:18:57 +00:00
Nick Mathewson
7dd78f1576
r18929@catbus: nickm | 2008-03-18 12:08:16 -0400
...
Detect errors from directory listing correctly on win32. Bug found by lodger.
svn:r14102
2008-03-18 16:08:49 +00:00
Nick Mathewson
199d65d059
r18927@catbus: nickm | 2008-03-18 11:11:49 -0400
...
Combine common code in set_max_file_descriptors(): all that varies from platform to platform in the no-getrlimit() case is the connection limit and the platform name.
svn:r14101
2008-03-18 15:11:52 +00:00
Nick Mathewson
fba2599680
r18923@catbus: nickm | 2008-03-18 11:01:22 -0400
...
Add missing typecasts to log message in set_max_file_descriptors to tell gcc everything is okay on windows. Fixes bug 630.
svn:r14099
2008-03-18 15:01:36 +00:00
Nick Mathewson
05f5d778a2
r18919@catbus: nickm | 2008-03-18 10:53:38 -0400
...
Forward-port bug 622 fix as diagnosed by lodger.
svn:r14096
2008-03-18 14:53:41 +00:00
Nick Mathewson
ea6f636e94
r18890@catbus: nickm | 2008-03-17 13:19:29 -0400
...
Clarify documentation for file_status a little
svn:r14079
2008-03-17 17:21:09 +00:00
Peter Palfrader
0cccf7375b
And use 16k pages on ia64. Maybe this should be a configure thing
...
svn:r14073
2008-03-17 09:46:18 +00:00
Nick Mathewson
2ed4b818cb
r18878@catbus: nickm | 2008-03-17 00:11:02 -0400
...
Clean up an overwide line.
svn:r14072
2008-03-17 04:11:05 +00:00
Nick Mathewson
bd547e3cfc
r18861@catbus: nickm | 2008-03-16 23:22:56 -0400
...
Fix a couple of bugs in setting control log callback severity.
svn:r14065
2008-03-17 03:37:52 +00:00
Nick Mathewson
0b941640df
r18852@catbus: nickm | 2008-03-16 22:47:19 -0400
...
Downgrade "sslv3 alert handshake failure" message to info.
svn:r14057
2008-03-17 02:47:49 +00:00
Nick Mathewson
b29f763ee1
r18850@catbus: nickm | 2008-03-16 22:35:38 -0400
...
Use 8k pages in openbsd malloc code on alpha. Bug and solution found by weasel. Also, when initializing openbsd malloc code, check that compiled page size matches output of getpagesize().
svn:r14056
2008-03-17 02:47:40 +00:00
Nick Mathewson
46155aca17
r18804@catbus: nickm | 2008-03-13 18:18:31 -0400
...
Refactor log domain mask code so that nobody outside of log.c has to use SEVERITY_MASK_IDX. It is error-prone.
svn:r14016
2008-03-13 22:18:38 +00:00
Nick Mathewson
d928e5685f
r18803@catbus: nickm | 2008-03-13 17:59:25 -0400
...
Fix behavior of switch_logs_debug() in trunk. Fixes bug 626. Bugfix on r13875.
svn:r14015
2008-03-13 22:18:36 +00:00
Nick Mathewson
0c6fc51909
r18793@catbus: nickm | 2008-03-13 14:09:19 -0400
...
Add a malloc_good_size() implementation to OpenBSD_malloc_Linux.c. Also, make configure.in not use support functions for the platform malloc when we are not using the platform mallocs.
svn:r14010
2008-03-13 18:11:33 +00:00
Peter Palfrader
e6b2d119e8
Assert that severity in logv() is sane. Interesting effects otherwise (It is being used as an array index)
...
svn:r14006
2008-03-13 16:56:14 +00:00
Nick Mathewson
cad3d651d0
r18783@catbus: nickm | 2008-03-13 11:06:45 -0400
...
Oops, do a better fix for that.
svn:r14001
2008-03-13 15:06:49 +00:00
Nick Mathewson
ac6cc43047
r18781@catbus: nickm | 2008-03-13 11:00:51 -0400
...
Have OpenBSD_malloc_Linux.c use SIZE_T_MAX from torint.h, instead of checking cpu macros. There is always one more cpu you havent checked for.
svn:r14000
2008-03-13 15:06:26 +00:00
Peter Palfrader
3a92e3f15f
I wonder what the DISGARD service is
...
svn:r13999
2008-03-13 14:09:01 +00:00
Nick Mathewson
11e464c331
r18753@catbus: nickm | 2008-03-11 14:56:39 -0400
...
Make some assert()s into tor_assert()s. Make some tor_assert()s called from logging into assert()s, and document why.
svn:r13977
2008-03-11 18:56:41 +00:00
Nick Mathewson
4d32c2e81f
r18751@catbus: nickm | 2008-03-11 14:22:43 -0400
...
Fix for bug 614: always look at the network BIO for the SSL object, not at the buffering BIO (if one exists because we are renegotiating or something). Bugfix on 0.1.2.x, oddly enough, though it should be impossible to trigger the problem there. Backport candidate. See comments in tortls.c for detailed implementation note.
svn:r13975
2008-03-11 18:22:49 +00:00
Nick Mathewson
24f91d2876
r18747@catbus: nickm | 2008-03-11 13:21:25 -0400
...
Request client certs when renegotiating on server-side. Spotted by lodger. Bugfix on 0.2.0.x.
svn:r13973
2008-03-11 17:21:44 +00:00
Nick Mathewson
7587e16796
r18639@catbus: nickm | 2008-03-07 20:11:48 -0500
...
Change semantics of add-a-log functions to copy severity setup: that is way less error-prone. Fix up config.c to act accordingly.
svn:r13888
2008-03-08 01:11:54 +00:00
Nick Mathewson
2675276618
r18638@catbus: nickm | 2008-03-07 20:11:15 -0500
...
Fix typo in tortls.c comment.
svn:r13887
2008-03-08 01:11:52 +00:00
Nick Mathewson
f56ba5f3d6
r18630@catbus: nickm | 2008-03-05 17:31:33 -0500
...
Implement domain-selection for logging. Source is documented; needs documentation in manpage (maybe). For now, see doxygen comment on parse_log_severity_config in log.c
svn:r13875
2008-03-05 22:31:39 +00:00
Nick Mathewson
77d1654c50
r18535@catbus: nickm | 2008-03-01 09:58:33 -0500
...
Whoo. People diagnosed and fixed bug 616. See changelog for details. Bugfix on 0.2.0.20-rc.
svn:r13793
2008-03-01 14:59:03 +00:00
Roger Dingledine
04efc74e18
be a little bit more helpful than "Error reading directory."
...
make a note to try to be more helpful still.
svn:r13776
2008-02-28 21:37:39 +00:00
Nick Mathewson
d14f8f2547
r14516@tombo: nickm | 2008-02-27 03:10:26 -0500
...
Write some unit tests for a few functions and cases that needed them.
svn:r13751
2008-02-27 08:10:28 +00:00
Roger Dingledine
e7f3d6f76c
fix most of pnx's warnings on irix64
...
svn:r13706
2008-02-24 23:39:53 +00:00
Nick Mathewson
3452486ac6
r14422@tombo: nickm | 2008-02-24 17:09:56 -0500
...
Whitespace fixes
svn:r13700
2008-02-24 22:11:18 +00:00
Roger Dingledine
a0bc80bbf8
<weasel> tortls.c: In function `tor_tls_client_is_using_v2_ciphers':
...
<weasel> tortls.c:634: warning: passing arg 1 of `SSL_get_session' discards
qualifiers from pointer target type
Nick, see if you like this patch.
svn:r13690
2008-02-24 00:35:20 +00:00
Nick Mathewson
e7db789e82
r14399@tombo: nickm | 2008-02-22 14:09:38 -0500
...
More 64-to-32 fixes. Partial backport candidate. still not done.
svn:r13680
2008-02-22 19:09:45 +00:00
Nick Mathewson
031c212776
r18360@catbus: nickm | 2008-02-21 22:26:32 -0500
...
Make torint.h define ssize_t more robustly; add spaces to last patch
svn:r13670
2008-02-22 03:26:35 +00:00
Nick Mathewson
688b7ddf83
r18358@catbus: nickm | 2008-02-21 22:21:57 -0500
...
Remove extraneous commas in compat.c
svn:r13669
2008-02-22 03:23:20 +00:00
Nick Mathewson
6a1e0c2373
r18356@catbus: nickm | 2008-02-21 21:54:55 -0500
...
Remove redundant check from container.c that gcc 4.2 didnt like
svn:r13668
2008-02-22 02:55:02 +00:00
Nick Mathewson
b21a122ef6
r14379@tombo: nickm | 2008-02-21 17:14:24 -0500
...
Enable v2 handshakes.
svn:r13666
2008-02-21 22:14:32 +00:00
Nick Mathewson
69300eb606
r14374@tombo: nickm | 2008-02-21 16:57:39 -0500
...
Fix all remaining shorten-64-to-32 errors in src/common. Some were genuine problems. Many were compatibility errors with libraries (openssl, zlib) that like predate size_t. Partial backport candidate.
svn:r13665
2008-02-21 21:57:47 +00:00
Nick Mathewson
b375472d14
r14373@tombo: nickm | 2008-02-21 16:29:18 -0500
...
Apply warnings about implicit 64-to-32 conversions; some from Sebastian Hahn; some not.
svn:r13664
2008-02-21 21:57:42 +00:00
Roger Dingledine
1cd90948ab
maybe appease the overflow detectors more
...
svn:r13663
2008-02-21 21:56:04 +00:00
Nick Mathewson
daefbfe691
r14371@tombo: nickm | 2008-02-21 16:13:18 -0500
...
Fix all -Wshorten-64-to-32 warnings that appear on my macbook.
svn:r13662
2008-02-21 21:15:31 +00:00
Nick Mathewson
5c03f82a65
r18345@catbus: nickm | 2008-02-21 13:45:04 -0500
...
Do the last part of arma's fix for bug 437: Track the origin of every addrmap, and use this info so we can remove all the trackhostexits-originated mappings for a given exit.
svn:r13660
2008-02-21 18:45:11 +00:00
Nick Mathewson
e2f25558b9
r14362@31-33-219: nickm | 2008-02-21 11:01:10 -0500
...
Change some of our log messages related to closed TLS connections in order to better reflect reality.
svn:r13657
2008-02-21 16:11:58 +00:00
Nick Mathewson
8b1789c71f
r18336@catbus: nickm | 2008-02-21 09:33:15 -0500
...
Patch from Sebastian Hahn: remove obsolete timeval manipulation functions.
svn:r13653
2008-02-21 14:33:20 +00:00
Roger Dingledine
b3c0d066e5
other cleanups that have been sitting in my sandbox
...
svn:r13649
2008-02-21 09:01:32 +00:00
Roger Dingledine
b28a342e35
resolve one more, and leave two for nick.
...
svn:r13644
2008-02-21 05:53:50 +00:00
Nick Mathewson
063ced8903
r18296@catbus: nickm | 2008-02-20 23:30:11 -0500
...
Answer one xxx020 item; move 7 other ones to a new "XXX020rc" category: they should get fixed before we cut a release candidate. arma: please review these to see whether you have fixes/answers for any. Please check out the other 14 XXX020s to see if any look critical for the release candidate.
svn:r13640
2008-02-21 04:30:14 +00:00
Nick Mathewson
47e6247673
r18294@catbus: nickm | 2008-02-20 22:42:44 -0500
...
Fix a spelling error and clean up a recent veracode-induced integer overflow check. Both spotted by Chris Palmer.
svn:r13639
2008-02-21 03:42:56 +00:00
Nick Mathewson
1df0647c66
r18291@catbus: nickm | 2008-02-20 22:35:32 -0500
...
Resolve all DOCDOC issues, and document some other undocumented code, and fix a changelog entry.
svn:r13638
2008-02-21 03:38:46 +00:00
Nick Mathewson
7b022eda9c
r18290@catbus: nickm | 2008-02-20 22:34:59 -0500
...
Correct handling of nested MAP_FOREACH loops. There are none of those ATM, but isn't it nice that now they'll be correct?
svn:r13637
2008-02-21 03:38:44 +00:00
Nick Mathewson
93aa335516
r18269@catbus: nickm | 2008-02-20 17:28:24 -0500
...
Apply patch from Sebastian Hahn: stop imposing an arbitrary maximum on the number of file descriptors used for busy servers. Bug reported by Olaf Selke.
svn:r13626
2008-02-20 22:28:26 +00:00
Nick Mathewson
b30c1637bd
One last tweak on debugging code.
...
svn:r13621
2008-02-20 17:30:00 +00:00
Nick Mathewson
88efec10a2
r18256@catbus: nickm | 2008-02-20 11:57:31 -0500
...
Simplify rounding logic in bitarray; fix a bug in bitarray_expand().
svn:r13619
2008-02-20 16:57:41 +00:00
Nick Mathewson
0399538b90
r18233@catbus: nickm | 2008-02-19 18:46:07 -0500
...
Count sockets returned from socketpair() too. This is probably not the socket counting bug.
svn:r13600
2008-02-19 23:46:08 +00:00
Nick Mathewson
42c4670e27
r18230@catbus: nickm | 2008-02-19 18:29:43 -0500
...
Add a few asserts to catch possible errors found by veracode.
svn:r13598
2008-02-19 23:29:45 +00:00
Nick Mathewson
dbcf29d301
r18228@catbus: nickm | 2008-02-19 18:05:53 -0500
...
Chris Palmer notes that almost nobody is using smartlist_set_capacity(). Chris Palmer is right. Remove this basically pointless function.
svn:r13596
2008-02-19 23:05:56 +00:00
Nick Mathewson
9479dd3768
r18226@catbus: nickm | 2008-02-19 18:01:01 -0500
...
Brown-paper-bag time. We were failing to count all the sockets from accept().
svn:r13595
2008-02-19 23:01:07 +00:00
Nick Mathewson
632c035ad9
r18221@catbus: nickm | 2008-02-19 17:46:16 -0500
...
New debugging code to figure out what is happending with socket counts.
svn:r13593
2008-02-19 22:46:19 +00:00
Nick Mathewson
4ccffd7aea
r18218@catbus: nickm | 2008-02-19 17:27:40 -0500
...
When SafeLogging is off, have TLS errors and messages logged with their associated addresses.
svn:r13591
2008-02-19 22:27:44 +00:00
Nick Mathewson
749735215b
r18208@catbus: nickm | 2008-02-19 17:02:30 -0500
...
Add some checks in torgzip.c to make sure we never overflow size_t there. Also make sure we do not realloc(list,0) in container.c. Backport candidate.
svn:r13587
2008-02-19 22:05:49 +00:00
Roger Dingledine
d61835a4ba
clean up the socket counting thing. third time's a charm.
...
svn:r13581
2008-02-19 19:48:07 +00:00
Nick Mathewson
f4dc006fb5
r18198@catbus: nickm | 2008-02-19 14:30:30 -0500
...
Try to *fix* the socket counting problem, and add an info log to detect whether we really fixed it
svn:r13580
2008-02-19 19:30:41 +00:00
Roger Dingledine
ab4d3888e4
hunt for killerchicken's socket counting problem
...
svn:r13578
2008-02-19 19:27:55 +00:00
Nick Mathewson
5d069a543b
r18138@catbus: nickm | 2008-02-18 13:13:18 -0500
...
Try to make conditional include logic for openbsd malloc not warn on arma's computer. May fix bug 610.
svn:r13557
2008-02-18 18:14:32 +00:00
Nick Mathewson
4c1e4821d2
r18123@catbus: nickm | 2008-02-17 14:08:45 -0500
...
Fix capitalization error
svn:r13545
2008-02-17 19:09:02 +00:00
Nick Mathewson
a8b371c333
r14238@tombo: nickm | 2008-02-17 14:03:44 -0500
...
Add openbsd memory allocator discussed in bug 468, to make it easier for linux users to get non-awful allocation patterns. Use --enable-openbsd-malloc to turn it on. Needs more testing.
svn:r13544
2008-02-17 19:03:49 +00:00
Nick Mathewson
24e8e1fb36
r14185@tombo: nickm | 2008-02-15 18:05:54 -0500
...
Replace the hefty tor_strpartition with a simple function to replace its only (trivial) use.
svn:r13532
2008-02-15 23:39:14 +00:00
Nick Mathewson
ca4eb987c8
r14182@tombo: nickm | 2008-02-15 17:20:51 -0500
...
Defer, downgrade, or address more XXX020s. The remaining ones are all ones we should deal with before release.
svn:r13530
2008-02-15 23:39:08 +00:00
Nick Mathewson
418c2e1b6b
r14181@tombo: nickm | 2008-02-15 16:48:17 -0500
...
Fix all but 2 DOCDOC items; defer many XXX020s (particularly those where fixing them would fix no bugs at the risk of introducing some bugs).
svn:r13529
2008-02-15 23:39:04 +00:00
Roger Dingledine
740097a65e
We were leaking a file descriptor if Tor started with a zero-length
...
cached-descriptors file. Patch by freddy77; bugfix on 0.1.2.
svn:r13488
2008-02-13 07:23:37 +00:00
Nick Mathewson
f3eaeb99a3
r18051@catbus: nickm | 2008-02-12 15:20:43 -0500
...
Re-tune mempool parametes based on testing on peacetime: use smaller chuncks, free them a little more aggressively, and try very hard to concentrate allocations on fuller chunks. Also, lots of new documentation.
svn:r13484
2008-02-12 20:20:52 +00:00
Roger Dingledine
587a57fdef
fix the compile
...
svn:r13480
2008-02-12 04:50:53 +00:00
Nick Mathewson
a9f1fb20d7
r18045@catbus: nickm | 2008-02-11 23:48:54 -0500
...
oops. Not *quite* ready, just yet, maybe. Do not turn the TLS client handshake on by mistake _again_.
svn:r13479
2008-02-12 04:48:59 +00:00
Nick Mathewson
aace52320c
r18041@catbus: nickm | 2008-02-11 23:43:18 -0500
...
Make version negotiation and handshaking messages more useful and accurate.
svn:r13477
2008-02-12 04:43:25 +00:00
Nick Mathewson
5ced3fd790
r18036@catbus: nickm | 2008-02-11 23:36:38 -0500
...
Make a couple of messages less noisy
svn:r13476
2008-02-12 04:37:13 +00:00
Nick Mathewson
bc4d6515fc
r14111@tombo: nickm | 2008-02-10 20:52:19 -0500
...
"0 bytes in 1 empty chunks" is hardly likely.
svn:r13463
2008-02-11 01:52:24 +00:00
Roger Dingledine
f882a2fc5e
tweak
...
svn:r13443
2008-02-09 10:45:49 +00:00
Roger Dingledine
509d2912dc
doxygen and other cleanups
...
svn:r13440
2008-02-09 03:11:10 +00:00
Nick Mathewson
f27a368265
r17987@catbus: nickm | 2008-02-08 17:01:56 -0500
...
Remove spurious log stmt
svn:r13432
2008-02-08 22:01:59 +00:00
Nick Mathewson
de827f89df
r14062@tombo: nickm | 2008-02-08 15:17:07 -0500
...
Change DNs in x509 certificates to be harder to fingerprint. Raise common code. Refactor random hostname generation into crypto.c
svn:r13429
2008-02-08 21:13:12 +00:00
Nick Mathewson
809227a121
r14061@tombo: nickm | 2008-02-08 14:30:42 -0500
...
Add a couple of (currently disabled) strategies for trying to avoid using too much ram in memory pools: prefer putting new cells in almost-full chunks, and be willing to free the last empty chunk if we have not needed it for a while. Also add better output to mp_pool_log_status to track how many mallocs a given memory pool strategy is saving us, so we can tune the mempool parameters.
svn:r13428
2008-02-08 21:13:08 +00:00
Nick Mathewson
23a9c9695b
r17968@catbus: nickm | 2008-02-07 14:11:02 -0500
...
Clean up IPv6-testing code in test.c; resolve a bunch of XXX020s.
svn:r13425
2008-02-08 21:09:35 +00:00
Nick Mathewson
729555e1ca
r17967@catbus: nickm | 2008-02-07 11:44:51 -0500
...
Fix some warnings identified by building with -D_FORTIFY_SOURCE=2. Remove a redundant (and nuts) definition of _FORTIFY_SOURCE from eventdns.c.
svn:r13424
2008-02-08 21:09:29 +00:00
Nick Mathewson
b8179871a6
r17964@catbus: nickm | 2008-02-07 10:45:02 -0500
...
Fix bug in last patch that made secret_to_key crash.
svn:r13415
2008-02-07 16:10:36 +00:00
Nick Mathewson
eecc44dab8
r17963@catbus: nickm | 2008-02-07 10:14:25 -0500
...
Be more thorough about memory poisoning and clearing. Add an in-place version of aes_crypt in order to remove a memcpy from relay_crypt_one_payload.
svn:r13414
2008-02-07 16:10:33 +00:00
Nick Mathewson
842a33ff20
Update some copyright notices: it is now 2008.
...
svn:r13412
2008-02-07 05:31:47 +00:00
Nick Mathewson
46b1a21dc4
r17955@catbus: nickm | 2008-02-06 16:53:07 -0500
...
The SSL portion of the revised handshake now seems to work: I just finally got a client and a server to negotiate versions. Now to make sure certificate verification is really happening, connections are getting opened, etc.
svn:r13409
2008-02-06 21:53:13 +00:00
Nick Mathewson
46532d8111
r17953@catbus: nickm | 2008-02-06 15:00:44 -0500
...
Implement a better means for testing for renegotiation.
svn:r13408
2008-02-06 20:00:47 +00:00
Nick Mathewson
4d70094b6e
r17951@catbus: nickm | 2008-02-06 14:34:13 -0500
...
Add more documentation; change the behavior of read_to_buf_tls to be more consistent. Note a longstanding problem with current read/write interfaces.
svn:r13407
2008-02-06 19:34:32 +00:00
Nick Mathewson
a869574c56
r17947@catbus: nickm | 2008-02-06 11:57:53 -0500
...
Fix a bunch of DOCDOC items; document the --quiet flag; refactor a couple of XXXX020 items.
svn:r13405
2008-02-06 16:58:05 +00:00
Roger Dingledine
f76cdc1a61
misc small fixes
...
svn:r13403
2008-02-06 12:46:46 +00:00
Nick Mathewson
8366da01fb
r17935@catbus: nickm | 2008-02-05 20:54:54 -0500
...
Add typechecking cast functions for typed digestmap variants.
svn:r13396
2008-02-06 05:31:15 +00:00
Nick Mathewson
9c7eaa7a9d
r17918@catbus: nickm | 2008-02-05 16:39:17 -0500
...
Remove a few #if-0d items.
svn:r13392
2008-02-05 21:39:56 +00:00
Nick Mathewson
a51deb9a9c
r17903@catbus: nickm | 2008-02-05 14:40:03 -0500
...
Remove some dead code; fix some XXX020s; turn some XXX020s into XXXX_IP6s (i.e., "needs to be fixed when we add ipv6 support").
svn:r13382
2008-02-05 19:40:26 +00:00
Nick Mathewson
ac69319d3f
r17899@catbus: nickm | 2008-02-05 14:14:06 -0500
...
Fix a couple of XXX020 items. Also, disable all "condition" sychronization code, since Tor does not use it yet
svn:r13380
2008-02-05 19:40:19 +00:00
Nick Mathewson
3958d7b16f
r17898@catbus: nickm | 2008-02-05 14:01:35 -0500
...
Add (and use) a MAP_DEL_CURRENT macro to augment a non-const variant of MAP_FOREACH.
svn:r13379
2008-02-05 19:40:17 +00:00
Nick Mathewson
54029559d7
Apparently, our windows code for detecting ipv6 structures has worked for a while. Remove the special-case, remove the related XXXX020s, and add useful comments instead.
...
svn:r13377
2008-02-05 19:36:06 +00:00
Nick Mathewson
b4ebe55d12
r13971@tombo: nickm | 2008-01-30 14:25:25 -0500
...
Write a new autoconf macro to test whether a function is declared. It is suboptimal and possibly buggy in some way, but it seems to work for me. use it to test for a declaration of malloc_good_size, so we can workaround operating systems (like older OSX) that have the function in their libc but do not deign to declare it in their headers. Should resolve bug 587.
svn:r13339
2008-01-30 19:25:31 +00:00
Nick Mathewson
c7fe633780
New macros to simplify writing loops over map key-value pairs.
...
svn:r13302
2008-01-26 22:49:36 +00:00
Roger Dingledine
750ed3d015
We accidentally enabled the under-development v2 TLS handshake
...
code, which is causing log entries like "TLS error while
renegotiating handshake". Disable it again. Resolves bug 590.
svn:r13219
2008-01-21 22:33:01 +00:00
Nick Mathewson
ddb753f87a
r17717@catbus: nickm | 2008-01-21 17:09:23 -0500
...
Fix certificate leak.
svn:r13218
2008-01-21 22:09:42 +00:00
Nick Mathewson
4a3b7496f0
r17639@catbus: nickm | 2008-01-15 19:09:21 -0500
...
Fix some hard to trigger but nonetheless real memory leaks spotted by an anonymous contributor. Needs review. Partial backport candidate.
svn:r13147
2008-01-16 05:27:19 +00:00
Nick Mathewson
24aae484c9
r17624@catbus: nickm | 2008-01-15 00:42:01 -0500
...
Fixes to more anonymously-reported typos and logic errors.
svn:r13136
2008-01-15 05:57:19 +00:00
Nick Mathewson
d7fb8a34ac
r17613@catbus: nickm | 2008-01-14 13:52:44 -0500
...
Do not segfault if symetric key generation somehow fails in crypto_hybrid_encrypt.
svn:r13132
2008-01-14 19:00:28 +00:00
Roger Dingledine
2ac1e36248
minor cleanups
...
svn:r13095
2008-01-10 17:54:24 +00:00
Roger Dingledine
8ba1ba7d81
<tup> tor segfaults when reading a config value that contains a malformed
...
escape sequence; this patch fixes it
svn:r13086
2008-01-09 18:23:28 +00:00
Nick Mathewson
becbafc9db
r17491@catbus: nickm | 2008-01-07 11:50:24 -0500
...
Remove some dead code.
svn:r13053
2008-01-07 16:50:33 +00:00
Nick Mathewson
491298a067
r17490@catbus: nickm | 2008-01-07 11:48:02 -0500
...
Fix bug 582: decref the idcert when we add it to the store.
svn:r13052
2008-01-07 16:50:31 +00:00
Nick Mathewson
d73b791969
r17473@catbus: nickm | 2008-01-05 22:15:05 -0500
...
Add a reverse mapping from SSL to tor_tls_t*: we need this in order to do a couple of things the sensible way from inside callbacks. Also, add a couple of missing cases in connection_or.c
svn:r13040
2008-01-06 03:16:11 +00:00
Nick Mathewson
6d58d80e78
r17472@catbus: nickm | 2008-01-05 22:10:19 -0500
...
Another test for the increasingly bad check-spaces style checker to check: #else\n#if is almost a sure sign of a failure to use #elif. Fortunately, we only did that 3 times.
svn:r13039
2008-01-06 03:16:08 +00:00
Nick Mathewson
864d830598
r17471@catbus: nickm | 2008-01-05 21:47:08 -0500
...
Missing documentation in container.h
svn:r13038
2008-01-06 03:16:06 +00:00
Nick Mathewson
614dc52623
r17467@catbus: nickm | 2008-01-05 19:54:20 -0500
...
fix whitespace
svn:r13035
2008-01-06 00:54:22 +00:00
Nick Mathewson
58de695f90
r15787@tombo: nickm | 2008-01-02 01:59:07 -0500
...
Allow config values in quotes to contain special characters, with full C escape syntax. With tests. Addresses bug 557.
svn:r13021
2008-01-02 06:59:15 +00:00
Nick Mathewson
86f5180853
r15786@tombo: nickm | 2008-01-02 01:11:51 -0500
...
Push the strdups used for parsing configuration lines into parse_line_from_string(). This will make it easier to parse more complex value formats, which in turn will help fix bug 557
svn:r13020
2008-01-02 06:59:12 +00:00
Nick Mathewson
c0ec281565
r15784@tombo: nickm | 2008-01-02 00:38:06 -0500
...
Fix bug 575: protect the list of logs with a mutex. I couldn't find any appreciable change in logging performance on osx, but ymmv. You can undef USE_LOG_MUTEX to see if stuff gets faster for you.
svn:r13019
2008-01-02 05:38:53 +00:00
Nick Mathewson
11fff225fa
r15779@tombo: nickm | 2008-01-01 23:43:24 -0500
...
Use reference-counting to avoid allocating a zillion little addr_policy_t objects. (This is an old patch that had been sitting on my hard drive for a while.)
svn:r13017
2008-01-02 04:43:44 +00:00
Nick Mathewson
71e117e444
r15767@tombo: nickm | 2007-12-31 16:06:27 -0500
...
Note an unfreed cert
svn:r13008
2007-12-31 21:12:14 +00:00
Nick Mathewson
c03ef9c395
r17423@catbus: nickm | 2007-12-28 01:54:42 -0500
...
Fix compilation with dmalloc
svn:r12998
2007-12-28 06:54:46 +00:00
Nick Mathewson
0c8142e981
r15691@tombo: nickm | 2007-12-25 18:13:54 -0500
...
New, slightly esoteric function, tor_malloc_roundup(). While tor_malloc(x) allocates x bytes, tor_malloc_roundup(&x) allocates the same size of chunk it would use to store x bytes, and sets x to the usable size of that chunk.
svn:r12981
2007-12-26 00:12:01 +00:00
Roger Dingledine
1d8a8063b9
clean up copyrights, and assign 2007 copyrights to The Tor Project, Inc
...
svn:r12786
2007-12-12 21:09:01 +00:00
Nick Mathewson
bd49bba49e
r17091@catbus: nickm | 2007-12-11 18:05:55 -0500
...
Fix compilation when --disable-threads is passed in.
svn:r12768
2007-12-11 23:06:51 +00:00
Nick Mathewson
25a8744d9c
r15223@tombo: nickm | 2007-12-07 23:41:21 -0500
...
Aaand, do the code to enable the client side of the new TLS handshake. There are some loose ends that need tying up in connection_or, and a lot of half-baked code to remove, and some special cases to test for, and lots and lots of testing to do, but that is what weekends are for.
svn:r12721
2007-12-08 04:41:34 +00:00
Nick Mathewson
f948caad7b
r15161@tombo: nickm | 2007-12-05 11:30:37 -0500
...
Fix bug reported by Steve Murphy on or-talk: detect the s6_addr32 and s6_addr16 fields via autoconf.
svn:r12679
2007-12-05 16:30:52 +00:00
Nick Mathewson
593ab7e808
r15106@tombo: nickm | 2007-12-04 00:08:35 -0500
...
Change tor_addr_t to be a tagged union of in_addr and in6_addr, not of sockaddr_in and sockaddr_in6. It's hardly used in the main code as it is, but let's get it right before it gets popular.
svn:r12660
2007-12-04 05:19:56 +00:00
Nick Mathewson
f4e228f849
r16919@catbus: nickm | 2007-12-03 12:59:02 -0500
...
Add DHE-RSA-AES256-SHA to the list of ciphers encountered from v1 connections.
svn:r12652
2007-12-03 17:59:32 +00:00
Nick Mathewson
d8ad247dfd
r15088@tombo: nickm | 2007-11-30 23:47:29 -0500
...
Add support to get a callback invoked when the client renegotiate a connection. Also, make clients renegotiate. (not enabled yet, until they detect that the server acted like a v2 server)
svn:r12623
2007-12-01 08:09:48 +00:00
Nick Mathewson
1789f94668
r15087@tombo: nickm | 2007-11-30 22:32:26 -0500
...
Start getting freaky with openssl callbacks in tortls.c: detect client ciphers, and if the list doesn't look like the list current Tors use, present only a single cert do not ask for a client cert. Also, support for client-side renegotiation. None of this is enabled unless you define V2_HANDSHAKE_SERVER.
svn:r12622
2007-12-01 08:09:46 +00:00
Nick Mathewson
6fe70f4c69
r16879@catbus: nickm | 2007-11-30 14:07:05 -0500
...
Log *useful* information from dmalloc. (Unfreed pointers, not total of freed and unfreed).
svn:r12616
2007-11-30 19:07:11 +00:00
Roger Dingledine
fa2c3a73e4
make dmalloc 5.4.2 work again too
...
svn:r12615
2007-11-30 19:02:56 +00:00
Nick Mathewson
ac82d81538
r16874@catbus: nickm | 2007-11-30 13:11:09 -0500
...
When using dmalloc, dump the top ten memory consumers to the _DMALLOC_ logfile when we get a SIGUSR1. Hint: it is not what you would think.
svn:r12613
2007-11-30 18:11:26 +00:00
Roger Dingledine
188cb920d0
cleanups while i was trying to figure out how it worked
...
svn:r12612
2007-11-30 17:23:46 +00:00
Roger Dingledine
7f12ebc3fa
cleanups on r12579
...
svn:r12580
2007-11-27 21:17:43 +00:00
Nick Mathewson
d483d3144a
r16669@catbus: nickm | 2007-11-14 14:50:03 -0500
...
When we complete an OR handshake, set up all the internal fields and mark the connection as open.
svn:r12495
2007-11-14 20:01:12 +00:00
Nick Mathewson
e0b9c893bc
r16573@catbus: nickm | 2007-11-08 11:57:16 -0500
...
Mess with the formula for the Guard flag again. Now it requires that you be in the most familiar 7/8 of nodes, and have above median wfu for that 7/8th. See spec for details. Also, log thresholds better.
svn:r12440
2007-11-08 16:58:59 +00:00
Nick Mathewson
0e993e6008
r16523@catbus: nickm | 2007-11-07 11:35:49 -0500
...
Improve "tls error. breaking" message a little.
svn:r12411
2007-11-07 16:37:08 +00:00
Roger Dingledine
7b826f8fe4
a note from steven about how to set up a private test network
...
without link encryption.
svn:r12410
2007-11-07 15:33:14 +00:00
Nick Mathewson
e047f7f865
r16455@catbus: nickm | 2007-11-06 12:48:00 -0500
...
Parse CERT cells and act correctly when we get them.
svn:r12396
2007-11-06 18:00:07 +00:00
Nick Mathewson
512d3b161c
r16450@catbus: nickm | 2007-11-06 09:18:11 -0500
...
Fix compile on sparc64
svn:r12394
2007-11-06 14:19:14 +00:00
Nick Mathewson
85654f4ab9
r16432@catbus: nickm | 2007-11-05 14:18:57 -0500
...
Send and parse link_auth cells properly.
svn:r12386
2007-11-05 19:19:46 +00:00
Nick Mathewson
12afd4777c
r16413@catbus: nickm | 2007-11-05 13:14:18 -0500
...
Add functions to encode certificates
svn:r12384
2007-11-05 18:15:54 +00:00
Nick Mathewson
323490303e
r16412@catbus: nickm | 2007-11-05 11:45:17 -0500
...
Make TLS contexts reference-counted, and add a reference from TLS objects to their corresponding context. This lets us reliably get the certificates for a given TLS connection, even if we have rotated TLS contexts.
svn:r12383
2007-11-05 18:15:52 +00:00
Nick Mathewson
ea1bea5830
r16411@catbus: nickm | 2007-11-05 11:27:37 -0500
...
Remember X509 certificates in the context. Store peer/self certificate digests in handshake state.
svn:r12382
2007-11-05 18:15:50 +00:00
Nick Mathewson
22c31d91ab
r16410@catbus: nickm | 2007-11-05 10:54:29 -0500
...
Code to remember client_random and server_random values, and to compute hmac using TLS master secret.
svn:r12381
2007-11-05 18:15:47 +00:00
Nick Mathewson
c217be996d
r14677@tombo: nickm | 2007-11-03 15:16:27 -0400
...
Add a smartlist_bsearch_idx function that gives more useful output than regular bsearch for the value-not-found case.
svn:r12360
2007-11-03 20:12:38 +00:00
Nick Mathewson
3a6287615b
r16367@catbus: nickm | 2007-11-02 13:13:15 -0400
...
Space fixes.
svn:r12345
2007-11-02 17:16:34 +00:00
Nick Mathewson
dfc689bda2
r14652@tombo: nickm | 2007-11-02 12:02:13 -0400
...
If setting our rlimit to rlim_max or cap fails, fall back to OPEN_FILES if defiled. This makes Tor run on OSX 10.5, while allowing OSX to mend its ways in the future.
svn:r12341
2007-11-02 16:02:26 +00:00
Nick Mathewson
e76581f97e
r14647@tombo: nickm | 2007-11-02 10:48:37 -0400
...
Use rlim_t instead of unsigned long to manipulate rlimit values.
svn:r12339
2007-11-02 14:50:37 +00:00
Nick Mathewson
7712ddf8e7
r16317@catbus: nickm | 2007-10-31 23:52:52 -0400
...
Use HMAC() function from openssl. Oops.
svn:r12304
2007-11-01 03:56:17 +00:00
Nick Mathewson
5da5d2bd79
r16302@catbus: nickm | 2007-10-31 16:45:16 -0400
...
Clean spaces.
svn:r12301
2007-10-31 20:48:10 +00:00
Nick Mathewson
17266cc44a
r16287@catbus: nickm | 2007-10-31 00:53:53 -0400
...
HMAC-SHA-1 implementation, with unit tests based on vectors from RVFC2202. Steven's stuff will need this.
svn:r12289
2007-10-31 04:56:59 +00:00
Nick Mathewson
7e80640b97
r16285@catbus: nickm | 2007-10-30 17:43:25 -0400
...
Implement (but do not enable) link connection version negotiation
svn:r12286
2007-10-30 21:46:02 +00:00
Nick Mathewson
c0c2001a5b
r16279@catbus: nickm | 2007-10-30 11:14:29 -0400
...
Improved skew reporting: "You are 365 days in the duture" is more useful than "You are 525600 minutes in the future". Also, when we get something that proves we are at least an hour in the past, tell the controller "CLOCK_SKEW MIN_SKEW=-3600" rather than just "CLOCK_SKEW"
svn:r12283
2007-10-30 15:17:07 +00:00
Nick Mathewson
7da93b80ca
r16159@catbus: nickm | 2007-10-25 12:53:38 -0400
...
Drop support for OpenSSL 0.9.6.
svn:r12191
2007-10-25 16:54:56 +00:00
Nick Mathewson
4750c46aea
r16128@catbus: nickm | 2007-10-24 22:52:16 -0400
...
Fix windows mmap changes.
svn:r12171
2007-10-25 02:53:24 +00:00
Nick Mathewson
99d72f7295
r16100@catbus: nickm | 2007-10-24 11:33:52 -0400
...
Make tor_mmap_file() set and preserve errno in a useful way.
svn:r12153
2007-10-24 15:45:42 +00:00
Nick Mathewson
42172829ce
r16016@catbus: nickm | 2007-10-21 20:44:19 -0400
...
Check a platform assumption we have made without checking for too long: "Characters are represented in ascii."
svn:r12088
2007-10-22 00:44:42 +00:00
Nick Mathewson
722c7bdff4
r15997@catbus: nickm | 2007-10-21 20:25:40 -0400
...
New code (disabled for now) to use the SSL context's cert store instead of using its "extra chain cert" list to get our identity certificate sent. This is a little close to what OpenSSL expects people to do, and it has the advantage that we should be able to keep the id cert from being sent by setting the NO_CHAIN_CERT bit. I have tried turning new code on, and it seemed to work fine.
svn:r12086
2007-10-22 00:26:02 +00:00
Nick Mathewson
9f93d48697
r15989@catbus: nickm | 2007-10-20 19:48:29 -0400
...
Fix implementation of sdmap_size and rimap_size() and eimap_size(). Nobody was using them, so no backport needed.
svn:r12068
2007-10-20 23:48:35 +00:00
Nick Mathewson
b0a18d1bfa
r15967@catbus: nickm | 2007-10-19 14:14:47 -0400
...
Change meaning of "freefn" argument to smartlist_uniq so that we can remove duplicates from a list without freeing them.
svn:r12053
2007-10-19 18:56:28 +00:00
Nick Mathewson
e3113502ad
r15882@catbus: nickm | 2007-10-17 15:23:05 -0400
...
oprofile was telling me that a fair bit of our time in openssl was spent in base64_decode, so replace base64_decode with an all-at-once fairly optimized implementation. For decoding keys and digests, it seems 3-3.5x faster than calling out to openssl. (Yes, I wrote it from scratch.)
svn:r12002
2007-10-17 19:23:56 +00:00
Nick Mathewson
2e131e31b5
r15861@catbus: nickm | 2007-10-16 13:10:22 -0400
...
Fix example use of hash table iterators
svn:r11991
2007-10-16 17:21:05 +00:00
Nick Mathewson
7f9e9c816c
r15790@catbus: nickm | 2007-10-15 11:38:28 -0400
...
Fix bug 528: fix memory leak in base32_decode(). While there, also make base32_decode() accept upper-case inputs.
svn:r11946
2007-10-15 15:38:44 +00:00
Nick Mathewson
3de8158b16
r15702@catbus: nickm | 2007-10-11 17:29:20 -0400
...
Remove a bunch of redundant includes in crypto.c
svn:r11885
2007-10-11 21:40:32 +00:00
Roger Dingledine
bab60e5ade
bugfix on r11301:
...
Fix a minor memory leak whenever we wrote out a file. Bugfix on
0.2.0.7-alpha.
svn:r11863
2007-10-11 03:10:52 +00:00
Roger Dingledine
900ddcb8fd
bugfix on r11298:
...
Fix a minor memory leak whenever we parse guards from our state
file. Bugfix on 0.2.0.7-alpha.
svn:r11862
2007-10-11 02:03:53 +00:00
Nick Mathewson
6f7847b378
r15530@catbus: nickm | 2007-10-04 12:16:27 -0400
...
Add a bunch of function documentation; clean up a little code; fix some XXXXs; tag the nonsensical EXTRAINFO_PURPOSE_GENERAL as nonsesnse; note another bit of "do not cache special routers" code to nuke.
svn:r11761
2007-10-04 16:21:58 +00:00
Nick Mathewson
8439c4ec2f
r15512@catbus: nickm | 2007-10-02 16:27:43 -0400
...
Make some functions static; remove some dead code.
svn:r11750
2007-10-02 20:35:23 +00:00
Nick Mathewson
38ac9f6005
r14682@Kushana: nickm | 2007-09-28 15:23:38 -0400
...
From little acorns: redo our string and digest hashing code to be faster, since this stuff may be critical-path.
svn:r11700
2007-09-28 19:23:54 +00:00
Nick Mathewson
fc5dd0cdbb
r15231@catbus: nickm | 2007-09-20 16:04:30 -0400
...
Patch from karsten: remove cbc and make unit tests handle aes-ctr-with-iv.
svn:r11538
2007-09-20 20:08:47 +00:00
Nick Mathewson
f0634bb7ca
r14532@Kushana: nickm | 2007-09-20 13:25:38 -0400
...
Clean up some macros in aes.c
svn:r11537
2007-09-20 17:28:07 +00:00
Nick Mathewson
262d5ab0a8
r15210@catbus: nickm | 2007-09-20 13:04:05 -0400
...
Re-optimize counter-mode: save about 15% on my core2 by (1) not regenerating the entire counter buffer every time we encrypt a block of keystream (2) using the platform-optimized htonl to convert to big-endian (It's a single instruction on 486 and later ) and (3) not even keeping a separate "counter" and "buffer" when the platform is big-endian. The third still needs testing.
svn:r11536
2007-09-20 17:07:45 +00:00
Roger Dingledine
d4e950ccc8
poke at svn until it compiles. nick, you should decide if this
...
is what you meant to do.
svn:r11529
2007-09-20 03:06:45 +00:00
Nick Mathewson
5f7950e874
r15172@catbus: nickm | 2007-09-19 11:50:02 -0400
...
New (untested) code to implement AES-with-IV. Currently, IVs are generated randomly. Once tested, should be (almost) a drop-in replacement for the CBC functions.
svn:r11519
2007-09-19 15:53:41 +00:00
Nick Mathewson
7e93139a85
r15171@catbus: nickm | 2007-09-19 11:44:54 -0400
...
Switch our AES implementation from "128 bit counter with to 64 bits set to 0" to a proper implementation of counter mode. Also, add an aes_set_iv function to initialize the counter to a nonzero value.
svn:r11518
2007-09-19 15:53:38 +00:00
Roger Dingledine
1a930cfc70
minor style tweaks
...
svn:r11490
2007-09-18 17:18:14 +00:00
Roger Dingledine
f15a4c8bd7
add some crypto/util functions from karsten, as the first
...
step of integrating his new hidden service stuff
svn:r11489
2007-09-18 17:07:56 +00:00
Nick Mathewson
8c13967803
r14448@Kushana: nickm | 2007-09-17 14:26:56 -0400
...
Unify all of the divergent median/nth-percentile code in container.[ch]
svn:r11457
2007-09-17 18:27:49 +00:00
Nick Mathewson
565f5f32c5
r14363@Kushana: nickm | 2007-09-08 16:25:45 -0400
...
Another round of whitespeace fixes.
svn:r11407
2007-09-08 20:25:57 +00:00