summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--doc/spec/control-spec.txt4
-rw-r--r--src/or/connection_edge.c4
-rw-r--r--src/or/control.c2
4 files changed, 7 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index cd6b48734e..22d3fae8d7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -40,7 +40,8 @@ Changes in version 0.2.0.1-alpha - 2007-??-??
server, so we match what the control spec claims we do.
- Fix a typo in an error message when extendcircuit fails that
caused us to not follow the \r\n-based delimiter protocol.
- - Make the response to 'getinfo addr-mappings/*' follow the spec.
+ - Correct the control spec to match how the code actually responds
+ to 'getinfo addr-mappings/*'.
Changes in version 0.1.2.10-rc - 2007-03-07
diff --git a/doc/spec/control-spec.txt b/doc/spec/control-spec.txt
index 3bf36b4d22..3cae676d9a 100644
--- a/doc/spec/control-spec.txt
+++ b/doc/spec/control-spec.txt
@@ -378,8 +378,8 @@ $Id$
"addr-mappings/all"
"addr-mappings/config"
"addr-mappings/cache"
- "addr-mappings/control" -- a space-separated list of address
- mappings, each in the form of "from-address=to-address".
+ "addr-mappings/control" -- a \r\n-separated list of address
+ mappings, each in the form of "from-address to-address".
The 'config' key returns those address mappings set in the
configuration; the 'cache' key returns the mappings in the
client-side DNS cache; the 'control' key returns the mappings set
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index c5c150c5f7..beb1caeea6 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -1142,7 +1142,7 @@ address_is_invalid_destination(const char *address, int client)
/** Iterate over all address mappings which have expiry times between
* min_expires and max_expires, inclusive. If sl is provided, add an
- * "old-addr=new-addr" string to sl for each mapping. If sl is NULL,
+ * "old-addr new-addr" string to sl for each mapping. If sl is NULL,
* remove the mappings.
*/
void
@@ -1168,7 +1168,7 @@ addressmap_get_mappings(smartlist_t *sl, time_t min_expires,
} else if (val->new_address) {
size_t len = strlen(key)+strlen(val->new_address)+2;
char *line = tor_malloc(len);
- tor_snprintf(line, len, "%s=%s", key, val->new_address);
+ tor_snprintf(line, len, "%s %s", key, val->new_address);
smartlist_add(sl, line);
}
}
diff --git a/src/or/control.c b/src/or/control.c
index 83c94cb6d3..8e3a2db601 100644
--- a/src/or/control.c
+++ b/src/or/control.c
@@ -1465,7 +1465,7 @@ getinfo_helper_events(control_connection_t *control_conn,
}
mappings = smartlist_create();
addressmap_get_mappings(mappings, min_e, max_e);
- *answer = smartlist_join_strings(mappings, " ", 0, NULL);
+ *answer = smartlist_join_strings(mappings, "\r\n", 0, NULL);
SMARTLIST_FOREACH(mappings, char *, cp, tor_free(cp));
smartlist_free(mappings);
}