Loading changes/bug26523 0 → 100644 +5 −0 Original line number Diff line number Diff line o Minor bugfixes (hidden service, control port): - The HSPOST command wasn't parsing properly the HSADDRESS= parameter and thus not using it. It now handles it correctly. Fixes bug 26523; bugfix on 0.3.3.1-alpha. Patch by "akwizgran". src/or/control.c +9 −4 Original line number Diff line number Diff line Loading @@ -4499,8 +4499,10 @@ handle_control_hspost(control_connection_t *conn, smartlist_t *args = smartlist_new(); /* If any SERVER= options were specified, try parse the options line */ if (!strcasecmpstart(argline, opt_server)) { /* If any SERVER= or HSADDRESS= options were specified, try to parse * the options line. */ if (!strcasecmpstart(argline, opt_server) || !strcasecmpstart(argline, opt_hsaddress)) { /* encoded_desc begins after a newline character */ cp = cp + 1; encoded_desc = cp; Loading @@ -4523,11 +4525,12 @@ handle_control_hspost(control_connection_t *conn, hs_dirs = smartlist_new(); smartlist_add(hs_dirs, node->rs); } else if (!strcasecmpstart(arg, opt_hsaddress)) { if (!hs_address_is_valid(arg)) { const char *address = arg + strlen(opt_hsaddress); if (!hs_address_is_valid(address)) { connection_printf_to_buf(conn, "512 Malformed onion address\r\n"); goto done; } onion_address = arg; onion_address = address; } else { connection_printf_to_buf(conn, "512 Unexpected argument \"%s\"\r\n", arg); Loading @@ -4542,6 +4545,8 @@ handle_control_hspost(control_connection_t *conn, read_escaped_data(encoded_desc, encoded_desc_len, &desc_str); if (hs_control_hspost_command(desc_str, onion_address, hs_dirs) < 0) { connection_printf_to_buf(conn, "554 Invalid descriptor\r\n"); } else { send_control_done(conn); } tor_free(desc_str); goto done; Loading Loading
changes/bug26523 0 → 100644 +5 −0 Original line number Diff line number Diff line o Minor bugfixes (hidden service, control port): - The HSPOST command wasn't parsing properly the HSADDRESS= parameter and thus not using it. It now handles it correctly. Fixes bug 26523; bugfix on 0.3.3.1-alpha. Patch by "akwizgran".
src/or/control.c +9 −4 Original line number Diff line number Diff line Loading @@ -4499,8 +4499,10 @@ handle_control_hspost(control_connection_t *conn, smartlist_t *args = smartlist_new(); /* If any SERVER= options were specified, try parse the options line */ if (!strcasecmpstart(argline, opt_server)) { /* If any SERVER= or HSADDRESS= options were specified, try to parse * the options line. */ if (!strcasecmpstart(argline, opt_server) || !strcasecmpstart(argline, opt_hsaddress)) { /* encoded_desc begins after a newline character */ cp = cp + 1; encoded_desc = cp; Loading @@ -4523,11 +4525,12 @@ handle_control_hspost(control_connection_t *conn, hs_dirs = smartlist_new(); smartlist_add(hs_dirs, node->rs); } else if (!strcasecmpstart(arg, opt_hsaddress)) { if (!hs_address_is_valid(arg)) { const char *address = arg + strlen(opt_hsaddress); if (!hs_address_is_valid(address)) { connection_printf_to_buf(conn, "512 Malformed onion address\r\n"); goto done; } onion_address = arg; onion_address = address; } else { connection_printf_to_buf(conn, "512 Unexpected argument \"%s\"\r\n", arg); Loading @@ -4542,6 +4545,8 @@ handle_control_hspost(control_connection_t *conn, read_escaped_data(encoded_desc, encoded_desc_len, &desc_str); if (hs_control_hspost_command(desc_str, onion_address, hs_dirs) < 0) { connection_printf_to_buf(conn, "554 Invalid descriptor\r\n"); } else { send_control_done(conn); } tor_free(desc_str); goto done; Loading