Nick Mathewson
ad45ddfb07
r13788@catbus: nickm | 2007-07-16 14:26:25 -0400
...
Patch from croup: rewrite the logic of get_next_token() to do the right thing with input that ends at weird places, or aligns with block boundaries after mmap. should fix bug 455. Needs fuzzing.
svn:r10847
2007-07-16 18:26:31 +00:00
Roger Dingledine
6d2cb32d10
free some more memory on exit
...
svn:r10837
2007-07-16 04:33:47 +00:00
Nick Mathewson
7e20fdbefb
r13687@catbus: nickm | 2007-07-10 16:08:14 -0400
...
Possible partial fix for bug 455: use eos logic everywhere.
svn:r10786
2007-07-10 20:08:18 +00:00
Nick Mathewson
73b4428a8b
r13631@catbus: nickm | 2007-07-06 10:17:22 -0400
...
Try to fix win32 build again.
svn:r10750
2007-07-06 14:17:30 +00:00
Nick Mathewson
bbc7cf86d5
r13600@Kushana: nickm | 2007-07-05 23:49:47 -0400
...
try to fix mingw compile
svn:r10743
2007-07-06 03:49:57 +00:00
Nick Mathewson
a9469098ca
r13596@kushana: nickm | 2007-07-05 10:53:22 -0400
...
Argh, re-enable CRITICAL_SECTION code in win32.
svn:r10741
2007-07-05 14:53:27 +00:00
Nick Mathewson
5c9c420111
svn:r10740
2007-07-05 14:51:10 +00:00
Nick Mathewson
ae4ab0f617
r13454@kushana: nickm | 2007-06-20 14:22:44 -0400
...
Switch windows locking implementation to CRITICAL_SECTION, not Mutex: Mutex is heavier-weight, and meant for multi-process situations.
svn:r10739
2007-07-05 14:51:01 +00:00
Peter Palfrader
f274c1413e
Make it build with -O0 as well
...
svn:r10722
2007-07-02 17:50:57 +00:00
Peter Palfrader
adff891463
Make DEBUG_SMARTLIST work
...
svn:r10721
2007-07-02 17:48:56 +00:00
Nick Mathewson
1bdcfd9203
r13570@catbus: nickm | 2007-06-30 20:41:05 -0400
...
Implement conditions in compat.c; switch windows to use "critical sections" instead of mutexes. Apparently, mutexes are for IPC and critical sections are for multithreaded.
svn:r10716
2007-07-01 16:22:45 +00:00
Nick Mathewson
5adfa09fce
r13477@catbus: nickm | 2007-06-17 14:22:03 -0400
...
Sun CC likes to give warnings for the do { } while(0) construction for making statement-like macros. Define STMT_BEGIN/STMT_END macros that do the right thing, and use them everywhere.
svn:r10645
2007-06-17 18:22:39 +00:00
Nick Mathewson
93f32db438
r13476@catbus: nickm | 2007-06-17 14:04:41 -0400
...
Build with fewer compiler warnings on Sun. (This and previous Sun patches are thanks to the tremendously handy services of unix-center.net.)
svn:r10644
2007-06-17 18:22:35 +00:00
Nick Mathewson
a8e88adba4
r13410@catbus: nickm | 2007-06-13 18:39:05 -0400
...
Fix compilation on compilers that do not allow you to typedef the same type twice.
svn:r10598
2007-06-13 22:39:10 +00:00
Nick Mathewson
546209a4de
r13384@catbus: nickm | 2007-06-13 13:53:26 -0400
...
make test_* functions stop conflicting with variables named v1 and v2.
svn:r10584
2007-06-13 18:15:56 +00:00
Nick Mathewson
3637ee0e59
r13383@catbus: nickm | 2007-06-13 13:53:04 -0400
...
Expose a function to parse a private key from a string as CRYPTO_PRIVATE. For testing.
svn:r10583
2007-06-13 18:15:53 +00:00
Nick Mathewson
399890307d
r13362@catbus: nickm | 2007-06-11 19:00:23 -0400
...
Fix a warning on platforms where sizeof(size_t)==8, but sizeof(unsigned long)<8.
svn:r10566
2007-06-11 23:00:26 +00:00
Nick Mathewson
dddf065e62
r13358@catbus: nickm | 2007-06-11 18:46:24 -0400
...
Fix some dumb copypasta in r10562.
svn:r10565
2007-06-11 22:46:35 +00:00
Nick Mathewson
f45732513e
r13354@catbus: nickm | 2007-06-11 18:17:40 -0400
...
Add typechecking wrappers to digestmap, so we can work with "map from digest to [FOO]" for arbitrary FOOs and still have some typesafety.
svn:r10562
2007-06-11 22:19:37 +00:00
Nick Mathewson
6673d445f5
r13283@catbus: nickm | 2007-06-06 01:43:44 -0400
...
Fix up a couple of loops flagged by -Wunsafe-loop-optimizations so that they are more readable (and more amenable to compilation)
svn:r10513
2007-06-06 13:02:22 +00:00
Nick Mathewson
bb6f53d60c
r13243@catbus: nickm | 2007-06-04 15:17:15 -0400
...
Start of code to compute consensus network-status stuff from a bunch of votes. Strangely, it does not yet feel like an enormous ugly hack.
svn:r10489
2007-06-04 19:19:01 +00:00
Nick Mathewson
6faa9e2641
r13239@catbus: nickm | 2007-06-04 11:30:37 -0400
...
Fix the fix for bug 445: set umask properly. Also use open+fdopen rather than just umask+fopen, and create authority identity key with mode 400.
svn:r10485
2007-06-04 15:30:40 +00:00
Nick Mathewson
cb0324c400
r13191@catbus: nickm | 2007-06-03 19:38:18 -0400
...
Set umask(0700) when starting tor-gencert; resolves bug 445.
svn:r10475
2007-06-03 23:38:20 +00:00
Nick Mathewson
aee7f01624
r13154@catbus: nickm | 2007-06-02 11:26:44 -0400
...
Server-side support for If-Modified-Since in HTTP requsts for v1 stuff, and for network-status documents.
svn:r10451
2007-06-02 15:26:57 +00:00
Nick Mathewson
5b6d7f10f3
r13143@catbus: nickm | 2007-06-01 16:43:40 -0400
...
Try to fix some mipspro compiler warnings. There will still be some left.
svn:r10444
2007-06-02 12:44:54 +00:00
Roger Dingledine
b1ee20f0e8
trivial changes from my sandbox
...
svn:r10429
2007-05-31 23:57:46 +00:00
Nick Mathewson
534c55f531
r13111@catbus: nickm | 2007-05-31 15:03:41 -0400
...
Cleanup whitespace.
svn:r10425
2007-05-31 19:03:49 +00:00
Nick Mathewson
71c0a13703
r13110@catbus: nickm | 2007-05-31 15:03:24 -0400
...
Fix windows build.
svn:r10424
2007-05-31 19:03:46 +00:00
Nick Mathewson
4061b2cbd1
r13101@catbus: nickm | 2007-05-31 12:57:42 -0400
...
Unit tests [and debugging] for tor_inet_ntop() and tor_inet_pton()
svn:r10420
2007-05-31 18:48:25 +00:00
Nick Mathewson
e11a92bd54
r13058@catbus: nickm | 2007-05-29 14:39:53 -0400
...
Note that the fix for bug 222 should technically be turned into a real fix, not a kludge, one of these days.
svn:r10397
2007-05-29 18:39:59 +00:00
Nick Mathewson
e5ed434c42
r13054@catbus: nickm | 2007-05-29 14:20:50 -0400
...
An even better workaround for the probably-already-fixed bug 222.
svn:r10395
2007-05-29 18:21:00 +00:00
Nick Mathewson
f89a3b1448
r13050@catbus: nickm | 2007-05-29 13:31:11 -0400
...
Resolve all but 3 DOCDOCs.
svn:r10393
2007-05-29 17:31:13 +00:00
Nick Mathewson
916e98d3fa
r13042@catbus: nickm | 2007-05-29 10:41:10 -0400
...
oops; use tor_inet_aton rather than inet_aton in tor_inet_ntop. Spotted by Li-Hui Zhou.
svn:r10389
2007-05-29 14:41:24 +00:00
Roger Dingledine
0c047b87f5
polish r9933-r9994
...
svn:r10335
2007-05-25 19:41:31 +00:00
Nick Mathewson
bb524e99c9
r12955@catbus: nickm | 2007-05-25 13:17:30 -0400
...
First bare stubs of ipv6 work: commit some (untested, hence doublessly broken) implementations of inet_ntop/pton for systems that lack them.
svn:r10326
2007-05-25 18:22:37 +00:00
Nick Mathewson
a312afd67e
r12936@catbus: nickm | 2007-05-24 14:12:34 -0400
...
Review XXXX comments without a version; upgrade some to XXXX020.
svn:r10315
2007-05-24 18:12:52 +00:00
Nick Mathewson
79707437d9
r12933@catbus: nickm | 2007-05-24 14:10:28 -0400
...
Optimize digestmap_set, since it sometimes shows up in profiles. Seems to work so far, but it isnt the prettiest thing ever.
svn:r10312
2007-05-24 18:12:38 +00:00
Nick Mathewson
d3d86b17a7
r12916@catbus: nickm | 2007-05-24 12:43:45 -0400
...
Add math functions to round values to the nearest power of 2. Make mempools more careful about making sure that the size of their chunks is a little less than a power of 2, not a little more.
svn:r10304
2007-05-24 17:12:57 +00:00
Nick Mathewson
c9fa4e6583
r12898@catbus: nickm | 2007-05-22 13:11:04 -0400
...
More v3 directory code: have authorities load certificates; have everybody store certificates to disk and load them; provide a way to configure v3 authorities.
svn:r10293
2007-05-22 17:58:25 +00:00
Nick Mathewson
e935d73b34
r12852@catbus: nickm | 2007-05-22 11:00:27 -0400
...
Use svn revisions consistently throughout all log messages.
svn:r10291
2007-05-22 15:48:46 +00:00
Nick Mathewson
4ec5e139c8
r12850@catbus: nickm | 2007-05-21 22:20:42 -0400
...
Partial backport candidate: do not rely on finding a \0 after an mmaped() router/extrainfo file. Also, set journal length correctly when starting up.
svn:r10248
2007-05-22 02:20:52 +00:00
Nick Mathewson
5364833be0
r13017@Kushana: nickm | 2007-05-20 13:40:45 -0400
...
Address points in r10227.
svn:r10229
2007-05-20 17:43:55 +00:00
Roger Dingledine
ddd0054a85
point out two remote crash bugs, a memory leak, and a few other
...
items we should probably look into.
svn:r10227
2007-05-20 14:15:23 +00:00
Nick Mathewson
5f58bee0b0
r12812@catbus: nickm | 2007-05-19 16:17:36 -0400
...
Fix compilation with -O0; add unit tests for swap and shuffle.
svn:r10223
2007-05-19 20:17:37 +00:00
Nick Mathewson
7a61357250
r12790@catbus: nickm | 2007-05-18 17:24:26 -0400
...
Fix build on gcc 4.2
svn:r10212
2007-05-18 21:24:37 +00:00
Nick Mathewson
a187704872
r12980@Kushana: nickm | 2007-05-18 14:11:05 -0400
...
Add a "swap" function to smartlist, add a "shuffle" function for smartlist to crypto.c, and make appropriate hashtable functions be more const.
svn:r10208
2007-05-18 21:19:14 +00:00
Nick Mathewson
836328be2e
r12777@catbus: nickm | 2007-05-16 21:52:23 -0400
...
Fix dumb bug introduced in r10199
svn:r10202
2007-05-17 01:52:26 +00:00
Nick Mathewson
807adfc879
r12769@catbus: nickm | 2007-05-16 17:32:01 -0400
...
Fix warnings from -Wunsafe-loop-optimizations, which incidentally turned up a logic bug in connection_or_flush_from_first_active_circuit that would overcount the number of cells flushed.
svn:r10199
2007-05-16 22:15:48 +00:00
Nick Mathewson
e043b86f47
r12764@catbus: nickm | 2007-05-15 17:17:39 -0400
...
Enable (and cope with) more GCC 4.2 warnings.
svn:r10196
2007-05-15 21:17:48 +00:00
Roger Dingledine
440b7f0c70
polish r9726-r9903
...
svn:r10182
2007-05-13 09:25:06 +00:00
Nick Mathewson
a7696a936d
r12700@catbus: nickm | 2007-05-09 17:22:53 -0400
...
[Backport candidate] On windows, open cached-routers with the sharing mode "FILE_SHARE_READ so that other processes can read it while Tor is running. (Reported by Janbar).
svn:r10148
2007-05-09 21:22:56 +00:00
Roger Dingledine
d112e7b1ad
fix some code comments, a wrapper, and add a todo item
...
svn:r10111
2007-05-04 07:24:01 +00:00
Nick Mathewson
9279c1d5fe
r12638@catbus: nickm | 2007-05-02 17:37:30 -0400
...
Remove the "RSA keys are 128-bits" assumption from crypto.c
svn:r10096
2007-05-02 21:37:53 +00:00
Nick Mathewson
fa39336e65
r12607@catbus: nickm | 2007-04-30 21:36:28 -0400
...
More attempt to fix win32 building. This time, with extra linking.
svn:r10080
2007-05-01 01:36:32 +00:00
Nick Mathewson
6a27dd8284
r12595@catbus: nickm | 2007-04-30 18:32:34 -0400
...
Move private function declarations from crypto.c into a new #ifdef CRYPTO_PRIVATE block in crypto.h
svn:r10074
2007-04-30 22:42:50 +00:00
Nick Mathewson
105d782109
r12546@catbus: nickm | 2007-04-29 21:27:43 -0400
...
Correctly report win98se and win95osr2 versions.
svn:r10047
2007-04-30 01:27:47 +00:00
Nick Mathewson
2f4784cbd8
r12499@catbus: nickm | 2007-04-23 10:42:23 -0400
...
Keep a freelist of unused 4k buffer chunks, rather than wasting 8k for every inactive connection_t.
svn:r10006
2007-04-23 14:42:27 +00:00
Nick Mathewson
227b2e0226
r12759@Kushana: nickm | 2007-04-20 08:47:20 -0400
...
Track the number of connection_t separately from the number of open sockets. It is already possible to have connections that do not count: resolving conns, for one. Once we move from socketpairs to linked conns, and once we do dns proxying, there will be lots of such connections.
svn:r9994
2007-04-21 17:24:18 +00:00
Nick Mathewson
6ee5bef092
r12458@catbus: nickm | 2007-04-19 15:52:23 -0400
...
Fix a bug in displaying memory pool usage. Also dump cell allocation, and track padded_cell_ts as they are allocated and freed, to make sure we are not leaking cells.
svn:r9992
2007-04-19 19:52:30 +00:00
Nick Mathewson
7392464b88
r12456@catbus: nickm | 2007-04-19 14:47:01 -0400
...
Make dumpmemusage() dump cell pool usage information.
svn:r9991
2007-04-19 18:47:04 +00:00
Nick Mathewson
362fbc79d2
r12414@catbus: nickm | 2007-04-16 17:37:17 -0400
...
More proposal-104 stuff: actually remember extra-info stuff.
svn:r9975
2007-04-16 21:37:21 +00:00
Nick Mathewson
7467c35249
r12353@catbus: nickm | 2007-04-11 15:58:46 -0400
...
Apparently some compilers think that anonymous unions are bad C. Technically, they're right, so let's name the union in mempool.c.
svn:r9946
2007-04-11 19:58:51 +00:00
Nick Mathewson
38a5f09502
r12349@catbus: nickm | 2007-04-11 09:18:15 -0400
...
Add code to shrink the cell memory pool by discarding empty chunks that have been empty for the last 60 seconds. Also, instead of having test.c duplicate declarations for exposed functions, put them inside #ifdef foo_PRIVATE blocks in the headers. This prevents bugs where test.c gets out of sync.
svn:r9944
2007-04-11 13:18:25 +00:00
Nick Mathewson
1c8f9b319b
r12344@catbus: nickm | 2007-04-10 21:27:25 -0400
...
Fix documentation and usage of 2nd argument to mp_pool_new.
svn:r9942
2007-04-11 01:27:33 +00:00
Nick Mathewson
51e4b8d706
r12338@catbus: nickm | 2007-04-10 20:29:05 -0400
...
Document memory pool implementation, and tweak it even mor. See? Programming is fun.
svn:r9940
2007-04-11 00:30:34 +00:00
Nick Mathewson
28de06b8e6
r12337@catbus: nickm | 2007-04-10 17:55:26 -0400
...
Add support for using memory pools to allocate queued cell; pass --disable-cell-pool to configure to disable this.
svn:r9939
2007-04-11 00:30:29 +00:00
Nick Mathewson
6ba0b0e9f4
r12336@catbus: nickm | 2007-04-10 17:34:25 -0400
...
Unit tests and debugging for memory pool implementation.
svn:r9938
2007-04-11 00:30:25 +00:00
Nick Mathewson
d7359eb996
r12335@catbus: nickm | 2007-04-10 16:53:48 -0400
...
Initial version of memory pool logic. Needs unit tests. Made to be easily separable from Tor.
svn:r9937
2007-04-11 00:30:22 +00:00
Nick Mathewson
d1ad950ca8
Turn bool_neq and bool_eq into macros.
...
svn:r9914
2007-03-29 02:37:06 +00:00
Nick Mathewson
f8f5ea10de
r12191@catbus: nickm | 2007-03-15 15:33:37 -0400
...
Check return values from pthread_mutex functions.
svn:r9862
2007-03-17 21:09:49 +00:00
Roger Dingledine
d374616301
clean up some minor typos and log confusions
...
svn:r9832
2007-03-15 22:47:21 +00:00
Nick Mathewson
f25e2167f5
r12533@Kushana: nickm | 2007-03-11 05:01:15 -0400
...
Oh. Tor was supposed to compile?
svn:r9797
2007-03-11 09:05:17 +00:00
Nick Mathewson
02ce8e6b12
r12474@Kushana: nickm | 2007-03-06 16:10:05 -0500
...
We have a PATH_SEPARATOR macro. How about we use it?
svn:r9782
2007-03-09 21:39:30 +00:00
Nick Mathewson
d62e37b4a9
r12473@Kushana: nickm | 2007-03-06 15:49:45 -0500
...
Excise PREDICT and PREDICT_FALSE in favor of PREDICT_LIKELY and PREDICT_UNLIKELY.
svn:r9781
2007-03-09 21:39:19 +00:00
Nick Mathewson
5d1bee87ff
r12468@Kushana: nickm | 2007-03-06 15:24:00 -0500
...
More unit tests: gcov is fun.
svn:r9748
2007-03-06 20:25:44 +00:00
Nick Mathewson
4a6e29b029
r12076@catbus: nickm | 2007-03-04 15:41:04 -0500
...
oops; remove spurious argument from _log_prefix.
svn:r9734
2007-03-04 21:08:26 +00:00
Nick Mathewson
7fcceb2c25
r12074@catbus: nickm | 2007-03-04 15:11:43 -0500
...
Make all LD_BUG log messsages get prefixed with "Bug: ". Remove manually-generated "Bug: "s from log-messages. (Apparently, we remembered to add them about 40% of the time.)
svn:r9733
2007-03-04 20:11:46 +00:00
Nick Mathewson
dec9e4f0d8
r12011@catbus: nickm | 2007-02-28 18:13:32 -0500
...
Back out insufficiently evidenced FULL_UNROLL in aes.c
svn:r9693
2007-03-01 00:41:25 +00:00
Nick Mathewson
e2b1a77c3e
r12006@catbus: nickm | 2007-02-28 16:06:24 -0500
...
On mingw, use "%I64u" to printf/scanf 64-bit integers, instead of the usual GCC "%llu". This prevents a bug when saving 64-bit int configuration values on mingw; the high-order 32 bits would get truncated. If the value was then reloaded, disaster would occur. (Fixes bug 400 and maybe also bug 397.) Backport candidate.
svn:r9691
2007-02-28 21:07:19 +00:00
Nick Mathewson
f38240435a
r12001@catbus: nickm | 2007-02-28 15:24:12 -0500
...
Try to build without warnings on mingw with verbose warnings on. First attempt.
svn:r9688
2007-02-28 20:24:27 +00:00
Nick Mathewson
dfbced7499
r11998@catbus: nickm | 2007-02-28 13:56:55 -0500
...
Correct an MSC_VER check.
svn:r9685
2007-02-28 18:57:03 +00:00
Nick Mathewson
e1176ece5a
r11992@catbus: nickm | 2007-02-28 12:46:32 -0500
...
compile fix on mingw: mingw does not define _MSC_VER.
svn:r9682
2007-02-28 17:46:36 +00:00
Nick Mathewson
dae5fc7982
r11981@catbus: nickm | 2007-02-28 11:55:27 -0500
...
Clamp declarable bandwidth at INT32_MAX, not INT_MAX.
svn:r9677
2007-02-28 16:56:07 +00:00
Nick Mathewson
d6368fd075
r11976@catbus: nickm | 2007-02-27 19:35:59 -0500
...
Add some missing (redundant but helpful in most cases) static declarations, and remove a function nobody was calling.
svn:r9672
2007-02-28 00:36:03 +00:00
Nick Mathewson
16f1008d01
Add a missing paren, and the results of an experiment.
...
svn:r9664
2007-02-27 06:00:11 +00:00
Nick Mathewson
9d714e6258
r11959@catbus: nickm | 2007-02-26 22:53:36 -0500
...
try to make aes encryption of cells about 30-40% faster where applicable. offer not available for all architectures or all versions of openssl.
svn:r9663
2007-02-27 03:53:45 +00:00
Nick Mathewson
230fbd95c0
r11956@catbus: nickm | 2007-02-26 13:33:49 -0500
...
Add a quick-and-dirty AES benchmark function to the bottom of aes.c so I can go collecting data.
svn:r9660
2007-02-26 18:33:55 +00:00
Nick Mathewson
82e2d6001a
r11954@catbus: nickm | 2007-02-26 13:01:19 -0500
...
Note some optimizations that are probably not worth it for 0.1.2.x based on preliminary profiling.
svn:r9659
2007-02-26 18:01:23 +00:00
Roger Dingledine
522a97098b
more cleanups; getting closer
...
svn:r9655
2007-02-26 05:36:02 +00:00
Roger Dingledine
50f22e858a
doc pedant
...
svn:r9634
2007-02-24 07:50:38 +00:00
Nick Mathewson
f599adf40a
r11909@catbus: nickm | 2007-02-24 02:37:40 -0500
...
Move tricky "delete the member of the smartlist currently under iteration" logic into its own happyfun macro.
svn:r9633
2007-02-24 07:37:45 +00:00
Roger Dingledine
9946bb7fbd
cosmetic, comment, and todo fixes
...
svn:r9627
2007-02-24 01:12:53 +00:00
Nick Mathewson
0fb179aa2e
r11860@catbus: nickm | 2007-02-21 00:56:15 -0500
...
Another optimization suggested by Shark output: shave off >90% of uses of logv by cutting down on calls to log_debug when log actually debugging. This is showing up in some profiles bug not others, and might be as much as 2.5%.
svn:r9612
2007-02-21 05:57:12 +00:00
Nick Mathewson
275ce1d2a4
r11852@catbus: nickm | 2007-02-20 17:25:17 -0500
...
Reverse arguments in memset() call in no-mmap version of tor_munmap_file(). Resolves bug 392. Spotted by "fookoowa"--thanks!
svn:r9604
2007-02-20 22:25:20 +00:00
Nick Mathewson
b6e6b7101b
r11850@catbus: nickm | 2007-02-20 13:34:13 -0500
...
Apply patch from coderman: have posix subthreads mask out signals. This could prevent some kinds of crashes when subthreads try to handle SIGPIPEs and die in the attempt. Backport candidate.
svn:r9603
2007-02-20 18:34:18 +00:00
Nick Mathewson
d2893398f6
r11832@catbus: nickm | 2007-02-16 15:31:59 -0500
...
Fix 35 remaining DOCDOC comments. Yowza.
svn:r9596
2007-02-16 20:39:37 +00:00
Nick Mathewson
11e5656ab7
r11826@catbus: nickm | 2007-02-16 14:58:38 -0500
...
Resolve 56 DOCDOC comments.
svn:r9594
2007-02-16 20:01:02 +00:00
Nick Mathewson
d4aaffc6e7
r11824@catbus: nickm | 2007-02-16 13:16:47 -0500
...
Move all struct-offset-manipulation macros into util.h, and use them consistently. Because there are days when "SUBTYPE_P(handle, subtype, _base)" is just easier to read and write than "(basetp*)(((handle) - STRUCT_OFFSET(subtype, _base))".
svn:r9592
2007-02-16 20:00:43 +00:00
Nick Mathewson
1c8a9d37b6
r11791@catbus: nickm | 2007-02-13 11:36:07 -0500
...
Try to fix mingw compile error reported by Li-Hui Zhou.
svn:r9578
2007-02-13 16:36:14 +00:00
Nick Mathewson
3c691b9da6
r11785@catbus: nickm | 2007-02-12 20:27:48 -0500
...
Node-picking fixes: Never warn when a down node is listed in a config option (bug 348); always warn when a node in a config option is unnamed. Also, when entrynodes is configured, then build the guard list as: (parts of EntryNodes that were guards before), (the rest of EntryNodes), (the rest of the old guards). This last point ensures that EntryNode users will get the EntryNodes they want with the minimum change to their guard list.
svn:r9574
2007-02-13 01:27:55 +00:00
Nick Mathewson
759c58151e
r11775@catbus: nickm | 2007-02-12 16:39:09 -0500
...
Update copyright dates.
svn:r9570
2007-02-12 21:39:53 +00:00
Nick Mathewson
30e7c05075
r11774@catbus: nickm | 2007-02-12 16:31:47 -0500
...
Handle errors on opening cached-routers* more uniformly and sanely: log not-found errors at level INFO, and all other errors at level WARN. Needs testing on win32.
svn:r9569
2007-02-12 21:39:44 +00:00
Nick Mathewson
0c40a080a4
r11773@catbus: nickm | 2007-02-12 15:18:48 -0500
...
Implement proposal 106: stop requiring clients to have certificates, and stop checking for nicknames in certificates. [See proposal 106 for rationale.] Also improve messages when checking TLS handshake, to re-resolve bug 382.
svn:r9568
2007-02-12 21:39:33 +00:00
Roger Dingledine
4ba57f68e4
more changes. i'm all caught up now.
...
svn:r9495
2007-02-06 02:49:07 +00:00
Nick Mathewson
f02be02356
r11639@catbus: nickm | 2007-02-05 13:33:38 -0500
...
Add documentation to src/common/*.h; improve documentation for SMARTLIST_FOREACH; remove never-used options and corresponding tests from tor_strpartition.
svn:r9483
2007-02-05 18:33:52 +00:00
Nick Mathewson
fefba95363
r11629@catbus: nickm | 2007-02-02 15:06:17 -0500
...
Removing the last DOCDOC comment hurt so much that I had to use Doxygen to identify undocumented macros and comments, and add 150 more DOCDOCs to point out where they were. Oops. Hey, kids! Fixing some of these could be your first Tor patch!
svn:r9477
2007-02-02 20:06:43 +00:00
Nick Mathewson
8507699256
r11624@catbus: nickm | 2007-02-01 13:17:35 -0500
...
Note a few questionable bits pointed out by RATS. (And no, RATS, I'm not about to stop having fixed-sized local buffers for you. I know how to use them, thankyouverymuch.)
svn:r9474
2007-02-01 18:33:02 +00:00
Nick Mathewson
5cb99857bc
r11620@catbus: nickm | 2007-02-01 13:06:27 -0500
...
Call stat() slightly less often; use fstat() when possible.
svn:r9472
2007-02-01 18:09:27 +00:00
Nick Mathewson
76f896e714
r11607@catbus: nickm | 2007-01-30 17:19:27 -0500
...
Audit non-const char arguments; make a lot more of them const.
svn:r9466
2007-01-30 22:19:41 +00:00
Nick Mathewson
ef0720f909
r9689@catbus: nickm | 2007-01-19 22:34:20 -0500
...
And remove another strcpy.
svn:r9375
2007-01-20 03:35:03 +00:00
Nick Mathewson
c57ef84fc5
r11987@Kushana: nickm | 2007-01-19 14:57:28 -0500
...
Implement SOCKS_BAD_HOSTNAME status event. Defer remaining status events. Clean up control-spec.txt a little, and fill in recommendations for events.
svn:r9374
2007-01-19 21:25:32 +00:00
Nick Mathewson
39e50cbb48
r9776@totoro: nickm | 2007-01-18 14:37:01 -0500
...
Yes, apparently saying strcpy in front of openbsd is like saying "intellectual property" in front of RMS. They both have a point, I guess, even though they extend it to contexts where it is completely irrelevant.
svn:r9370
2007-01-18 19:37:23 +00:00
Nick Mathewson
093d71762c
r11978@Kushana: nickm | 2007-01-15 18:54:25 -0500
...
Apparently, the OpenBSD linker thinks it knows C better than I do, and gets to call me names for having strcat and strcpy and sprintf in my code--whether I use them safely or not. All right, OpenBSD. You win... this round.
svn:r9360
2007-01-15 23:56:38 +00:00
Nick Mathewson
380f8983c7
r11966@Kushana: nickm | 2007-01-15 16:12:17 -0500
...
Tidy up ORCONN reason patch from Mike Perry. Changes: make some of the handling of TLS error codes less error prone. Enforce house style wrt spaces. Make it compile with --enable-gcc-warnings. Only set or_conn->tls_error in the case of an actual error. Add a changelog entry.
svn:r9355
2007-01-15 21:21:05 +00:00
Nick Mathewson
ead35ef944
r11957@Kushana: nickm | 2007-01-15 15:25:57 -0500
...
Patch from Mike Perry: Track reasons for OR connection failure; display them in control events. Needs review and revision.
svn:r9354
2007-01-15 21:13:37 +00:00
Roger Dingledine
254005fc1b
apparently i think of comments with no whitespace around them as
...
"read this if you don't understand the code and want some help."
which is not the same as "hey, you think you understand this code,
but you don't."
svn:r9307
2007-01-09 00:57:36 +00:00
Roger Dingledine
1d8a4cb989
Fix an assert error introduced in 0.1.2.5-alpha: if a single TLS
...
connection handles more than 4 gigs in either direction, we assert.
svn:r9306
2007-01-09 00:50:50 +00:00
Roger Dingledine
658c09c06f
more progress and cleanups
...
svn:r9269
2007-01-05 06:03:10 +00:00
Nick Mathewson
6fbf17e7b0
r11749@Kushana: nickm | 2006-12-29 00:51:42 -0500
...
Remove dead code; make targets of addressmap commands/configs use AllowNonRFC953Hostnames
svn:r9211
2006-12-29 05:51:50 +00:00
Nick Mathewson
361998d0f3
r11741@Kushana: nickm | 2006-12-28 22:41:29 -0500
...
Count TLS bytes accurately: previously, we counted only the number of bytes read or transmitted via tls, not the number of extra bytes used to do so. This has been a lonstanding wart. The fix "Works for me".
svn:r9207
2006-12-29 03:42:46 +00:00
Nick Mathewson
4cd302a1eb
r11722@Kushana: nickm | 2006-12-28 13:51:42 -0500
...
Add a helper function for case-insensitive search through a smartlist
svn:r9198
2006-12-28 21:29:03 +00:00
Nick Mathewson
94d7d8d88f
r11670@Kushana: nickm | 2006-12-21 12:23:55 -0500
...
Clean up logic in parse_port_range(); accept 0 on low end and 65536 on high end for people who are bad at math.
svn:r9169
2006-12-21 17:38:15 +00:00
Nick Mathewson
ca516311e3
r11668@Kushana: nickm | 2006-12-20 22:22:53 -0500
...
Fix bug found by Keith Skinner: Treat malformed max-ports in address ranges as an error, and dont ignore errors with min-ports even if a max-port is present.
svn:r9168
2006-12-21 03:22:59 +00:00
Nick Mathewson
078aab810b
r11597@Kushana: nickm | 2006-12-15 15:49:27 -0500
...
Add a rudimentary line-wrapping function for use in dumping comments in config files.
svn:r9132
2006-12-15 21:26:23 +00:00
Nick Mathewson
309c579452
r11581@Kushana: nickm | 2006-12-15 00:12:24 -0500
...
Make PIDFile work on windows. Reported by Arrakis.
svn:r9116
2006-12-15 05:12:52 +00:00
Nick Mathewson
43e06eba8b
r11566@Kushana: nickm | 2006-12-13 17:46:24 -0500
...
Try to fix an assert failure in new write limiting code: make buffers.c aware of previous "forced" write sizes from tortls.
svn:r9105
2006-12-13 22:46:42 +00:00
Roger Dingledine
8cf8b8087a
when we decide not to mmap, because the file is empty or isn't
...
there at all, don't yell so loud.
svn:r9065
2006-12-11 04:21:10 +00:00
Nick Mathewson
e8dc71ade4
r11444@Kushana: nickm | 2006-12-07 09:38:52 -0500
...
Fix a couple of obvious bugs in tor_mmap_file on Windows: first, fix a boolean error when checking the return value of CreateFileMapping. Second, CreateFileMapping is documented to return NULL on failure.
svn:r9035
2006-12-07 14:39:42 +00:00
Roger Dingledine
936f075f11
help ftello find its prototype
...
svn:r9016
2006-12-02 23:08:55 +00:00
Roger Dingledine
c5b90daf86
cleanups, bump to 0.1.2.4-alpha
...
svn:r9015
2006-12-02 22:47:46 +00:00
Nick Mathewson
facc49cf6f
r9371@totoro: nickm | 2006-11-21 10:59:28 -0500
...
Fix a trivial comment.
svn:r8979
2006-11-21 23:50:21 +00:00
Nick Mathewson
d6cc235eba
r9315@totoro: nickm | 2006-11-13 22:40:59 -0500
...
Fix a build warning on angela-sid
svn:r8949
2006-11-14 03:41:05 +00:00
Nick Mathewson
9243e54177
r9313@totoro: nickm | 2006-11-13 20:07:41 -0500
...
Try to compile with fewer warnings on irix64's MIPSpro compiler /
environment, which apparently believes that:
- off_t can be bigger than size_t.
- only mean kids assign things they do not subsequently inspect.
I don't try to fix the "error" that makes it say:
cc-3970 cc: WARNING File = main.c, Line = 1277
conversion from pointer to same-sized integral type (potential portability
problem)
uintptr_t sig = (uintptr_t)arg;
Because really, what can you do about a compiler that claims to be c99
but doesn't understand that void* x = NULL; uintptr_t y = (uintptr_t) x;
is safe?
svn:r8948
2006-11-14 01:07:52 +00:00
Roger Dingledine
3d6b97399f
Avoid assert failure when our cached-routers file is empty on startup.
...
(reported by revstray)
svn:r8928
2006-11-12 07:09:22 +00:00
Nick Mathewson
50771a6b48
r9380@Kushana: nickm | 2006-10-24 21:25:07 -0400
...
Add string.h include to compat.h so that strlcpy() and strlcat() will always be defined after including compat.h. This should resolve warnings on centos.
svn:r8824
2006-10-25 01:25:17 +00:00
Roger Dingledine
0459db2c0d
checkpoint some changes as i read diffs
...
svn:r8780
2006-10-20 19:11:12 +00:00
Nick Mathewson
c8c36dd227
r9304@dhcp-18-188-67-85: nickm | 2006-10-20 12:22:46 -0400
...
Change HT_INIT from a special-case to a macro-calling-a-function like the rest of ht.h. This might prevent errors if somebody did, I dunno, "HT_INIT(tp, hashtable++)". Based on a patch from Watson Ladd.
svn:r8776
2006-10-20 16:22:53 +00:00
Roger Dingledine
dcd33ef599
i saw somebody on #tor paste a string where these were
...
null. better safe than sorry.
svn:r8767
2006-10-20 00:12:02 +00:00
Nick Mathewson
7551c44a53
r9274@Kushana: nickm | 2006-10-19 16:16:58 -0400
...
Add unit tests for tor_mmap_file(); make tor_mmap_t.size always be the size of the file (not the size of the mapping); add an extra argument to read_file_to_str() so it can return the size of the result string.
svn:r8762
2006-10-19 23:05:02 +00:00
Nick Mathewson
17abfa6a6a
r8971@totoro: nickm | 2006-10-09 10:16:23 -0400
...
Move definition of ssize_t to torint.h
svn:r8670
2006-10-09 15:47:08 +00:00
Nick Mathewson
e618c15aff
r8967@totoro: nickm | 2006-10-08 23:38:50 -0400
...
Fix some test and warn failures in last commit
svn:r8665
2006-10-09 03:39:06 +00:00
Nick Mathewson
c6f2d725d0
r8957@totoro: nickm | 2006-10-08 22:35:17 -0400
...
The otherwise regrettable MIPSpro C compiler warns about values set but never used, and about mixing enums and ints; these are good warnings, and so should be fixed. This removes some dead code and some potential bugs. Thanks to pnx.
svn:r8664
2006-10-09 02:35:51 +00:00
Andrew Lewman
563be121c2
Add missing return so this builds on mingw.
...
svn:r8649
2006-10-08 18:24:31 +00:00
Nick Mathewson
f07f7a7a12
r8923@totoro: nickm | 2006-10-07 11:44:33 -0400
...
More doxygen comments
svn:r8637
2006-10-07 16:25:28 +00:00
Roger Dingledine
f2bd0e2f16
more minor cleanups
...
svn:r8630
2006-10-07 06:28:50 +00:00
Roger Dingledine
881d23847a
fix something that looked scary to me. i believe this won't
...
change any behavior currently, but it will avoiding calling
noop code that might change for the worse some time.
nick, please confirm.
svn:r8623
2006-10-07 00:52:23 +00:00
Roger Dingledine
06e5b2283c
minor cleanups
...
svn:r8622
2006-10-07 00:50:39 +00:00
Nick Mathewson
29fa9eb216
r8860@totoro: nickm | 2006-10-03 14:48:33 -0400
...
Use ANSI-style definition syntax in strlcat.c and strlcpy.c so that gcc stops barfing with -Wold-style-definition
svn:r8591
2006-10-03 19:00:07 +00:00
Nick Mathewson
4c56ac93ca
r8851@totoro: nickm | 2006-10-02 18:13:27 -0400
...
Remove/clarify some XXXs for no longer being accurate; for begin things we do not indend to fix; for already being parts of big todo issues (like "/* XXX ipv6 */"); etc. Also fix some spaces.
svn:r8580
2006-10-02 22:13:42 +00:00
Nick Mathewson
bff83b666c
r8846@totoro: nickm | 2006-10-02 16:59:57 -0400
...
Move is_local_IP to config.c; have it check for same-/24; make it used only for reachability (not for banwidth, because that is probably not what we want). Fixes an XXX.
svn:r8578
2006-10-02 21:00:35 +00:00
Nick Mathewson
d75edc35cc
r8845@totoro: nickm | 2006-10-02 16:34:58 -0400
...
Fix an XXXX: make path_is_relative work on windows even though we never use it there.
svn:r8577
2006-10-02 21:00:24 +00:00
Nick Mathewson
36adc7cdd9
r8844@totoro: nickm | 2006-10-02 16:32:44 -0400
...
Resolve an XXXX: make sure that we are actually on 2s-complement hardware.
svn:r8576
2006-10-02 21:00:20 +00:00
Nick Mathewson
219ad6395c
r8825@totoro: nickm | 2006-10-01 17:41:27 -0400
...
Add function to return a random uint64_t.
svn:r8570
2006-10-01 21:59:05 +00:00
Nick Mathewson
c2d304366b
r9032@Kushana: nickm | 2006-09-29 18:51:42 -0400
...
Now, all log messages should be distinct.
svn:r8545
2006-09-29 22:51:47 +00:00
Nick Mathewson
7d366f61cb
r9025@Kushana: nickm | 2006-09-29 18:33:13 -0400
...
Differentiate more duplicated log entries
svn:r8542
2006-09-29 22:33:40 +00:00
Nick Mathewson
8308a37908
r9023@Kushana: nickm | 2006-09-29 17:27:24 -0400
...
Make distinct all non-bug messages at notice or higher that appear 3 or more times.
svn:r8541
2006-09-29 22:33:34 +00:00
Nick Mathewson
87648bdcf8
r9008@Kushana: nickm | 2006-09-29 13:50:10 -0400
...
Doxygen comments for code in common. Also simplify a few code paths to be more clear/speedy/correct.
svn:r8536
2006-09-29 18:13:37 +00:00
Nick Mathewson
05604c60d4
r9006@Kushana: nickm | 2006-09-29 10:48:23 -0400
...
Omit function names from NOTICE, WARN and ERR messages unless they are in LD_BUG.
svn:r8534
2006-09-29 18:13:29 +00:00
Nick Mathewson
d3a06684bc
r8974@Kushana: nickm | 2006-09-28 17:05:59 -0400
...
Improvement to last entry guards patch: track when we last attempted to connect to a node in our state file along with how long it has been unreachable. Also clarify behavior of parse_iso_time() when it gets extra characters.
svn:r8520
2006-09-28 23:57:49 +00:00
Nick Mathewson
95132f836a
r8750@totoro: nickm | 2006-09-27 20:52:01 -0400
...
Fix some warnings on mingw; hopefully this should let us build on mingw without warnings.
svn:r8509
2006-09-28 00:53:02 +00:00
Nick Mathewson
0f8491a254
Backport candidate: remove dangerous free(0) on hashtable init
...
svn:r8499
2006-09-25 16:06:09 +00:00
Nick Mathewson
78c068397a
add missing paren in dmalloc tor_free
...
svn:r8498
2006-09-25 15:44:40 +00:00
Nick Mathewson
7c21dabef1
r8878@Kushana: nickm | 2006-09-21 17:15:47 -0400
...
Trivial whitespace cleanups.
svn:r8443
2006-09-21 21:48:55 +00:00
Nick Mathewson
b2cc52fa02
Speed up eat_whitespace by a lot.
...
svn:r8434
2006-09-19 23:55:35 +00:00
Nick Mathewson
6b716fdfb9
NEEDS REVIEW. Act on previous comment, and handle named servers differently: now, we allow multiple servers with the same name in the routerlist even if that name is reserved, but we check whether names are reserved when we try to look up routers by nickname. This is a minor security fix. This makes router_add_to_routerlist O(1). This is a backport candidate.
...
svn:r8433
2006-09-19 23:48:14 +00:00
Nick Mathewson
2d4950c837
Malloc and friends are critical-path: Thus, add an it-wont-happen branch prediction for NULL returns, and skip the malloc(0) check on platforms where malloc(0) returns a pointer.
...
svn:r8431
2006-09-19 22:36:48 +00:00
Nick Mathewson
7b0ec744bc
Switch routerlist.c to using memcmp on digests rather than crypto_pk_cmp_keys(); speed up find_whitespace a lot (8x for me) by using a switch statement. This should speed parsing a lot of routers at once by a lot.
...
svn:r8430
2006-09-19 22:20:09 +00:00
Nick Mathewson
93beeac01d
Merge in some bsockets calls, all wrapped inside #if defined(USE_BSOCKETS)
...
svn:r8427
2006-09-19 20:41:31 +00:00
Nick Mathewson
e58b9c1151
r8819@Kushana: nickm | 2006-09-15 00:27:45 -0400
...
Implement a smartlist_uniq() that will with luck not end the world.
svn:r8396
2006-09-15 04:27:58 +00:00
Peter Palfrader
28cac25d7e
r9749@danube: weasel | 2006-09-14 06:53:12 +0200
...
Do not graciously increase the size to be mmaped if the current size already is
at a page_size boundary. This is important since if a file has a size of zero
and we mmap() it with length > 0, then accessing the mmaped memory area causes
a bus error. However, if we pass a length of 0 to mmap() it will return with -1
and things work from there.
svn:r8387
2006-09-14 04:53:42 +00:00
Roger Dingledine
9af3175687
parameterize the loudness of get_interface_address()
...
svn:r8358
2006-09-09 19:20:27 +00:00
Roger Dingledine
5f6351ceb3
fix typo, add log message
...
svn:r8357
2006-09-09 19:16:07 +00:00
Nick Mathewson
365ccf0742
r8725@Kushana: nickm | 2006-09-06 04:39:29 -0400
...
spawn_func fixes: have cpuworker_main and dnsworker_main confirm to the right interfaces [casting func to void* is icky]. Also, make pthread_create() build without warnings.
svn:r8327
2006-09-06 08:42:20 +00:00
Nick Mathewson
000b7b287c
r8724@Kushana: nickm | 2006-09-06 04:32:28 -0400
...
Fix spaces; restore support for mapping files over 4GB on win32 (?)
svn:r8326
2006-09-06 08:42:16 +00:00
Mike Chiussi
6ec9c1092a
- made configure check if we are building for win32
...
- made configure link to required system dll's if building for win32
- added diffs for libevent 1.1b
- forced user to turn off eventdns if win32 is set
- cleaned up tor_mmap_file()_win32 (not sure if it's stable)
- cleaned up some warnings and typos
svn:r8322
2006-09-06 01:49:55 +00:00
Nick Mathewson
c4ac4bcba3
r8696@Kushana: nickm | 2006-08-31 14:43:44 -0400
...
Try to appease some warnings with newer gccs that believe that ignoring a return value is okay, but casting a return value and then ignoring it is a sign of madness.
svn:r8312
2006-08-31 18:47:54 +00:00
Nick Mathewson
f170e5798f
r8692@Kushana: nickm | 2006-08-31 13:38:07 -0400
...
Fix bug 327 (part 2): Cast char to unsigned char before passing to toupper/tolower. (Follow the same idiom as with isupper and friends, in case we run into the same problem on SGI or whereever it was.)
svn:r8310
2006-08-31 17:39:51 +00:00
Nick Mathewson
bc0c39f85d
r8691@Kushana: nickm | 2006-08-31 13:30:46 -0400
...
Fix bug 327 (part 1): Use correct macro to test for GCC 3 or later.
svn:r8309
2006-08-31 17:39:47 +00:00
Nick Mathewson
fee33d2ff1
r8682@Kushana: nickm | 2006-08-29 17:58:59 -0400
...
Fix compilation on GCC2 by disabling fun attributes unless __GNUC_MAJOR__ >= 3.
svn:r8303
2006-08-29 21:59:20 +00:00
Nick Mathewson
6fcdcc7fc7
r8626@Kushana: nickm | 2006-08-27 23:45:46 -0400
...
Aw, crap. Non-gcc bug. We need regular windows builds.
svn:r8259
2006-08-28 03:46:21 +00:00
Roger Dingledine
9f5856c03d
stop three memory leaks. nick, fix these if i'm wrong.
...
svn:r8235
2006-08-27 02:07:54 +00:00
Nick Mathewson
b050ecf86c
r7404@Kushana: nickm | 2006-08-16 09:32:19 -0400
...
Pass hints to getaddrinfo; fix bug 280 (?)
svn:r7069
2006-08-16 18:47:19 +00:00
Roger Dingledine
4b94dabb53
note a compile warning that we should investigate one day.
...
svn:r7052
2006-08-14 09:44:54 +00:00
Nick Mathewson
b68ffcc193
r7341@Kushana: nickm | 2006-08-11 00:51:05 -0700
...
Amazing how much difference adding a ! to all your asserts can make.
svn:r7029
2006-08-11 07:51:34 +00:00
Nick Mathewson
33fc829273
r7337@Kushana: nickm | 2006-08-11 00:42:04 -0700
...
Only use __builtin_offsetof with gcc 4 or later
svn:r7028
2006-08-11 07:42:11 +00:00
Nick Mathewson
42a5d7a4ba
r7335@Kushana: nickm | 2006-08-11 00:13:03 -0700
...
fix wide lines
svn:r7025
2006-08-11 07:17:16 +00:00
Nick Mathewson
ffab3b48a8
r7326@Kushana: nickm | 2006-08-10 23:50:49 -0700
...
And another GCC change: predict that tor_frees() are usually real frees, and tor_asserts() usually wont happen. Other test should wait till -fprofile-arcs
svn:r7022
2006-08-11 07:09:35 +00:00
Nick Mathewson
4eddbcf262
r7325@Kushana: nickm | 2006-08-10 23:37:31 -0700
...
Use gcc offsetof where available.
svn:r7021
2006-08-11 07:09:28 +00:00
Nick Mathewson
09a895e222
r7324@Kushana: nickm | 2006-08-10 23:23:15 -0700
...
Add more warnings to the list of those we tolerate. Start using GCC attributes more, for better error checking and better code generation.
svn:r7020
2006-08-11 07:09:17 +00:00
Nick Mathewson
1b7ad5aed3
r7030@Kushana: nickm | 2006-08-04 14:46:52 -0700
...
Close an fd leak on failed mmap()
svn:r6988
2006-08-05 17:53:32 +00:00
Nick Mathewson
7c596c166b
r7029@Kushana: nickm | 2006-08-04 14:08:41 -0700
...
Remove now-spurious size and data arguments from tor_mmap_file
svn:r6987
2006-08-05 17:53:21 +00:00
Nick Mathewson
dbac3fb481
r7028@Kushana: nickm | 2006-08-04 13:10:16 -0700
...
Make data and size fields visible in tor_mmap_t; hide win magic differently.
svn:r6986
2006-08-05 17:53:08 +00:00
Nick Mathewson
db72fb9cdc
r7025@Kushana: nickm | 2006-08-04 12:03:22 -0700
...
Finish (I hope) windows mmap impl.
svn:r6981
2006-08-04 19:03:40 +00:00
Nick Mathewson
bf72878cad
r7012@Kushana: nickm | 2006-08-03 19:21:25 -0700
...
Add an "mmap handle" type to encapsulate bookkeeping elements of mmap issues; add prelim win32 impl
svn:r6980
2006-08-04 18:32:43 +00:00
Roger Dingledine
e64825126b
turn future seg faults into asserts
...
svn:r6970
2006-08-03 04:23:45 +00:00
Nick Mathewson
80282d8f55
r6993@Kushana: nickm | 2006-07-31 16:19:21 -0400
...
Interesting how much a ! can change the behavior of an assert.
svn:r6962
2006-07-31 20:19:58 +00:00
Nick Mathewson
ea0f5ec8ad
r6980@Kushana: nickm | 2006-07-31 13:18:22 -0400
...
Add a utility function to verify that a string has been through strlower.
svn:r6959
2006-07-31 18:01:37 +00:00
Nick Mathewson
d934607069
r6979@Kushana: nickm | 2006-07-31 13:16:58 -0400
...
Add assert_ok functions for strmap and digestmap; use them in unit test code.
svn:r6958
2006-07-31 18:01:27 +00:00
Nick Mathewson
3843b1b3d0
r6978@Kushana: nickm | 2006-07-31 13:16:14 -0400
...
Add isupper and islower wrappers to compat.h
svn:r6957
2006-07-31 18:01:22 +00:00
Nick Mathewson
2fe537c57a
r6958@Kushana: nickm | 2006-07-29 18:54:15 -0400
...
Looks like we might need a priority queue.
svn:r6953
2006-07-31 17:59:37 +00:00
Nick Mathewson
8786b4b88e
Fix a bug in HT_REMOVE.
...
svn:r6925
2006-07-27 18:35:25 +00:00
Nick Mathewson
45c3a4365f
Get better numbers out of HT_REP_OK
...
svn:r6924
2006-07-27 17:37:37 +00:00
Peter Palfrader
521c006fd5
Remove .cvsignore files from trunk
...
svn:r6891
2006-07-25 01:00:48 +00:00
Nick Mathewson
6d2eb77555
Whitespace fix
...
svn:r6816
2006-07-23 07:19:49 +00:00
Nick Mathewson
35960e1162
Add a mem_is_zero function (I think we will need this) and a STRUCT_OFFSET macro (we already need this).
...
svn:r6810
2006-07-23 05:32:35 +00:00
Nick Mathewson
08a4114abf
Another MSVC6 fix. Grnk.
...
svn:r6802
2006-07-21 14:53:23 +00:00
Nick Mathewson
77c28d112b
Hm. We probably should define INT64_MAX if we really want it. (Especially since we only want it on one platform, where, coincidentally, it is not defined.)
...
svn:r6784
2006-07-18 02:01:32 +00:00
Nick Mathewson
e572d5990c
MSVC6 is apparently terrified of unnatural cross-breeding between uint64_t and double, and needs more persuasion than usual to cast one to the other. Issue identified by Frediano Ziglio; patch revised for minimal impact on non-MSVC6 compilers.
...
svn:r6768
2006-07-17 00:39:05 +00:00
Roger Dingledine
3d79eb52ab
stick to nick's nul/null convention
...
svn:r6763
2006-07-15 19:21:30 +00:00
Nick Mathewson
28a7c8a64c
Make compilation work on old MSVCs without GetVertsionEx magic. Patch from Frediano Ziglio.
...
svn:r6749
2006-07-09 22:29:12 +00:00
Roger Dingledine
fad85f173a
when an exit node gets a malformed begin cell, don't complain to
...
the node operator, since he can't do anything about it.
svn:r6733
2006-07-06 02:44:07 +00:00
Roger Dingledine
12cc290a7d
ok, i'm not allowed to say that there. oh well.
...
svn:r6720
2006-07-04 16:11:35 +00:00
Roger Dingledine
579849f600
fix a misleading function comment
...
svn:r6717
2006-07-04 15:52:22 +00:00
Roger Dingledine
5dc1e6f788
if we're the server-side of the tls and there are problems,
...
don't yell as loudly.
svn:r6716
2006-07-04 15:51:59 +00:00
Roger Dingledine
35e95d7783
minor fixes
...
svn:r6710
2006-07-04 03:25:07 +00:00
Nick Mathewson
05eff35ac6
Harmless: Z_OK is not an acceptable answer to Z_FINISH.
...
svn:r6701
2006-06-29 11:17:36 +00:00
Nick Mathewson
1cd04abf1a
Actually enable mmap. That should improve matters.
...
svn:r6694
2006-06-28 08:54:32 +00:00
Nick Mathewson
06e09cdd47
Apparently, zlib sometimes reports Z_BUF_ERROR on input exhaustion as well as on running out of output space. This could well fix the assert bug reported by weasel and arma.
...
svn:r6682
2006-06-24 02:06:52 +00:00
Nick Mathewson
06ffee3b67
Ooh, that could have been bad. Sort digests as digests, not strings.
...
svn:r6679
2006-06-22 07:29:14 +00:00
Nick Mathewson
e2697a62ac
When requesting or serving resources via fingerprint/digest, request and respond in-order, removing duplicates.
...
svn:r6673
2006-06-21 04:57:12 +00:00
Nick Mathewson
73ada60d64
remove non-germane comment
...
svn:r6640
2006-06-18 07:37:21 +00:00
Nick Mathewson
f83a628a76
perhaps the reason I rail against cut-and-paste programming so vehemently is that I am so bad at it.
...
svn:r6638
2006-06-18 07:32:31 +00:00
Nick Mathewson
630e9cd510
Add some incremental encryption wrappers to torgzip code
...
svn:r6636
2006-06-18 07:24:29 +00:00
Nick Mathewson
af8096815e
Add a memdup function to util
...
svn:r6635
2006-06-18 07:22:36 +00:00
Nick Mathewson
78428dccdb
Add smartlist_reverse and smartlist_pop_last.
...
svn:r6634
2006-06-18 07:21:35 +00:00
Nick Mathewson
1f585987c4
Another escape() fix, for picky sprintfs.
...
svn:r6579
2006-06-09 17:07:22 +00:00
Nick Mathewson
2936da4c28
Override our notion of printability for esc_for_log. 127 and up are never printable. Take that, locales.
...
svn:r6578
2006-06-09 15:57:58 +00:00
Roger Dingledine
85d408a573
Bandaid for a seg fault i just got in 0.1.1.20.
...
More generally, i reopened bug 222. Whee.
svn:r6571
2006-06-09 06:35:45 +00:00
Roger Dingledine
8cf45df230
and now the exciting part: there is now no such thing as doing
...
a client-only tls, that is, one with no certs.
svn:r6558
2006-06-07 06:21:11 +00:00
Roger Dingledine
0bfef523df
simplify the tortls api: we only support being a "server", that
...
is, even tor clients do the same sort of handshake.
this has been true for years, so it's best to get rid of the
stale code.
svn:r6557
2006-06-07 06:10:54 +00:00
Roger Dingledine
7512be0b65
looks like we missed a piece of the 0.1.1.9 paranoia code.
...
hopefully this change is a no-op.
svn:r6556
2006-06-07 02:57:23 +00:00
Roger Dingledine
45065f1466
simplify code now that libevent considers all sockets pollable.
...
what we really mean now is ">= 0", which is clearer to test for.
svn:r6543
2006-06-05 09:08:10 +00:00
Roger Dingledine
266afcd7d5
bandaid for bug 299. this is still a bug, since we don't
...
initialize for hardware acceleration in certain configurations;
but not critical until that is supported.
svn:r6536
2006-06-05 04:29:03 +00:00
Nick Mathewson
853e2d99b6
Add a new warning to our "warn a lot" list: unused parameters. This means we have to explicitly "use" unuseds, but it can catch bugs. (It caught two coding mistakes so far.)
...
svn:r6532
2006-06-04 22:42:13 +00:00
Nick Mathewson
c660a0f6a2
More DNS fixes. Send meaningful TTLs back to the client when
...
possible. Cache at the server side independently from the TTL, to
prevent attackers from probing the server to see who has been asking
for what hostnames. (Hi, Dan Kaminski!)
Also, clean some whitespace.
svn:r6526
2006-06-03 21:41:14 +00:00
Nick Mathewson
86da3e0a0a
Patch based on post by Mike C to or-dev; special-case based on use of MSVC, rather than on MS_WINDOWS, so that mingw builds.
...
svn:r6523
2006-06-03 18:52:31 +00:00
Nick Mathewson
64d487a2d6
Add a basic mmap function, with a "fake-it" wrapper to do read_file_from_str instead. Based on code from Michael Mohr.
...
svn:r6510
2006-05-28 16:54:39 +00:00
Roger Dingledine
7f611f4732
if we're a server and some peer has a broken tls certificate, don't
...
shout about it unless we want to hear about protocol violations.
svn:r6507
2006-05-26 16:32:16 +00:00
Roger Dingledine
731f4086c0
resolve an unused variable
...
svn:r6503
2006-05-26 13:51:45 +00:00
Roger Dingledine
a4cdb834b9
Stop being picky about what the arguments to mapaddress look like.
...
we were refusing names that had $ in them, which people who specify
$key.exit will be sad about. There are likely other examples.
If people can think of reasons why we should be picky, let me know.
svn:r6496
2006-05-25 20:06:09 +00:00
Roger Dingledine
36712a443b
Stop initializing the hardware accelerator engines simply because
...
we overloaded the meaning of the argument to crypto_global_init().
svn:r6490
2006-05-24 00:37:38 +00:00
Roger Dingledine
67a885ecac
Claim a commonname of Tor, rather than TOR, in tls handshakes.
...
Maybe this will help us win the war of names.
svn:r6489
2006-05-24 00:21:55 +00:00
Nick Mathewson
89a8411ace
Throw out this UNALIGNED_INT_ACCESS_OK nonsense. Even where it works, it is often way way slower than doing the right thing. Backport candidate.
...
svn:r6473
2006-05-23 08:23:03 +00:00
Peter Palfrader
f7ba9d77e4
All these headers we get via torint.h
...
svn:r6452
2006-05-10 10:24:17 +00:00
Nick Mathewson
8a13a7cfe8
mainline branch. Remove some more dead XXXs.
...
svn:r6401
2006-04-18 03:58:42 +00:00
Nick Mathewson
1fbc74661f
Remove DER64 functions in trunk: they will never be used again unless the directory authorities switch back to 0.0.9tooearly.
...
svn:r6376
2006-04-10 21:23:00 +00:00
Roger Dingledine
7e3a98b489
"" is not a plausible address for addressmaps.
...
svn:r6299
2006-04-03 00:26:51 +00:00
Peter Palfrader
1fa7b3cef7
Avoid warnings about machine/limits.h on Debian GNU/kFreeBSD
...
svn:r6271
2006-03-29 05:14:12 +00:00
Roger Dingledine
0543900fbf
clean up the traces from tracking the 0.1.1.9-alpha stack-smashing bug.
...
svn:r6240
2006-03-26 06:47:51 +00:00
Roger Dingledine
7871ad9116
failing in a support function is a warn, not an err.
...
svn:r6239
2006-03-26 06:47:08 +00:00
Nick Mathewson
6d9632ba23
Check return value from GetVersionEx (even though the MSDN example doesnt) and zero out the LPOSVERSIONINFOEX struct before getting the version. This may fix the "johnboy" [major=-858993460,minor=-858993460] problem.
...
svn:r6233
2006-03-24 05:26:33 +00:00
Nick Mathewson
15e5cf6088
Fix memory leak when uncompressing concatenated zlib streams. Unit tests and tor client work; looks ok.
...
svn:r6211
2006-03-21 20:31:27 +00:00
Roger Dingledine
6449e2f6d6
ok, commenting that out broke things real bad.
...
leave it, and accept the memory leak for now.
svn:r6201
2006-03-20 02:13:35 +00:00
Roger Dingledine
54ced294df
Resolve a memory leak on clients. This disables some
...
functionality that we might still want. Nick?
svn:r6200
2006-03-20 00:52:22 +00:00
Nick Mathewson
0f0e14c6e3
normalize whitespace.
...
svn:r6173
2006-03-17 04:43:37 +00:00
Roger Dingledine
0e62befab8
add tor_strisprint() back in, this time with comments.
...
svn:r6170
2006-03-15 23:35:55 +00:00
Roger Dingledine
4cd4353847
and remove now-extraneous function
...
svn:r6168
2006-03-15 19:17:46 +00:00
Nick Mathewson
0bc19dddf5
Use INLINE (which we define) instead of __inline (which is nonstandard) in ht.h. Resolves bug 270; maybe sun C will work now.
...
svn:r6153
2006-03-13 15:09:49 +00:00
Nick Mathewson
daea6b21a5
Fix bug in close_logs(): when we close and delete logs, remove them all from the global "logfiles" list. This should fix bug 222.
...
svn:r6145
2006-03-13 00:54:21 +00:00
Nick Mathewson
0c132ee2a1
Instead of listing a set of compilers that prefers __func__ to __FUNCTION__, use autoconf. Also, prefer __func__ in our own code: __func__ is a C99 standard, whereas __FUNCTION__ is not. [Fixes bug 254.]
...
svn:r6144
2006-03-13 00:25:36 +00:00
Nick Mathewson
bd8ffccae7
More cleanups noticed by weasel; also, remove macros that nobody uses.
...
svn:r6143
2006-03-12 23:31:16 +00:00
Nick Mathewson
4d3e709c4b
Use escaped() for remaining cases.
...
svn:r6117
2006-03-11 02:21:30 +00:00
Roger Dingledine
a385b0087f
fix infinite loop
...
svn:r6090
2006-03-06 20:01:46 +00:00
Nick Mathewson
5777ee0e1a
Add some functions to escape values from the network before sending them to the log. Use them everywhere except for routerinfo->plaftorm, routerinfo->contact_info, and rend*.c. (need sleep now)
...
svn:r6087
2006-03-05 09:50:26 +00:00
Nick Mathewson
6a4e304d9e
Allow private:* in routerdescs; not generated yet (because older Tors do not understand it); needs testing.
...
svn:r6086
2006-03-05 05:27:59 +00:00
Peter Palfrader
42f14e8e10
Add function names to log_* on non-gcc
...
svn:r6039
2006-02-18 07:18:14 +00:00
Peter Palfrader
4f5e607389
Finish log function renaming for non-GNUC systems
...
svn:r6034
2006-02-18 02:11:48 +00:00
Roger Dingledine
6ce36ead42
Start the process of converting warn to log_warn and so on.
...
This is needed because Windows already has an err() that we
can't clobber. And we need to be able to make the log functions
a macro so we can print the function's name in the log entry.
svn:r6000
2006-02-13 08:01:59 +00:00
Nick Mathewson
2cc66125b8
try to fix bug with spurious "everything is broken" warning
...
svn:r5994
2006-02-13 00:26:43 +00:00
Nick Mathewson
dba155ecff
Generate 18.0.0.0/8 address policy format in descs when we can; warn when the mask is not reducible to a bit-prefix.
...
svn:r5991
2006-02-12 23:58:22 +00:00
Roger Dingledine
b99f903e34
and don't warn when it happens here either, unless the user
...
wants to hear it.
svn:r5990
2006-02-12 23:44:02 +00:00
Roger Dingledine
53c54b75c9
Correct a function comment. Nick: is this right?
...
svn:r5989
2006-02-12 23:34:03 +00:00
Roger Dingledine
5f051574d5
Happy new year!
...
svn:r5949
2006-02-09 05:46:49 +00:00
Roger Dingledine
28f3765b5a
and maybe some function documentation will help too
...
svn:r5935
2006-02-09 02:59:37 +00:00
Roger Dingledine
6f579deff4
check for EADDRINUSE in a cross-platform way (unless i'm wrong)
...
svn:r5899
2006-02-03 12:25:46 +00:00
Roger Dingledine
418dc7b16e
I believe this resolves bug 234, the mysterious crash on 0.1.1.9
...
and later servers. I'm not sure yet, but better to have it in CVS
while we speculate that it's the fix.
svn:r5895
2006-02-02 10:10:07 +00:00
Peter Palfrader
dbf2e10460
Apply Matt Ghali's --with-syslog-facility patch
...
svn:r5883
2006-02-01 02:15:44 +00:00
Roger Dingledine
f1864dfff3
On systems that don't have getrlimit (like windows), we were artificially
...
constraining ourselves to a max of 1024 connections. Now if there is no
getrlimit, just assume that we can handle the whole 15000 connections.
The better answer is to find a getrlimit equivalent on Windows, but hey,
one step at a time.
svn:r5854
2006-01-23 23:39:13 +00:00
Nick Mathewson
45757dafb7
Split PARANOIA_B into B1 and B2.
...
svn:r5849
2006-01-22 18:22:04 +00:00
Nick Mathewson
241310bbac
Split 0119_PARANOIA into 0119_PARANOIA_[ABC]. A is "this is suspicious, and we have not tried running without this yet". B is "this is suspicious, but the last time we tested, it was okay." C is "How could this possibly be the cause?"
...
svn:r5840
2006-01-17 23:08:38 +00:00
Nick Mathewson
099b9ce2f9
Fix bug 230: add a rollback function to reverse all changes since the last mark_logs_temp(), and move log initialization into the two-phase part of option setting.
...
svn:r5803
2006-01-11 19:40:14 +00:00
Nick Mathewson
55ac4f032c
Add a (diabled by default) option in crypto.h to disable most of the interesting crypto-related changes made on 0.1.1.9. This will help hunt bug 234.
...
svn:r5777
2006-01-10 21:12:06 +00:00
Nick Mathewson
7fc62029d4
Refuse to use RunAsDaemon when torrc is a relative path. Fixes bug 229.
...
svn:r5767
2006-01-10 20:00:20 +00:00
Roger Dingledine
a45b131590
check for integer overflows in more places, when adding elements to
...
smartlists. this could possibly prevent a buffer overflow on malicious
huge inputs. i don't see any, but i haven't looked carefully.
svn:r5695
2006-01-02 04:40:18 +00:00
Nick Mathewson
0da2069643
Clearner fix for timegm assert problem.
...
svn:r5690
2006-01-01 23:13:19 +00:00
Nick Mathewson
04db9de847
Fix assertion-trigger bug found by sjmurdoch
...
svn:r5689
2006-01-01 23:09:19 +00:00
Roger Dingledine
6005e110b9
whitespace fixes
...
svn:r5682
2005-12-31 06:26:10 +00:00
Nick Mathewson
9482b1b9d5
Choose directory servers from routerstatus list, not from routerinfo list. This way, as soon was we have a networkstatus, we can ask a cache to give us routers, rather than needing to ask the directories.
...
svn:r5586
2005-12-14 22:00:58 +00:00
Nick Mathewson
7e6a41af93
Make hashtables use a little less space on 64-bit architectures.
...
svn:r5585
2005-12-14 21:10:06 +00:00
Nick Mathewson
1af630d32c
Bite the bullet and limit all our source lines to 80 characters, the way IBM intended.
...
svn:r5582
2005-12-14 20:40:40 +00:00
Roger Dingledine
9b0a40ec78
crank the max line limit down to 150 chars.
...
svn:r5550
2005-12-10 08:27:01 +00:00
Nick Mathewson
a1bcdb2f76
util.c:1308: error: conflicting types for "is_internal_IP"
...
svn:r5545
2005-12-09 05:15:36 +00:00
Roger Dingledine
c0a6e2232c
let is_internal_IP() know whether you're asking about an IP
...
address for connecting or an IP address for binding, because
in the latter, 0.0.0.0 is a special case.
svn:r5543
2005-12-09 02:45:33 +00:00
Nick Mathewson
e9b66ec906
Document CREATE_FAST better in the code. Move our key expansion algorithm into a separate function in crypto.c
...
svn:r5530
2005-12-08 17:38:32 +00:00
Nick Mathewson
cf5facf3e1
Do not free a constant string.
...
svn:r5527
2005-12-08 04:01:37 +00:00
Roger Dingledine
130d0e4d1d
fix typo noticed by scrimbly
...
svn:r5522
2005-12-07 19:49:18 +00:00
Roger Dingledine
485b2cb4dc
get rid of nick's crazy voodoo dh checking.
...
svn:r5518
2005-12-06 23:09:44 +00:00
Peter Palfrader
1bf56b452e
Remove superfluous strdup
...
svn:r5503
2005-12-05 01:30:11 +00:00
Peter Palfrader
7a70a142f4
Also print usernames, not just numeric UIDs when we tell the user that his data directory has the wrong owner
...
svn:r5502
2005-12-05 01:28:10 +00:00
Roger Dingledine
8b0f1f029c
give a hint when people are running tor as the wrong user, rather than
...
telling them to start chowning random directories.
svn:r5500
2005-12-05 01:07:58 +00:00
Nick Mathewson
ce3cdecb9d
Make more arguments const; do not call hash tables trees.
...
svn:r5487
2005-12-03 02:00:51 +00:00
Nick Mathewson
4a0b6af935
Ive spent about 10 hours benchmarking permutations on our counter-mode implementation. This is the one that flies. (Avoid OpenSSL; optimizze rijndael calling convention to avoid needing to marshall and unmarshall counter.) This should speed up cell encryption by about 27%.
...
svn:r5486
2005-12-01 18:30:39 +00:00
Roger Dingledine
a6da372000
and its header
...
svn:r5478
2005-11-30 22:23:27 +00:00
Roger Dingledine
923ad87470
remove another unused function
...
svn:r5477
2005-11-30 22:19:02 +00:00
Roger Dingledine
77a425d8b2
Remove some functions that were around for hupping log files. We handle
...
them already in do_hup() by marking our log files as temporary and then
rotating them in options_init_from_torrc().
svn:r5473
2005-11-30 06:45:30 +00:00
Nick Mathewson
d56a65c497
Fix some verbose warnings and remove an unneeded include.
...
svn:r5472
2005-11-30 06:38:41 +00:00
Nick Mathewson
9cec3a13f5
remove some functions that are not used; #if0 out some files that are not likely to be used.
...
svn:r5471
2005-11-30 06:27:59 +00:00
Nick Mathewson
6b49a93bd5
Move code to check for zero digests into util.c
...
svn:r5468
2005-11-30 02:47:59 +00:00
Nick Mathewson
72cb64406a
HT_NEXT invalidates the last iterator; fix rmv-related segfault.
...
svn:r5458
2005-11-26 00:42:25 +00:00
Roger Dingledine
b6b1b4f283
Bandaid workaround to make cvs not crash tor clients.
...
This is not a real fix. I didn't look at the rest of the code.
Nick?
svn:r5455
2005-11-25 02:16:10 +00:00
Nick Mathewson
05482a0899
Add functions to return number of elts in associative containers
...
svn:r5448
2005-11-23 07:48:13 +00:00
Nick Mathewson
a39269572f
Replace balanced trees with hash tables: this should make stuff significantly faster.
...
svn:r5441
2005-11-23 04:18:45 +00:00
Roger Dingledine
8182eb69cd
a smidgen more hint when we fail to seed the rng
...
svn:r5438
2005-11-21 01:12:01 +00:00
Nick Mathewson
83d6b0387b
Try to build with OpenSSL 0.9.6. Lets pay attention to see if anybody complains.
...
svn:r5398
2005-11-16 05:22:44 +00:00
Nick Mathewson
6c361468c1
Loops without an increment step can suck, even on windows.
...
svn:r5376
2005-11-15 03:16:32 +00:00
Nick Mathewson
9b432311c4
Make new logging stuff work on windows; fix a couple of windows typos.
...
svn:r5375
2005-11-15 03:05:23 +00:00
Nick Mathewson
e022aa73e6
Hm; looks like the callback business was unnecessary, since DHparams_dup() copies dh->length.
...
svn:r5372
2005-11-14 21:17:38 +00:00
Nick Mathewson
027d0ef18c
Use a callback to set our DH parameters; set SSL_OP_SINGLE_DH_USE.
...
svn:r5371
2005-11-14 19:20:47 +00:00
Nick Mathewson
887178e710
Oops. It looks like there *was* an easy way to make openssl do what we wanted.
...
svn:r5370
2005-11-14 19:18:31 +00:00
Roger Dingledine
ed4f15b2a7
When logging via syslog, include the pid whenever we provide
...
a log entry. Suggested by Todd Fries.
svn:r5366
2005-11-13 22:28:07 +00:00
Roger Dingledine
5ef2927870
correct nick's comment
...
svn:r5360
2005-11-11 21:44:38 +00:00
Nick Mathewson
f14743a975
Note that much of check_dh_key is voodoo; make x in DH be only 320 bits for DH speed improvement: this wants auditing. [We have blessing from Ian on this.] (Note that DH in SSL is not yet affected.)
...
svn:r5359
2005-11-11 20:18:00 +00:00
Roger Dingledine
87e8e7b4fa
using an unsigned int for something that requires at least 3 bytes
...
makes me uncomfortable.
svn:r5340
2005-11-01 06:15:48 +00:00
Roger Dingledine
c68cadc0c8
tor_assert had a misleading comment
...
svn:r5338
2005-11-01 06:12:51 +00:00
Roger Dingledine
a2a4f4ae61
cleanups and a smidgen more docs
...
svn:r5335
2005-11-01 03:47:55 +00:00
Nick Mathewson
3c36a14ba6
Call ERR_remove_state() on the main thread on shutdown,too
...
svn:r5322
2005-10-26 02:20:48 +00:00
Nick Mathewson
9492424d3f
Per comments at the bottom of openssl/FAQ, call even more functions to
...
clean up OpenSSL's toys when it's done playing. (Why isn't there an
OpenSSL_free_everything() function?)
svn:r5321
2005-10-25 19:01:48 +00:00
Nick Mathewson
5d85560d9e
Remove last vestiges of old logging interface.
...
svn:r5317
2005-10-25 18:01:01 +00:00
Roger Dingledine
d7e136240a
consistency is the hobgoblin of little armas
...
svn:r5316
2005-10-25 17:58:43 +00:00
Nick Mathewson
049f6c0131
Switch remaining files to new log interface.
...
svn:r5315
2005-10-25 17:52:14 +00:00
Nick Mathewson
7a9774eff0
Also here.
...
svn:r5314
2005-10-25 17:42:09 +00:00
Peter Palfrader
0738c24b97
Fix log levels notice and warn for new logging stuff
...
svn:r5313
2005-10-25 17:41:43 +00:00
Nick Mathewson
e7e170a59e
Change more files to new loggin interface. 3 left.
...
svn:r5310
2005-10-25 08:20:10 +00:00
Nick Mathewson
932106f54c
Efficiency hack: call tor_fix_source_file late, not early. Add "BUG" domain. Domains are now bitmasks... just in case. Make some err msgs non-general.
...
svn:r5309
2005-10-25 07:05:03 +00:00
Nick Mathewson
beaf898fe5
add more domains
...
svn:r5300
2005-10-24 19:36:43 +00:00
Nick Mathewson
a20835ac92
Check for even more windows version flags, and note any we do not recognize.
...
svn:r5297
2005-10-24 18:37:09 +00:00
Nick Mathewson
1bd3f6cc9a
Update more files to new log stuff.
...
svn:r5286
2005-10-18 22:56:40 +00:00
Nick Mathewson
55f2ab9cc3
Migrate a few more files to domained logging
...
svn:r5285
2005-10-18 22:21:29 +00:00
Nick Mathewson
edf5698474
Start dividing log messages into logging domains. No, LD_ is not the best of identifiers. src/or has not been converted yet. Domains dont do anything yet.
...
svn:r5284
2005-10-18 21:58:19 +00:00
Nick Mathewson
5828f8920e
Add a "Map from digest to void*" abstraction, since we already faked it in 3 places by encoding keys in hex and sticking them in a strmap.
...
svn:r5278
2005-10-18 20:11:39 +00:00
Nick Mathewson
0349598928
stupid gcc. stupid nickm.
...
svn:r5277
2005-10-18 17:52:45 +00:00
Nick Mathewson
95514b32a5
Make smartlist_foreach always use the fast versions.
...
svn:r5275
2005-10-18 17:38:07 +00:00
Nick Mathewson
48ade882c3
Remove assert in sort-of c-itical path
...
svn:r5267
2005-10-18 05:06:36 +00:00
Nick Mathewson
cf73ff195b
Actually, use #defines for common case. Nothing to see here.
...
svn:r5266
2005-10-18 05:03:44 +00:00
Nick Mathewson
768160c872
Inline key smartlist functions; use fast versions by default.
...
svn:r5265
2005-10-18 04:51:07 +00:00
Peter Palfrader
0d9aedfcea
Downgrade a few INFO level logs to DEBUG again. Also add two or three new
...
logs in cases where a calling function's log was downgraded and we wouldn't
get any log message otherwise.
svn:r5263
2005-10-17 16:21:42 +00:00
Roger Dingledine
03dcef4c78
start the process of reducing clutter in server logs
...
svn:r5253
2005-10-17 00:35:53 +00:00
Nick Mathewson
11b76b9ca5
Allow tor_gzip_uncompress to extract as much as possible from truncated compressed data. Also, fix a bug where truncated compressed data could break tor_gzip_uncompress. [This last part is a backport candidate.]
...
svn:r5247
2005-10-13 22:48:09 +00:00
Nick Mathewson
9bc2467626
Okay, try to use RAND_poll() from OpenSSL where available.
...
svn:r5229
2005-10-08 05:47:15 +00:00
Roger Dingledine
c4757e0705
LOG_ERR is for when we know we're going to exit. use LOG_WARN in other
...
cases.
svn:r5220
2005-10-07 19:53:57 +00:00
Nick Mathewson
010bcfa9df
Win32 compilation/correctness fixes.
...
svn:r5218
2005-10-07 19:33:47 +00:00
Nick Mathewson
150e5ac098
disable RAND_poll() for the alpha of the day; at least 24 hours of testing is in order for something like that.
...
svn:r5216
2005-10-07 19:17:20 +00:00
Nick Mathewson
a53ecc94f9
Add half our entropy from RAND_poll in OpenSSL. These know how to use egd (if present) openbsd weirdness (if present), vms/os2 weirdness (if we ever port there), and more in the future.
...
svn:r5215
2005-10-07 19:03:09 +00:00
Nick Mathewson
a89daaeca9
Once an hour (not just on startup) give OpenSSL some more entropy.
...
Add entropy in 512-bit chunks, not 160-bit chunks. (This latter
change is voodoo.)
svn:r5211
2005-10-06 22:22:22 +00:00
Nick Mathewson
cc35e1720f
Using RAND_pseudo_bytes instead of RAND_bytes is an accident waiting to happen, and does not really speed us up much when we do it. So stop doing it.
...
svn:r5210
2005-10-06 22:18:01 +00:00
Nick Mathewson
ba24193ab5
Make doxygen marginally happier
...
svn:r5208
2005-10-06 04:33:40 +00:00
Nick Mathewson
92abf1b653
Make windows platform detection smarter. {Untested.}
...
svn:r5198
2005-10-05 22:04:45 +00:00
Nick Mathewson
f8c07e1f33
free EVP cipher information on shutdown to remove some spurious dmalloc complaints.
...
svn:r5180
2005-10-03 21:10:35 +00:00
Nick Mathewson
fd04db90b5
Stop leaking storage for EVP keys. (This would be a critical bug if it had ever appeared in a released version.)
...
svn:r5179
2005-10-03 20:53:27 +00:00
Nick Mathewson
c5ee3e961e
Reorganize some quick-and-dirty code to find out what openssl stuff is leaking, using dmalloc.
...
svn:r5178
2005-10-03 20:20:38 +00:00
Nick Mathewson
de198d800b
Never call free() on tor_malloc()d memory. This is unlikely to be our current leak, but it may help dmalloc work.
...
svn:r5168
2005-09-30 20:47:58 +00:00
Nick Mathewson
26e7a05725
even better function start checks; give dmalloc a chance of working.
...
svn:r5162
2005-09-30 01:39:24 +00:00
Nick Mathewson
92451f74a8
Reformat inconsistent function declarations.
...
svn:r5160
2005-09-30 01:09:52 +00:00
Nick Mathewson
5c53545d81
Add a bunch more warnings to out warning suite; resolve them; pack structs a little better.
...
svn:r5150
2005-09-29 22:59:17 +00:00
Nick Mathewson
2999cbf233
Use EVP_CIPHER_CTX version of AES from openssl, so openssl can use engines (if they exist).
...
svn:r5146
2005-09-27 19:39:25 +00:00
Nick Mathewson
0873386600
Point readers of the code to opensslv.h, since everybody who sees 0x0090700f looks at me like some kind of loon
...
svn:r5140
2005-09-24 16:39:33 +00:00
Nick Mathewson
d661fde082
Possible fix to make aes build on woody
...
svn:r5139
2005-09-24 16:37:24 +00:00
Nick Mathewson
96988b45b4
Use OpenSSL AES when OpenSSL has version 0.9.7 or later.
...
svn:r5129
2005-09-23 18:50:50 +00:00
Nick Mathewson
f8a80e8d59
Helper functions to perform our truncated base64 encoding on hexdigests.
...
svn:r5087
2005-09-18 02:18:59 +00:00
Nick Mathewson
312af36126
Make smartlist_add_all more efficient.
...
svn:r5086
2005-09-18 02:17:02 +00:00
Nick Mathewson
6973ef9be4
Add a touch_file() function to compat so we can update cache mtimes.
...
svn:r5067
2005-09-14 23:27:52 +00:00
Nick Mathewson
922cee3d0c
Clean up a few warnings that make gcc twig out a bit.
...
svn:r5062
2005-09-14 20:59:25 +00:00
Nick Mathewson
d9bf9e48c0
Add documentation to a few functions in container.c; reformat function definitions
...
svn:r5026
2005-09-13 15:30:22 +00:00
Nick Mathewson
d4fb1fcd6c
Two new functions like write_bytes_to_file: one takes a list of byte-and-len structs; one appends.
...
svn:r5024
2005-09-13 06:19:31 +00:00
Nick Mathewson
c1a6940e73
make compile slightly happier on const-zealous compilers
...
svn:r5015
2005-09-12 08:29:53 +00:00
Nick Mathewson
2689cb081b
We have so many special cases for smartlists of strings, why not add a sort function?
...
svn:r5014
2005-09-12 08:27:01 +00:00
Nick Mathewson
8d70ae01b8
Fix a memory leak in smartlist_string_remove.
...
svn:r5002
2005-09-12 05:20:29 +00:00
Nick Mathewson
24bfac635d
Document SMARTLIST_FOREACH macro, along with previously-naughty foo_sl_idx variable.
...
svn:r5000
2005-09-11 23:14:14 +00:00
Nick Mathewson
a4f32e77ef
Fix segfault in win32 unittests.
...
svn:r4983
2005-09-10 02:34:32 +00:00
Nick Mathewson
d26523e089
Use tor_listdir in test.c instead of duplicating ode.
...
svn:r4981
2005-09-10 01:42:42 +00:00
Nick Mathewson
035b1953eb
Add sorting/searching to smartlist
...
svn:r4977
2005-09-09 23:12:54 +00:00
Nick Mathewson
6b479b3cfa
Only do openssl accel stuff if version is at least 0.9.7
...
svn:r4973
2005-09-09 22:07:15 +00:00
Nick Mathewson
09d83c564b
Add missing arg to windows tor_listdir()
...
svn:r4972
2005-09-09 21:34:59 +00:00
Nick Mathewson
2f6eb10fb4
Implement tor_listdir on windows. Untested.
...
svn:r4971
2005-09-09 21:29:23 +00:00
Nick Mathewson
c4b3bf06c6
add strupper function
...
svn:r4934
2005-09-08 18:33:51 +00:00
Roger Dingledine
780261aa2e
don't crash now that LongLivedPorts can be null
...
svn:r4923
2005-09-08 06:47:27 +00:00
Nick Mathewson
b6a13b6cdf
Add directory listing functions to util.[ch]. Watch the features creep!
...
svn:r4906
2005-09-03 04:40:05 +00:00
Nick Mathewson
29a6c17d67
Allow tor_gzip_uncompress to handle multiple concatenated compressed strings.
...
svn:r4882
2005-08-29 18:01:38 +00:00
Roger Dingledine
fa507c63e8
put quotes around user-supplied strings so they are more likely to
...
realize if they add bad characters (like quotes) to the torrc
svn:r4844
2005-08-26 18:40:44 +00:00
Roger Dingledine
d5e426ab51
add a tor_dup_addr() function to simplify malloc()+tor_inet_ntoa()
...
svn:r4838
2005-08-26 07:37:07 +00:00
Nick Mathewson
9321db8c29
Fix bug with tor_memmem finding a match at the end of the string.
...
svn:r4803
2005-08-22 00:34:23 +00:00
Roger Dingledine
121ea4dd93
a url for better reference
...
svn:r4778
2005-08-15 01:03:50 +00:00
Nick Mathewson
d1c094637d
Try to resolve another reported solaris x86 warning
...
svn:r4771
2005-08-12 17:26:43 +00:00
Nick Mathewson
789374dbbd
Make GCC very happy, even with lots of warnings set. Also, try to fix some reported Solaris x86 warnings.
...
svn:r4770
2005-08-12 17:24:53 +00:00
Nick Mathewson
943ef5256b
fix whitespace issues
...
svn:r4752
2005-08-08 21:59:48 +00:00
Roger Dingledine
f4eec180a2
disarm a trap that's lying in wait for us
...
svn:r4741
2005-08-08 17:31:57 +00:00
Nick Mathewson
9345323b18
far far cleaner implementation of handshake checking logic. Backport candidate.
...
svn:r4736
2005-08-07 20:36:14 +00:00
Roger Dingledine
bfe65db284
ok, so now it was just redundant. nick, do you recall what rfc
...
you were trying to point to?
svn:r4727
2005-08-07 17:11:33 +00:00
Roger Dingledine
b9a7482c02
note another potential security problem with generating key material
...
from our DH handshake.
svn:r4724
2005-08-06 16:50:51 +00:00
Roger Dingledine
261bf4c4d4
rfc 3536 "provides a glossary of terms used in the IETF when discussing
...
internationalization."
svn:r4723
2005-08-05 22:08:57 +00:00
Nick Mathewson
224fecb281
Appease insane windows compiler. (Oh no, an extra semi, the sky is falling!)
...
svn:r4722
2005-08-05 19:25:23 +00:00
Nick Mathewson
197eb2b2cb
fix harmless copy-and-paste error
...
svn:r4718
2005-08-05 14:59:14 +00:00
Nick Mathewson
ea2aa107a7
cover a few more cases; needs testing and once-over
...
svn:r4717
2005-08-05 14:20:38 +00:00
Nick Mathewson
666ab41e2b
parse_addr_port was vague about what to do when port_out was NULL. Make it behave usefully.
...
svn:r4716
2005-08-05 01:51:19 +00:00
Nick Mathewson
3fa821d911
oops, that array got bigger
...
svn:r4708
2005-08-04 23:18:51 +00:00
Nick Mathewson
7a9eb49f5f
Discard special bignum values.
...
svn:r4706
2005-08-04 23:14:42 +00:00
Nick Mathewson
546fba7b04
Fix windows warning
...
svn:r4697
2005-08-04 22:25:39 +00:00
Nick Mathewson
11ff0aba80
Make clients regenerate their keys when their IP address changes.
...
svn:r4688
2005-08-03 20:42:17 +00:00
Nick Mathewson
98f1265309
Fix compile failures on tor_gettimeofday() fix for windows
...
svn:r4685
2005-08-03 17:16:48 +00:00
Nick Mathewson
176e9055cc
Probably broken attempt to improve tor_gettimeofday granularity on windows.
...
svn:r4683
2005-08-03 16:28:39 +00:00
Nick Mathewson
48787c839e
Fix logic to set TIME_T_MAX; apparently, everybody had thought of the prospect of a signed time_t but me.
...
svn:r4675
2005-07-25 18:10:08 +00:00
Roger Dingledine
cfd6514482
and a nearby define
...
svn:r4643
2005-07-23 02:19:43 +00:00
Nick Mathewson
b98e4a0cd7
add parenthesis to U64_PRINTF_ARG macro
...
svn:r4642
2005-07-23 02:12:40 +00:00
Nick Mathewson
18c11eb3bc
Be consistent about preferring foo* to struct foo*
...
svn:r4637
2005-07-22 21:12:10 +00:00
Roger Dingledine
8c657e4157
cosmetic fixes
...
svn:r4601
2005-07-18 23:33:19 +00:00
Roger Dingledine
bb97d7f4ea
slightly cleaner fix
...
svn:r4599
2005-07-18 23:16:09 +00:00
Roger Dingledine
893652da84
bugfixes: smartlist_join_strings2() was underflowing a size_t
...
if you gave it an empty smartlist; and it wasn't terminating in
this case even if you asked it to.
this does not appear to be exploitable in any reasonable cases.
svn:r4598
2005-07-18 23:11:46 +00:00
Nick Mathewson
97c58f066a
whitespace fixes
...
svn:r4544
2005-07-13 17:24:55 +00:00
Nick Mathewson
278bac421f
Fix windows compilation
...
svn:r4543
2005-07-13 15:24:33 +00:00
Nick Mathewson
50e11ee16a
Fix possible double call to inflateEnd.
...
svn:r4540
2005-07-13 05:26:43 +00:00
Roger Dingledine
4457c181f5
note a worrying double-free possibility in torgzip.
...
nick?
svn:r4537
2005-07-12 23:21:15 +00:00
Nick Mathewson
d85bfe83bf
Make errors retrievable from tor_socketpair; resolve bug 163.
...
svn:r4509
2005-06-30 07:17:38 +00:00
Nick Mathewson
584a0ae397
Fix an fd leak in start_daemon
...
svn:r4508
2005-06-30 06:56:00 +00:00
Nick Mathewson
1647b6f837
Fix libc compilation
...
svn:r4497
2005-06-27 23:40:17 +00:00
Nick Mathewson
806da0d8b2
Compile on win32
...
svn:r4496
2005-06-27 23:35:04 +00:00
Roger Dingledine
09e87f452d
note a bug in our tor_socketpair implementation
...
can somebody fix this or create a flyspray entry for it?
svn:r4483
2005-06-26 05:03:21 +00:00
Nick Mathewson
a37db0da26
Appease the hungry God of GCC: it hates K&R style unspecified args!
...
svn:r4470
2005-06-21 01:07:32 +00:00
Nick Mathewson
2aff87caae
Load hardware acceleration options when/where available. Can anybody test this?
...
svn:r4467
2005-06-20 18:56:35 +00:00
Roger Dingledine
8fdab20704
fix typo
...
svn:r4453
2005-06-18 02:23:11 +00:00
Nick Mathewson
5fee58adfb
Add a tor_memmem function
...
svn:r4452
2005-06-18 02:17:11 +00:00
Nick Mathewson
d4972bd2e1
Remove code that has been #if-0ed for a long time.
...
svn:r4435
2005-06-15 18:34:46 +00:00
Roger Dingledine
2111c0e263
a bit more cleanup
...
svn:r4417
2005-06-12 04:33:26 +00:00
Nick Mathewson
232861ba42
Docment or add DOCDOC comments to undocumented functions in src/or. Make function definition format uniform.
...
svn:r4411
2005-06-11 18:52:12 +00:00
Roger Dingledine
fcd0fc3364
flesh out the source file descriptions for doxygen
...
svn:r4404
2005-06-11 05:31:17 +00:00
Nick Mathewson
0831823763
Change end-of-file NLNL convention. It turns out arma I and I agree.
...
svn:r4382
2005-06-09 19:03:31 +00:00
Nick Mathewson
a6f51001a5
New whitespace normalization rule: no blank line at EOF.
...
svn:r4378
2005-06-09 16:46:51 +00:00
Nick Mathewson
8b2a7ff9fe
Remove extraneous newlines from libevent log messages. Backport candidate?
...
svn:r4350
2005-06-08 17:41:32 +00:00
Nick Mathewson
1d9bc936c2
Adapt patch from Adam Langley: fix possible memory leak in tor_lookup_hostname
...
svn:r4326
2005-06-07 13:45:58 +00:00
Nick Mathewson
5420aed38e
Possible bugfix for 151: backport candidate.
...
svn:r4318
2005-06-06 20:02:09 +00:00
Nick Mathewson
ea5591ee4d
Implement --disable-threads
...
svn:r4187
2005-05-10 20:02:52 +00:00
Nick Mathewson
10b2208d93
Make Tor compile with no warnings with gcc4.0 on OSX
...
svn:r4184
2005-05-07 05:55:06 +00:00
Roger Dingledine
50505e677e
fix a comment
...
svn:r4157
2005-05-02 21:49:04 +00:00
Roger Dingledine
509405a5f7
clean up this TOR_FRAGILE business
...
svn:r4116
2005-04-26 18:52:16 +00:00
Nick Mathewson
4fb95f166e
Apparently, ASN1 failures are not treated as SSL connection errors, but are just general OpenSSL errors. Or something. Anyway, bulletproof tor_tls_handshake.
...
svn:r4098
2005-04-23 20:35:38 +00:00
Roger Dingledine
54fd9df23f
LOG_ERR is for when you're planning to die.
...
svn:r4087
2005-04-23 14:35:13 +00:00
Nick Mathewson
5827e2e216
Fix "JAP-client" hideous ASN1 bug, twice. (Fix1: check more thoroughly for TLS errors when handling certs. Fix2: stop assert(0)ing on uncaught TLS errors.)
...
svn:r4085
2005-04-23 14:26:02 +00:00
Nick Mathewson
f3b833cb47
Make libevent_logging_callback static.
...
svn:r4058
2005-04-08 03:47:18 +00:00
Roger Dingledine
8aa0df56f6
Stop putting nodename in the Platform string of server descriptors.
...
It doesn't actually help, and it is confusing/upsetting some people.
svn:r4037
2005-04-06 21:11:05 +00:00
Roger Dingledine
652dde72f1
bugfix: chdir to your datadirectory at the *end* of the
...
daemonize process, not the beginning. this was a problem
because the first time you run tor, if your datadir isn't
there, and you have runasdaemon set to 1, it will try to
chdir to it before it tries to create it. oops.
svn:r4033
2005-04-06 19:07:38 +00:00
Nick Mathewson
4991290935
Revise control spec and implementation to allow all log messages to be sent to controller with their severities intact.
...
svn:r4010
2005-04-05 22:56:17 +00:00
Nick Mathewson
7bf443e985
I hear the smart kinds compile before committing. Then they never miss parens
...
svn:r3999
2005-04-03 06:00:00 +00:00
Nick Mathewson
f696fd98bf
Make smartlist_string_remove consistent with smartlist_string
...
svn:r3998
2005-04-03 05:58:23 +00:00
Nick Mathewson
ff545c3103
Add useful smartlist_string_remove function.
...
svn:r3996
2005-04-03 05:52:32 +00:00
Nick Mathewson
2a332bf0b8
Fix unterminated comment
...
svn:r3991
2005-04-03 05:21:16 +00:00
Nick Mathewson
0e81265359
update copyright notices.
...
svn:r3982
2005-04-01 20:15:56 +00:00
Nick Mathewson
73f6c1531e
fix typo in earlier libevent mmessage suppress patch
...
svn:r3950
2005-04-01 07:16:52 +00:00
Nick Mathewson
410ecfcc71
Add code to suppress spurious libevent log msgs; use it to resolve bug 68.
...
svn:r3948
2005-04-01 07:05:21 +00:00
Nick Mathewson
efe9ca659a
Use recent libevent features when possible
...
svn:r3940
2005-04-01 02:37:40 +00:00
Nick Mathewson
837d7dff69
Try to make crash-on-shutdown bug harder to trigger.
...
svn:r3939
2005-04-01 02:37:10 +00:00
Roger Dingledine
4a82ac12b8
add a tor_tls_is_server method to remember if conn->tls
...
was an initiator or a receiver
svn:r3931
2005-03-31 07:46:38 +00:00
Roger Dingledine
80901fde69
remember some thoughts about using WSAStartup to learn
...
how many sockets we get to use on win32.
svn:r3905
2005-03-28 01:11:02 +00:00
Nick Mathewson
905c16846a
Fix a few more instances of memory not freed on exit (found by weasel).
...
svn:r3830
2005-03-23 06:20:50 +00:00
Roger Dingledine
248867caf5
bugfix: make smartlist_join_strings2 actually use the separator/terminator
...
svn:r3805
2005-03-22 05:37:59 +00:00
Nick Mathewson
df9c8feac7
Commit fixes for several pending tor core tasks: document all DOCDOCed functions; time out uncontrolled unattached streams; feed reasons to SOCKS5 (refactoring connection_ap_handshake_socks_reply in the process); change DirFetchPeriod/StatusFetchPeriod to have a special "Be smart" value.
...
svn:r3769
2005-03-17 12:38:37 +00:00
Nick Mathewson
be38e0a490
Fix a fun windows bug: apparently windows stat wants paths not to end with slash.
...
svn:r3766
2005-03-16 00:04:59 +00:00
Nick Mathewson
0197b47ce9
Fix some more obscure compiler warnings
...
svn:r3758
2005-03-14 03:28:46 +00:00
Nick Mathewson
97dad670ea
Renormalize whitespace
...
svn:r3757
2005-03-14 03:18:35 +00:00
Nick Mathewson
c185825585
Finish implementing GETINFO; make it easy to query address maps.
...
svn:r3732
2005-03-03 06:37:54 +00:00
Nick Mathewson
97bc49bd72
Try a little harder to avoid openssl SSL* double-free reports.
...
svn:r3710
2005-02-28 02:52:51 +00:00
Nick Mathewson
0a2be3c9d8
Fix strmap_free to release memory actually held by the strmap.
...
svn:r3708
2005-02-28 02:21:40 +00:00
Nick Mathewson
bed6c05453
give a better warning when tor points at an https server.
...
svn:r3706
2005-02-28 01:55:09 +00:00
Nick Mathewson
2be0508f0d
Be specific about which "illegal character" we just saw in the cert.
...
svn:r3699
2005-02-25 21:05:42 +00:00
Nick Mathewson
bbaa3c7792
Implement more control spec functionality
...
- Mapaddress
- Postdescriptor
- GetInfo on descriptors
Required changes elsewhere:
- Keep the most recent running_routers_t in the routerlist_t. That way we
can learn about new routers and remember whether we were last told that
they were up or down. Also enables more simplifications.
- Keep the signed descriptor inside routerinfo_t. This makes
descriptor_entry_t in dirservers.c unneeded.
- Rename AddressMap (the verb) to MapAddress. Keep AddressMap as a noun.
- Check addresses for plausibility before mapping them.
svn:r3696
2005-02-25 20:46:13 +00:00
Roger Dingledine
55c3f15ed1
Forward-port the trick to bump up ConnLimit as far as it can
...
go, but not past MAXCONNECTIONS. Also throw away the FAKE_POLL
caveats since 0.1.0 doesn't need it any more.
svn:r3657
2005-02-22 23:52:44 +00:00
Nick Mathewson
6e6d95b3db
Change from inet_ntoa to a threadproof tor_inet_ntoa.
...
svn:r3656
2005-02-22 08:18:36 +00:00
Nick Mathewson
e8da6b26b6
Note a non-bug in read_file_to_str as used. If we start to rely on it behaving differently, we need to change how it behaves. [Noticed by Chris Palmer]
...
svn:r3655
2005-02-22 07:18:46 +00:00
Nick Mathewson
d37f4dd8a9
But on windows, localtime and gmtime _are_ threadsafe.
...
svn:r3654
2005-02-22 07:09:17 +00:00
Nick Mathewson
70c3580f81
Patch to localtime/gmtime handling: use the _r variants where available. Use mutexes to fake _r where necessary. Make mutexes no-ops where no threading is enabled.
...
svn:r3653
2005-02-22 07:03:03 +00:00
Nick Mathewson
d01718841e
Remove assumptions that maximum path length is anything like 1024. From comments by Chris Palmer
...
svn:r3652
2005-02-22 06:38:39 +00:00
Nick Mathewson
bb53a0bddd
remove spurious semicolons
...
svn:r3650
2005-02-22 04:55:19 +00:00
Nick Mathewson
d060f845f2
Snarf some logic from python, adapted to our own needs, to handle gethostbyname_r correctly across platforms.
...
svn:r3649
2005-02-22 04:50:31 +00:00
Nick Mathewson
a68fcbf807
Initial IRIX compatibility fixes: check for inttypes.h; check for platform cell_t.
...
svn:r3648
2005-02-22 04:26:45 +00:00
Nick Mathewson
6bd81c9ee2
Fix windows build: do not spuriously include openssl where not needed; handle lack of gethostbyname_r properly.
...
svn:r3644
2005-02-22 02:51:55 +00:00
Roger Dingledine
b5bddd8cfd
bugfix: actually use the argument to strmap_free()
...
svn:r3640
2005-02-20 23:12:20 +00:00
Roger Dingledine
596d65ec3b
avoid case (not yet triggered) where smartlists could grow out
...
of control
svn:r3636
2005-02-19 03:02:33 +00:00
Nick Mathewson
aac97a3c6a
Tell openssl how to use locks and how to find thread ids -- this may prevent race conditions surrounding the error queue.
...
svn:r3622
2005-02-13 22:32:25 +00:00
Nick Mathewson
f6221b695f
Apply windows patch from Dmitri Bely
...
svn:r3617
2005-02-12 21:03:37 +00:00
Nick Mathewson
5d836c8140
Free tls resources on exit too
...
svn:r3615
2005-02-11 01:41:19 +00:00
Nick Mathewson
915202048e
Handle return value from getaddrinfo properly
...
svn:r3526
2005-02-03 23:13:36 +00:00
Nick Mathewson
a035032f09
Use getaddrinfo and gethostbyname_r where available. Note that these are not necessarily threadsafe: this needs more thinking. Perhaps we should back down on this multithreading idea.
...
svn:r3522
2005-02-03 21:31:04 +00:00
Nick Mathewson
e4b21c97f7
Forward-port SGI Compatibility patches from Jan Schaumann
...
svn:r3517
2005-02-03 19:59:10 +00:00
Roger Dingledine
051cda803e
point out a potential thread/process leak problem when we're out of memory
...
svn:r3512
2005-02-03 07:35:24 +00:00
Peter Palfrader
ddd724ef94
Add --with-dmalloc configure option
...
svn:r3508
2005-02-03 07:25:10 +00:00
Roger Dingledine
f3b74a2adb
http://www.erlenstar.demon.co.uk/unix/faq_2.html says we
...
should call _exit, not exit, from child processes.
svn:r3506
2005-02-03 06:40:06 +00:00
Roger Dingledine
c53c7a0b4c
clarify what smartlist_remove promises, since we rely on it.
...
svn:r3473
2005-01-31 00:24:59 +00:00
Nick Mathewson
083b67cda5
Add rudimentary pthread support that needs more testing.
...
svn:r3439
2005-01-27 22:34:48 +00:00
Nick Mathewson
fbb7f869c5
fwd-port win32 isprint fix
...
svn:r3410
2005-01-22 00:42:58 +00:00
Roger Dingledine
2a908e5180
forward-port: fix win32 compile
...
svn:r3406
2005-01-22 00:35:09 +00:00
Roger Dingledine
a2e441da06
give a header file for ntohs
...
svn:r3388
2005-01-20 20:15:14 +00:00
Nick Mathewson
29b6637a62
Compilation fixes for win32 version detection.
...
svn:r3385
2005-01-20 19:03:09 +00:00
Nick Mathewson
432e313c81
Make zlib detection happy on little-endian platforms; fix unit tests.
...
svn:r3384
2005-01-20 19:02:35 +00:00
Nick Mathewson
f8c14bbf1f
Detect windows platform correctly
...
svn:r3377
2005-01-19 23:10:16 +00:00
Nick Mathewson
2c803bff9a
Make detect_compression_method work on platforms with more evil chars.
...
svn:r3376
2005-01-19 23:07:43 +00:00
Nick Mathewson
69fa5be7b6
Workaround for webservers that lie about Content-Encoding: Tor now tries to autodetect compressed directories and compression itself. (resolves bug 65)
...
svn:r3374
2005-01-19 22:40:33 +00:00
Nick Mathewson
324b192f68
Make Tor use Niels Provos's libevent instead of it's current
...
poll-but-sometimes-select mess. This will let us use faster async cores
(like epoll, kpoll, and /dev/poll), and hopefully work better on Windows
too.
There are some fairly nasty changes to main.c here; this will almost
certainly break something. But hey, that's what alphas are for.
svn:r3341
2005-01-12 06:42:32 +00:00
Roger Dingledine
51f47d746e
clean up smartlist_string_isin so callers don't have to manage bufs
...
themselves
svn:r3338
2005-01-12 04:53:53 +00:00
Roger Dingledine
74bc4e5af0
help avoid overflow from len_in + (len_in/n)*len_ins
...
nick, do you think this does it? if so, we should maybe backport too.
svn:r3334
2005-01-10 16:30:51 +00:00
Roger Dingledine
1f3e77bf92
make the initial temp log only notice-err, not info-err
...
svn:r3274
2005-01-04 02:25:18 +00:00
Roger Dingledine
9e6d6c6096
Bugfix: we've been using openssl's BIO_get_mem_data incorrectly.
...
We assumed the pem-encoded data written by PEM_write_bio_RSAPrivateKey
is nul-terminated, and at least sometimes, it's not.
svn:r3263
2005-01-03 22:35:40 +00:00
Nick Mathewson
b50263f740
More work on task #43 : fix race conditions on multithreaded (win32) servers.
...
svn:r3251
2005-01-03 19:07:25 +00:00
Nick Mathewson
ead52e0bdc
Possible fix for task #43 : when running on a multithreaded environment (currently only windows), threads should not close opposite sides of their socketpairs, and workers should not call connection_free_all(). This may fix win32 servers.
...
svn:r3247
2005-01-03 18:06:51 +00:00
Nick Mathewson
fca7ba9777
Resolve task 42: find where 19-char nicknames were getting truncated when read from certs, and fix it. Also audit use of MAX_NICKNAME_LEN; no other badness found, but some docs/code cleaned up a touch.
...
svn:r3244
2005-01-03 17:53:20 +00:00
Roger Dingledine
c3189c2573
fix an assert on startup when the disk is full and you're logging to a file
...
svn:r3204
2004-12-22 08:16:42 +00:00
Roger Dingledine
cf17d0d29c
move network_init from or/main to common/compat
...
call network_init in tor-resolve.c too
move tor_lookup_hostname from common/util to common/compat
svn:r3203
2004-12-22 05:29:06 +00:00
Nick Mathewson
c79c4200f4
Fix a bug in last patch; and keep my name out of the assert() call too.
...
svn:r3200
2004-12-22 02:46:28 +00:00
Nick Mathewson
32978afa54
Workaround for brain-damaged __FILE__ handling on MSVC: keep Nick's name out
...
of the warning messages.
svn:r3199
2004-12-22 02:32:26 +00:00
Nick Mathewson
bbc10c2ea1
Make split(..., NULL) split on horizontal space; fix bug with tabs in config file.
...
svn:r3155
2004-12-16 21:10:51 +00:00
Nick Mathewson
8c85c0bef8
Note that length checking on base64_decode is kinda conservative
...
svn:r3144
2004-12-13 18:38:19 +00:00
Nick Mathewson
fd4c624677
Belt *or* suspenders will be sufficient when casting things to unsigned char.
...
svn:r3122
2004-12-08 07:20:21 +00:00
Nick Mathewson
fe6eb34a10
Solaris CC freaks out if isspace and friends get anything other than an int. We learned that, so we casted. But it is also a bad idea to cast a signed char to an int and expect things to work on win32. Now we cast to unsigned char, then to int, then pass to isspace. Ug
...
svn:r3120
2004-12-08 00:42:50 +00:00
Roger Dingledine
bd5524bfc7
fix comment
...
svn:r3110
2004-12-07 15:37:35 +00:00
Nick Mathewson
a6aa5eebd6
Fix some memory leaks and unlikely segfaults
...
svn:r3103
2004-12-07 07:48:16 +00:00
Roger Dingledine
2297c57ba5
note an improvement on our uname we might want to make one day
...
svn:r3101
2004-12-07 07:35:32 +00:00
Nick Mathewson
0f49fd3bcd
Fix leakable rsa key
...
svn:r3099
2004-12-07 06:48:02 +00:00
Nick Mathewson
249a36586f
Fix parse_iso_time on platforms without strptime.
...
svn:r3091
2004-12-06 22:39:10 +00:00
Roger Dingledine
50a314c931
int is not necessarily the same size as size_t
...
svn:r3079
2004-12-05 11:58:30 +00:00
Roger Dingledine
32e74d3525
fix comment
...
svn:r3077
2004-12-04 13:58:34 +00:00
Nick Mathewson
a980446d0c
Be more proactive about noticing underflows: size_t values greater than 0x800...00 are likely to be trouble.
...
svn:r3064
2004-12-02 04:33:01 +00:00
Nick Mathewson
41ba4575b3
Fix windows build.
...
svn:r3053
2004-12-01 03:51:59 +00:00
Nick Mathewson
b457cfb5eb
Spell-check strings and comments
...
svn:r3052
2004-12-01 03:48:14 +00:00
Nick Mathewson
6e88abf418
If we are using select, make sure we stay within FD_SETSIZE.
...
svn:r3051
2004-12-01 03:15:59 +00:00
Roger Dingledine
7a8c1ca1e4
a few minor tweaks
...
svn:r3041
2004-11-30 08:54:08 +00:00
Nick Mathewson
f19e9b8577
doxygen uses backslashes, not forward-slashes
...
svn:r3033
2004-11-30 06:17:35 +00:00
Nick Mathewson
a3477223de
clarify why strlcpy is safe in truncated log messages
...
svn:r3032
2004-11-30 06:15:06 +00:00
Nick Mathewson
ad7db5e43a
Add casei versions of strcmpstart/strcmpend
...
svn:r3026
2004-11-30 03:10:56 +00:00
Nick Mathewson
7fbd297532
Suggestion from weasel: Make tor --version --version dump the cvs Id of every file.
...
svn:r3019
2004-11-29 22:25:31 +00:00
Nick Mathewson
b6b07d1d98
Remove needless -2 in log code. This was not an underflow risk, sinze we only call format_msg from one place, where buf_len==10024
...
svn:r3017
2004-11-29 20:39:55 +00:00
Roger Dingledine
671a2de762
clean up the previous underflow check, and also point out
...
yet another one that may be a problem. nick?
svn:r3016
2004-11-29 08:40:24 +00:00
Nick Mathewson
eccfe23a21
Disallow NDEBUG. It is very stupid.
...
svn:r3012
2004-11-29 07:22:57 +00:00
Roger Dingledine
531c060b36
fix integer underflow in tor_vsnprintf()
...
(probably exploitable)
svn:r3011
2004-11-29 06:49:04 +00:00
Roger Dingledine
185f047450
prevent integer underflow
...
(not currently exploitable, ilja and i think)
svn:r3010
2004-11-29 06:43:21 +00:00
Roger Dingledine
22727b4edc
wrong is ok, and right is fine, but in between is apparently
...
totally unacceptable to me.
svn:r3005
2004-11-28 11:39:53 +00:00
Nick Mathewson
f7c6ad065e
correct multiple internal spaces
...
svn:r3004
2004-11-28 09:14:07 +00:00
Nick Mathewson
6f5dbefa7e
Normalize space: add one between every control keyword and control clause.
...
svn:r3003
2004-11-28 09:05:49 +00:00
Nick Mathewson
32651dd108
connect() on win32 can do more things than we thought?
...
svn:r2999
2004-11-28 05:58:55 +00:00
Nick Mathewson
0702179d28
Very oops. make windows nonblocking sockets nonblocking
...
svn:r2998
2004-11-28 05:57:18 +00:00
Nick Mathewson
f77ff938b7
remember; tor_socket_errno has side effects!
...
svn:r2997
2004-11-28 05:48:02 +00:00
Roger Dingledine
7c9a707900
remove emacs droppings, since nick says he doesn't need them anymore
...
svn:r2989
2004-11-26 04:00:55 +00:00
Peter Palfrader
f2a96ce1fe
Flush the logfd after we print "Tor opening log file", so we don't see those messages days later
...
svn:r2980
2004-11-24 08:42:06 +00:00
Nick Mathewson
cd70264377
Clean up some logging and interfaces
...
svn:r2945
2004-11-23 00:08:26 +00:00
Nick Mathewson
22dba27d8d
Normalize a few more kinds of whitespace. We now dislike:
...
- func (args)
- if (x){
This doesn't normalize if(x), for(x); while(x), and friends.
svn:r2943
2004-11-22 23:28:26 +00:00
Nick Mathewson
55df2620c6
Add function to format local time in ISO format
...
svn:r2935
2004-11-22 21:38:44 +00:00
Roger Dingledine
d4ac7300d6
and a comment so i don't try to 'fix' it again later
...
svn:r2919
2004-11-20 12:17:19 +00:00
Roger Dingledine
246b14d8e9
yes, in fact, i broke it. putting back.
...
svn:r2918
2004-11-20 12:16:47 +00:00
Roger Dingledine
dd19cf6ba3
kill -USR2 now moves all logs to loglevel debug
...
plus fix some typos
svn:r2914
2004-11-20 07:33:55 +00:00
Roger Dingledine
a30a5bce0f
simplify close_temp_logs()
...
(nick, did i break this?)
svn:r2913
2004-11-20 07:08:00 +00:00
Roger Dingledine
a8840db4ac
remove another possible sigpipe cause
...
svn:r2912
2004-11-20 06:52:13 +00:00
Nick Mathewson
8acaf8e187
Add "MEMUNIT" and "INTERVAL" types to configuration. Also tweak Accounting setup. More docs needed
...
svn:r2911
2004-11-20 00:37:00 +00:00
Nick Mathewson
89a456a1d4
Fix a fun bug in read_all that was corrupting config files on windows, and probably doing other bad stuff too.
...
svn:r2898
2004-11-16 00:08:56 +00:00
Nick Mathewson
6143c515cd
Make log_fn not fail so miserably on VC6
...
svn:r2896
2004-11-15 23:30:26 +00:00
Nick Mathewson
d63d5cb139
Whitespace normalization
...
svn:r2895
2004-11-15 23:29:24 +00:00
Nick Mathewson
5b668d8557
ugly macros to make log_fn play nice on non-GCC compilers.
...
svn:r2894
2004-11-15 21:18:07 +00:00
Nick Mathewson
ffe9b01ad7
Split X509 certificate liveness checks into a separate function
...
svn:r2873
2004-11-14 22:07:48 +00:00
Nick Mathewson
783bbcf471
Fix "implicit declaration of ftello" warning: add AC_FUNC_FSEEKO in configure.in and always include orconfig.h before anything else
...
svn:r2854
2004-11-14 17:21:32 +00:00
Roger Dingledine
14c7ad409f
remove redundant stdio.h
...
i guess that wasn't the fix
svn:r2849
2004-11-14 09:49:27 +00:00
Roger Dingledine
bd4d99b3fe
clean up the ftello call a little bit.
...
but i'm still getting:
log.c:94: warning: implicit declaration of function `ftello'
svn:r2848
2004-11-14 09:48:54 +00:00
Nick Mathewson
a3788d5c9d
Fix argument to strncpy.
...
svn:r2824
2004-11-12 21:14:51 +00:00
Nick Mathewson
a8f9ba91db
Nobody was using the return values from smartlist_(set|del|del_keeporder), so remove them.
...
svn:r2823
2004-11-12 21:14:06 +00:00
Nick Mathewson
238a895e69
Add a FAST_SMARTLIST define to optionally inline smartlist_get and smartlist_len, which are two major profiling offenders.
...
svn:r2822
2004-11-12 20:41:52 +00:00
Nick Mathewson
c466b7e72f
Speed up tor_strndup a lot: profiling suggests that our use of strlcpy here was a bad idea.
...
svn:r2821
2004-11-12 20:41:03 +00:00
Nick Mathewson
60880cda84
Resolve a bunch of FIXME items; mark a lot more for attention; ask for clarification on some. Turn all XXXX008 ("showstopper for 0.0.8 release") items into XXXX009 or XXXX, since plainly they were not showstoppers for 0.0.8. Add/clean some docs.
...
svn:r2808
2004-11-12 16:39:03 +00:00
Nick Mathewson
5d92fbe30e
Use autoconf to enable largefile support where necessary. Use ftello where available, since ftell can fail at 2GB.
...
svn:r2806
2004-11-12 05:05:41 +00:00
Nick Mathewson
8de9cfe184
Resolve FIXME items: make expand_filename handle ~ and ~username
...
svn:r2789
2004-11-10 14:23:31 +00:00
Roger Dingledine
987cb2b93a
when you cast MAX_UINT to an int it confuses the users
...
svn:r2788
2004-11-10 09:09:15 +00:00
Nick Mathewson
5a5be93f80
Normalize whitespace; add a "tell me about all the unnormalized whitespace" target; fix a braino in dirserv.c
...
svn:r2758
2004-11-09 20:04:00 +00:00
Nick Mathewson
d9d053d70b
Clean windows a little
...
svn:r2757
2004-11-09 19:30:50 +00:00
Nick Mathewson
7daab4034d
Fix windows build for VC6; centralize newline-fiasco-damage-control logic
...
svn:r2756
2004-11-09 19:13:08 +00:00
Nick Mathewson
cd753df7bf
Resolve many XXXs and all DOCDOCs
...
svn:r2755
2004-11-09 18:22:17 +00:00
Nick Mathewson
180e0a9326
Make check_private_dir trimodal (check/create/ignore), not bimodal (create/ignore).
...
svn:r2733
2004-11-09 07:12:31 +00:00
Roger Dingledine
8c7b2ff7ed
various fixes
...
svn:r2712
2004-11-09 01:24:10 +00:00
Roger Dingledine
865f341708
parse_line_from_file is obsolete.
...
svn:r2693
2004-11-06 05:18:29 +00:00
Nick Mathewson
38ed0ce5e6
Unify tor_parse_(numeric); make sure MAX_UINT32 and MAX_UINT64 are defined
...
svn:r2688
2004-11-05 17:54:50 +00:00
Nick Mathewson
2e8353e2f4
Use new log format; convert old format to new format.
...
svn:r2684
2004-11-05 05:50:35 +00:00
Nick Mathewson
b56ef496d9
Twiddle header order to compile on OS X again
...
svn:r2681
2004-11-04 22:33:20 +00:00
Nick Mathewson
9d604ec615
Add code to read configuration lines from a string as well as a file
...
svn:r2676
2004-11-04 22:29:45 +00:00
Nick Mathewson
b74b72a5ce
Fix windows build
...
svn:r2670
2004-11-04 04:01:19 +00:00
Nick Mathewson
70f7e32ec6
fix typos
...
svn:r2666
2004-11-03 21:53:12 +00:00
Nick Mathewson
cea9125d71
Implement two flavors of authentication for control connections: one for trusted FS, one for untrusted FS.
...
svn:r2664
2004-11-03 19:49:03 +00:00
Nick Mathewson
871bf904ae
Remove extraneous local
...
svn:r2663
2004-11-03 19:15:38 +00:00
Nick Mathewson
d5244e3872
Add a write_bytes_to_file so we can have files with NULs in them.
...
svn:r2662
2004-11-03 19:02:48 +00:00
Nick Mathewson
11de62aa60
Add a slightly trickier string-join interface for making NUL-terminated string messages
...
svn:r2659
2004-11-03 18:28:00 +00:00
Nick Mathewson
11979dc1f5
Add a callback log handler type
...
svn:r2658
2004-11-03 18:27:19 +00:00
Roger Dingledine
e761cc9750
my assert.h takes extra pains to be certain to _re-include_
...
itself if you include it twice. this is dumb, but hey.
svn:r2653
2004-11-03 07:29:03 +00:00
Nick Mathewson
3e16515343
The spelling is "d-e-f-i-n-e".
...
svn:r2650
2004-11-03 00:02:17 +00:00
Nick Mathewson
a2f6210b3e
Add compatibility macros for printf and scanf-ing 64-bit unsigned ints
...
svn:r2648
2004-11-02 22:14:34 +00:00
Nick Mathewson
67f14032b1
Handle strlcat/strlcpy correctly on platforms that have them.
...
svn:r2647
2004-11-02 19:25:52 +00:00
Nick Mathewson
ad4dc74482
Use a stricter set of warnings; make them all pass.
...
svn:r2645
2004-11-02 03:02:17 +00:00
Roger Dingledine
85c79ffbc7
canonicalize "src" and "dest" arg order in crypto.c (and others)
...
svn:r2644
2004-11-02 02:28:51 +00:00
Nick Mathewson
1433a0b26f
Fix signed/unsigned comparison warning
...
svn:r2643
2004-11-01 22:41:32 +00:00
Roger Dingledine
037fba7595
util.c needs ctype.h for tolower and isspace
...
svn:r2642
2004-11-01 21:54:12 +00:00
Nick Mathewson
ce79bab7f1
Split util into util (general utilities), container (smartlist and strmap), and compat (cross-platform compatability).
...
svn:r2640
2004-11-01 20:41:47 +00:00
Roger Dingledine
4689243242
make sure options.MaxConn can be reached
...
svn:r2638
2004-11-01 08:24:34 +00:00
Nick Mathewson
ae7495dd55
Only tor and test binaries need to link against openssl and zlib; tor-resolve can be smaller.
...
svn:r2629
2004-10-30 19:27:06 +00:00
Nick Mathewson
5bc0dba933
Move all util functions that need openssl into crypto.c; make non-openssl functions that util needs into util. Now openssl can be separated.
...
svn:r2628
2004-10-30 19:26:31 +00:00
Nick Mathewson
2fbf31533b
Tricksy compiler warnings! We hates them, hates them forever, my precious!
...
svn:r2615
2004-10-27 21:14:11 +00:00
Nick Mathewson
ce5709184b
Pass with -Wstrict-prototypes
...
svn:r2614
2004-10-27 18:16:37 +00:00
Nick Mathewson
6874c39904
Fix windows build
...
svn:r2613
2004-10-27 18:14:38 +00:00
Nick Mathewson
6980929e64
Use strlcpy, not strcpy.
...
svn:r2610
2004-10-27 06:48:16 +00:00
Nick Mathewson
44d4516155
Use tor_snprintf, not snprintf
...
svn:r2609
2004-10-27 06:37:34 +00:00
Nick Mathewson
22dc19b590
snprintf wrapper with consistant (though not C99) overflow behavior
...
svn:r2606
2004-10-27 06:26:23 +00:00
Nick Mathewson
f67f83b1fa
Use strlcpy, not strncpy
...
svn:r2603
2004-10-27 06:03:28 +00:00
Nick Mathewson
bc62f8e983
Replace sprintf with snprintf
...
svn:r2602
2004-10-27 05:53:07 +00:00
Nick Mathewson
26f3cb8652
Add SysLog option to direct log messages to the system log instead of a FILE*.
...
svn:r2591
2004-10-26 21:48:41 +00:00
Nick Mathewson
5d53828c57
Handle more errnos from accept() without closing the connection. This may fix a bug that could close OR listeners when (a) TCP connections were hung up before accept() could be called, or (b) during FD exhaustion.
...
svn:r2579
2004-10-24 00:55:18 +00:00
Nick Mathewson
6899b8001a
Check for low _MSC_VER, not high. On windows, always use winsock.
...
svn:r2575
2004-10-20 23:30:38 +00:00
Roger Dingledine
c4c6ee7d61
add winsock if you've got it, regardless of whether you're msv
...
svn:r2573
2004-10-20 23:23:53 +00:00
Nick Mathewson
62094ebd32
Tolerate NULL nicknames better
...
svn:r2567
2004-10-19 18:17:12 +00:00
Roger Dingledine
e9e9a25881
i take back everything i've said about unit tests
...
svn:r2547
2004-10-16 22:56:03 +00:00
Roger Dingledine
6d873e5743
don't assert multiple things in the same tor_assert()
...
svn:r2545
2004-10-16 22:28:11 +00:00
Nick Mathewson
47dc024f7e
Change interface of parse_addr_port() to return address in host order, since most users seem to want that.
...
svn:r2542
2004-10-16 21:53:30 +00:00
Nick Mathewson
69d7b468b4
Refactor parse-addr-mask-and-port-range into a separate function
...
svn:r2540
2004-10-16 21:41:12 +00:00
Nick Mathewson
a42adce362
fix memory leak in router.c; start relying on NULL==(zero bytes)
...
svn:r2538
2004-10-16 20:38:57 +00:00
Nick Mathewson
f619c4603e
Add an autoconf test to make sure that memset(&ptr, 0, sizeof(ptr)) and ptr=NULL are equivalent
...
svn:r2536
2004-10-16 20:26:12 +00:00
Nick Mathewson
f359389866
Oops; make sure that break; and continue; work within SMARTLIST_FOREACH
...
svn:r2532
2004-10-15 20:49:31 +00:00
Nick Mathewson
5e80944c52
Use token-pasting magic to make nested SMARTLIST_FOREACH work.
...
svn:r2526
2004-10-15 04:45:47 +00:00
Nick Mathewson
2fb08fe46c
add documentation for smartlist_join_strings
...
svn:r2524
2004-10-15 03:55:02 +00:00
Nick Mathewson
c5964d6738
Basic string-join functionality
...
svn:r2521
2004-10-14 19:51:47 +00:00
Nick Mathewson
100b10473a
fix tab/space in torgzip.h
...
svn:r2493
2004-10-14 04:31:16 +00:00
Nick Mathewson
a4ef916b8e
fix tab/space in torgzip.c
...
svn:r2492
2004-10-14 04:24:42 +00:00
Nick Mathewson
1c9426d6e0
Build without warnings on mac gcc 3.3
...
svn:r2487
2004-10-14 03:18:14 +00:00
Roger Dingledine
69830afc16
and another one
...
svn:r2484
2004-10-14 02:49:48 +00:00
Roger Dingledine
5f4a390b33
oh, and some more in common/
...
svn:r2483
2004-10-14 02:48:57 +00:00
Roger Dingledine
918ce7a084
a few more ints to size_ts
...
svn:r2461
2004-10-13 05:54:58 +00:00
Roger Dingledine
fe54bd00b9
ok, vim isn't the greatest editor in the world
...
svn:r2457
2004-10-12 20:28:53 +00:00
Roger Dingledine
a7d858bd6e
start the great migration from int to size_t
...
and clean some deadweight from util.h
svn:r2455
2004-10-12 20:20:19 +00:00
Nick Mathewson
19da1f36c2
Make a bounds-checking replacement for strtol with slightly easier error-checking in the common case
...
svn:r2452
2004-10-12 19:32:41 +00:00
Roger Dingledine
1c757b917d
fix signed/unsigned comparison, plus typo
...
svn:r2451
2004-10-12 19:09:40 +00:00
Nick Mathewson
e7241044e8
Better bounds checking on parsed ints
...
svn:r2450
2004-10-12 19:01:53 +00:00
Nick Mathewson
a91fc48b39
Note byte-order on result for parse_addr_port()
...
svn:r2444
2004-10-12 16:02:15 +00:00
Nick Mathewson
8b037509f3
Add functions to parse addr[:port] consistently
...
svn:r2440
2004-10-12 15:48:30 +00:00
Roger Dingledine
2bcd0f34f5
fix compile error: move variable declarations before code
...
svn:r2430
2004-10-08 05:43:28 +00:00
Nick Mathewson
6c970aec94
Turn tor_strpartion into a swiss-army-knife function, so it can terminate or not-terminate appropriately.
...
svn:r2429
2004-10-07 21:37:06 +00:00
Nick Mathewson
7b98fb58eb
More complete docs for crypto.c; factor out string partitioning code
...
svn:r2427
2004-10-07 20:58:53 +00:00
Nick Mathewson
ce3162d035
Make base-64-encoded DER work, including workaround for ugly openssl misfeature that makes base64 decoding fail when you strip out the newlines.
...
svn:r2423
2004-10-07 03:11:42 +00:00
Nick Mathewson
b56bb39ed6
Add a function to remove a set of characters from a string
...
svn:r2420
2004-10-06 13:26:37 +00:00
Nick Mathewson
8cca36d26a
Implement (temporarily) a base64-encoded-DER format for RSA keys; make it easier to generate fingerprints with no space
...
svn:r2419
2004-10-06 13:26:10 +00:00
Roger Dingledine
1e3b9e7d31
make the warn message better for reading short files
...
svn:r2385
2004-09-28 08:40:03 +00:00
Nick Mathewson
09586ef712
Make read_all distinguish between error and EOF; read_file_to_string should only check bytes read against st_size when in binary mode.
...
svn:r2375
2004-09-26 16:51:31 +00:00
Roger Dingledine
8385fdb590
make our tor_assert actually work when it's going to be triggered,
...
rather than seg fault
svn:r2368
2004-09-23 05:02:51 +00:00
Roger Dingledine
a1979800ab
bugfix on the bugfix
...
actually unlink the log entry.
ok, that wasn't cleverly hidden enough. let's try again.
svn:r2367
2004-09-23 04:59:02 +00:00
Roger Dingledine
f753f6f0e2
bugfix: when we run out of disk space, or other log writing error,
...
don't crash. just stop logging to that log and continue.
nick, can you find the bug i've cleverly hidden in this commit?
svn:r2365
2004-09-23 03:51:45 +00:00
Nick Mathewson
93f085c4a2
Stop using openssl functions that rely on stdio; they can apparently lead to linker grief on win32.
...
svn:r2354
2004-09-21 04:55:43 +00:00
Roger Dingledine
8954cd91ce
LOG_ERR is for when we're going to exit
...
svn:r2348
2004-09-10 21:39:53 +00:00
Nick Mathewson
0ef85f6dba
Some platforms have weird translations when you open files in "test" mode; make read/write_str_to_file aware.
...
svn:r2336
2004-09-08 07:16:34 +00:00
Nick Mathewson
b6798866d0
Idiot-proof uncompress; make sure it always nul-terminates its output. Also, make all compression methods nonzero.
...
svn:r2334
2004-09-08 06:47:33 +00:00
Nick Mathewson
f311206d1d
Make split function smarter; add a strcmpstart function so we can stop bungling strcmp(x, y, strlen(y));
...
svn:r2325
2004-09-02 18:25:50 +00:00
Nick Mathewson
3590eb535a
Add basic wrappers for zlib/gzip
...
svn:r2324
2004-09-02 18:22:51 +00:00
Nick Mathewson
31b81650b7
Define LONG_MAX and UINT_MAX when they are missing
...
svn:r2317
2004-08-25 19:16:18 +00:00
Roger Dingledine
f91c552af7
fix a seg fault on solaris
...
svn:r2313
2004-08-25 17:37:00 +00:00
Roger Dingledine
444a01610c
make the compile work (and not complain) on sunos 5.9
...
svn:r2312
2004-08-25 17:31:47 +00:00
Roger Dingledine
d91cacb839
agree with nick: this legal-chars-in-filename stuff gets us nothing
...
svn:r2310
2004-08-24 21:57:12 +00:00
Nick Mathewson
015232bd39
As far as I can tell, CONFIG_LEGAL_FILENAME_CHARACTERS is both pointless and broken. #if it out, pending agreement from arma. This fixes a bug on win32 that rejected paths with a : in them.
...
svn:r2309
2004-08-24 20:48:22 +00:00
Nick Mathewson
7979c0277d
Workaround for oddity in cygwin autoconf
...
svn:r2301
2004-08-19 17:21:17 +00:00
Roger Dingledine
7304ac1d6f
tweak the [...truncated] string again
...
svn:r2289
2004-08-18 11:21:50 +00:00
Roger Dingledine
40f9f94794
don't add a spurious newline before [truncated]
...
svn:r2282
2004-08-18 08:52:12 +00:00
Nick Mathewson
86980cf6e2
Functions to test nickname validity
...
svn:r2269
2004-08-18 04:44:24 +00:00
Nick Mathewson
7cb93e5bb6
Move string-splitting into a separate function
...
svn:r2263
2004-08-17 21:06:36 +00:00
Nick Mathewson
8566bbb489
Add strmap_isempty
...
svn:r2250
2004-08-17 06:28:34 +00:00
Nick Mathewson
15a903b21c
Convenience function to do a strcmp on each member of a smartlist of strings
...
svn:r2243
2004-08-16 20:46:00 +00:00
Nick Mathewson
ebf2d275bf
End truncated log entries with [truncated]
...
svn:r2235
2004-08-15 20:13:07 +00:00
Nick Mathewson
6453a25567
Add replace_file to util.[ch] to survive stupidity of windows rename call
...
svn:r2208
2004-08-09 04:28:25 +00:00
Nick Mathewson
f6cc218742
Refactor ISO-style (yyyy-mm-dd hh:mm:ss) time parsing into util.c; rename format/parse_rfc1123_time; make rephist remember used bandwidth; published used bandwidth in descriptors in 15-minute chunks. Breaks unittests.
...
svn:r2182
2004-08-07 02:46:16 +00:00
Nick Mathewson
2091dab7f4
fencepost
...
svn:r2178
2004-08-07 01:18:02 +00:00
Nick Mathewson
380f32f07d
hex_encode is obsoleted by base16_encode, and never actually worked in the first place. (Thanks to Timo Lindfors for noticing the never-actually-worked part.)
...
svn:r2175
2004-08-07 01:03:33 +00:00
Nick Mathewson
14d5478f29
Add functions to format and parse RFC1123-style times, for HTTP protocol.
...
svn:r2129
2004-08-04 01:11:15 +00:00
Nick Mathewson
5b61dd0457
Fix all warnings on win32 build
...
svn:r2127
2004-08-03 23:57:05 +00:00
Nick Mathewson
849e998ac6
It is possible to have struct timeval but not gettimeofday.
...
svn:r2125
2004-08-03 23:31:22 +00:00
Roger Dingledine
5525606653
check return value of fclose while writing to disk, since it might
...
return out-of-space, etc
svn:r2122
2004-07-23 21:25:28 +00:00
Roger Dingledine
3aaba3b16e
tell the user what time _they_ are too, when a cert is expired
...
svn:r2114
2004-07-22 23:06:28 +00:00
Nick Mathewson
7119345fbb
Fix base16_decode; trashing the stack is rude.
...
svn:r2110
2004-07-22 21:41:50 +00:00
Roger Dingledine
7459d067a5
now base16_encode() and base32_encode() can't ever fail
...
svn:r2103
2004-07-22 08:30:06 +00:00
Nick Mathewson
38d8e36919
Make tor_tls_new variant use alternative (certless) context
...
svn:r2096
2004-07-22 04:53:34 +00:00
Roger Dingledine
156cfb00fa
oh, and it should compile too
...
svn:r2088
2004-07-21 22:34:32 +00:00
Roger Dingledine
6e571c8c4c
make base16_encode() fail more obviously when it fails
...
svn:r2087
2004-07-21 22:33:26 +00:00
Roger Dingledine
cdb98cf04a
fix our tls handshake chain cert bug
...
svn:r2086
2004-07-21 22:11:11 +00:00
Nick Mathewson
c83f0e948f
Log certificate lifetime on failure.
...
svn:r2083
2004-07-21 17:59:24 +00:00
Nick Mathewson
2d514037b7
Log number of certs in wrong-length chains
...
svn:r2078
2004-07-21 03:32:56 +00:00
Nick Mathewson
334de84cbe
Misc small code cleanups; remove exit_server_mode(); change tor_tls_verify behavior
...
svn:r2073
2004-07-21 00:44:04 +00:00
Nick Mathewson
06c11a61ce
When faking gettimeofday with ftime, do it right.
...
svn:r2068
2004-07-20 21:23:50 +00:00
Roger Dingledine
19deb93c29
more useful warning messages
...
(fixed because the old ones confused a user)
svn:r2055
2004-07-19 19:49:03 +00:00
Nick Mathewson
bc36db351f
Resolve all DOCDOCs.
...
svn:r2050
2004-07-16 22:23:18 +00:00
Nick Mathewson
9364c40afd
Add generic expand_filename function to handle expanding ~/
...
svn:r2047
2004-07-15 02:00:43 +00:00
Roger Dingledine
7e344f191a
add is_local_IP() function to help distinguish which bandwidth "matters"
...
svn:r2040
2004-07-13 16:57:37 +00:00
Roger Dingledine
17e5f25214
trivial punctuation tweak
...
svn:r2027
2004-07-12 16:51:28 +00:00
Nick Mathewson
88451ce25b
Yes, I did mean "else if".
...
svn:r2016
2004-07-06 23:29:34 +00:00
Nick Mathewson
d5e275ddf4
Fix bug reported by peter palfrader: an empty address is unresolvable, but not an occasion for an assertion failure in a dnsworker.
...
svn:r2015
2004-07-06 23:25:21 +00:00
Nick Mathewson
7d8de8cd10
More digest/nickname fixes
...
svn:r2000
2004-07-02 23:40:03 +00:00
Nick Mathewson
541add90a1
Track routers by hash of identity key; use hex hash of identity key in place of nickname; accept (and use) hash of identity key in EXTEND cells.
...
svn:r1994
2004-07-01 01:16:59 +00:00
Nick Mathewson
b1e9adf056
Always use get_data_directory() instead of options.DataDirectory; fix a memory leak in router.c
...
svn:r1991
2004-06-30 16:37:08 +00:00
Nick Mathewson
653aaeef08
Always log version when starting tor.
...
svn:r1990
2004-06-30 16:35:11 +00:00
Nick Mathewson
8aec3a7301
Implement several 008pre1 items: needs more testing
...
svn:r1981
2004-06-21 04:37:27 +00:00
Roger Dingledine
43295ca61f
if datadirectory isn't owned by this uid, tell the user he must
...
fix it before he can proceed.
svn:r1968
2004-06-13 11:28:32 +00:00
Nick Mathewson
0d1b4b5024
Unbork windows whitespace
...
svn:r1949
2004-06-05 01:56:54 +00:00
Nick Mathewson
17b5b3685f
Make tor build on win32 again; handle locking for server
...
svn:r1948
2004-06-05 01:50:35 +00:00
Roger Dingledine
4db9e9aa8a
define FD_SETSIZE in all cases, not just win32
...
svn:r1937
2004-06-02 19:44:23 +00:00
Nick Mathewson
605e10a650
Stop multiplying logs on sighup.
...
svn:r1936
2004-06-02 19:18:37 +00:00
Roger Dingledine
1ef411fefd
use sys/param.h if it's there
...
svn:r1927
2004-06-01 17:03:01 +00:00
Roger Dingledine
8ca162c472
put a comment reminding us that we do hashes in software only
...
svn:r1925
2004-06-01 16:36:56 +00:00
Roger Dingledine
1841aa456b
rik's patch to not complain about freebsd's bug
...
svn:r1921
2004-05-26 20:27:54 +00:00
Roger Dingledine
f875db1821
it looks like parse_log_level() was never taught about WARN?
...
svn:r1917
2004-05-21 12:38:52 +00:00
Roger Dingledine
c278ff3bc2
minor comment patch
...
svn:r1916
2004-05-21 12:30:07 +00:00
Nick Mathewson
ccb825128e
Tinker with log behavior: never send error messages about logs into the bitbucket
...
svn:r1912
2004-05-20 19:47:28 +00:00
Nick Mathewson
9d2cd7fc6e
Allow multiple logfiles at different severity ranges
...
svn:r1899
2004-05-19 20:07:08 +00:00
Nick Mathewson
7511fbf993
Resolve some XXXs
...
svn:r1889
2004-05-18 15:35:21 +00:00
Roger Dingledine
6dc576bab7
bugfix: our integrity-checking digest was checking only the most
...
recent cell, not the previous cells like we'd thought.
this change is backward incompatible.
svn:r1868
2004-05-15 23:49:41 +00:00
Nick Mathewson
9c3fba5c3b
Not every RSA decrypt should warn on failure.
...
svn:r1853
2004-05-12 19:30:28 +00:00
Roger Dingledine
3cdf2d67da
it's amazing what a bit of punctuation can do for appearances
...
svn:r1843
2004-05-10 10:27:54 +00:00
Roger Dingledine
5dd9e60231
doxygen markup for common/*.h
...
svn:r1840
2004-05-10 07:54:13 +00:00
Nick Mathewson
c0ea93337d
Doxygenate common.
...
svn:r1829
2004-05-10 03:53:24 +00:00
Nick Mathewson
93576d5289
Add doxygen markup for util and buffers
...
svn:r1820
2004-05-07 17:04:12 +00:00
Nick Mathewson
6cfa2835a1
Fix bug in stream position adjustment
...
svn:r1801
2004-05-06 19:51:50 +00:00
Nick Mathewson
ebe8fa0d62
Use correct aes-ctr implementation in mainline, too.
...
svn:r1800
2004-05-06 19:41:33 +00:00
Nick Mathewson
8aebd83a0e
Add intptr_t and uintptr_t to torint.h
...
svn:r1794
2004-05-05 20:26:35 +00:00
Nick Mathewson
d49d3dcc7b
Make non-fake tor_poll robust against -1 fds
...
svn:r1787
2004-05-05 01:01:34 +00:00
Nick Mathewson
08ac3c7190
Fix mac compile
...
svn:r1782
2004-05-04 18:17:28 +00:00
Nick Mathewson
e6f3bf2a68
tor_assert(), not assert()
...
svn:r1777
2004-05-02 20:27:48 +00:00
Nick Mathewson
3dd1ef8783
Fix windows compile.
...
svn:r1776
2004-05-02 20:23:35 +00:00
Nick Mathewson
af08c4f878
Working strerror for windows socket errors, plus some snide comments.
...
svn:r1775
2004-05-02 20:18:21 +00:00
Nick Mathewson
a187d3e0b6
Assert that we never try to fakepoll on sock -1.
...
svn:r1774
2004-05-02 20:17:43 +00:00
Roger Dingledine
1558fb7650
some patches on the patches
...
svn:r1761
2004-05-01 23:29:20 +00:00
Nick Mathewson
4dc30ea3c8
Remove bogus */ so util.c compiles
...
svn:r1759
2004-05-01 21:50:53 +00:00
Nick Mathewson
9a041591ac
Finish documenting the functions in common
...
svn:r1758
2004-05-01 21:41:23 +00:00
Nick Mathewson
908ccb9dcd
Handle windows socket errors correctly; comment most of common.
...
svn:r1756
2004-05-01 20:46:28 +00:00
Roger Dingledine
4b316b4a7d
some cosmetic fixes
...
svn:r1747
2004-04-29 02:52:49 +00:00
Nick Mathewson
5a9b144092
Oops -- the Windows function is closesocket, not socketclose
...
svn:r1746
2004-04-28 21:17:42 +00:00
Nick Mathewson
9322641710
Use socketclose on windows as appropriate; end pid files with newline
...
svn:r1745
2004-04-28 21:14:56 +00:00
Nick Mathewson
ddb15b8f67
Remove IVs from cipher code, since AES-ctr has none.
...
svn:r1742
2004-04-28 20:31:32 +00:00
Roger Dingledine
5d1510883e
use nick's _ARRAYSIZE abstraction
...
svn:r1741
2004-04-28 20:22:37 +00:00
Roger Dingledine
47dc5cd1c8
nick, is this what you meant?
...
svn:r1740
2004-04-28 20:18:22 +00:00
Nick Mathewson
7055f837ab
Make Tor build on win32 with VC6 without warnings.
...
svn:r1739
2004-04-28 20:13:21 +00:00
Nick Mathewson
ac622d94dc
Workarounds for a couple of pieces of windows strangeness.
...
svn:r1734
2004-04-28 19:35:12 +00:00
Roger Dingledine
4e0dd5bd33
some compilers don't like an array of length zero
...
nick: should we remove support for IVs for now, since we don't
use them and don't plan to use them?
svn:r1732
2004-04-27 23:50:35 +00:00
Nick Mathewson
873564ea9c
Some versions of openssl have an SSL_pending function that erroneously
...
returns bytes when there is a non-application record pending.
I have no idea when/why this would even happen, but let's catch it and
make sure tor_tls_get_pending_bytes stays correct.
svn:r1727
2004-04-26 23:19:21 +00:00
Nick Mathewson
d6d4b93863
Remove spurious semi
...
svn:r1724
2004-04-26 23:01:15 +00:00
Nick Mathewson
ad07c62938
Add a macro to catch unhandled openssl errors.
...
svn:r1723
2004-04-26 23:00:07 +00:00
Roger Dingledine
719bb5c0f3
log debug so nick can see it too
...
svn:r1721
2004-04-26 22:22:11 +00:00
Peter Palfrader
750211259b
The dots are there so you see test doing something. Therefore we should flush them after printing
...
svn:r1720
2004-04-26 22:12:13 +00:00
Nick Mathewson
337f7a981f
Include strerror(errno) with tls syscall errors
...
svn:r1718
2004-04-26 18:11:58 +00:00
Nick Mathewson
f6dbe5a0d4
Refactor crypto error handling to be more like TLS error handling:
...
crypto_perror is a no-no, since an operation can set more than one
error.
Also, fix a bug in the unix crypto_seed_rng: mixing stdio with
/dev/urandom is a bad idea, since fopen can make all kinds of weird
extraneous syscalls (mmap, fcntl, stat64, etc.) and since fread tends
to buffer data in big chunks, thus depleting the entropy pool.
svn:r1717
2004-04-26 18:09:50 +00:00
Nick Mathewson
b410dff6c0
Log pending TLS errors in a couple more places, in case they are possible.
...
svn:r1716
2004-04-26 16:52:47 +00:00
Nick Mathewson
0355d29e12
Call tls_log_errors at a more appropriate location; we can remove the other calls in tor_tls_verify once we are sure they never happen.
...
svn:r1709
2004-04-26 03:09:17 +00:00
Nick Mathewson
cb465160da
Very blunt debugging code: log pending errors at start and end of tor_tls_verify
...
svn:r1707
2004-04-26 02:33:12 +00:00
Nick Mathewson
568a4d187a
Check for machine/limits.h in addition to sys/limits.h
...
svn:r1705
2004-04-25 23:47:26 +00:00
Roger Dingledine
37192bd25e
use tor_assert and PUBLIC_KEY_OK
...
but don't use tor_assert inside log.c, to avoid loops
svn:r1696
2004-04-25 19:59:38 +00:00
Nick Mathewson
e062ca046b
Add a tor_assert macro that logs failed assertions.
...
svn:r1695
2004-04-25 19:37:39 +00:00
Nick Mathewson
70bbd0cafa
Add assert on crypto_pk_write_private_key,and macros to make sure we have real keys
...
svn:r1694
2004-04-25 19:21:44 +00:00
Roger Dingledine
6a45028ccb
don't warn when private_decrypt_hybrid fails
...
svn:r1689
2004-04-25 04:32:59 +00:00
Nick Mathewson
c44016e86e
Merge flagday into main branch.
...
svn:r1683
2004-04-24 22:17:50 +00:00
Roger Dingledine
06a60c4fbb
use the real socketpair if we've got it
...
now it's just windows that has to use the kludged one
svn:r1675
2004-04-19 21:31:32 +00:00
Roger Dingledine
a54ded2879
util.c uses LONG_MAX, needs another include on fbsd 5.x
...
svn:r1653
2004-04-17 06:35:03 +00:00
Roger Dingledine
4d380ea902
quiet a -l info that should be -l debug
...
svn:r1634
2004-04-15 22:08:37 +00:00
Nick Mathewson
306adfc8bd
Fix two dumb leaks in crypto.c
...
svn:r1592
2004-04-12 05:27:38 +00:00
Nick Mathewson
aa7cfd93e5
Fix base32 implementation; make base32 implementation follow standard; add more tests for base32
...
svn:r1574
2004-04-08 20:56:33 +00:00
Nick Mathewson
024c059fae
Force tor_malloc(0) to always be sane
...
svn:r1558
2004-04-08 03:05:08 +00:00
Roger Dingledine
47488fa525
allow 90 minutes of clock skew, not 30
...
svn:r1544
2004-04-08 01:08:56 +00:00
Nick Mathewson
8169da5c30
Don't use Tor version 0.0.5 for intro/rendezvous points. (We don't need
...
to worry about 0.0.4 or earlier, because nobody is running them any more.)
svn:r1533
2004-04-07 21:36:03 +00:00
Nick Mathewson
3d60cd1d61
Delete trailing whitespace and expand tabs; remove unused aes decrypt code
...
svn:r1522
2004-04-07 19:57:40 +00:00
Nick Mathewson
75c19716a8
Put ourself in router list; act accordingly.
...
svn:r1521
2004-04-07 19:46:27 +00:00
Nick Mathewson
f24519e4b9
Set correct address and port mappings on outgoing rendezvous connections
...
svn:r1513
2004-04-06 22:05:49 +00:00
Nick Mathewson
8b371c2aa5
router_choose_random_node wants a smartlist of routers, not of nicknames.
...
svn:r1510
2004-04-06 21:19:59 +00:00
Nick Mathewson
2fc106d210
Force hybrid encryption on for key negotiation
...
svn:r1509
2004-04-06 20:55:46 +00:00
Nick Mathewson
6290d027c9
Continue attack on magic numbers; use new crypto wrappers where possible
...
svn:r1504
2004-04-06 20:16:12 +00:00
Nick Mathewson
ce51a30adc
Remove the last tab in non-contributed code
...
svn:r1503
2004-04-06 03:46:37 +00:00
Nick Mathewson
257d509b91
Document stuff, reduce magic numbers, add emacs magic
...
svn:r1502
2004-04-06 03:44:36 +00:00
Nick Mathewson
34633c1122
add more constants
...
svn:r1488
2004-04-05 20:52:16 +00:00
Nick Mathewson
12ede0a2c4
use the right variable when comparing hashes; maybe fix "Hash of session" bug
...
svn:r1481
2004-04-05 17:36:30 +00:00
Nick Mathewson
84b9e90d5f
i2d_RSAPublicKey advances the pointer it receives past the ASN1-encoded string.
...
svn:r1478
2004-04-05 17:10:48 +00:00
Nick Mathewson
82cde03ddc
Make it build on linux
...
svn:r1468
2004-04-03 04:08:54 +00:00
Nick Mathewson
b3c2b62a14
Make "common" no longer depend on or.h
...
svn:r1466
2004-04-03 04:05:12 +00:00
Nick Mathewson
d93ff0b82f
Handle rendezvous relay cells
...
svn:r1464
2004-04-03 03:37:11 +00:00
Nick Mathewson
7451de5d97
Loops work better when they terminate. Non-terminating loops are easier
...
to diagnose when they don't trash the stack.
svn:r1460
2004-04-03 02:55:42 +00:00
Nick Mathewson
ffc58cd91a
Build without warnings against openssl 0.9.6
...
svn:r1459
2004-04-03 02:43:09 +00:00
Nick Mathewson
137b577bbd
Refactor the heck out of crypto interface: admit that we will stick with one ciphersuite at a time, make const things const, and stop putting openssl in the headers.
...
svn:r1458
2004-04-03 02:40:30 +00:00
Nick Mathewson
fc4d15baf6
Hide smartlist internals
...
svn:r1451
2004-04-03 00:58:54 +00:00
Nick Mathewson
e8345bfced
refactor; start adding debugging logs to midpoint rend stuff
...
svn:r1445
2004-04-02 23:30:54 +00:00
Nick Mathewson
08d748b6b3
Implement rennd_services_init
...
svn:r1443
2004-04-02 23:01:00 +00:00
Nick Mathewson
cbbd13f789
Add new functions to wrap digest and sign/checksig.
...
svn:r1436
2004-04-01 22:10:33 +00:00
Nick Mathewson
56b3d67149
Separate "generate-DH-key" from "get-DH-key" without breaking old interface
...
svn:r1431
2004-04-01 20:04:54 +00:00
Nick Mathewson
35f531b94f
Add helpful hybrid encryption functions
...
svn:r1423
2004-04-01 03:08:35 +00:00
Roger Dingledine
d7cb4d0ae6
make changes that ben laurie suggested
...
(ben, was this what you had in mind?)
svn:r1415
2004-03-31 22:41:25 +00:00
Nick Mathewson
b32440a028
Implement hidserv_XX functions; there is still an XXX in directory_handle_command
...
svn:r1404
2004-03-31 03:42:56 +00:00
Nick Mathewson
6ea61d5e0d
Parse and generate service descriptors
...
svn:r1403
2004-03-31 02:07:38 +00:00
Nick Mathewson
93ab51e9ac
Make smartlist Do What Arma Expects.
...
svn:r1401
2004-03-30 22:59:00 +00:00
Nick Mathewson
919a8f236e
Resolve type-punning warnings
...
svn:r1399
2004-03-30 22:50:49 +00:00
Nick Mathewson
c31f5505da
Jump through a hoop, suppress a warning
...
svn:r1398
2004-03-30 22:42:26 +00:00
Nick Mathewson
96a86ef14d
Remove maximum-size field from smartlists
...
svn:r1397
2004-03-30 20:05:52 +00:00
Nick Mathewson
6ea95488d2
Add more key manipulation functions, and base32 functions, to crypto
...
svn:r1395
2004-03-30 19:47:32 +00:00
Nick Mathewson
abcf3d9341
Make smartlists start small and grow as needed.
...
svn:r1394
2004-03-30 19:25:43 +00:00
Roger Dingledine
0864d3f484
add in a 'notice' log level
...
svn:r1383
2004-03-30 03:15:23 +00:00
Nick Mathewson
b69f5f3e1b
Add an autoconf test for whether unaligned int access is permitted.
...
It works on macos, and works correctly when I twiddle the test code to
generate a spurious segfault. Will it work anywhere else?
svn:r1329
2004-03-21 04:14:06 +00:00
Nick Mathewson
0d8feba6d8
Add macros and functions to wrap memcpy/alignment logic.
...
svn:r1326
2004-03-21 02:01:17 +00:00
Roger Dingledine
d10fcc89ec
make uname() more likely to work on solaris
...
(linux says 0 is success, solaris says 1 is success)
svn:r1322
2004-03-20 21:22:16 +00:00
Nick Mathewson
da9d5ccfda
Add initial history-tracking backend code for reputation module. Not called or tested yet.
...
svn:r1310
2004-03-20 01:48:05 +00:00
Nick Mathewson
b0ef4e1143
Use strmap code for client DNS.
...
svn:r1309
2004-03-20 01:21:19 +00:00
Nick Mathewson
9199696182
Add some wrappers around SPLAY_* for the common map-from-string-to-X case.
...
It will probably be less blindingly fast than using SPLAY_* directly, but
only slightly so.
svn:r1306
2004-03-19 22:07:24 +00:00
Roger Dingledine
df3f37b84f
getpid returns a pid_t. we all know that's an int. but solaris doesn't know.
...
svn:r1305
2004-03-19 21:34:04 +00:00
Roger Dingledine
c195f69058
isspace and friends take an int. solaris cares.
...
svn:r1303
2004-03-19 20:50:12 +00:00
Roger Dingledine
6438a5db08
ship strlcat and strlcpy with the tarball, but don't compile them
...
svn:r1297
2004-03-19 06:39:52 +00:00
Roger Dingledine
7648c6c0ea
define INADDR_NONE so we compile on solaris
...
svn:r1295
2004-03-18 19:59:39 +00:00
Nick Mathewson
971b002d93
Include strlcpy and strlcat where not available, so our string ops can be less error-prone.
...
svn:r1289
2004-03-17 07:28:09 +00:00
Roger Dingledine
6a2821a7ff
fix a byte order bug
...
svn:r1277
2004-03-15 04:00:11 +00:00
Roger Dingledine
f55ff5b8d2
teach us to recognize internal IPs
...
svn:r1271
2004-03-14 18:07:46 +00:00
Roger Dingledine
3ccd545c9a
crash when our logs go bad
...
nick, can you think of a better response here?
svn:r1268
2004-03-14 15:50:00 +00:00
Roger Dingledine
45a3f6b97c
more pesky tabs
...
svn:r1265
2004-03-12 13:02:16 +00:00
Nick Mathewson
976bacae94
Make all the other read/writes into recv/sends, except when they shouldn't be.
...
svn:r1260
2004-03-11 06:35:03 +00:00
Nick Mathewson
9b4203266e
Make OP work on windows! (Also misc logging tweaks)
...
svn:r1258
2004-03-11 06:19:08 +00:00
Nick Mathewson
59e2c77824
Get entropy in windows.
...
svn:r1257
2004-03-11 05:14:06 +00:00
Nick Mathewson
2f103ccf6f
Some stuff *should* be signed
...
svn:r1251
2004-03-10 06:57:57 +00:00
Nick Mathewson
0e5a134709
Fix DOS line endings; autoconfize checks for strptime and inet_aton
...
svn:r1248
2004-03-09 22:09:13 +00:00
Nick Mathewson
2da54de968
Make tor build on windows again. More work still needed
...
svn:r1247
2004-03-09 22:01:17 +00:00
Roger Dingledine
20f11f1800
clarifying comment for crypto_pk_get_fingerprint
...
svn:r1243
2004-03-08 00:11:37 +00:00
Roger Dingledine
08346f13f0
make parse_line_from_file fail rather than warn for malformed lines
...
svn:r1193
2004-03-02 04:59:52 +00:00
Nick Mathewson
5072488a95
make 'make test' exit(1) if a test fails.
...
svn:r1190
2004-03-01 06:45:32 +00:00
Roger Dingledine
5cf0b6224b
bugfix: stop trying to write to a stderr that may not be there
...
also, tell start_daemon our desired cwd
svn:r1170
2004-02-28 23:21:29 +00:00
Nick Mathewson
67a273962a
On OSX, decline to use the built-in select-baed poll wrapper, since it seems to sometimes not work.
...
svn:r1114
2004-02-20 23:41:45 +00:00
Roger Dingledine
f202d38191
patch from vicman to publish less platform information
...
svn:r1111
2004-02-18 21:23:50 +00:00
Roger Dingledine
c9d9b9b2a7
we define some big constant arrays but don't use them
...
svn:r1102
2004-02-18 03:17:35 +00:00
Roger Dingledine
c12a6f58b5
fix typo
...
svn:r1007
2004-01-20 02:14:12 +00:00
Nick Mathewson
793c65e60f
Note discrepency between N bytes transmitted over TLS and actual bandwidth use; add 2 functions to help resolve.
...
svn:r986
2004-01-13 01:19:02 +00:00
Nick Mathewson
cacacfe2b1
Integrate new daemon code, adapted from submission by christian grothoff
...
svn:r969
2004-01-03 22:40:49 +00:00
Roger Dingledine
bc8c6732cb
add crypto_cipher_rewind to reverse crypto_cipher_advance
...
svn:r957
2003-12-23 07:43:05 +00:00
Roger Dingledine
eb730c41c8
clean tabs, trailing whitespace
...
svn:r952
2003-12-17 21:14:13 +00:00
Roger Dingledine
389eb48690
document an openssl gotcha
...
svn:r947
2003-12-17 05:31:52 +00:00
Roger Dingledine
f3b165fdc0
change crypto_digest_new_env to crypto_new_digest_env
...
(and same with _free_)
to match our conventions
i think our conventions may be getting too ad hoc
svn:r940
2003-12-16 08:13:26 +00:00
Roger Dingledine
e358a362ee
rename digest_copy to digest_dup, make it return, make gcc happier
...
svn:r939
2003-12-16 05:47:21 +00:00
Nick Mathewson
eeae6157ed
Add more fine-grained SHA1 functionality.
...
svn:r937
2003-12-16 05:29:04 +00:00
Nick Mathewson
4885e90490
Make compile warning-free on cygwin
...
svn:r936
2003-12-15 21:35:52 +00:00
Roger Dingledine
a5aa80cc41
make --debuglogfile (or any second log file) work
...
svn:r935
2003-12-14 09:58:43 +00:00
Roger Dingledine
3465c4dee4
make it compile
...
svn:r923
2003-12-14 05:00:09 +00:00
Roger Dingledine
f4cb5d8c93
extend smartlist with _remove() and _subtract()
...
svn:r922
2003-12-14 04:57:47 +00:00
Roger Dingledine
444798dfb9
remove obsolete code
...
svn:r914
2003-12-14 00:11:48 +00:00
Roger Dingledine
4d3d99fa0c
extend smartlist with a few smarter operations
...
svn:r910
2003-12-13 23:32:03 +00:00
Roger Dingledine
8222fe8e4f
clean up some copyrights
...
svn:r907
2003-12-13 22:53:17 +00:00
Roger Dingledine
5458ca39e8
minor tweaks to the smartlist operations
...
svn:r903
2003-12-13 06:56:21 +00:00
Roger Dingledine
1ae84fcbc1
add a 'smartlist' building block that picks random elements from a list
...
svn:r897
2003-12-13 01:42:44 +00:00
Roger Dingledine
d23c66b041
make the license explicit on fakepoll.[ch]
...
svn:r895
2003-12-09 21:37:26 +00:00
Nick Mathewson
ac552573dd
Make router/directory parsing nondestructive and more const-friendly
...
svn:r890
2003-12-08 23:45:37 +00:00
Roger Dingledine
05b9c35173
assert that nobody asks for a random number between 0 and -1
...
svn:r875
2003-12-03 08:08:07 +00:00
Nick Mathewson
5e9ba094bc
Fix incorrect error message
...
svn:r862
2003-11-21 05:55:03 +00:00
Peter Palfrader
9a676b04dd
Check that we can write to the logfile and log a warning to stderr if we can't
...
Move writing of pidfile after daemonizing, and also after setting the [ug]id:
This means that the tor user needs write priviliges to the pidfile location.
It needs it for unlinking the pidfile anyway.
svn:r846
2003-11-19 02:09:43 +00:00
Roger Dingledine
ec02f83f94
add a tor_malloc_zero wrapper: tor_malloc and memset 0
...
svn:r836
2003-11-18 08:20:09 +00:00
Nick Mathewson
dd16a9abcb
Stop leaking X509 certs; those things are _nasty_ on the carpet
...
svn:r833
2003-11-18 06:52:25 +00:00
Roger Dingledine
cc8ce64cb2
fix trivial typo
...
svn:r808
2003-11-13 06:45:59 +00:00
Roger Dingledine
9358381d83
break out the string manipulation routines
...
svn:r804
2003-11-12 19:34:19 +00:00
Nick Mathewson
5e4b9c6b61
Remove minor biasing problem from crypto_pseudo_rand_int
...
svn:r799
2003-11-12 04:28:30 +00:00
Nick Mathewson
785f5cdac8
Make crypto_pseudo_rand* never fail.
...
svn:r797
2003-11-12 04:12:35 +00:00
Roger Dingledine
3d19a9b514
fix a bug in handling clock skew
...
svn:r785
2003-11-11 04:08:30 +00:00
Nick Mathewson
3c4b4c8cac
Check in a working cross-platform timegm
...
svn:r779
2003-11-10 06:28:53 +00:00
Roger Dingledine
a27b570788
bugfix for win32 with lots of users
...
plus general cleanup on switch_id()
svn:r684
2003-10-27 10:26:44 +00:00
Nick Mathewson
faa0f7ffe7
Use daemon(3) function where available.
...
svn:r665
2003-10-23 14:28:44 +00:00
Nick Mathewson
71e5ad714b
resolve warning
...
svn:r664
2003-10-23 14:27:53 +00:00
Nick Mathewson
6b79d8a7e9
Two-pronged attack at my overzealous skew fixes.
...
The problem was that the fixes had us generating TLS certs with a
2-day lifetime on the assumption that we'd rotate fairly often. In
fact, we never rotate our TLS keys.
This patch fixes the situation in 2 ways:
1. It bumps the default lifetime back up to one year until we get
rotation in place.
2. It changes tor_tls_context_new() so that it doesn't leak memory
when you call it more than once.
svn:r663
2003-10-23 14:20:51 +00:00
Steven Hazel
4fef6f4566
switch_id() no longer tries to log the user name when it's calld on
...
Windows, since we don't know whether it's the user or the group that
was set.
svn:r659
2003-10-22 17:25:58 +00:00
Nick Mathewson
7604cfe61b
Clock skew fixes.
...
Allow some slop (currently 3 minutes) when checking certificate validity.
Change certificate lifetime from 1 year to 2 days. Since we
regenerate regularly (we regenerate regularly, right??), this
shouldn't be a problem.
Have directories reject descriptors published too far in the future
(currently 30 minutes). If dirservs don't do this:
0) Today is January 1, 2000.
1) A very skewed server publishes descriptor X with a declared
publication time of August 1, 2000.
2) The directory includes X.
3) Because of certificate lifetime issues, nobody can use the
skewed server.
4) The server fixes its skew, and goes to republish a new descriptor Y
with publication time of January 1, 2000.
5) But because the directory already has a "more recent" descriptor X,
it rejects descriptor "Y" as superseded!
This patch should make step 2 go away.
svn:r658
2003-10-22 16:41:35 +00:00
Steven Hazel
4139c1c86a
- fixed a bug in the id switching code -- setgid has to happen before
...
setuid, because after we setuid we don't have the priviledges we
need to setgid anymore, duh. merged switch_user() and
switch_group() into switch_id(), since that code has to be wound
together.
- return -1 from switch_id() if it's not defined to do anything else.
- moved daemoinize(), write_pidfile(), and switch_id() from main.c to
util.c
svn:r656
2003-10-22 11:21:29 +00:00
Roger Dingledine
069227db5b
introduce new tor_free() macro
...
svn:r643
2003-10-21 09:48:58 +00:00
Roger Dingledine
5f1750a288
include our own timegm() impl, since it's not portable
...
svn:r635
2003-10-20 20:19:59 +00:00
Roger Dingledine
dc85b7af3c
warn, not err
...
svn:r630
2003-10-19 01:15:36 +00:00
Nick Mathewson
0ec2a34a1d
Code to get nicknames from peer certs
...
svn:r627
2003-10-19 00:46:51 +00:00
Roger Dingledine
ec96419109
let tls tolerate reallocing the buf
...
and also remember the params for ssl_write if it returns wantread.
svn:r626
2003-10-19 00:39:48 +00:00
Roger Dingledine
c627ba2632
first steps toward a WANTWRITE SSL_write tls bug fix
...
how exactly the same do the arguments need to be? :(
svn:r625
2003-10-18 08:00:19 +00:00
Roger Dingledine
61e180ceb1
start to track down the 'peer has invalid cert' bug
...
svn:r623
2003-10-18 06:48:46 +00:00
Roger Dingledine
2093f60760
we've been stomping on memory while reading config
...
doesn't seem to have bitten us yet, but let's fix that :)
svn:r619
2003-10-18 01:28:39 +00:00
Roger Dingledine
82aa621b47
rewrite close_logs so it could possibly work
...
remove deadbeef memory-clobber testing (for now)
svn:r616
2003-10-18 00:07:58 +00:00
Nick Mathewson
f32c1c3127
Log TLS errors even harder
...
svn:r604
2003-10-15 23:50:25 +00:00
Nick Mathewson
f81178a312
Add more logging on some ssl errors.
...
svn:r603
2003-10-15 23:42:44 +00:00
Roger Dingledine
11a23fc280
clean up logging, allow user to specify log files
...
If DebugLogFile is specified, log to it at -l debug
If LogFile is specified, log to it at the -l from the commandline
(default info)
If no LogFile *and* not a Daemon, then log to stdout.
Make conn->s = -1 by default (this might break things)
When kill -USR1, prefer to log at INFO, but make sure they always see it.
svn:r596
2003-10-15 18:50:16 +00:00
Nick Mathewson
695920d09f
Build without warnings on OS X.
...
svn:r595
2003-10-15 18:48:48 +00:00
Nick Mathewson
22ef733058
Make add_file_log return 0 on success.
...
svn:r594
2003-10-15 18:38:38 +00:00
Nick Mathewson
77be56fbdd
Add tor_realloc to mirror tor_malloc
...
svn:r582
2003-10-14 01:11:42 +00:00
Roger Dingledine
8df0eee16a
oops, bugfix
...
svn:r572
2003-10-10 01:50:20 +00:00
Roger Dingledine
36fb8e839d
change WARNING to WARN
...
svn:r570
2003-10-10 01:48:03 +00:00
Nick Mathewson
36939303c9
Update LICENSE and copyright dates.
...
svn:r560
2003-10-08 02:04:08 +00:00
Nick Mathewson
3d7463d2b3
Clear revents even when no events are received. Also, since everyone gets in exceptions, everyone gets to increment maxfd.
...
svn:r550
2003-10-07 21:16:04 +00:00
Nick Mathewson
74e6c03cab
Hoping to find an fd larger than ((unsigned)-1) is probably a lost cause.
...
svn:r549
2003-10-07 20:45:16 +00:00
Roger Dingledine
f9f091eb0e
do not ask for whom there's an error, it polls for thee
...
svn:r548
2003-10-07 20:02:45 +00:00
Roger Dingledine
de6cbe53c0
some early bugfixes
...
our log() conflicts with log(3)
distribute only the correct files from doc/ and src/config/
sometimes laptops go back in time. i guess that's ok for now.
and bump the version number because we're live.
svn:r544
2003-10-07 16:30:05 +00:00
Roger Dingledine
be874358a4
wrap strdup; prefer time() to gettimeofday()
...
svn:r538
2003-10-04 03:29:09 +00:00
Roger Dingledine
750b238aea
clean some includes
...
svn:r535
2003-10-04 01:36:11 +00:00
Nick Mathewson
6ac42f5ec0
Make testcases run again; more sanity checking to descriptor generation.
...
svn:r532
2003-10-01 22:31:13 +00:00
Nick Mathewson
f694ab23f5
Flush after fputs
...
svn:r526
2003-10-01 00:42:24 +00:00
Roger Dingledine
f0e94dab86
make log use a larger buffer, for easier debugging
...
svn:r515
2003-09-30 19:53:25 +00:00
Roger Dingledine
3ed7aedc11
bugfixes and features: closer to making dirserv work
...
fix a variety of seg faults
don't try to list OPs in running-routers
write cached-directory to disk when rebuilding the dir
on boot, dirservers load approved-routers file
on boot, dirservers load cached directory file
svn:r508
2003-09-29 23:14:49 +00:00
Roger Dingledine
467d278b8b
more cleanup and rearranging
...
still not finished integrating new dirserv stuff
svn:r507
2003-09-29 07:50:08 +00:00
Roger Dingledine
677707433e
shift read_file_to_str() into util.c
...
svn:r504
2003-09-28 06:47:29 +00:00
Nick Mathewson
798bb6ab3b
Add function to wrap SSL_pending
...
svn:r501
2003-09-27 20:07:40 +00:00
Roger Dingledine
bf10a3c0f1
finish enforcing the log convention
...
svn:r494
2003-09-26 22:27:24 +00:00
Roger Dingledine
d8f646c44f
make writing descs work
...
svn:r492
2003-09-26 21:26:25 +00:00
Nick Mathewson
febb2251ca
Add code to parse fingerprint files and compare routers against fingerprint files.
...
svn:r490
2003-09-26 20:41:23 +00:00
Nick Mathewson
a3e08a0119
Bugfixes in crypto_pk_write_private_key_to_filename
...
svn:r489
2003-09-26 18:44:20 +00:00
Nick Mathewson
92acbe12bc
Refactor common file code into util.c; add published to descriptors
...
svn:r487
2003-09-26 18:27:35 +00:00
Roger Dingledine
3b5191d36d
various bugfixes and updates
...
redo all the config files for the new format (we'll redo them again soon)
fix (another! yuck) segfault in log_fn when input is too large
tor_tls_context_new() returns -1 for error, not NULL
fix segfault in check_conn_marked() on conn's that die during tls handshake
make ORs also initialize conn from router when we're the receiving node
make non-dirserver ORs upload descriptor to every dirserver on startup
add our local address to the descriptor
add Content-Length field to POST command
revert the Content-Length search in fetch_from_buf_http() to previous code
fix segfault in memmove in fetch_from_buf_http()
raise maximum allowed headers/body size in directory.c
svn:r484
2003-09-25 10:42:07 +00:00
Nick Mathewson
3d4ccb781a
Refactor buffers; implement descriptors.
...
'buf_t' is now an opaque type defined in buffers.c .
Router descriptors now include all keys; routers generate keys as
needed on startup (in a newly defined "data directory"), and generate
their own descriptors. Descriptors are now self-signed.
Implementation is not complete: descriptors are never published; and
upon receiving a descriptor, the directory doesn't do anything with
it.
At least "routers.or" and orkeygen are now obsolete, BTW.
svn:r483
2003-09-25 05:17:11 +00:00
Roger Dingledine
e514ac528c
fix a segfault on truncated log lines
...
svn:r473
2003-09-19 09:30:34 +00:00
Nick Mathewson
5f9ac2bdfd
More fine-grained logging messages on ZeroReturn/Syscall error cases
...
svn:r467
2003-09-16 20:53:09 +00:00
Nick Mathewson
7711c2e745
Add backend support for multiple logfiles, including console logs.
...
Also optimize logging by formatting messages in memory before sending
them through stdio. (It turns out (according to gprof) that logging
performance matters.)
svn:r463
2003-09-16 17:58:36 +00:00
Nick Mathewson
e4dfc3c8fe
Cipher lists need to be colon separated. Also make initialization more bulletproof
...
svn:r459
2003-09-15 19:38:52 +00:00
Nick Mathewson
633a5ffc0b
Fix TLS error logging
...
svn:r458
2003-09-15 18:37:49 +00:00
Nick Mathewson
408bff4a23
Log protocol errors
...
svn:r457
2003-09-15 18:18:37 +00:00
Roger Dingledine
e585dad887
fix the cpuworker circ-had-vanished bug (maybe)
...
still several (many) tls-related bugs outstanding.
svn:r454
2003-09-14 02:58:50 +00:00
Nick Mathewson
001cd08b2e
Fix bugs in certificate generation and SSL context creation. Both seem to work now.
...
svn:r447
2003-09-11 23:26:31 +00:00
Nick Mathewson
5082ee8ae0
Non-debugging messages are nice to log too
...
svn:r444
2003-09-11 22:13:13 +00:00
Nick Mathewson
529d3bc56f
Resolve XXXXs in tortls.c
...
svn:r443
2003-09-11 21:38:57 +00:00
Nick Mathewson
f5b4ef1fa2
Simplify some code paths in TLS; cut down on memory leaks; use
...
reasonable ciphers if not everyone has OpenSSL 0.9.7.
svn:r442
2003-09-11 21:12:39 +00:00
Roger Dingledine
0761bc7b83
fix typo that's been bugging me
...
svn:r440
2003-09-11 20:10:39 +00:00
Nick Mathewson
e22b271895
Add certificate verification functions
...
svn:r438
2003-09-10 00:47:39 +00:00
Nick Mathewson
9955b265ab
Make crypto structures private to crypto.c
...
svn:r437
2003-09-10 00:47:24 +00:00
Nick Mathewson
67697d5ab1
Add prototypes for functions to check whether the peer certificate is
...
valid (if it is present); and to get a public key from a peer
certificate (in order to identify the peer).
svn:r436
2003-09-10 00:10:37 +00:00
Roger Dingledine
1a9b5f9de9
another wishlist function for the tls interface
...
svn:r433
2003-09-08 10:46:19 +00:00
Roger Dingledine
ace475f01c
hide the global tls context inside tortls.c
...
svn:r431
2003-09-08 06:22:19 +00:00
Roger Dingledine
99d1e4931b
move variable declarations to top of function
...
svn:r425
2003-09-05 05:58:21 +00:00
Nick Mathewson
fd20011c26
Add initial interfaces and code for TLS support. Interfaces are right; code needs work and testing.
...
svn:r424
2003-09-04 16:05:08 +00:00
Roger Dingledine
58c5d5e918
fix formatting in crypto.c for my sanity
...
svn:r411
2003-08-25 07:06:12 +00:00
Roger Dingledine
2dda97e8fd
implemented cpuworkers
...
please poke at it and report bugs
still needs polishing, and only handles onions now (should handle
OR handshakes too)
svn:r402
2003-08-20 23:05:22 +00:00
Roger Dingledine
d43f145ddf
include torint.h in 'make dist'
...
svn:r401
2003-08-14 21:46:24 +00:00
Nick Mathewson
1777487f4e
Tor now builds on win32.
...
svn:r400
2003-08-14 17:51:36 +00:00
Nick Mathewson
cd3467bb01
Attempt to make sockets code work right on windows.
...
svn:r398
2003-08-14 17:13:52 +00:00
Nick Mathewson
bbd4032fc1
Make windows happier still
...
svn:r392
2003-08-12 08:18:13 +00:00
Nick Mathewson
9b12a48428
Stop trying to #include the world in util.c
...
svn:r390
2003-08-12 07:49:29 +00:00
Nick Mathewson
2cb4f7a473
Adopt socketpair implementation from perl. For now, always use it.
...
svn:r389
2003-08-12 07:43:15 +00:00
Nick Mathewson
e4a6ea5c46
Add abstraction for fork vs thread.
...
svn:r387
2003-08-12 07:01:20 +00:00
Nick Mathewson
5c4255595d
Dont use explicit paths for orconfig.h -- it messes up the windows build
...
svn:r386
2003-08-12 06:45:03 +00:00
Nick Mathewson
2aff21f857
Reorder includes so that fakepoll.c gets built when it should
...
svn:r384
2003-08-12 06:41:40 +00:00
Nick Mathewson
b927c56144
unbork windows line endings
...
svn:r381
2003-08-12 03:16:15 +00:00
Nick Mathewson
c336c99e60
Start of port to win32. Missing are:
...
- signal support
- forking for DNS farm
- changes for async IO
- daemonizing
In other words, some files still don't build, and the ones that do build,
do nonblocking IO incorrectly.
I'm also not checking in the project files till I have a good place
for them.
svn:r380
2003-08-12 03:08:41 +00:00
Nick Mathewson
5126f203f2
Work on systems with broken AC_CHECK_TYPE
...
svn:r379
2003-08-11 23:21:51 +00:00
Nick Mathewson
58e2edfb24
Who would have thought that some systems define intfoo_t, but not uintfoo_t? Cygwin is such a system.
...
svn:r378
2003-08-11 21:16:13 +00:00
Nick Mathewson
7284c25b34
Cope better on platforms that define some of intFOO_t in sys/types.h or elsewhere
...
svn:r377
2003-08-11 20:50:30 +00:00
Nick Mathewson
5267518455
autoconf around missing stdint.h
...
svn:r376
2003-08-11 20:40:21 +00:00
Nick Mathewson
f12fdd62aa
Be smarter about getting key matter from DH.
...
Formerly, once we had g^xy, we took the last N bytes from g^xy.
Now, we take SHA(g^xy || [0]) || SHA1(g^xy || [1]) || ... , in order
to use all bits from g^xy equally, and generate as much key material
as we need.
svn:r370
2003-07-30 19:10:20 +00:00
Nick Mathewson
300984c057
Add AES counter-mode support to the crypt library
...
svn:r362
2003-06-30 19:18:32 +00:00
Nick Mathewson
a0f1588318
Add a the public-domain AES implementation, with a minimal counter-mode wrapper.
...
svn:r361
2003-06-30 19:18:12 +00:00
Roger Dingledine
6c9e3762b5
clean up sev_to_string hack in log.c
...
svn:r355
2003-06-25 04:47:54 +00:00
Roger Dingledine
23b1586c26
clean up a broken comment in crypto.c
...
svn:r351
2003-06-24 21:34:19 +00:00
Roger Dingledine
d8af672bb6
correct log()'s comment
...
svn:r350
2003-06-24 05:18:12 +00:00
Nick Mathewson
03544caca7
Make cvsignores reflect build process
...
svn:r341
2003-06-21 19:09:09 +00:00
Nick Mathewson
efbcd71b9b
Remove false warnings from printf checks
...
svn:r340
2003-06-21 19:03:22 +00:00
Roger Dingledine
968d31162b
fix typos, streamline
...
svn:r337
2003-06-18 07:44:48 +00:00
Roger Dingledine
8d4cd5d604
remove obsolete ss.h
...
svn:r336
2003-06-18 07:42:13 +00:00
Nick Mathewson
95e5384af3
Change many files to new log_fn format
...
svn:r333
2003-06-17 22:18:26 +00:00
Nick Mathewson
6965a4696c
Have GCC catch errors in format strings
...
svn:r332
2003-06-17 22:14:44 +00:00
Nick Mathewson
5fd033a8e8
Come up with a less macro-happy, even more portable log_fn implementation
...
svn:r331
2003-06-17 21:36:44 +00:00
Nick Mathewson
b9480620c6
Make log_fn work on apples with no workarounds needed in main code
...
svn:r330
2003-06-17 21:15:25 +00:00
Nick Mathewson
769c78a395
Use fread instead of fgets for binary data
...
svn:r328
2003-06-17 20:19:41 +00:00
Nick Mathewson
9182537238
Fix the periodic bug that would make handshaking fail.
...
The culprit: sometimes DH_calculate_key returns less than DH_KEY_LEN bytes;
we needed to check the return value.
svn:r322
2003-06-14 01:30:53 +00:00
Nick Mathewson
71b158bf2f
Fix MacOS build
...
svn:r320
2003-06-14 01:28:25 +00:00
Nick Mathewson
d21c0feb5a
Add RNG seeding
...
svn:r318
2003-06-13 21:13:37 +00:00
Roger Dingledine
e75dc941a7
don't complain as much when using openssl 0.9.7a
...
svn:r308
2003-06-10 20:50:56 +00:00
Roger Dingledine
59029a3eed
replace malloc with tor_malloc; remove broken/unused crypto_pk_set_key
...
svn:r292
2003-05-20 06:37:34 +00:00
Nick Mathewson
c94d42fa41
Fail less spectacularly on macos
...
svn:r291
2003-05-09 11:46:39 +00:00
Nick Mathewson
fb435daa28
Fix build on linux; macos is still messed up
...
svn:r290
2003-05-09 03:37:18 +00:00
Nick Mathewson
48b0c839b5
One is the language; the other is the compiler
...
svn:r289
2003-05-09 02:41:27 +00:00
Nick Mathewson
0957ffeb83
work on versioning; new log_fn function
...
svn:r288
2003-05-09 02:25:37 +00:00
Roger Dingledine
6973ccb59b
still removing version.h
...
svn:r286
2003-05-09 02:14:01 +00:00
Roger Dingledine
bf8ef8e597
obsolete, removed
...
svn:r284
2003-05-09 02:12:33 +00:00
Nick Mathewson
afc0eb2c71
Tested backends for directory signing and checking. Directory parser completely refactored. Need documentation and integration. Explanitory mail forthcoming.
...
svn:r271
2003-05-07 18:30:46 +00:00
Nick Mathewson
445cd8f0f1
Decrease DH group length to 1024. (Roger, you may want to read section 1 of the IETF draft: a 1024-bit DH key probably reduces our cipher strength to ~80 bits.)
...
svn:r269
2003-05-07 02:28:42 +00:00
Nick Mathewson
d0ff485e1b
More work on directories. Signed directories not yet tested. No support for checking sigs yet
...
svn:r268
2003-05-07 02:13:23 +00:00
Nick Mathewson
fcf7bfe290
Refactor directories; add unit tests; add router keyword
...
svn:r266
2003-05-06 17:38:16 +00:00
Nick Mathewson
6af79f3a03
Basic diffie-helman wrappers with fixed modulus and tests
...
svn:r257
2003-05-01 00:53:46 +00:00
Nick Mathewson
32a3e704b4
Choose correct abstraction for topic_foo. Abstract random-integer code
...
svn:r249
2003-04-17 17:10:41 +00:00
Nick Mathewson
598c3069e1
Apply algebra; remove a condition
...
svn:r246
2003-04-17 02:03:55 +00:00
Nick Mathewson
2da6482f63
tv_udiff: do not modify arguments, and compute results correctly.
...
svn:r245
2003-04-17 01:59:41 +00:00
Nick Mathewson
d3c0e5ab34
Fix test.h to have once-only evalutation of arguments
...
svn:r243
2003-04-17 01:55:13 +00:00
Roger Dingledine
fe1aba7f15
more cleanup
...
svn:r242
2003-04-16 23:22:05 +00:00
Nick Mathewson
33176c70a5
Factor out timeval-related functions.
...
svn:r237
2003-04-16 17:04:58 +00:00
Nick Mathewson
acc33c18e2
Tests for crypto; more tests for buffers
...
svn:r234
2003-04-16 15:24:09 +00:00
Nick Mathewson
1fa0fc1487
Introduce a few unit tests (from older code), refactor compression setup/teardown
...
svn:r232
2003-04-15 19:10:18 +00:00
Roger Dingledine
c2fa6f5c7d
let the 'test' binary build from the source distrib
...
svn:r228
2003-04-08 22:09:18 +00:00
Nick Mathewson
79b77b421d
First test added
...
svn:r226
2003-04-07 13:25:44 +00:00
Nick Mathewson
3a89d27e66
Correct defeatest attitude in crypto_new_cipher_env
...
svn:r201
2003-03-19 21:27:21 +00:00
Nick Mathewson
2b2eff33c5
Add a missing long cast to log.c for portability
...
svn:r199
2003-03-19 20:54:39 +00:00
Nick Mathewson
8ff1c3e21f
Refactor block ciphers; add 3des
...
svn:r196
2003-03-19 20:41:15 +00:00
Roger Dingledine
147879ab17
removing more unused files
...
svn:r141
2002-11-25 01:22:34 +00:00
Roger Dingledine
f50f35f2ec
added milliseconds to log lines
...
svn:r139
2002-11-24 08:45:13 +00:00
Roger Dingledine
00a9e3732e
remove popt dependency, consolidate config stuff
...
reformat parts of onion.c
svn:r136
2002-11-23 06:49:01 +00:00
Nick Mathewson
bef3424bec
Add convenience functions to wrap create and init for symmetric ciphers; clean up error handling in onion.c
...
svn:r131
2002-10-02 20:39:51 +00:00
Roger Dingledine
2fa4b5bb53
don't leak memory on pk ops
...
svn:r117
2002-09-27 22:13:22 +00:00
Roger Dingledine
253f0f160e
laying the groundwork for dynamic router lists
...
revamped the router reading section
reference counting for crypto pk env's (so we can dup them)
we now read and write pem pk keys from string rather than from FILE*,
in anticipation of fetching directories over a socket
(so now on startup we slurp in the whole file, then parse it as a string)
fixed a bug in the proxy side, where you could get some circuits
wedged if they showed up while the connection was being made
svn:r110
2002-09-24 10:43:57 +00:00
Roger Dingledine
5449fc86db
synchronize to the version i've been giving people to test
...
svn:r104
2002-09-19 20:13:27 +00:00
Roger Dingledine
f9f3e2f120
slight optimization on rsa exponent
...
use 2**16+1 rather than 2**16 + 2**(-1)
svn:r99
2002-09-05 19:04:47 +00:00
Roger Dingledine
4eb0158f42
the logs now include a timestamp and severity
...
the implementation is sort of a kludge..you're welcome to fix it up
svn:r94
2002-09-04 00:39:33 +00:00
Nick Mathewson
4c761e4537
Backport to OpenSSL version 0.9.5
...
svn:r91
2002-09-03 19:16:02 +00:00
Nick Mathewson
fdb31225b7
Port to MacOS X
...
svn:r88
2002-09-03 18:44:24 +00:00
Nick Mathewson
8878d8cc27
Add function to fake a poll call using select
...
svn:r87
2002-09-03 18:43:50 +00:00
Matej Pjafjar
01aadefbfc
Changed crypto calls to go through common/crypto.[hc] instead of calling OpenSSL directly.
...
svn:r76
2002-08-22 07:30:03 +00:00
Matej Pjafjar
e01522bbed
Added the crypto abstraction to libor. Need to test and change the code to use this instead of OpenSSL.
...
svn:r74
2002-07-25 08:17:22 +00:00
Matej Pjafjar
5af5a96343
Beginnings of a crypto abstraction layer.
...
svn:r73
2002-07-24 14:02:39 +00:00
Roger Dingledine
61d10b309f
Folded cell.? into src/or
...
Removed more obsolete files
svn:r61
2002-07-19 18:47:04 +00:00
Roger Dingledine
0a8d58138d
changes to support sendme cells
...
svn:r55
2002-07-18 06:38:32 +00:00
Bruce Montrose
4aeca322b4
bug-fix. poptReadDefaultOptions() should find and load ~/.<cmd>rc files now.
...
svn:r48
2002-07-15 19:05:12 +00:00
Bruce Montrose
be25ffd5d7
removed loglevel from global namespace. severity level is set using log() with a NULL format argument now. example: log(LOG_ERR,NULL);
...
svn:r44
2002-07-12 18:14:17 +00:00
Matej Pjafjar
ce934e4974
Bugfix - the list of valid characters in a filename didn't include an n .
...
svn:r33
2002-07-10 10:11:13 +00:00
Bruce Montrose
62ead018a1
Miscellaneous bug fixes / activated "make check" for src/or
...
svn:r31
2002-07-09 19:51:41 +00:00
Bruce Montrose
a3609f4d5d
Added getoptions() and made minor adjustment to poptReadDefaultOptions()
...
svn:r25
2002-07-03 16:31:22 +00:00
Roger Dingledine
b34fad4d38
removed onion.c and onion.h from common/
...
they're now in or/onion.c
svn:r21
2002-07-02 09:17:21 +00:00
Roger Dingledine
bd627daa40
First cut at cleaning out a lot of the extra stuff.
...
The summary here is that I'm requiring all developers to have
auto* (aclocal, autoconf, automake) installed on their machine.
Since different versions of auto* generate vastly different output,
I'm going to leave its output out of the repository. This means that
whenever you check out a repository, you need to run auto* to generate
a configure file, then run ./configure to get a Makefile, then build.
If you don't have auto* and can't get it, let me know (and I'll try to
convince you to develop on moria).
The benefit here is that while developers have a bit more work to keep
things straight, we can build snapshots that will install just about
anywhere (once we make configure.in work, that is ;)
svn:r12
2002-06-29 00:54:00 +00:00
Felipe Bergo
3840dbcaaf
moved configure.ac to configure.in, should work with older autoconfs and automakes
...
svn:r11
2002-06-28 23:43:00 +00:00
Felipe Bergo
f09e25e9f5
added automake/autoconf support. When in doubt, "aclocal && autoconf && autoheader && automake" from the top dir.
...
svn:r10
2002-06-28 23:26:42 +00:00
Bruce Montrose
a551f0a6a8
Added poptReadOptions() and poptReadDefaultOptions()
...
svn:r8
2002-06-28 18:14:55 +00:00
Roger Dingledine
9a928eeb12
Initial revision
...
svn:r2
2002-06-26 22:45:49 +00:00