Sebastian Hahn
01c7b60a80
Create circuituse.h
2010-07-27 07:58:14 +02:00
Sebastian Hahn
174a88dd79
Create circuitlist.h
2010-07-27 07:58:13 +02:00
Sebastian Hahn
21155204c6
Create circuitbuild.h
2010-07-27 07:58:13 +02:00
Sebastian Hahn
34dfce0d82
Create buffers.h
2010-07-27 07:56:26 +02:00
Sebastian Hahn
cbee969f40
Create routerlist.h
2010-07-27 07:56:25 +02:00
Sebastian Hahn
c53b6cc831
Create router.h
2010-07-27 07:56:25 +02:00
Sebastian Hahn
ff4030f621
Create geoip.h
2010-07-27 07:56:25 +02:00
Sebastian Hahn
e69dc22f4e
Split headers for dnsserv.c functions out of or.h
...
The next series of commits begins addressing the issue that we're
currently including the complete or.h file in all of our source files.
To change that, we're splitting function definitions into new header
files (one header file per source file).
2010-07-27 07:56:25 +02:00
Nick Mathewson
0b4b51314f
Make the controller act more usefully when GETINFO fails
...
Right now it says "552 internal error" because there's no way for
getinfo_helper_*() countries to specify an error message. This
patch changes the getinfo_helper_*() interface, and makes most of the
getinfo helpers give useful error messages in response to failures.
This should prevent recurrences of bug 1699, where a missing GeoIPFile
line in the torrc made GETINFO ip-to-county/* fail in a "not obvious
how to fix" way.
2010-07-18 17:05:58 +02:00
Nick Mathewson
bea55766af
Merge remote branch 'mikeperry/cbt-bugfixes3'
2010-06-29 18:57:50 -04:00
Kat Magic
e2b117eb80
Remove the extra space that is sent in certain STREAM messages from the controller. ( closes #1583 )
2010-06-22 20:49:29 -04:00
Mike Perry
2abe1ceccf
Add CLOSE_MS and CLOSE_RATE keywords to buildtimeout event.
2010-06-15 20:04:49 -07:00
Mike Perry
835ab53102
Add a TIMEOUT_RATE keyword to buildtimeout event.
2010-05-10 12:59:05 -07:00
Nick Mathewson
927425150b
Merge branch 'asprintf'
2010-04-02 12:30:46 -04:00
Nick Mathewson
47e919424d
Tweak users of snprintf to use asprintf where appropriate
2010-02-28 21:46:50 -05:00
Nick Mathewson
b006e3279f
Merge remote branch 'origin/maint-0.2.1'
...
Conflicts:
src/common/test.h
src/or/test.c
2010-02-27 17:16:31 -05:00
Nick Mathewson
c3e63483b2
Update Tor Project copyright years
2010-02-27 17:14:21 -05:00
Sebastian Hahn
7681e355ed
Fix another coverity-spotted memleak
2010-02-23 15:05:39 +01:00
Sebastian Hahn
b65ad83ebe
Break early on unknown extendcircuit purpose
...
Don't continue handling EXTENDCIRCUIT messages when we get an
unknown purpose.
2010-02-22 10:57:11 +01:00
Sebastian Hahn
dcf85eb158
Fix a memory leak, found by coverity
2010-02-22 10:56:54 +01:00
Sebastian Hahn
e391a497ec
Remove some redundand code in control.c
...
Found by coverity
2010-02-22 10:41:46 +01:00
Nick Mathewson
061ffbd7d5
Future-proof the control protocol by ignoring unrecognized keyword args
2010-02-18 12:49:48 -05:00
Nick Mathewson
2d95e02914
Make more arguments in control.c properly case-insensitive.
2010-02-18 12:49:26 -05:00
Mike Perry
2258125e1a
Move CBT params into consensus.
2010-02-18 09:08:31 -08:00
Mike Perry
ac68704f07
Allow "EXTENDCIRCUIT 0" to omit a path.
2010-02-18 09:08:31 -08:00
Mike Perry
8512e33773
Add BUILDTIMEOUT_SET event for CBT stress testing.
2010-02-18 09:08:31 -08:00
Sebastian Hahn
02889bae21
Fix comments for getinfo_helper_t
...
rieo pointed out something isn't right here
2010-01-27 22:12:43 +01:00
Karsten Loesing
7e65871ccc
Fix a memory corruption bug while collecting bridge stats
...
We accidentally freed the internal buffer for bridge stats when we
were writing the bridge stats file or honoring a control port
request for said data. Change the interfaces for
geoip_get_bridge_stats* to prevent these problems, and remove the
offending free/add a tor_strdup.
Fixes bug 1208.
2010-01-26 11:55:43 +01:00
Karsten Loesing
f80672d747
Remove duplicate words and a duplicate newline.
2009-12-18 12:55:05 +01:00
Karsten Loesing
e1e5c1b3ab
Fix bridge statistics.
...
Fix statistics on client numbers by country as seen by bridges that were
broken in 0.2.2.1-alpha. Also switch to reporting full 24-hour intervals
instead of variable 12-to-48-hour intervals.
2009-12-17 09:22:55 +01:00
Nick Mathewson
350181529e
Merge branch 'safelogging2'
...
Conflicts:
ChangeLog
2009-12-15 17:26:09 -05:00
Nick Mathewson
fcbd65b45c
Refactor the safe_str_*() API to make more sense.
...
The new rule is: safe_str_X() means "this string is a piece of X
information; make it safe to log." safe_str() on its own means
"this string is a piece of who-knows-what; make it safe to log".
2009-12-15 17:25:34 -05:00
Roger Dingledine
f7d99b62a3
New controller command "getinfo config-text"
...
It returns the contents that Tor would write if you send it a SAVECONF
command, so the controller can write the file to disk itself.
2009-12-13 19:21:06 -05:00
Nick Mathewson
0c1b3070cf
Now that FOO_free(NULL) always works, remove checks before calling it.
2009-12-12 02:07:59 -05:00
Sebastian Hahn
f258647433
Allow SafeLogging to exclude client related information
2009-12-12 02:26:11 +01:00
Nick Mathewson
54973a45a6
Fix an apparently bogus check; fortunately, it seems to be untriggered.
2009-10-26 23:14:53 -04:00
Nick Mathewson
311315e077
Fix an accidentally removed free in 385853a282
, and repair a check.
2009-10-26 23:13:29 -04:00
Nick Mathewson
385853a282
Fix/annotate deadcode for CID 402,403
2009-10-26 22:40:41 -04:00
Nick Mathewson
5e4d53d535
Remove checks for array existence. (CID 410..415)
...
In C, the code "char x[10]; if (x) {...}" always takes the true branch of
the if statement. Coverity notices this now.
In some cases, we were testing arrays to make sure that an operation
we wanted to do would suceed. Those cases are now always-true.
In some cases, we were testing arrays to see if something was _set_.
Those caes are now tests for strlen(s), or tests for
!tor_mem_is_zero(d,len).
2009-10-26 22:40:41 -04:00
Nick Mathewson
8519d36633
Merge commit 'origin/maint-0.2.1'
2009-10-26 22:40:24 -04:00
Nick Mathewson
5c73da7faa
Fix two memory leaks found by Coverity (CIDs 417-418)
...
The first happens on an error case when a controller wants an
impossible directory object. The second happens when we can't write
our fingerprint file.
2009-10-26 22:12:40 -04:00
Nick Mathewson
851a980065
Actually remember all the consensus types when we are done generating them.
2009-10-15 15:17:13 -04:00
Nick Mathewson
1cda6f3e75
Merge commit 'origin/maint-0.2.1'
2009-09-01 15:59:40 -04:00
Sebastian Hahn
aea9cf1011
Fix compile warnings on Snow Leopard
...
Big thanks to nickm and arma for helping me with this!
2009-09-01 18:36:27 +02:00
Roger Dingledine
075c004095
Add getinfo accepted-server-descriptor. Clean spec.
...
Add a "getinfo status/accepted-server-descriptor" controller
command, which is the recommended way for controllers to learn
whether our server descriptor has been successfully received by at
least on directory authority. Un-recommend good-server-descriptor
getinfo and status events until we have a better design for them.
2009-08-31 18:37:25 -04:00
Roger Dingledine
b48e3371d7
remove experimental 'getinfo unregistered-servers-'
...
it never really worked, and hasn't been used for years.
2009-07-13 17:34:47 -04:00
Nick Mathewson
d2cac1afc3
Merge commit 'origin/maint-0.2.1'
2009-06-24 19:02:00 -04:00
Marcus Griep
d308738919
Ignore control port commands after a QUIT
...
When a QUIT has been issued on a control port connection, then
ignore further commands on that port. This fixes bug 1016.
2009-06-24 00:10:22 -04:00
Marcus Griep
fa89c9f086
Flush long replies over control port on QUIT
...
Marks the control port connection for flushing before closing when
the QUIT command is issued. This allows a QUIT to be issued during
a long reply over the control port, flushing the reply and then
closing the connection. Fixes bug 1015.
2009-06-24 00:10:20 -04:00
Nick Mathewson
77ffd6b2a7
Merge commit 'origin/maint-0.2.1'
2009-05-31 19:17:22 -04:00
Nick Mathewson
fd992deeea
Don't attempt to log messages to a controller from a worker thread.
...
This patch adds a function to determine whether we're in the main
thread, and changes control_event_logmsg() to return immediately if
we're in a subthread. This is necessary because otherwise we will
call connection_write_to_buf, which modifies non-locked data
structures.
Bugfix on 0.2.0.x; fix for at least one of the things currently
called "bug 977".
2009-05-30 18:16:24 -04:00
Nick Mathewson
cb18fc2190
Merge commit 'origin/maint-0.2.1'
2009-05-27 18:12:18 -04:00
Nick Mathewson
ec7e054668
Spell-check Tor.
2009-05-27 17:55:51 -04:00
Nick Mathewson
3b47be20ec
Update newer control_event_stream_bandwidth code to revised control impl
2009-05-25 12:55:59 -04:00
Nick Mathewson
b998fed9b9
Remove support for events without the extended format or long names.
...
Supporting the old formats made our code complex; running without them
has been discouraged since 0.2.1.x.
2009-05-25 12:52:25 -04:00
Mike Perry
29bf271ba2
Fix misreporting of stream bandwidths.
2009-05-14 17:52:26 -04:00
potentiate
1b61c8bf37
Fix misreporting of stream bandwidths.
2009-05-14 17:50:06 -04:00
Karsten Loesing
9b32e8c141
Update copyright to 2009.
2009-05-04 11:28:27 -04:00
Karsten Loesing
4ebcc4da34
Update copyright to 2009.
2009-05-02 22:00:54 +02:00
Nick Mathewson
596e852c31
Remove the long-deprecated GETINFO addr-mappings/
2009-05-01 06:25:18 -04:00
Nick Mathewson
c2f8d97212
Do not generate the non-verbose circuit path when generating a circuit event unless we will use it.
...
svn:r19079
2009-03-18 19:30:34 +00:00
Roger Dingledine
1b6688786c
send the newconsensus event if the controller has asked for newconsensus
...
events, not if he's asked for ns events
svn:r18656
2009-02-20 10:25:08 +00:00
Roger Dingledine
d3289c6b87
docdoc and changelog for r18556
...
svn:r18566
2009-02-16 10:39:10 +00:00
Roger Dingledine
d13cc5f989
and list the new event here too
...
svn:r18557
2009-02-16 06:18:44 +00:00
Roger Dingledine
9ded433abb
new controller event NEWCONSENSUS that lists the networkstatus
...
lines for every recommended relay.
still needs docdoc and changelog entry.
svn:r18556
2009-02-16 06:18:03 +00:00
Roger Dingledine
9fdae765e3
clean up r18287
...
svn:r18288
2009-01-28 07:16:22 +00:00
Roger Dingledine
edff606317
patch from matt to implement 'getinfo status/clients-seen'
...
svn:r18287
2009-01-28 06:50:36 +00:00
Roger Dingledine
59f57a0117
gah. yet another place that needs to be edited when we add
...
a new event. what a mess.
svn:r18277
2009-01-27 04:43:43 +00:00
Roger Dingledine
a5a6b9a08a
Let controllers actually ask for the "clients_seen" event. Bugfix
...
on 0.2.1.10-alpha; reported by Matt Edman.
svn:r18201
2009-01-21 03:24:27 +00:00
Nick Mathewson
a33452c401
Fix up (I hope) most ot the things that coverity suddenly claimed were REVERSE_INULL. This is what we get for bragging about being down to 0 issues.
...
svn:r18096
2009-01-13 14:43:51 +00:00
Nick Mathewson
c4b8fef362
Remove svn $Id$s from our source, and remove tor --version --version.
...
The subversion $Id$ fields made every commit force a rebuild of
whatever file got committed. They were not actually useful for
telling the version of Tor files in the wild.
svn:r17867
2009-01-04 00:35:51 +00:00
Nick Mathewson
a42e82b0de
While I'm at it, refactor control.c a little so that the dead code no longer exists.
...
svn:r17810
2008-12-29 14:21:25 +00:00
Roger Dingledine
5519e633ec
New controller event "clients_seen" to report a geoip-based summary
...
of which countries we've seen clients from recently. Now controllers
like Vidalia can show bridge operators that they're actually making
a difference.
svn:r17796
2008-12-27 06:50:07 +00:00
Nick Mathewson
0c5e03fa21
Remove a deprecated controller alias; make another one generate a warning.
...
svn:r17793
2008-12-27 00:20:08 +00:00
Roger Dingledine
a12c3f2c86
some fixes i found in my sandbox
...
svn:r17771
2008-12-25 15:37:47 +00:00
Nick Mathewson
558e9899e4
Document most undocumented variables.
...
svn:r17754
2008-12-23 17:56:31 +00:00
Nick Mathewson
b68379b13b
Add DOCDOC entries for undocumented static and global variables.
...
svn:r17739
2008-12-22 19:00:05 +00:00
Nick Mathewson
43b111535a
Make doxygen not complain about the way we spell CRLFNUL in control.c
...
svn:r17735
2008-12-22 17:53:30 +00:00
Nick Mathewson
1e5f457461
Fix most DOCDOCs remaining and/or added by redox.
...
svn:r17734
2008-12-22 17:53:04 +00:00
Nick Mathewson
1725c0c8a5
Add DOCDOC comments for all undocumented functions. Add missing *s to other comments so that they will get recognized as doxygen.
...
svn:r17729
2008-12-22 14:56:28 +00:00
Nick Mathewson
55348884b5
Fix all of the doxygen warnings not pertaining to missing documentation.
...
svn:r17727
2008-12-22 14:56:16 +00:00
Nick Mathewson
d597b23c42
Massage a little code to hopfully please coverity.
...
svn:r17669
2008-12-18 04:45:51 +00:00
Nick Mathewson
7678ac5193
Move edge-only flags from connection_t to edge_connection_t.
...
svn:r17643
2008-12-17 14:59:28 +00:00
Nick Mathewson
7e351a6341
Note that a couple of line in control.c are supposed to be dead-code.
...
I'm hoping not to have to litter the rest of our codebase with Coverity ignores, but I think these are the only one we need right now.
svn:r17602
2008-12-11 21:11:28 +00:00
Roger Dingledine
4053b47459
note a potential bug in status events. need to look at spec to
...
see if it's really a bug.
svn:r17548
2008-12-10 01:35:21 +00:00
Roger Dingledine
145e589b6c
Resume using the correct "REASON=" stream when telling the
...
controller why we closed a stream. Bugfix in 0.2.1.1-alpha.
svn:r17547
2008-12-10 01:34:24 +00:00
Nick Mathewson
ab75c0d9e3
remove a bogus comment. Now that there is no undocumented synonym for EXTENDED_EVENTS, we do not need to point out that EXTENDED_EVENTS is documented
...
svn:r17542
2008-12-09 23:10:38 +00:00
Nick Mathewson
a7b4a7b9f8
Finally remove deprecated-since-0.1.2.4-alpha EXTENDED_FORMAT synonym for EXTENDED_EVENTS
...
svn:r17538
2008-12-09 19:55:19 +00:00
Nick Mathewson
e08cbe2029
Add PURPOSE= field to getinfo circuit-status. With luck, controllers are ignoring extra fields (like they are supposed to) and this will not break any controllers.
...
svn:r17245
2008-11-11 15:59:24 +00:00
Roger Dingledine
d7cfa1f56c
Minor fix in the warning messages when you're having problems
...
bootstrapping; also, be more forgiving of bootstrap problems when
we're still making incremental progress on a given bootstrap phase.
svn:r17066
2008-10-13 03:34:29 +00:00
Nick Mathewson
25f8335528
Include circuit purposes in circuit events. Now all circuit events are extended; this makes the code simpler.
...
svn:r17007
2008-09-29 22:34:22 +00:00
Nick Mathewson
e147e867be
Proposal 152 implementation from Josh Albrecht, with tweaks.
...
svn:r16983
2008-09-26 18:58:45 +00:00
Roger Dingledine
dbb481c169
Serve the latest v3 networkstatus consensus via the control
...
port. Use "getinfo dir/status-vote/current/consensus" to fetch it.
svn:r16907
2008-09-14 04:07:29 +00:00
Nick Mathewson
339f094056
Refactor some code and add some asserts based on scanner results.
...
svn:r16783
2008-09-05 21:19:53 +00:00
Nick Mathewson
fcf817f897
Switch global_identifier on connections to a 64-bit field and move it to connection_t. When procession onionskins, look up the connection by this field rather than by addr:port. This will keep us from dropping onionskins. How many dropped circuits are dropped because of this bug?
...
svn:r16558
2008-08-15 13:55:01 +00:00
Roger Dingledine
2a417700b4
don't log-warn on a bootstrapping status event if the recommendation
...
is to ignore.
svn:r16405
2008-08-04 23:38:32 +00:00
Nick Mathewson
3ce6e2fba2
r17346@aud-055: nickm | 2008-07-24 15:37:19 +0200
...
Make generic address manipulation functions work better. Switch address policy code to use tor_addr_t, so it can handle IPv6. That is a good place to start.
svn:r16178
2008-07-24 13:44:04 +00:00
Roger Dingledine
aec928e0b6
Send a bootstrap problem "warn" event on the first problem if the
...
reason is NO_ROUTE (that is, our network is down).
svn:r15443
2008-06-24 08:00:30 +00:00
Roger Dingledine
94dabd2c23
If you're using bridges, generate "bootstrap problem" warnings
...
as soon as you run out of working bridges, rather than waiting
for ten failures -- which will never happen if you have less than
ten bridges.
svn:r15368
2008-06-20 04:34:39 +00:00
Roger Dingledine
d76d0493d6
start sending "COUNT=%d RECOMMENDATION=%s" key/values on bootstrap
...
problem status events, so the controller can hear about problems even
before tor decides they're worth reporting for sure.
svn:r15357
2008-06-19 04:50:06 +00:00