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
"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
/** 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
} 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);
}
}
}
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);
}