diff options
author | Nick Mathewson <nickm@torproject.org> | 2010-02-18 12:32:11 -0500 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2010-02-18 12:49:26 -0500 |
commit | 2d95e02914c07f9186a1745e135d26b4da02cdb1 (patch) | |
tree | aa552333390325daf3a549ca3ad97469b5944d4c | |
parent | 54f1f2e5584a86b1cd687cba85cc8b9fa0fefc96 (diff) | |
download | tor-2d95e02914c07f9186a1745e135d26b4da02cdb1.tar.gz tor-2d95e02914c07f9186a1745e135d26b4da02cdb1.zip |
Make more arguments in control.c properly case-insensitive.
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | src/or/control.c | 12 |
2 files changed, 8 insertions, 6 deletions
@@ -21,6 +21,8 @@ Changes in version 0.2.2.9-alpha - 2010-??-?? - Avoid a bogus overlapped memcpy in tor_addr_copy(). Found by "memcpyfail". - Emit an GUARD DROPPED event for a case we missed. + - Make more fields in the controller protocol case-insensitive as + documented in control-spec.txt. o Code simplifications and refactoring: - Generate our manpage and HTML documentation using Asciidoc. This diff --git a/src/or/control.c b/src/or/control.c index 835c3be518..adf0611506 100644 --- a/src/or/control.c +++ b/src/or/control.c @@ -2003,12 +2003,12 @@ handle_control_getinfo(control_connection_t *conn, uint32_t len, static uint8_t circuit_purpose_from_string(const char *string) { - if (!strcmpstart(string, "purpose=")) + if (!strcasecmpstart(string, "purpose=")) string += strlen("purpose="); - if (!strcmp(string, "general")) + if (!strcasecmp(string, "general")) return CIRCUIT_PURPOSE_C_GENERAL; - else if (!strcmp(string, "controller")) + else if (!strcasecmp(string, "controller")) return CIRCUIT_PURPOSE_CONTROLLER; else return CIRCUIT_PURPOSE_UNKNOWN; @@ -2071,7 +2071,7 @@ handle_control_extendcircuit(control_connection_t *conn, uint32_t len, purp = smartlist_get(args,2); } - if (purp && strcmpstart(purp, "purpose=") != 0) + if (purp && strcasecmpstart(purp, "purpose=") != 0) purp = NULL; if (purp) { @@ -2351,9 +2351,9 @@ handle_control_postdescriptor(control_connection_t *conn, uint32_t len, } } else if (!strcasecmpstart(option, "cache=")) { option += strlen("cache="); - if (!strcmp(option, "no")) + if (!strcasecmp(option, "no")) cache = 0; - else if (!strcmp(option, "yes")) + else if (!strcasecmp(option, "yes")) cache = 1; else { connection_printf_to_buf(conn, "552 Unknown cache request \"%s\"\r\n", |