summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2007-01-04 05:41:24 +0000
committerRoger Dingledine <arma@torproject.org>2007-01-04 05:41:24 +0000
commitda2ff14839eb8a3d4d5ff247184e9c380d0bbe18 (patch)
treed3a2f89f3c6a1bfcb32ef23a08108bd3cf1a4830
parent50f0e360947418a8033383bfea6fccbebc4d1bb5 (diff)
downloadtor-da2ff14839eb8a3d4d5ff247184e9c380d0bbe18.tar.gz
tor-da2ff14839eb8a3d4d5ff247184e9c380d0bbe18.zip
Set orport= for 4 of the 5 dir authorities; Fix getinfo ns/all; Fix seg
fault when starting a server without a fingerprint file present. svn:r9261
-rw-r--r--ChangeLog59
-rw-r--r--src/or/config.c8
-rw-r--r--src/or/control.c2
-rw-r--r--src/or/hibernate.c2
-rw-r--r--src/or/router.c2
5 files changed, 39 insertions, 34 deletions
diff --git a/ChangeLog b/ChangeLog
index 18593f94fa..81f7f018f5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -17,8 +17,8 @@ Changes in version 0.1.2.5-alpha - 2007-01-03
located in the %appdata%\Tor\ of the user who installed the service.
Patch from Matt Edman.
- Include TLS overhead when counting bandwidth usage; previously, we
- would count only the bytes sent over TLS, but not the bytes used to
- send them.
+ would count only the bytes sent over TLS, but not the bytes used
+ to send them.
o Minor features:
- Start using the state file to store bandwidth accounting data:
@@ -27,6 +27,8 @@ Changes in version 0.1.2.5-alpha - 2007-01-03
- Try to batch changes to the state file so that we do as few
disk writes as possible while still storing important things in
a timely fashion.
+ - The state file and the bw_accounting file get saved less often when
+ AvoidDiskWrites is set.
- Ongoing work on eventdns infrastructure: add dns server and ipv6
support.
- Make PIDFile work on Windows (untested).
@@ -43,39 +45,40 @@ Changes in version 0.1.2.5-alpha - 2007-01-03
addresses: .exit, .onion, and .noconnnect.
- Add a maintainer script to tell us which options are missing
documentation: "make check-docs".
- - Remove some options that have been deprecated since at least 0.1.0.x:
- AccountingMaxKB, LogFile, DebugLogFile, LogLevel, and SysLog. Use
- AccountingMax instead of AccountingMaxKB; use Log to set log options.
- - DirServer configuration lines now have an orport option so clients can
- open encrypted tunnels to the authorities without having downloaded
- their descriptors yet.
- - Clients track responses with status 503 from dirservers. After a
- dirserver has given us a 503, we try not to use it until an hour
- has gone by, or until we have no dirservers that haven't given us
- a 503.
- - The state file and the bw_accounting file get saved less often when
- AvoidDiskWrites is set.
+ - Remove some options that have been deprecated since at least
+ 0.1.0.x: AccountingMaxKB, LogFile, DebugLogFile, LogLevel, and
+ SysLog. Use AccountingMax instead of AccountingMaxKB, and use Log
+ to set log options.
- We no longer look for identity and onion keys in "identity.key" and
"onion.key" -- these were replaced by secret_id_key and
secret_onion_key in 0.0.8pre1.
- - We no longer require unrecognized directory entries to be preceded by
- "opt".
+ - We no longer require unrecognized directory entries to be
+ preceded by "opt".
+ - DirServer configuration lines now have an orport option so
+ clients can open encrypted tunnels to the authorities without
+ having downloaded their descriptors yet. Enabled for moria1,
+ moria2, tor26, and lefkada now in the default configuration.
+ - Clients track responses with status 503 from dirservers. After a
+ dirserver has given us a 503, we try not to use it until an hour has
+ gone by, or until we have no dirservers that haven't given us a 503.
- When we get a 503 from a directory, and we're not a server, we don't
- count the failure against the total number of failures allowed for the
- thing we're trying to download.
- - Report X-Your-Address-Is correctly from tunneled directory connections;
- don't report X-Your-Address-Is is when it's an internal address; and
- never believe reported remote addresses when they're internal.
+ count the failure against the total number of failures allowed
+ for the thing we're trying to download.
+ - Report X-Your-Address-Is correctly from tunneled directory
+ connections; don't report X-Your-Address-Is is when it's an internal
+ address; and never believe reported remote addresses when they're
+ internal.
- Add client-side caching for reverse DNS lookups.
- Add support to tor-resolve for reverse lookups and SOCKS5.
- We now check for the case when common DNS requests are going to
- wildcarded addresses, and change our exit policy to reject *:* if
- it's happening. (Bug #364)
+ wildcarded addresses, and change our exit policy to reject *:*
+ if it's happening. (Bug #364)
- When we change nameservers or IP addresses, reset and re-launch
our tests for DNS hijacking.
- Block an obscure DoS attack from directory caches.
- Add a BadDirectory flag to network status docs so that authorities
- can (eventually) tell clients about caches they believe to be broken.
+ can (eventually) tell clients about caches they believe to be
+ broken.
o Security bugfixes:
- Stop sending the HttpProxyAuthenticator string to directory
@@ -124,12 +127,12 @@ Changes in version 0.1.2.5-alpha - 2007-01-03
changed.
- Cleaned-up code and documentation in NT services. Patch from Matt
Edman.
- - Removed the supposedly misleading error message mentioned in Bug #294.
- Patch from Matt Edman.
+ - Removed the supposedly misleading error message mentioned in
+ Bug #294. Patch from Matt Edman.
- Stop warning when a single nameserver fails: only warn when _all_ of
our nameservers have failed. (Bug #326.)
- - When we only have one nameserver, raise the threshold for deciding that
- the nameserver is dead. (Also bug #326)
+ - When we only have one nameserver, raise the threshold for deciding
+ that the nameserver is dead. (Also bug #326)
- Directory authorities now only decide that routers are reachable
if their identity keys are as expected.
- When the user uses bad syntax in the Log config line, stop
diff --git a/src/or/config.c b/src/or/config.c
index 70ad8ba60e..1f8335e482 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -719,13 +719,13 @@ add_default_trusted_dirservers(void)
int i;
const char *dirservers[] = {
/* eventually we should mark moria1 as "v1only" */
- "moria1 v1 18.244.0.188:9031 "
+ "moria1 v1 orport=9001 18.244.0.188:9031 "
"FFCB 46DB 1339 DA84 674C 70D7 CB58 6434 C437 0441",
- "moria2 v1 18.244.0.114:80 "
+ "moria2 v1 orport=443 18.244.0.114:80 "
"719B E45D E224 B607 C537 07D0 E214 3E2D 423E 74CF",
- "tor26 v1 86.59.21.38:80 "
+ "tor26 v1 orport=443 86.59.21.38:80 "
"847B 1F85 0344 D787 6491 A548 92F9 0493 4E4E B85D",
- "lefkada 140.247.60.64:80 "
+ "lefkada orport=443 140.247.60.64:80 "
"38D4 F5FC F7B1 0232 28B8 95EA 56ED E7D5 CCDC AF32",
"dizum 194.109.206.212:80 "
"7EA6 EAD6 FD83 083C 538F 4403 8BBF A077 587D D755",
diff --git a/src/or/control.c b/src/or/control.c
index 4b5947c1f1..814a0c4e68 100644
--- a/src/or/control.c
+++ b/src/or/control.c
@@ -1752,6 +1752,8 @@ static const getinfo_item_t getinfo_items[] = {
PREFIX("desc/name/", dir, "Router descriptors by nickname."),
ITEM("desc/all-recent", dir,
"All non-expired, non-superseded router descriptors."),
+ ITEM("ns/all", networkstatus,
+ "Brief summary of router status (v2 directory format)"),
PREFIX("ns/id/", networkstatus,
"Brief summary of router status by ID (v2 directory format)."),
PREFIX("ns/name/", networkstatus,
diff --git a/src/or/hibernate.c b/src/or/hibernate.c
index 77109849d3..04af40de3c 100644
--- a/src/or/hibernate.c
+++ b/src/or/hibernate.c
@@ -544,7 +544,7 @@ accounting_record_bandwidth_usage(time_t now, or_state_t *state)
time_t tmp;
int r = 0;
uint64_t expected;
- static time_t last_recorded;
+ static time_t last_recorded = 0;
/* First, update bw_accounting. Until 0.1.2.5-alpha, this was the only place
* we stored this information. The format is:
diff --git a/src/or/router.c b/src/or/router.c
index c2da3cf631..d8188dcfdf 100644
--- a/src/or/router.c
+++ b/src/or/router.c
@@ -340,7 +340,7 @@ init_keys(void)
cp = NULL;
if (file_status(keydir) == FN_FILE)
cp = read_file_to_str(keydir, 0, NULL);
- if (!cp && strcmp(cp, fingerprint_line)) {
+ if (!cp || strcmp(cp, fingerprint_line)) {
if (write_str_to_file(keydir, fingerprint_line, 0)) {
log_err(LD_FS, "Error writing fingerprint line to file");
return -1;