[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: patch: router.exit -> localhost.router.exit



After some testing, I determined that the patch that I sent yesterday
does not provide the functionality that I want, but this new patch does.
Please consider this one instead.  Thanks!

Geoff

On Mon, May 09, 2005 at 02:56:12AM -0400, Geoffrey Goodell wrote:
> Please consider this patch, which provides the following functionality:
> 
> If a user specifies router.exit, then rather than rejecting the
> connection, try to connect to 127.0.0.1 on the specified exit node.
> 
> Geoff

Only in or: CVS
diff -u or/connection_edge.c or.patch/connection_edge.c
--- or/connection_edge.c	2005-05-07 01:55:06.000000000 -0400
+++ or.patch/connection_edge.c	2005-05-09 13:01:47.000000000 -0400
@@ -914,7 +914,13 @@
   if (addresstype == EXIT_HOSTNAME) {
     /* .exit -- modify conn to specify the exit node. */
     char *s = strrchr(socks->address,'.');
-    if (!s || s[1] == '\0') {
+    if (!s) {
+      char *orig = tor_strdup(socks->address);
+      strlcpy(socks->address, "127.0.0.1.", sizeof(socks->address));
+      strlcat(socks->address, orig, sizeof(socks->address));
+      s = strrchr(socks->address,'.');
+    }
+    if (s[1] == '\0') {
       log_fn(LOG_WARN,"Malformed exit address '%s'. Refusing.",
              safe_str(socks->address));
       connection_mark_unattached_ap(conn, END_STREAM_REASON_TORPROTOCOL);

Attachment: signature.asc
Description: Digital signature