Roger Dingledine
2b3e8ab901
bump to 0.1.1.8-alpha
...
svn:r5222
2005-10-07 20:17:39 +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
Roger Dingledine
78edd804ff
fix a malformed warning entry
...
svn:r5219
2005-10-07 19:49:48 +00:00
Nick Mathewson
010bcfa9df
Win32 compilation/correctness fixes.
...
svn:r5218
2005-10-07 19:33:47 +00:00
Roger Dingledine
83e119154b
doxygen fix
...
svn:r5217
2005-10-07 19:25:01 +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
Roger Dingledine
46af2d26d0
you can't declare variables in the middle of a block
...
svn:r5214
2005-10-07 18:56:21 +00:00
Peter Palfrader
14934dece2
Print address too when we say we cannot bind/listen
...
svn:r5213
2005-10-07 18:48:31 +00:00
Nick Mathewson
4c7113d26a
Strip extra trailing newlines when parsing router descriptors.
...
svn:r5212
2005-10-07 18:33:30 +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
Roger Dingledine
0e5b6a84eb
without braces, what will hold up the code?
...
svn:r5209
2005-10-06 05:08:00 +00:00
Nick Mathewson
ba24193ab5
Make doxygen marginally happier
...
svn:r5208
2005-10-06 04:33:40 +00:00
Nick Mathewson
5cf758764e
Rate-limit warnings related to unrecognized MyFamily elements.
...
svn:r5204
2005-10-05 23:20:45 +00:00
Nick Mathewson
ba67d14d40
On sighup, if usehelpernodes changed to 1, use new circuits.
...
svn:r5203
2005-10-05 23:02:40 +00:00
Roger Dingledine
f12663a4ce
call circuit_expire_all_dirty_circs() on do_hup().
...
there, now we use it.
svn:r5202
2005-10-05 22:36:33 +00:00
Nick Mathewson
56be5a9706
I *knew* something was wrong here. Flip some comparison operators and make download-rate-limiting sane again.
...
svn:r5201
2005-10-05 22:36:18 +00:00
Nick Mathewson
039edb3dbb
Downgrade too-frequent "nothing happened" message from info to debug
...
svn:r5200
2005-10-05 22:32:59 +00:00
Roger Dingledine
c3aac3ff6b
infrastructure for the 'change pseudonym' button.
...
not used yet.
svn:r5199
2005-10-05 22:31:21 +00:00
Nick Mathewson
92abf1b653
Make windows platform detection smarter. {Untested.}
...
svn:r5198
2005-10-05 22:04:45 +00:00
Nick Mathewson
1ebbaf5c3a
improve INFO-level logging for directory downloads. This is still too chatty, but it will help us analyze things.
...
svn:r5197
2005-10-05 20:45:18 +00:00
Nick Mathewson
370e4abdc9
replace former relaunches of directory downloads with reset of failure count and relaunch of status downloads. Fix memory leak in trusted_dir_server_t. Reset "last download attempted" time when resetting failure counts.
...
svn:r5195
2005-10-05 05:03:52 +00:00
Roger Dingledine
adf04f121e
size_t int printf mucking
...
svn:r5194
2005-10-05 04:52:55 +00:00
Nick Mathewson
96c47c8478
Note the two places where clients will still try to fetch old-style (v1) directory info. These should be fixed, I think.
...
svn:r5193
2005-10-05 02:25:59 +00:00
Nick Mathewson
509de69a7e
reset warning flags on SIGHUP. arma: is this everything?
...
svn:r5192
2005-10-05 02:20:46 +00:00
Roger Dingledine
be478bb56c
stutter therapy lessons
...
svn:r5191
2005-10-05 02:09:27 +00:00
Nick Mathewson
8434595584
Fix verbose compiler warnings, including one in routerlist.c that would have been an actual error. Normalize whitespace. Enforce convention that "address" is a hostname and "addr" is an IPv4 address.
...
svn:r5190
2005-10-05 02:06:36 +00:00
Nick Mathewson
0924094042
resolve some directory-related XXXXs; downgrade naming conflict messages from WARN to INFO for non-authorities; do not repeat naming conflict messages.
...
svn:r5189
2005-10-05 01:53:44 +00:00
Nick Mathewson
1223310b69
Downgrade noisy log messages in preparation for an alpha release.
...
svn:r5188
2005-10-05 01:27:08 +00:00
Nick Mathewson
a608905070
Give a less frequent and more helpful warning on failed serverdesc downloads
...
svn:r5187
2005-10-05 00:22:56 +00:00
Nick Mathewson
42e17182da
When we get an EOF or a timeout on a directory connection, note how many bytes of serverdesc we are dropping. This will help us determine whether it is smart to parse incomplete serverdesc responses.
...
svn:r5186
2005-10-04 22:34:09 +00:00
Nick Mathewson
61ea516885
Check for named servers when looking them up by nickname;
...
warn when we'recalling a non-named server by its nickname;
don't warn twice about the same name.
Fix a bug in routers_update_status_from_networkstatus that made nearly
all clients never update routerinfo_t.is_named.
Try to list MyFamily elements by key, not by nickname.
Only warn about names that we generated ourself, or got from the local
user.
On TLS handshake, only check the other router's nickname against its
expected nickname if is_named is set.
svn:r5185
2005-10-04 22:23:31 +00:00
Nick Mathewson
2d203fdcf3
link nicknames to trusted directory servers; log these nicknames when mentioning servers; also, when we get a naming conflict; log which nicknames or keys are supposed to bind.
...
svn:r5184
2005-10-04 21:21:09 +00:00
Nick Mathewson
b10df0d595
cosmetic fix: only have one local to hold smartlist_len(downloadable), not too.
...
svn:r5183
2005-10-04 20:18:26 +00:00
Nick Mathewson
e4a6a03249
switch semantics of authdirinvalid/reject
...
svn:r5182
2005-10-04 19:52:58 +00:00
Roger Dingledine
88c37f2d24
comment cleanups
...
svn:r5181
2005-10-04 06:53:59 +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
9e54e2e293
free helper node status info on shutdown
...
svn:r5177
2005-09-30 21:38:57 +00:00
Nick Mathewson
808e584a87
remove a never-used smartlist in routerlist.c
...
svn:r5176
2005-09-30 21:38:45 +00:00
Nick Mathewson
6e4608701d
and another leak.
...
svn:r5175
2005-09-30 21:31:26 +00:00
Roger Dingledine
ae30c8101b
by convention, addr is a uint32_t and address is a string.
...
that's why we hadn't caught that leak.
svn:r5174
2005-09-30 21:30:04 +00:00
Nick Mathewson
5c5d2e82e6
Fix a leak when launching listeners.
...
svn:r5173
2005-09-30 21:28:00 +00:00
Nick Mathewson
23864ad423
Try to hunt down a few more leaks
...
svn:r5172
2005-09-30 21:22:25 +00:00
Nick Mathewson
80f2e10228
Stop leaking or_state_t on shutdown.
...
svn:r5171
2005-09-30 21:16:47 +00:00
Nick Mathewson
5333a3b838
fix a small filename leak
...
svn:r5170
2005-09-30 21:11:22 +00:00
Nick Mathewson
8408006318
fix a memory leak on exit in routerlist.c
...
svn:r5169
2005-09-30 21:04:52 +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
fc3c0197f9
Resolve several DOCDOCs. Make non-mirrors only launch routerdesc downloads when they have more than 16 router descriptors to download, or when 10 minutes have passed since the last download.
...
svn:r5166
2005-09-30 20:04:55 +00:00
Roger Dingledine
e28c31ebce
we were leaking some memory every time the client changes IPs
...
svn:r5165
2005-09-30 06:03:04 +00:00
Nick Mathewson
ab245746a9
Hey kids, guess why connection_mark_for_close() started giving an assert when called for an even-numbered line? Right, because I made it a bitfield, when it was really a line number. Why did I think it was a bitfield? A stale comment. Let that be a lesson to us all.
...
svn:r5164
2005-09-30 04:43:42 +00:00
Roger Dingledine
13e709a0ff
resolve nick's comment
...
svn:r5163
2005-09-30 02:08:57 +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
edd15cb781
Note that there is incorrect behavior in directory.c code. Arma, please check this too.
...
svn:r5161
2005-09-30 01:38:09 +00:00
Nick Mathewson
92451f74a8
Reformat inconsistent function declarations.
...
svn:r5160
2005-09-30 01:09:52 +00:00
Roger Dingledine
609af664ac
resolve a docdoc
...
svn:r5157
2005-09-30 00:43:40 +00:00
Roger Dingledine
ea18827cee
do the other half of dirport reachability testing.
...
it should be back and working now.
svn:r5155
2005-09-29 23:59:36 +00:00
Roger Dingledine
f8d430653e
better cleanups as i figure out what's going on
...
svn:r5154
2005-09-29 23:26:42 +00:00
Roger Dingledine
d4d8adaa6d
move some code around when we're succeeding or failing at fetching
...
server descs.
also clean up some formatting.
svn:r5153
2005-09-29 23:06:48 +00:00
Roger Dingledine
54a662a542
re-enable dirport testing again
...
(still need the other half, to notice when it has worked.)
svn:r5152
2005-09-29 23:04:01 +00:00
Roger Dingledine
8fc9330686
fix typo
...
svn:r5151
2005-09-29 23:03:34 +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
c6347cdb0e
suppress all our usual compiler warnings, including a longstanding one from tree.h
...
svn:r5149
2005-09-29 20:49:41 +00:00
Roger Dingledine
8ae6e1c226
Be more conservative about whether to advertise our dirport.
...
The main change is to not advertise if we're running at capacity and
either a) we could hibernate or b) our capacity is low and we're using
a default dirport.
svn:r5148
2005-09-29 06:45:03 +00:00
Roger Dingledine
3559f821a1
clean up some doxygen stuff
...
svn:r5147
2005-09-29 02:54:09 +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
126a1e3e32
Fix crash-on-wakeup bug in networkstatus download.
...
svn:r5144
2005-09-26 16:37:39 +00:00
Roger Dingledine
fba01c3cc0
bugfix: we were whining about using socks4 or socks5-with-local-lookup
...
even when they used an IP in the "virtual" range we designed exactly
for this case.
svn:r5142
2005-09-24 21:56:04 +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
abb8576538
But, of course, mirrors should get the most up-to-date server in any case.
...
svn:r5135
2005-09-23 21:33:59 +00:00
Nick Mathewson
b726507d36
Log even less verbosely. Also, do not download old (frequently-updating) servers more than once every 2 hours.
...
svn:r5134
2005-09-23 21:25:29 +00:00
Roger Dingledine
31c7f59b25
add MyFamily to the torrc.sample
...
svn:r5133
2005-09-23 20:53:42 +00:00
Nick Mathewson
ebf6476e8e
Provide dire warnings to any users who set DirServer; move it out of torrc.sample and into torrc.complete.
...
svn:r5132
2005-09-23 20:44:22 +00:00
Nick Mathewson
18a0a0e458
Oops. It looks like some old GCCs dislike #if inside a macro argument.
...
svn:r5131
2005-09-23 20:31:07 +00:00
Roger Dingledine
0ef18a0fba
put a log message so we can start confirming socks5-with-remote-dns
...
vs socks5-with-local-dns
svn:r5130
2005-09-23 19:56:34 +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
06625e779d
Decouple router downloads from old directory downloads entirely
...
svn:r5128
2005-09-23 18:49:37 +00:00
Nick Mathewson
c345dab3bd
Fix logic error (people who ask authorities should never split; others should always split). Also, fix timing error in main.c so retries really happen.
...
svn:r5127
2005-09-23 18:17:37 +00:00
Nick Mathewson
a1f1c4bf6b
Re-enable autosplitting, but authorities and mirrors should not do it, and make the cutoff higher than 1.
...
svn:r5126
2005-09-23 18:08:31 +00:00
Nick Mathewson
f995edd516
Fix at least one overzealous download bug. (tor_malloc_zero new local_routerstatus_t objs); add a pile of logs back in; probe every 10sec; never autolaunch on failure. Let us see if this works better.
...
svn:r5125
2005-09-23 18:05:14 +00:00
Nick Mathewson
9050480339
Fix some compiler warnings
...
svn:r5124
2005-09-23 17:11:20 +00:00
Nick Mathewson
faa4f420de
Remove extraneous space on read-history lines.
...
svn:r5123
2005-09-23 17:02:50 +00:00
Roger Dingledine
03d0f62da0
make the numbers in read-history and write-history into uint64s,
...
so they don't overflow and publish negatives in the descriptor.
fixes bug 193.
svn:r5119
2005-09-23 08:29:58 +00:00
Roger Dingledine
512d6ccdc1
and a minor log cleanup
...
svn:r5115
2005-09-23 00:04:53 +00:00
Roger Dingledine
e286c4267e
there was no need to die when we failed to spawn a cpuworker.
...
it handles it fine if we decide not to die.
svn:r5114
2005-09-23 00:04:44 +00:00
Roger Dingledine
479886fce2
remove another loud debug msg
...
svn:r5113
2005-09-22 23:56:56 +00:00
Roger Dingledine
d050ff7906
resolve lucky's recent bug: tor was exiting if we failed to spawn
...
a new dns worker (e.g. because we were out of fd's).
svn:r5112
2005-09-22 23:43:41 +00:00
Roger Dingledine
2d6b36a001
get rid of a noisy debug log
...
svn:r5111
2005-09-22 20:51:45 +00:00
Nick Mathewson
cdc912714e
I love the smell of C in the morning. Make router-download rules smarter (download more so long as we dont duplicate existing requests; relaunch at staggered intervals); relaunch one a minute or on failure; reset 60 minutes; always open 3 requests if we can; add authority opinion to networkstatus; make naming rule correct. There is a remaining bug where we retry servers too quickly; We need to look at that harder.
...
svn:r5110
2005-09-22 06:34:29 +00:00
Nick Mathewson
6693031947
Use a separate type for "local view of router status". Also, even though I told arma there was no need, replace an ugly O ( n lg n ) algorithm with a nice O ( n ) algorithm when stepping through servers. Some ugliness is just too bad to stand.
...
svn:r5109
2005-09-22 01:51:14 +00:00
Roger Dingledine
959598fae6
content-type bugfixes:
...
http://seppia.noreply.org/tor/dir.z was being declared text/plain
and
http://seppia.noreply.org/tor/server/fp/719BE45DE224B607C53707D0E2143E2D423E74CF
was being declared application/octet-stream
svn:r5108
2005-09-22 00:17:41 +00:00
Roger Dingledine
f011b12df2
bugfix: nobody ever implemented EVENT_ADDRMAP for control protocol
...
version 0, so don't let version 0 controllers ask for it.
svn:r5107
2005-09-21 23:30:15 +00:00
Nick Mathewson
f99b91505b
Make write_escaped_data more bulletproof; backport candidate.
...
svn:r5106
2005-09-21 23:13:29 +00:00
Roger Dingledine
1cfcc4b351
clean up misleading comment on authdir_wants_to_reject_router()
...
svn:r5105
2005-09-21 21:10:36 +00:00
Nick Mathewson
72915546cd
Only check versions from versioning authdirs.
...
svn:r5101
2005-09-21 02:38:51 +00:00
Nick Mathewson
20b9111266
Implement new version handling code.
...
svn:r5100
2005-09-21 00:41:06 +00:00
Roger Dingledine
94ff09af23
clean up a bit more code
...
svn:r5098
2005-09-20 19:50:43 +00:00
Roger Dingledine
19f04ae9c3
make router_is_general_exit match its documentation
...
but it's still wrong maybe
svn:r5095
2005-09-20 03:40:54 +00:00
Nick Mathewson
dcb6b3df6c
bump version to 0.1.1.7-alpha-cvs
...
svn:r5093
2005-09-19 22:02:14 +00:00
Nick Mathewson
837b223c8c
remove some debugging garbage
...
svn:r5092
2005-09-18 04:32:58 +00:00
Nick Mathewson
283032960d
Make give-up-on-failure actually work: it seems the servers gave me a real test case.
...
svn:r5091
2005-09-18 04:15:39 +00:00
Nick Mathewson
d118d5069a
Prevent a "try forever to download an unobtainable descriptor" bug. Still remaining: the "give up forever" bug.
...
svn:r5090
2005-09-18 02:51:12 +00:00
Nick Mathewson
87f6d526fe
Refactor new directory code a bit. Keep a big list of rolled-up router status info, including # of download failures (not yet used). Update this list from networkstatuses when they arrive, then update routers from this list. Only download 128 routers at a time, to avoid gargantuan URLs.
...
svn:r5089
2005-09-18 02:24:42 +00:00
Nick Mathewson
e86893e87b
Move to new base64 digest functions. Switch to new router digest calculation. Make sure there are no duplicates in router status lists.
...
svn:r5088
2005-09-18 02:22:21 +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
1fbe499bfe
Remove a bunch of #if0d code that I no longer need to look at.
...
svn:r5083
2005-09-16 16:47:20 +00:00
Nick Mathewson
6d15a73548
Resolve/expand some XXXXs and improve a log message or two
...
svn:r5082
2005-09-16 16:41:45 +00:00
Roger Dingledine
cce469c5ce
simplify
...
svn:r5081
2005-09-16 06:15:34 +00:00
Nick Mathewson
538740e362
Fix the never-marked-anything-as-running bug. Now Tor builds circuts again. Woo.
...
svn:r5080
2005-09-16 04:53:28 +00:00
Nick Mathewson
d45badd9f4
Add a missing return
...
svn:r5079
2005-09-16 04:52:53 +00:00
Nick Mathewson
1a786a297f
Fix the confusing bug where we were downloading only the first n/2-1 of the servers we actually wanted.
...
svn:r5078
2005-09-16 04:43:21 +00:00
Nick Mathewson
9c2ca40df3
Unify our "figure out which fingerprints we were downloading" code.
...
svn:r5077
2005-09-16 04:42:45 +00:00
Nick Mathewson
05bab28c7d
Add some (notice, for now) log messages that imply confusing things are happening.
...
svn:r5076
2005-09-15 21:11:48 +00:00
Nick Mathewson
51da58eccf
fix braino in dirserv.
...
svn:r5075
2005-09-15 21:10:58 +00:00
Nick Mathewson
e72e76cad6
Make authdirs smarter. Reject/invalidate by key and IP. Remember that not every authdir has to be a naming authdir.
...
svn:r5074
2005-09-15 14:39:05 +00:00
Nick Mathewson
ed21abfe87
And some documentation before bed.
...
svn:r5073
2005-09-15 06:15:31 +00:00
Nick Mathewson
b70c229f6e
make some functions static; clean dead networkstatus entries more often.
...
svn:r5072
2005-09-15 05:41:30 +00:00
Nick Mathewson
3dcc4630b9
Make unittests not die
...
svn:r5071
2005-09-15 05:28:18 +00:00
Nick Mathewson
b16048917c
Stop downloading directories and download routers instead. This still needs some work, but at last clients are finally on the new architecture. Next comes the tuning and bugfixing.
...
svn:r5070
2005-09-15 05:19:38 +00:00
Nick Mathewson
e83e1df811
separate validation from naming in authoritative directory servers; simplify some router-management code.
...
svn:r5069
2005-09-15 00:51:42 +00:00
Nick Mathewson
d4e0af7822
Fix a bunch of log messages. Deprecate some routerlist fields; remove others, and status_set_at from routerinfo_t. Compress routerlist.c cleanup functions. Update cached networkstatus mtime when we download the same one twice. Change some interfaces.
...
svn:r5068
2005-09-14 23:42:06 +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
bc0af7046a
Oops. directory_set_dirty() needs to mark networkstatus as dirty too.
...
svn:r5066
2005-09-14 23:14:37 +00:00
Nick Mathewson
27bbfe9dcf
Would you believe that the software_versions field of routerlist_t was never actually used for anything?
...
svn:r5064
2005-09-14 21:38:05 +00:00
Nick Mathewson
e3adcbdb95
Big commit: clients start downloading and using network-statuses.
...
Only caches need to get running-routers; nobody needs to parse, store,
or use it. Same for the router-status line in the directories. Add
many #if 0's that can get removed once I'm convinced they don't
contain anything I'm forgetting.
Start all newly-parsed routers as non-running and non-valid; update
them from the list of network statuses.
Update all routers when a new networkstatus comes in.
After 3 tries for a networkstatus, clients give up until they're told
to try again.
"Let's get those missles ready to **DESTROY THE UNIVERSE**!"
-TMBG
svn:r5063
2005-09-14 21:09:25 +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
d9ee94543e
Declare 0.1.1.7 as The Version With The Good Dirservers.
...
svn:r5061
2005-09-14 19:12:35 +00:00
Roger Dingledine
76e6cc0c2b
bump to 0.1.1.7-alpha
...
svn:r5051
2005-09-14 03:59:33 +00:00
Roger Dingledine
ca727ba6e1
bugfix: when we try to determine the reachability of our dirport,
...
and it doesn't work, don't freak out and mark ourselves as down and
try somewhere else. just calmly fail.
svn:r5050
2005-09-14 03:49:17 +00:00
Nick Mathewson
7c6679d8dc
Add new config.c function to set options that can fail, and roll back if they do. This should solve the setconf-an-impossible-port bug.
...
svn:r5046
2005-09-14 02:36:29 +00:00
Roger Dingledine
93be26a74a
stop the call duplication inside config_assign()
...
svn:r5045
2005-09-14 02:35:06 +00:00
Nick Mathewson
6aa8850d90
note that routerstatus_t.entries is sorted.
...
svn:r5044
2005-09-14 02:28:35 +00:00
Roger Dingledine
10893e7254
simplify
...
svn:r5043
2005-09-14 02:18:28 +00:00
Roger Dingledine
c78aafe4b5
and take the bang out
...
svn:r5042
2005-09-14 02:13:35 +00:00
Roger Dingledine
62fe24c40c
ok, ok, csv's get replaced even when we assign them from the torrc.
...
svn:r5041
2005-09-14 02:12:29 +00:00
Roger Dingledine
1f930a9a70
checkpoint: clean up and document the three ways to call config_assign()
...
and reduce code duplication in config_free() and option_is_same().
svn:r5040
2005-09-14 02:07:35 +00:00
Roger Dingledine
8585599965
correct "your server is reachable" log entries to indicate that it was
...
self-testing that told us so.
svn:r5034
2005-09-13 21:39:42 +00:00
Roger Dingledine
26cc51ffea
a bit more code cleanup
...
svn:r5033
2005-09-13 21:24:51 +00:00
Nick Mathewson
890847d232
I forgot -- smart kids make their code compile.
...
svn:r5032
2005-09-13 21:18:00 +00:00
Nick Mathewson
4efa652a98
add docs, fix whitespace, and make ANY rule in routerparse a little tighter.
...
svn:r5031
2005-09-13 21:14:55 +00:00
Nick Mathewson
76351b8416
Fix DOCDOC entries in routerlist.c. Make more functions use SMARTLIST_FOREACH instead of raw loops. Replace router_list_superseded implementation with one that has a prayer of working.
...
svn:r5027
2005-09-13 15:32:03 +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
29c57b54d4
Add functions to extend and compress new router store logic. (Basic idea: use a journal of newly received router descriptors, and periodically replace the old file. This avoids the "too many files" problem and the "too many rewrites" problem.)
...
svn:r5025
2005-09-13 06:21:10 +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
Roger Dingledine
82b3b6249c
fix a seg fault if we ask an authdirserver for a descriptor by
...
fingerprint but he doesn't know about him.
svn:r5023
2005-09-13 01:20:26 +00:00
Roger Dingledine
8b0d37096b
when the user asked for a rendezvous port that the hidden service
...
didn't want to provide, we were sending an IP address back along
with the end cell. fortunately, it was zero. but stop that anyway.
svn:r5022
2005-09-12 22:05:17 +00:00
Roger Dingledine
569efe61c0
make the patch less likely to bite us later
...
svn:r5021
2005-09-12 21:42:59 +00:00
Nick Mathewson
93c1d37d5f
Resolve stack corruption identified by edmanw in connection_edge_end(). Thanks!
...
svn:r5020
2005-09-12 20:57:16 +00:00
Nick Mathewson
39e29738b1
Maybe I should pay more attention to return values and less to clever comments. Fortunately, the aforementioned comments came out against smacking upside the head.
...
svn:r5018
2005-09-12 08:49:21 +00:00
Nick Mathewson
a6271650d5
Versions should be sorted by version. Lexical sorting should be used only as a last resort.
...
svn:r5017
2005-09-12 08:46:37 +00:00
Roger Dingledine
689cb28098
when writing the recommended*versions lines, sort them first.
...
this is because weasel put his out of order and told me the code
should take care of it.
svn:r5016
2005-09-12 08:31:47 +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
Roger Dingledine
63bb27f19d
be more thorough about noticing when a directory request has failed:
...
it has failed not only when the connection attempt fails, but also
if the conn reaches eof before we get a response that we're happy with.
svn:r5013
2005-09-12 07:36:26 +00:00
Nick Mathewson
3dc5e77b58
Numerous changes to move towards client-side v2 directories.
...
connection.c:
- Add some more connection accessor functions to make directory
download redundancy checking work.
directory.c, or.h, router.c, routerlist.c:
- Start on logic to note when networkstatus downloads fail.
dirserv.c, routerlist.c, routerparse.c:
- Start maintaining an is_named field in routerstatus_t. Don't
actually look at it yet.
dirserv.c, routerlist.c:
- Remove expired networkstatus objects.
or.h:
- Make some booleans into bitfields
- Add prototypes
routerlist.c:
- Sort networkstatus list by publication time
- Function to remove old (older than 10 days) networkstatus objects.
- Function to set a list of routerinfo_ts' status info from the
current set of networkstatus objects.
- Function to tell which routerinfos we need to download based no the
current set of networkstatus objects.
- Do not launch a networkstatus download if a redundant one is in progress.
routerparse.c:
- Keep router entries in networkstatus sorted by digest.
svn:r5012
2005-09-12 06:56:42 +00:00
Roger Dingledine
5cebd8df70
remove temporary network-status keyword
...
svn:r5007
2005-09-12 06:14:41 +00:00
Roger Dingledine
89d516f95c
clean up the log entry for when a server posts a server descriptor that
...
the dirserver doesn't like
svn:r5005
2005-09-12 06:08:48 +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
63dfe2447e
Fix bug found by "ca": looking up a non-existent stream for a v1 control connection would cause a segfault. (No backport needed since 0.1.0 had only v0 connections.)
...
svn:r5001
2005-09-12 03:32:30 +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
Roger Dingledine
d7d4d4cbbf
fix comment and return value for check_software_version_against_directory()
...
svn:r4996
2005-09-11 22:36:50 +00:00
Roger Dingledine
b0a5ba4248
downgrade the dirserver log messages when whining about unreachability
...
svn:r4991
2005-09-10 20:40:16 +00:00
Roger Dingledine
cfe34812eb
bugfix: if you gave tor an odd number of command-line arguments,
...
we were silently ignoring the last one. now we complain and fail.
svn:r4988
2005-09-10 04:40:27 +00:00
Roger Dingledine
e782ee344a
bump to 0.1.1.6-alpha-cvs
...
svn:r4987
2005-09-10 03:41:39 +00:00
Roger Dingledine
9b54cd349d
break out a new function config_assign_value() that just assigns the
...
value it's given, and doesn't do any of their weird clearing or resetting
stuff. use that when we're trying to clear or reset values.
svn:r4984
2005-09-10 02:42:32 +00:00
Nick Mathewson
a4f32e77ef
Fix segfault in win32 unittests.
...
svn:r4983
2005-09-10 02:34:32 +00:00
Roger Dingledine
e58ca648c6
bump to 0.1.1.6-alpha
...
this time for sure
svn:r4982
2005-09-10 01:47:27 +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
Roger Dingledine
1d9786a392
generalize route length to three plus one if the exit node is risky.
...
svn:r4978
2005-09-10 01:01:40 +00:00
Nick Mathewson
035b1953eb
Add sorting/searching to smartlist
...
svn:r4977
2005-09-09 23:12:54 +00:00
Roger Dingledine
cfa321374d
reject ports 465 and 587 by default now too
...
svn:r4974
2005-09-09 22:46:43 +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
dcf1e14190
downgrade warning to info
...
svn:r4967
2005-09-09 21:03:57 +00:00
Roger Dingledine
a5ea401b2e
a few more hints on a rare but mysterious warning
...
svn:r4966
2005-09-09 20:58:44 +00:00
Nick Mathewson
047e105daf
Fix a bug in config_dump: we want to run options_validate on the defaults, not (again, uselessly) on the configuration. This was introduced when we made the config code more generic.
...
svn:r4965
2005-09-09 20:08:26 +00:00
Roger Dingledine
35b78b2d8e
clean up the rendezvous warn log msgs, and downgrade some to info
...
svn:r4964
2005-09-09 19:54:28 +00:00
Nick Mathewson
0de64f224e
Warn in more detail when network-status serving and fetching fails. Also, fix a small leak.
...
svn:r4963
2005-09-09 19:37:12 +00:00
Roger Dingledine
42f752a0a5
bugfix: we were automatically condemning an exit node (concluding
...
its advertised exit policy is different from its real one) as soon
as it refused any requests.
After fixing that bug, another bug appeared: we would try the same
server again and again, since once we learned an IP address for a
hostname, we still kept think of it as the hostname. now pass it to
the remapper before trying to reattach.
svn:r4962
2005-09-09 06:11:37 +00:00
Roger Dingledine
843550721a
stop notifying people about dns worker spawning and culling
...
it just freaks them out
svn:r4960
2005-09-09 02:03:31 +00:00
Roger Dingledine
2065c5f7aa
when printing x-forwarded-by headers, don't print the \r
...
svn:r4959
2005-09-09 02:02:20 +00:00
Nick Mathewson
bd911d8612
Fix segfault and memleak when getting many compressed server descs.
...
svn:r4956
2005-09-08 22:00:29 +00:00
Nick Mathewson
659491bbc6
Fix some messages that say "failing".
...
svn:r4955
2005-09-08 21:46:31 +00:00
Nick Mathewson
d410c49965
Clean up some more fingerprint-checking logic
...
svn:r4954
2005-09-08 21:39:39 +00:00
Roger Dingledine
587b513ec0
remove obsolete kludge
...
svn:r4953
2005-09-08 21:36:27 +00:00
Nick Mathewson
9df4716ac3
make it work correctly when we download multiple network-status objects.
...
svn:r4952
2005-09-08 21:28:45 +00:00
Nick Mathewson
4ce0e01848
add conn->requested_resource to connection_t checks.
...
svn:r4951
2005-09-08 21:21:54 +00:00
Nick Mathewson
a938190bdb
Iteration is happier when you stop.
...
svn:r4950
2005-09-08 21:20:20 +00:00
Roger Dingledine
e28931dc94
unused variable
...
svn:r4949
2005-09-08 21:12:53 +00:00
Nick Mathewson
4528bbfd9f
Resolve some XXXs. Add some others.
...
svn:r4947
2005-09-08 21:01:24 +00:00
Nick Mathewson
c523e106b5
Do not generate more than 2 of each directory type per minute.
...
svn:r4946
2005-09-08 20:47:11 +00:00
Nick Mathewson
18e4d78354
Fix an assert in directory.c. Check received network-status objects against the list we expected to get. Do not let anyone else update our network-status object.
...
svn:r4945
2005-09-08 20:36:40 +00:00
Nick Mathewson
059148f588
Only caches download network-status for now, and they use a different strategy. Add an element to connection_t to remember what we are downloading, and a function to recognize our own fingerprint.
...
svn:r4944
2005-09-08 20:18:15 +00:00
Nick Mathewson
6c4d43c724
Special-case for retrieving own networkstatus by fingerprint: regenerate if dirty!
...
svn:r4943
2005-09-08 19:29:21 +00:00
Roger Dingledine
465aec04c1
when reporting results from a dirserver fetch/post, tell us the
...
port for the dirserver too
svn:r4942
2005-09-08 19:21:48 +00:00
Nick Mathewson
df79dc673b
Remove sneaky double declaration.
...
svn:r4941
2005-09-08 19:18:55 +00:00
Nick Mathewson
0f94aa2ea1
Write status to disk in the right place
...
svn:r4940
2005-09-08 19:16:16 +00:00
Nick Mathewson
cc16fb7636
oops -- that log should have been removed
...
svn:r4939
2005-09-08 19:12:55 +00:00
Nick Mathewson
e5f117606f
Fix network-status parsing.
...
svn:r4938
2005-09-08 19:10:36 +00:00
Nick Mathewson
b43a720bd4
Fix another reversed inet_aton
...
svn:r4937
2005-09-08 18:53:57 +00:00
Nick Mathewson
1e2f1679c8
Fix some more bugs; add a temporary log.
...
svn:r4936
2005-09-08 18:46:25 +00:00
Nick Mathewson
eab005c948
Ensure case match, not mismatch.
...
svn:r4935
2005-09-08 18:34:41 +00:00
Nick Mathewson
c4b3bf06c6
add strupper function
...
svn:r4934
2005-09-08 18:33:51 +00:00
Nick Mathewson
810572a5de
Stop dying when we get a directory from tor26; workaround for change in networkstatus format
...
svn:r4933
2005-09-08 18:24:26 +00:00
Roger Dingledine
4633b271f9
fix spacing
...
svn:r4932
2005-09-08 18:15:57 +00:00
Nick Mathewson
548a863779
Avoid assertion failure
...
svn:r4931
2005-09-08 18:14:23 +00:00
Nick Mathewson
ff9452e900
Clean up should-i-go-to-the-dirserv logic a little: All servers with DirPorts should get their directories from the source
...
svn:r4930
2005-09-08 18:14:01 +00:00
Nick Mathewson
3a99927859
Make directory download code slightly less likely to segfault or assert.
...
svn:r4929
2005-09-08 16:18:28 +00:00
Roger Dingledine
022f23249f
make doxygen output look prettier
...
svn:r4928
2005-09-08 07:10:12 +00:00
Roger Dingledine
dbeb8e7863
it really does help with the functions end.
...
svn:r4927
2005-09-08 06:59:58 +00:00
Roger Dingledine
74fb086210
if you give a config option in the torrc or the commandline with no
...
value, and reset is false, then it clears it entirely.
svn:r4926
2005-09-08 06:55:53 +00:00
Roger Dingledine
36fa360c11
and fix grammar
...
svn:r4925
2005-09-08 06:49:23 +00:00
Roger Dingledine
69da0ef757
add punctuation
...
svn:r4924
2005-09-08 06:49:02 +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
8f37357193
Make GCC v4 happy with heavy warnings enabled.
...
svn:r4922
2005-09-08 06:37:50 +00:00
Nick Mathewson
f50ddfd4dd
Download network-status at regular intervals. The code is probably iffy, and the constants need to be renamed.
...
svn:r4921
2005-09-08 06:22:44 +00:00
Roger Dingledine
2f6664ce80
MonthlyAccountingStart is dead.
...
svn:r4920
2005-09-08 05:38:47 +00:00
Roger Dingledine
c9e1c41873
dirserv_add_descriptor() doesn't chew up its argument anymore,
...
so we can stop protecting it.
svn:r4919
2005-09-08 05:37:22 +00:00
Roger Dingledine
03ddeb2620
strip obsolete code
...
svn:r4918
2005-09-08 05:32:41 +00:00
Roger Dingledine
0ac3c58480
clean up comments for router_is_general_exit()
...
svn:r4917
2005-09-08 05:23:55 +00:00
Roger Dingledine
08348ae66e
add a RESETCONF controller command, and make setconf with a null
...
option actually mean to set it to ""
svn:r4916
2005-09-08 03:18:51 +00:00
Roger Dingledine
0a8a8ba546
fix some typos
...
svn:r4915
2005-09-08 03:17:50 +00:00
Nick Mathewson
4aca47268d
Logic to launch connections for new directory types.
...
svn:r4914
2005-09-07 20:03:02 +00:00
Nick Mathewson
9e76eae810
add missing return
...
svn:r4913
2005-09-07 17:18:52 +00:00
Nick Mathewson
eac917fd6a
clean whitespace.
...
svn:r4912
2005-09-07 17:15:46 +00:00
Nick Mathewson
5c6c88e76d
More stuff for new directories.
...
- Distinguish v1 authorities (all currently trusted directories) from
v2 authorities (all trusted directories).
- Add configuration option for which dirs are v1 authories.
- Add configuration option for whether to be a v1 authority.
- Make trusted dirserver selection functions take options to
choose which functionality we need.
- Remove option when getting directory cache to see whether they
support running-routers; they all do now. Replace it with one
to see whether caches support v2 stuff.
- Parse, cache, and serve network-status objects properly.
- Serve compressed groups of router descriptors. The compression logic
here could be more memory-efficient.
-
svn:r4911
2005-09-07 16:42:53 +00:00
Roger Dingledine
c384fa706d
stop using the v1 rend desc format. we're going to change v1
...
some more before we switch to it.
svn:r4909
2005-09-06 06:14:38 +00:00
Nick Mathewson
1e37ec4782
Comment structs, reload a field, start making network status caches work
...
svn:r4908
2005-09-04 23:12:27 +00:00
Roger Dingledine
d2a5b614eb
if you're an auth dir server, start yourself out as verified.
...
svn:r4907
2005-09-03 23:10:28 +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
Roger Dingledine
33b2abbc90
remove redundant logs about unreachable servers
...
svn:r4905
2005-09-03 04:37:30 +00:00
Nick Mathewson
467fd6e4e6
fix order of items in network-status
...
svn:r4904
2005-09-03 02:38:39 +00:00
Nick Mathewson
3485a497fe
Fix another ntohl
...
svn:r4903
2005-09-03 02:23:53 +00:00
Nick Mathewson
ae726e659e
and another byte counting error.
...
svn:r4902
2005-09-03 02:14:31 +00:00
Nick Mathewson
9b949cc1d2
Excellent. We have at least 8 bytes, so I can safely get the 9th.
...
svn:r4901
2005-09-03 02:12:53 +00:00
Nick Mathewson
bcbff6dcd7
Note to self: htonl(htonl(X)) is *not* "twice as good as htonl(X)". Spotted by arma.
...
svn:r4900
2005-09-03 01:47:39 +00:00
Nick Mathewson
815c092b22
Make structs for (v2) network-status and its per-router components. Add functions to parse them. Re-do the parsing logic a litt.e. Change signatures in or.h to support new DNS TTL logic.
...
svn:r4898
2005-09-02 20:37:31 +00:00
Nick Mathewson
9bc3d34682
Add contact field to generated network-status objects
...
svn:r4897
2005-09-02 20:30:03 +00:00
Nick Mathewson
09e8521236
Make ContactInfo mandatory for authoritative directories.
...
svn:r4896
2005-09-02 20:29:29 +00:00
Nick Mathewson
a6a45b7713
Add TTLs to RESOLVED, CONNECTED, and END_REASON_EXITPOLICY cells. Also, add a missing ntohl in connection_ap_handshake_socks_resolved.
...
svn:r4894
2005-09-02 18:53:31 +00:00
Roger Dingledine
93179f4e7e
bugfix: moria2 wasn't listing itself as verified in its directory
...
svn:r4893
2005-09-02 06:19:31 +00:00
Roger Dingledine
ba899d0648
when we're shutting down and we do something like try to post a
...
server descriptor or rendezvous descriptor, don't complain that we
seem to be unreachable. of course we are, we're shutting down.
svn:r4892
2005-09-01 08:19:49 +00:00
Roger Dingledine
1b04f38145
subtle change to avoid some false positives:
...
if a server went down for six hours and then came back, we would
complain to it that it's unreachable. now we wait until the third
consecutive descriptor post that we thought it was unreachable,
before complaining to it.
svn:r4891
2005-09-01 08:13:40 +00:00
Roger Dingledine
3b6ab71929
and notify the dirserver operator whenever we do
...
svn:r4890
2005-08-31 06:18:19 +00:00
Roger Dingledine
711cad94ed
when we think a router is unreachable, pass the message back to the
...
server's logs, and make it a 'warn'.
also, fix a memory leak for rejected router descriptors.
svn:r4889
2005-08-31 06:14:37 +00:00
Nick Mathewson
0b92c28d84
Actually set is_hibernating when parsing router descriptors.
...
svn:r4888
2005-08-30 15:04:24 +00:00
Roger Dingledine
6a52aa52fe
fix a pair of hard-coded urls
...
svn:r4887
2005-08-30 07:01:30 +00:00
Roger Dingledine
4240410a9d
don't whine about reachability if the guy is hibernating now.
...
speaking of which, we don't actually parse is_hibernating out
of the router descriptor right now. nick, can you fix this?
svn:r4886
2005-08-30 06:48:24 +00:00
Roger Dingledine
e9524f9d2d
refactor -- no actual changes
...
svn:r4885
2005-08-30 06:43:07 +00:00
Roger Dingledine
a8c0c51e0b
a bit of cleanup
...
svn:r4884
2005-08-30 06:01:13 +00:00
Nick Mathewson
0691c7221e
Update routerinfo_t.is_running when generating network status on authdirserver.
...
svn:r4883
2005-08-29 18:42:36 +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
Nick Mathewson
e3a058f33a
Change semantics of set_cached_dir; fix massive authdir memleak.
...
svn:r4880
2005-08-28 04:20:37 +00:00
Nick Mathewson
26d2301c76
Make unit tests (and others) run without launching listeners, creating subdirectories, and so on.
...
svn:r4876
2005-08-26 23:22:27 +00:00
Nick Mathewson
cd2bb915ed
Fix a warning, add an assert.
...
svn:r4875
2005-08-26 23:12:13 +00:00
Nick Mathewson
70fe2a6cee
Crashing dirservers on startup is often considered bad form.
...
svn:r4874
2005-08-26 23:04:12 +00:00
Nick Mathewson
e863771485
Log when falling back to nonfast/nonstabl routers
...
svn:r4869
2005-08-26 22:16:32 +00:00
Nick Mathewson
ed070b0fdb
Set a variable that exists. That works better.
...
svn:r4868
2005-08-26 22:16:09 +00:00
Roger Dingledine
6577e08e38
when we're trying to build a circuit and we're being picky about what
...
sort we get but there aren't any suitable servers, try being less picky
rather than simply failing.
svn:r4867
2005-08-26 22:10:22 +00:00
Nick Mathewson
a74ad8efea
Remember to mark v2 networkstatus non-dirty when we generate it; also, fix spaces.
...
svn:r4866
2005-08-26 22:08:24 +00:00
Nick Mathewson
3cc960c7dd
Make sure that cached-status directory exists.
...
svn:r4865
2005-08-26 22:03:57 +00:00
Roger Dingledine
77f52e3467
fix some logs and comments
...
svn:r4864
2005-08-26 21:55:38 +00:00
Nick Mathewson
ae4a183ed8
Change the return values on dirserv_add_descriptor
...
svn:r4863
2005-08-26 21:46:24 +00:00
Roger Dingledine
53431a4950
fix compile complaints (and a bug)
...
svn:r4862
2005-08-26 21:30:52 +00:00
Nick Mathewson
e24d540d81
We no longer need dirserv_load_from_directory_string, so dirserv_add_descriptor no longer has to keep track of where each descriptor ends.
...
svn:r4861
2005-08-26 21:28:16 +00:00
Nick Mathewson
208bdf5f27
No need to load cached directory twice
...
svn:r4860
2005-08-26 21:19:58 +00:00
Roger Dingledine
715b972300
disarm a trap
...
svn:r4859
2005-08-26 21:12:53 +00:00
Nick Mathewson
47669fa0fd
Fix assert failure on directory startup.
...
svn:r4858
2005-08-26 21:12:34 +00:00
Nick Mathewson
f559c49c39
Make network-status strings wellformed
...
svn:r4857
2005-08-26 21:11:53 +00:00
Nick Mathewson
47aa42fc17
Remove a field that nobody sets or uses.
...
svn:r4856
2005-08-26 21:11:34 +00:00
Nick Mathewson
9a3be928e9
Note that a descriptor has changed when we receive a new directory.
...
svn:r4855
2005-08-26 21:02:18 +00:00
Nick Mathewson
0e649ac60a
Remove descriptor_list and use routerlist instead. Make directories manage routerlist a little better.
...
svn:r4854
2005-08-26 20:59:04 +00:00
Roger Dingledine
a47765a16d
stop freeing the new global options list whenever we update it.
...
svn:r4853
2005-08-26 20:26:20 +00:00
Roger Dingledine
237f58524f
make it clearer which elements of routerinfo_t are for reachability
...
testing
svn:r4852
2005-08-26 20:22:32 +00:00
Roger Dingledine
f3bccdce73
if dirservers set assumereachable, it overrides their individual
...
reachability testing
svn:r4851
2005-08-26 20:08:12 +00:00
Roger Dingledine
61f728f4fe
fix an infinite loop at hup
...
svn:r4850
2005-08-26 20:07:55 +00:00
Nick Mathewson
7f78be1659
Clean up the "add myself as a trusted dirserver" code.
...
svn:r4849
2005-08-26 19:31:51 +00:00
Nick Mathewson
43488472ec
The circus music begins playing as nickm and arma juggle an ntohl. Hoop-lah!
...
svn:r4848
2005-08-26 19:25:36 +00:00
Nick Mathewson
ee76baae3d
move a wandering ntohl
...
svn:r4847
2005-08-26 19:23:52 +00:00
Nick Mathewson
0239249160
Only free strmap if it is allocated.
...
svn:r4846
2005-08-26 18:48:13 +00:00
Nick Mathewson
cf90a36dd1
Add quotes around filenames in src/or
...
svn:r4845
2005-08-26 18:44:26 +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
Nick Mathewson
ff25a7707a
fix syntax err
...
svn:r4843
2005-08-26 18:35:52 +00:00
Nick Mathewson
88989be99b
More documenting
...
svn:r4842
2005-08-26 18:02:49 +00:00
Nick Mathewson
e204dd5d2a
Remove accidentally added printf
...
svn:r4841
2005-08-26 15:35:43 +00:00
Nick Mathewson
d54d7b7ec1
Add some documentation; move the signature generation logic into routerparse.c along with the hash generation logic; make router signing use it as well.
...
svn:r4840
2005-08-26 15:34:53 +00:00
Roger Dingledine
893acb3acc
Make a new AssumeReachable config option that will publish anyway.
...
Also, let authdirservers start without setting their Address field.
Something is still not working though. Will fix in morning.
svn:r4839
2005-08-26 07:41:19 +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
e68bed8782
Fall back to routerlist instead of descriptor_list when we are a cache.
...
svn:r4837
2005-08-25 20:54:12 +00:00
Nick Mathewson
4dc3cb9fd9
Fix a segfault when starting a dir cache
...
svn:r4836
2005-08-25 20:45:53 +00:00
Nick Mathewson
54a6a8f0ef
Start implementing the server side of the new directory protocol.
...
Probably very buggy, since I can't actually run an authdir.
Features
- Generate and publish new network-status format
- Code to cache and re-serve network-status objects generated by others.
- Publish individual descriptors (by fingerprint, by "all", and by
"tell me yours.") [Still needs compression logic]
- Publish client and server recommended versions seprately.
- Add digest of descriptor to routerinfo_t, so we can track them better, and
length, so we can server them more easily.
Cleanups
- Unify code to sign directory-like things
- Make resolve_my_address() able to tell you which name it wound up resolving.
- Unify code to store and serve directory-like things so it all uses
cached_dir_t.
- Unify code to set the value of cached_dir_t objects.
svn:r4835
2005-08-25 20:33:17 +00:00
Roger Dingledine
86f85f240c
be much more conservative about logging reachability complaints.
...
the ones it logs now are probably genuine problem servers.
svn:r4832
2005-08-24 14:31:32 +00:00
Roger Dingledine
e54e970a82
ha ha, that infinite loop was fun.
...
but dirservers aren't supposed to have infinite loops.
svn:r4831
2005-08-24 12:14:44 +00:00
Roger Dingledine
a120cc20c1
Dirservers now do their own external reachability testing of each
...
Tor server, and only list them as running if they've been found to
be reachable.
Dirservers also log trouble servers, but only start complaining loudly
after they've been up for an hour, to reduce false positives. We still
need to do something about the fact that it is quite loud when there
are many trouble servers.
svn:r4829
2005-08-24 02:31:02 +00:00
Nick Mathewson
5d590861c4
TOR_ISSPACE, not isspace.
...
svn:r4828
2005-08-24 02:20:31 +00:00
Nick Mathewson
b72ab23ded
check [X-]Forwarded-For headers in HTTP requests when generating log messages. Implements feature for bug 181. Arma--please review?
...
svn:r4826
2005-08-23 22:27:17 +00:00
Nick Mathewson
50452c32ec
fix bug 180: handle duplicate lines in approved-routers files.
...
svn:r4825
2005-08-23 22:00:35 +00:00
Roger Dingledine
fed90c300f
downgrade back to 0.1.1.5-alpha-cvs
...
it's going to be another while
svn:r4824
2005-08-23 10:01:11 +00:00
Roger Dingledine
f35ef825f9
Our logic to decide if the OR we connected to was the right guy
...
was brittle and maybe open to a mitm for unverified routers.
Now we be sure to check the digest, and if the nickname he claims is
not a verified one then we don't care what nickname he claims.
svn:r4823
2005-08-23 09:50:51 +00:00
Roger Dingledine
675f6b5f3c
that comma was important
...
svn:r4820
2005-08-23 01:00:30 +00:00
Roger Dingledine
8b766d1b7e
fix bad logic that has been lurking for eons, that now prevented us
...
from uploading descriptors after the first one.
svn:r4818
2005-08-23 00:47:44 +00:00
Roger Dingledine
ab112ca6ad
and don't print the null string here either
...
svn:r4816
2005-08-22 22:59:54 +00:00
Roger Dingledine
23ed3c9786
whoops, avoid printing a null string sometimes
...
svn:r4815
2005-08-22 22:58:38 +00:00
Roger Dingledine
676b330eb2
Make DirPostPeriod config option obsolete.
...
Force new descriptor upload every 18 hours, not 24, to avoid races.
Change rate-limiting on new descriptors due to bandwidth changes, from
45 minutes to 20 minutes.
svn:r4814
2005-08-22 21:53:12 +00:00
Roger Dingledine
8adcd0bb3b
bump version to 0.1.1.6-alpha
...
svn:r4813
2005-08-22 20:12:39 +00:00
Roger Dingledine
fa64d73fc7
fix function headers from the descriptor-frequency commit
...
svn:r4809
2005-08-22 06:45:18 +00:00
Roger Dingledine
435d2d8fde
when we begin reachability testing, log the address:port for each
...
port we're testing, so people are more likely to notice that they're
using the wrong ip address.
svn:r4808
2005-08-22 05:46:02 +00:00
Roger Dingledine
d928411acd
change log entry for unreachability to explicitly suggest /etc/hosts
...
as the culprit
svn:r4807
2005-08-22 05:33:49 +00:00
Nick Mathewson
dc09c7fc73
Implement new (reduced-frequency) upload rules. arma, you should review this.
...
svn:r4806
2005-08-22 03:10:53 +00:00
Nick Mathewson
9b6eeb81aa
Make unit tests run without segfaulting
...
svn:r4804
2005-08-22 00:34:42 +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
Nick Mathewson
7a442c2c48
Make set_options a little smarter: have options_act handle transitions on its own, and only dirty our descriptor when we really want to.
...
svn:r4802
2005-08-22 00:18:45 +00:00
Roger Dingledine
5e76bac1dd
the tor-spec says router->address must be an IP address. so refuse
...
it if it's not.
(this also fixes some potential security problems with people providing
hostnames as their address and then preferentially resolving them and
partitioning users.)
svn:r4790
2005-08-16 02:52:27 +00:00
Andrew Lewman
955a10fee0
Initial complete config file. Organized into easily searchable
...
sections.
svn:r4789
2005-08-16 02:14:40 +00:00
Roger Dingledine
04d42ea433
rotate dns and cpu workers if the controller changes options that
...
will affect them.
svn:r4787
2005-08-15 23:46:18 +00:00
Roger Dingledine
b1d3f124c4
Permit transitioning from ORPort=0 to ORPort!=0, and back.
...
This is actually a bit more subtle, because we need to rotate
the dnsworkers and cpuworkers if certain options (logs, orport, etc)
change. Maybe set_options() should detect this and notify the caller
that it should rotate them.
Expect some mysterious crashes.
svn:r4786
2005-08-15 10:30:45 +00:00
Roger Dingledine
10ff723938
initialize the dns worker cache tree whether or not we start
...
out as a server.
svn:r4785
2005-08-15 10:27:37 +00:00
Roger Dingledine
157f013d83
fix typo
...
svn:r4784
2005-08-15 09:25:36 +00:00
Roger Dingledine
00c2ba4841
resolve a XXX
...
svn:r4783
2005-08-15 09:19:55 +00:00
Roger Dingledine
11bc97801d
clean up some confusing logs.
...
make MonthlyAccountingStart truly obsolete now.
svn:r4782
2005-08-15 09:17:47 +00:00
Roger Dingledine
79e3f5600a
hey, we have a function for that
...
svn:r4781
2005-08-15 08:51:20 +00:00
Roger Dingledine
3728011f36
after failing from resolve failed or misc, reset the num failures.
...
svn:r4780
2005-08-15 03:35:15 +00:00
Roger Dingledine
f57d062d9c
Implement exit enclaves: if we know an IP address for the destination,
...
and there's a running Tor server at that address which allows exit to
the destination, then extend the circuit to that exit first.
Also, if the user asks for a .exit node, cannibalize general circs for it.
svn:r4779
2005-08-15 03:25:40 +00:00
Roger Dingledine
121ea4dd93
a url for better reference
...
svn:r4778
2005-08-15 01:03:50 +00:00
Roger Dingledine
cc1b82ade8
when listing min-bandwidth servers in the controller, don't get
...
fooled by a low bandwidthrate
svn:r4777
2005-08-14 08:38:34 +00:00
Roger Dingledine
ff54050fda
let unregistered-servers take a parameter (the min bandwidth)
...
nick, is this an ugly hack of your protocol?
svn:r4775
2005-08-13 02:20:00 +00:00
Roger Dingledine
66b21a19db
Add a 'quit' command for the controller.
...
Add a 'getinfo unregistered-servers' for arma's internal use.
svn:r4774
2005-08-13 01:55:23 +00:00
Roger Dingledine
6d875b7d58
i'm sick of having my streams fail because of a confused exit node.
...
try this band-aid to see if it gets better.
svn:r4773
2005-08-13 00:31:41 +00:00
Roger Dingledine
87fcd60aa2
predict required circuits better, with an eye toward making
...
hidden services faster on the service end.
svn:r4772
2005-08-13 00:22:07 +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
21959c1bfd
start using new renddesc code
...
svn:r4769
2005-08-12 15:05:05 +00:00
Roger Dingledine
aab541c852
We weren't cannibilizing circuits correctly for
...
CIRCUIT_PURPOSE_C_ESTABLISH_REND and CIRCUIT_PURPOSE_S_ESTABLISH_INTRO
so we were being forced to build those from scratch.
This should save us a bit of time. Also fixes bug 173.
svn:r4763
2005-08-12 01:26:21 +00:00
Roger Dingledine
2caa74e6ff
quiet a noisy debug
...
svn:r4762
2005-08-12 00:34:50 +00:00
Nick Mathewson
16528aa070
Add a config-file GETINFO entry; fix a minor memory leak on some SAVECONF calls.
...
svn:r4761
2005-08-10 18:05:20 +00:00
Nick Mathewson
c031d14633
Fix segfault in unit tests
...
svn:r4760
2005-08-09 18:49:43 +00:00
Nick Mathewson
18abdfdf58
Replace ADDR_POLICY_ACCEPT/REJECT with its own enum
...
svn:r4756
2005-08-09 05:22:23 +00:00
Nick Mathewson
05bced6139
check_software_version_against_directory needs a return value.
...
svn:r4755
2005-08-09 05:20:14 +00:00
Nick Mathewson
742796c19f
Avoid sending blank lines when GETINFO replies should be empty
...
svn:r4754
2005-08-09 05:16:29 +00:00
Roger Dingledine
f9f600f032
bump to 0.1.1.5-alpha-cvs
...
svn:r4753
2005-08-08 22:34:24 +00:00
Nick Mathewson
943ef5256b
fix whitespace issues
...
svn:r4752
2005-08-08 21:59:48 +00:00
Nick Mathewson
249b72f53e
Replace (Fascist)Firewall* with a new ReachableAddresses option that understands address policies.
...
svn:r4751
2005-08-08 21:58:48 +00:00
Roger Dingledine
3ac34ae329
get rid of IgnoreVersion and the forced auto-exit mis-feature
...
svn:r4746
2005-08-08 21:52:57 +00:00
Roger Dingledine
588e80fdcd
fix a function comment
...
svn:r4743
2005-08-08 17:48:23 +00:00
Nick Mathewson
50cfcbe157
Note which directory server said 400 to a renddesc.
...
svn:r4742
2005-08-08 17:32:17 +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
Roger Dingledine
2e918af35d
a few typo fixes
...
svn:r4738
2005-08-07 21:58:23 +00:00
Nick Mathewson
01d0788950
Generalize FirewallPorts to FirewallIPs so I can run happily when locked in net 18.
...
svn:r4737
2005-08-07 21:24:00 +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
Nick Mathewson
4e735da5da
Also set event_mask=0 in connection_free_all, and dont send events to marked control conns (for good measure)
...
svn:r4729
2005-08-07 19:27:38 +00:00
Roger Dingledine
5c4da9dec6
incomplete patch for matt's info controller signal term bug
...
svn:r4728
2005-08-07 19:20:55 +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
Nick Mathewson
999b7951c3
Shorten hidden service port config parsing; fix bug 174
...
svn:r4725
2005-08-06 21:35:04 +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
Roger Dingledine
1ec3081a84
bump to 0.1.1.5-alpha, though it's not released yet
...
svn:r4721
2005-08-05 19:16:11 +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
52475ee19b
Alphebetize config variables
...
svn:r4714
2005-08-05 01:35:43 +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
Roger Dingledine
1d3e63158e
bump to 0.1.1.4-alpha in preparation for new release
...
svn:r4701
2005-08-04 22:45:54 +00:00
Nick Mathewson
546fba7b04
Fix windows warning
...
svn:r4697
2005-08-04 22:25:39 +00:00
Nick Mathewson
4870877231
Add SOCKSAndDNS link to appropriate log message, since we wind up pointing everybody to it anyway
...
svn:r4695
2005-08-04 20:12:44 +00:00
Nick Mathewson
4cb89fd557
Implement some more GETINFO goodness: expose helper nodes, config options, getinfo keys.
...
svn:r4694
2005-08-04 19:56:41 +00:00
Nick Mathewson
303258972b
Fix idiot bug. The "free the IP history" code belons in connection_free_all(), not in connection_free(). You can all mock me now.
...
svn:r4691
2005-08-04 18:29:01 +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
ceb02cee2c
If they havent told us by now, they probably never will.
...
svn:r4687
2005-08-03 20:37:13 +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
d90841ff5a
Fix bug in state parsing
...
svn:r4681
2005-07-28 19:08:51 +00:00
Nick Mathewson
299af3d393
Possibly broken implementation of persistant state; handles helper nodes; does not handle accounting info yet.
...
svn:r4680
2005-07-28 19:01:48 +00:00
Nick Mathewson
67d8c5af8f
define TIME_T_IS_SIGNED on windows
...
svn:r4676
2005-07-25 18:13:05 +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
a32f936346
whoops, fix compile
...
svn:r4674
2005-07-25 10:36:01 +00:00
Roger Dingledine
1e0fdcae98
parameterize RephistTrackTime
...
svn:r4673
2005-07-25 10:29:21 +00:00
Roger Dingledine
2fa109102a
bump to 0.1.1.3-alpha
...
svn:r4672
2005-07-25 09:12:18 +00:00
Roger Dingledine
44fe2fa7eb
better log examples in the torrc
...
svn:r4646
2005-07-23 05:14:33 +00:00
Roger Dingledine
9385a96235
fix typos
...
svn:r4645
2005-07-23 04:35:58 +00:00
Nick Mathewson
bb4ebaac6f
document code for hibernation
...
svn:r4644
2005-07-23 04:12:35 +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
2bd6040f62
Rename cross-format config.c stuff to config_* and or_options_t-specific stuff to option[s]_*
...
svn:r4641
2005-07-23 01:58:05 +00:00
Nick Mathewson
3cb7b97660
Fix out-of-place declaration
...
svn:r4640
2005-07-23 01:52:24 +00:00
Nick Mathewson
18c11eb3bc
Be consistent about preferring foo* to struct foo*
...
svn:r4637
2005-07-22 21:12:10 +00:00
Nick Mathewson
c252a76f0b
Parameterize configuration parsing functions
...
svn:r4635
2005-07-22 20:37:42 +00:00
Nick Mathewson
c3a62c1739
Initial, somewhat dodgy implementation of helper nodes. It has too many XXXXs, it logs too verbosely, and it doesnt do persistence.
...
svn:r4633
2005-07-22 17:32:25 +00:00
Nick Mathewson
5b4e11fa5d
Add getinfo logic for accounting; add options for helper nodes
...
svn:r4632
2005-07-22 14:55:09 +00:00
Roger Dingledine
495169d316
the abuse faq moved, so change the url
...
svn:r4629
2005-07-22 06:35:25 +00:00
Roger Dingledine
3333d27f41
we were mangling memory because we weren't allocing enough
...
for the hidserv desc
nick can you check that this is enough now?
svn:r4628
2005-07-22 00:18:25 +00:00
Roger Dingledine
1efeb3908a
let hidden service descriptors publish 0 intro points
...
nick, please check the logic here
svn:r4627
2005-07-22 00:14:58 +00:00
Roger Dingledine
11bd4bc521
in circuit_list_path(), don't redundantly print the intended exit
...
nickname when the circuit is open.
svn:r4622
2005-07-20 20:33:13 +00:00
Roger Dingledine
eedb7c243e
be consistent about printing out key digest $'s when we're getting a
...
different key than we expect
svn:r4609
2005-07-19 21:26:24 +00:00
Roger Dingledine
f2bc79ba89
forward-port with a different version claim
...
svn:r4608
2005-07-19 21:16:31 +00:00
Roger Dingledine
7ac36a9a74
unit tests to prove i didn't screw up
...
svn:r4602
2005-07-18 23:36:12 +00:00
Roger Dingledine
8c657e4157
cosmetic fixes
...
svn:r4601
2005-07-18 23:33:19 +00:00
Roger Dingledine
e479cc935e
stop asserting if we have a controller listening for circuit events
...
and we're offline so we fail to make a circuit and it tries to notify
us about the zero-length circuit.
svn:r4600
2005-07-18 23:18:00 +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
Roger Dingledine
5fe18894b9
now that we're recommending 0.1.1.x-alpha for win32 and os x users,
...
stop printing debug stuff once a minute
svn:r4596
2005-07-18 19:16:17 +00:00
Roger Dingledine
e8a1b1d6a0
add a trivial tor-counting variable
...
svn:r4593
2005-07-18 06:09:04 +00:00
Roger Dingledine
43a28a4ca9
make event streams work with control v1 too
...
svn:r4590
2005-07-17 22:28:01 +00:00
Roger Dingledine
6ac245793c
downgrade a warning that could plausibly happen sometimes now that we
...
have controllers.
svn:r4589
2005-07-17 21:43:47 +00:00
Roger Dingledine
090836d171
correct error message in closestream
...
svn:r4588
2005-07-17 21:36:33 +00:00
Roger Dingledine
ebf13c6282
not not zero means zero
...
svn:r4587
2005-07-17 21:22:18 +00:00
Roger Dingledine
5643532bd9
if the controller asks to extendcircuit to circid 0, we need to
...
init the circuit before we can add hops to its cpath.
svn:r4586
2005-07-17 21:13:36 +00:00
Roger Dingledine
fe7535c5e2
arguments in EXTENDCIRCUIT were reversed
...
and an error message was misleading
and we were leaking memory on some errors
more bugs remain
svn:r4585
2005-07-17 21:06:00 +00:00
Nick Mathewson
2cff73e7a4
Make "Couldnt add router to list" message more descriptive. Make messages consistenly punctuated.
...
svn:r4582
2005-07-15 19:40:38 +00:00
Nick Mathewson
f8b48176ed
Fix several bugs in read_escaped_data; add a unit test and a few docs
...
svn:r4580
2005-07-15 19:31:11 +00:00
Roger Dingledine
61f2ea0df0
bump us to 0.1.1.2-alpha-cvs since stuff has changed
...
svn:r4579
2005-07-15 19:18:36 +00:00
Nick Mathewson
441e02d4ac
Merge patch from Matt Edman for bug 162 (service never stops)
...
svn:r4578
2005-07-15 19:09:36 +00:00
Roger Dingledine
545c2c6c87
the other half of the bugfix: tolerate a trusted dirserver claiming
...
dirport 0 in its descriptor.
svn:r4576
2005-07-15 18:56:59 +00:00
Roger Dingledine
97174b67c2
if you're an auth dir server, always publish your dirport,
...
even if you haven't yet found yourself to be reachable.
this is the cause of Jan Tore Morken's recent or-talk bug.
svn:r4575
2005-07-15 18:49:35 +00:00
Roger Dingledine
83dc42055d
point out some bugs for nick, noticed by whiteout
...
svn:r4574
2005-07-15 18:48:38 +00:00
Roger Dingledine
452c98058f
missed one
...
svn:r4567
2005-07-14 23:08:55 +00:00
Roger Dingledine
d8d0feb633
tell us what kind of listener it is, too
...
svn:r4566
2005-07-14 23:07:05 +00:00
Nick Mathewson
f86a1e634f
fix opening listener log msg
...
svn:r4565
2005-07-14 23:04:31 +00:00
Nick Mathewson
e94f95a716
Populate address field of listeners with an actually sane value.
...
svn:r4564
2005-07-14 22:56:17 +00:00
Roger Dingledine
c2abcc4f1c
bump to 0.1.1.2-alpha
...
svn:r4563
2005-07-14 22:46:42 +00:00
Roger Dingledine
867cbf1022
and here too
...
svn:r4561
2005-07-14 22:38:30 +00:00
Roger Dingledine
ceae96a3a0
put in tor26's new IP address
...
svn:r4560
2005-07-14 22:37:52 +00:00
Nick Mathewson
331942870e
fix problems noticed by arma in rendservice.c
...
svn:r4558
2005-07-14 16:41:47 +00:00
Nick Mathewson
149e9a5900
remove pointless XXXX. It was there to remind me to do something I already did.
...
svn:r4557
2005-07-14 16:37:33 +00:00
Roger Dingledine
4a6bf116e7
substantive changes on nick's rendezvous commit.
...
nick, can you fix these?
svn:r4554
2005-07-14 08:45:19 +00:00
Roger Dingledine
2259032ea1
trivial changes on nick's rendezvous commit
...
svn:r4553
2005-07-14 08:43:19 +00:00
Roger Dingledine
19810ba38e
make it more pleasant to be told you're using libevent
...
svn:r4548
2005-07-13 21:22:34 +00:00
Roger Dingledine
306f7d320c
make a notice-level log make more sense.
...
svn:r4547
2005-07-13 21:12:33 +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
Nick Mathewson
cf13b3e4a6
Macro-fu to get DEBUG events working.
...
svn:r4539
2005-07-13 05:14:42 +00:00
Roger Dingledine
4457c181f5
note a worrying double-free possibility in torgzip.
...
nick?
svn:r4537
2005-07-12 23:21:15 +00:00
Roger Dingledine
ddecb1a04d
looks like we were never delivering deflated running-routers lists
...
svn:r4536
2005-07-12 22:56:22 +00:00
Roger Dingledine
7c7c95c3f6
anonymous bugfix on our pointer arithmetic
...
svn:r4535
2005-07-12 22:56:06 +00:00
Nick Mathewson
0828feaf7c
Add belt-and-suspenders fix to coredump from yesterday; document more functions in buffers.c
...
svn:r4532
2005-07-12 18:19:30 +00:00
Roger Dingledine
8f9790a023
fix a seg fault with autodetecting which controller version is being used
...
svn:r4531
2005-07-12 05:48:15 +00:00
Nick Mathewson
63f9a8baa2
Canonicalize option names even on defaulted options.
...
svn:r4530
2005-07-11 18:11:54 +00:00
Nick Mathewson
50a206e800
Do not reverse command-line configuration options; Use new minimal-listener-close code; Add code to canonicalize configuration names.
...
svn:r4529
2005-07-11 17:35:36 +00:00
Nick Mathewson
658e1196d0
Change retry_listeners: when force is false, close and re-open a minimal set of listeners (i.e., those that do not match the configuration). This fixes a possible bug on some windowses. Maybe.
...
svn:r4528
2005-07-11 17:20:22 +00:00
Nick Mathewson
e1db33971e
NT service patch from Matt Edman to improve error messages, lightly cleaned; needs more testing.
...
svn:r4527
2005-07-09 16:37:12 +00:00
Roger Dingledine
2f1f0c8d21
be flexible in what you accept: when people type "tor --install" thinking
...
they had typed "tor -install", make it work too.
svn:r4526
2005-07-09 03:28:58 +00:00
Roger Dingledine
5c1ba5dcf7
fix compile error in cvs
...
svn:r4520
2005-07-02 00:18:09 +00:00
Nick Mathewson
b11e314f2e
Be more explicit about which IP we are connecting to; expose future exit policy problems better.
...
svn:r4519
2005-07-01 13:40:29 +00:00
Roger Dingledine
271d49958e
fix another compile warn
...
svn:r4516
2005-07-01 02:02:24 +00:00
Roger Dingledine
3bb756b93b
forward-port the 0.1.0.11 stuff
...
svn:r4515
2005-07-01 02:01:21 +00:00
Roger Dingledine
055477f121
fix compile error (and likely a a crash bug in resolves)
...
svn:r4514
2005-07-01 01:59:37 +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
ec83652357
Logic to implement rendezvous/introduction via unknown servers.
...
- Add a new extend_info_t datatype to hold information needed to
extend a circuit (addr,port,keyid,onion_key). Use it in cpath and
build_state. Make appropriate functions take or return it instead of
routerinfo_t or keyid.
- #if 0 needless check in circuit_get_by_edge_conn; if nobody triggers this
error in 0.1.0.10, nobody will trigger it.
- Implement new hidden service descriptor format, which contains "extend
info" for introduction points, along with protocol version list.
- Parse new format.
- Generate new format
- Cache old and new formats alongside each other.
- Directories serve "old" format if asked in old way, "newest available"
format if asked in new way.
- Use new format to find introduction points if possible; otherwise fall
back. Keep nickname lists and extendinfo lists in sync.
- Tests for new format.
- Implement new "v2" INTRODUCE cell format.
- Accept new format
- Use new format if we have a versioned service descriptor that says the
server accepts the new format.
- Add documentation for functions and data types.
svn:r4506
2005-06-29 21:46:55 +00:00
Nick Mathewson
0505b31933
Bump version to 0.1.1.1-alpha-cvs
...
svn:r4505
2005-06-29 21:46:17 +00:00
Roger Dingledine
6b21c8e74f
make the local and private network masks explicit when we complain
...
svn:r4501
2005-06-29 19:15:23 +00:00
Roger Dingledine
caf7af26d7
whitespace fix
...
svn:r4500
2005-06-28 01:53:15 +00:00
Roger Dingledine
0ee665708a
clean up some more comments
...
svn:r4499
2005-06-28 01:52:58 +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
Nick Mathewson
30571317dd
Fix unit tests that used old signature for add_fingerprint_to_dir
...
svn:r4495
2005-06-27 22:25:09 +00:00
Nick Mathewson
275966abe3
Bump CVS version to 0.1.1.1-alpha
...
svn:r4493
2005-06-27 18:35:10 +00:00
Roger Dingledine
da7d93e88a
make the comment next to RunAsDaemon mention that it is a noop on win32
...
svn:r4489
2005-06-26 08:59:01 +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
b759fe4b8d
It is not the end of the world when a router descriptor has an unrecognized kwd
...
svn:r4480
2005-06-24 23:42:15 +00:00
Roger Dingledine
00a7a37c94
we were printing the number of idle dns workers incorrectly.
...
svn:r4477
2005-06-23 07:57:43 +00:00
Roger Dingledine
9808fbd884
make the log message less scary when all the dirservers are
...
temporarily unreachable
svn:r4476
2005-06-22 21:59:11 +00:00
Nick Mathewson
3ff473b47b
Appease the hungry god of GCC: it wants functions to be static or prototyped!
...
svn:r4471
2005-06-21 01:08:01 +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
Roger Dingledine
419d647353
more cleanups before i go wild
...
svn:r4469
2005-06-21 01:00:42 +00:00
Roger Dingledine
9c67ae34f1
overall cleanup and streamlining and doccing
...
also fix a DoS avenue on dirservers
svn:r4468
2005-06-20 23:04:13 +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
Nick Mathewson
5eef9177c5
Appease verbose GCC warnings.
...
svn:r4466
2005-06-20 09:38:29 +00:00
Nick Mathewson
eb327e7660
Add feature to handle unset (default) configuration options in GETCONF control messages
...
svn:r4461
2005-06-19 22:38:36 +00:00
Nick Mathewson
64fc1f7bae
Implement all the rest of the new controller protocol, debug a little, add some new features, add ADDRMAP events.
...
svn:r4460
2005-06-19 20:40:41 +00:00
Roger Dingledine
b5fd75a063
forward-port the --hash-password bug, plus other nearby fixes
...
svn:r4459
2005-06-19 08:35:46 +00:00
Roger Dingledine
cc57e1cab1
fix stray funny-character
...
svn:r4458
2005-06-19 08:35:16 +00:00
Nick Mathewson
d38c696d5a
The new protocol is implemented. Except for the pesky string unquoting business. And the cleanups. And the docs. And the testing. And the debugging. And the new features. Hm, I think it is time to sleep.
...
svn:r4456
2005-06-18 03:50:08 +00:00
Nick Mathewson
3f2339d1d3
Implement EXTENDCIRCUIT and ATTACHCIRCUIT. Only SETCONFIG and AUTHENTICATE remain.
...
svn:r4455
2005-06-18 03:09:43 +00:00
Nick Mathewson
c2f6fe9b85
Implement even more control functionality
...
svn:r4454
2005-06-18 02:39:25 +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
9b4aa8d2ab
Implement all the easy bits of the new control protocol
...
svn:r4449
2005-06-17 20:37:21 +00:00
Nick Mathewson
f9f09f1c5e
Start implementing framework for revised control spec.
...
svn:r4447
2005-06-17 18:49:55 +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
a3c66475f3
compile fix by agl, for code that is always commented out
...
svn:r4427
2005-06-13 17:33:12 +00:00
Nick Mathewson
2b8fd9ceda
Allow a few EINVALs from libevent before dying. Warn on kqueue with libevent before 1.1a
...
svn:r4419
2005-06-13 00:35:19 +00:00
Roger Dingledine
2111c0e263
a bit more cleanup
...
svn:r4417
2005-06-12 04:33:26 +00:00
Roger Dingledine
91b1fb7ff7
some more cleaning and docing
...
svn:r4415
2005-06-11 21:17:38 +00:00
Nick Mathewson
beae4d0d32
whitespace fix
...
svn:r4414
2005-06-11 18:59:24 +00:00
Nick Mathewson
44107b6b13
fix typo in last patch
...
svn:r4413
2005-06-11 18:56:16 +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
2587fa09f9
move more docs into our code
...
svn:r4406
2005-06-11 06:07:22 +00:00
Roger Dingledine
fcd0fc3364
flesh out the source file descriptions for doxygen
...
svn:r4404
2005-06-11 05:31:17 +00:00
Roger Dingledine
b349e60543
don't tell people you're publishing the server descriptor if you're
...
actually not.
svn:r4387
2005-06-09 21:23:54 +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
Roger Dingledine
5bca8e8b4d
forward-port:
...
## If certain IPs and ports are blocked externally, e.g. by your firewall,
## you should update your exit policy to reflect this -- otherwise Tor
## users will be told that those destinations are down.
svn:r4376
2005-06-09 10:42:25 +00:00