diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | doc/spec/control-spec.txt | 4 | ||||
-rw-r--r-- | src/or/connection_edge.c | 4 | ||||
-rw-r--r-- | src/or/control.c | 2 |
4 files changed, 7 insertions, 6 deletions
@@ -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); } |