change my mind -- correct the spec to match the code's

behavior for getinfo addr-mappings/*. this is because
the code and spec have been mismatched since at least
0.1.1.x, so i would be surprised if nobody at all is
relying on the current behavior.

backport candidate.
backbackport candidate.


svn:r9823
This commit is contained in:
Roger Dingledine 2007-03-15 06:25:00 +00:00
parent 8ca31c8195
commit ad304a5cbb
4 changed files with 7 additions and 6 deletions

View File

@ -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

View File

@ -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

View File

@ -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);
}
}

View File

@ -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);
}