[or-cvs] r11181: Fix a bug in ADDRMAP controller replies that would sometimes (in tor/trunk: . doc/spec src/or)
arma at seul.org
arma at seul.org
Sun Aug 19 04:58:56 UTC 2007
Author: arma
Date: 2007-08-19 00:58:55 -0400 (Sun, 19 Aug 2007)
New Revision: 11181
Modified:
tor/trunk/ChangeLog
tor/trunk/doc/spec/control-spec.txt
tor/trunk/src/or/control.c
Log:
Fix a bug in ADDRMAP controller replies that would sometimes
try to print a NULL. Patch from tup.
Modified: tor/trunk/ChangeLog
===================================================================
--- tor/trunk/ChangeLog 2007-08-19 04:34:56 UTC (rev 11180)
+++ tor/trunk/ChangeLog 2007-08-19 04:58:55 UTC (rev 11181)
@@ -65,6 +65,8 @@
- Fix a bug with AutomapHostsOnResolve that would always cause
the second request to fail. Bug reported by Kate. Bugfix on
0.2.0.3-alpha.
+ - Fix a bug in ADDRMAP controller replies that would sometimes
+ try to print a NULL. Patch from tup.
- Read v3 directory authority keys from the right location.
- Numerous bugfixes to directory voting code.
Modified: tor/trunk/doc/spec/control-spec.txt
===================================================================
--- tor/trunk/doc/spec/control-spec.txt 2007-08-19 04:34:56 UTC (rev 11180)
+++ tor/trunk/doc/spec/control-spec.txt 2007-08-19 04:58:55 UTC (rev 11181)
@@ -762,7 +762,7 @@
PIVERSION: 1*DIGIT
Tor MAY give its InfoLines in any order; controllers MUST ignore InfoLines
- with keywords it does not recognize. Controllers MUST ignore extraneous
+ with keywords they do not recognize. Controllers MUST ignore extraneous
data on any InfoLine.
PIVERSION is there in case we drastically change the syntax one day. For
@@ -1044,10 +1044,14 @@
4.1.7. New Address mapping
Syntax:
- "650" SP "ADDRMAP" SP Address SP Address SP Expiry SP Error SP GMTExpiry
+ "650" SP "ADDRMAP" SP Address SP NewAddress SP Expiry
+ [SP Error] SP GMTExpiry CRLF
+
+ NewAddress = Address / "<error>"
Expiry = DQUOTE ISOTime DQUOTE / "NEVER"
- Error = / "error=" ErrorCode
+ Error = "error=" ErrorCode
+ ErrorCode = XXXX
GMTExpiry = "EXPIRES=" DQUOTE IsoTime DQUOTE
Error and GMTExpiry are only provided if extended events are enabled.
Modified: tor/trunk/src/or/control.c
===================================================================
--- tor/trunk/src/or/control.c 2007-08-19 04:34:56 UTC (rev 11180)
+++ tor/trunk/src/or/control.c 2007-08-19 04:58:55 UTC (rev 11181)
@@ -3174,7 +3174,7 @@
/** Called whenever an address mapping on <b>from<b> from changes to <b>to</b>.
* <b>expires</b> values less than 3 are special; see connection_edge.c. If
- * <b>error</b> is nonempty, it is an error code describing the failure
+ * <b>error</b> is non-NULL, it is an error code describing the failure
* mode of the mapping.
*/
int
@@ -3187,7 +3187,7 @@
if (expires < 3 || expires == TIME_MAX)
send_control_event_extended(EVENT_ADDRMAP, ALL_NAMES,
"650 ADDRMAP %s %s NEVER@%s\r\n", from, to,
- error);
+ error?error:"");
else {
char buf[ISO_TIME_LEN+1];
char buf2[ISO_TIME_LEN+1];
@@ -3197,7 +3197,7 @@
"650 ADDRMAP %s %s \"%s\""
"@%s%sEXPIRES=\"%s\"\r\n",
from, to, buf,
- error, error?" ":"",
+ error?error:"", error?" ":"",
buf2);
}
More information about the tor-commits
mailing list