diff -Naur src/core/ban.c src/core/ban.c
--- src/core/ban.c	2009-05-01 09:56:31.000000000 -0400
+++ src/core/ban.c	2009-09-07 09:59:53.000000000 -0400
@@ -696,8 +696,20 @@
 			return refused;
 
 		return NULL;
+	} else if (vendor[0] == 'F') {
+				const char *ver;
+			
+			if (NULL != (ver = is_strprefix(vendor, "Foxy "))) return refused;
+			
+		
+		
+		
+		
 	}
 
+	
+	
+	
 	return NULL;
 }
 
diff -Naur src/core/nodes.c src/core/nodes.c
--- src/core/nodes.c	2009-09-07 09:21:24.000000000 -0400
+++ src/core/nodes.c	2009-09-07 09:34:16.000000000 -0400
@@ -5119,13 +5119,6 @@
 	}
 
 	/*
-	 * X-Try and X-Try-Ultrapeers -- normally only sent on 503, but some
-	 * servents always send such lines during the connection process.
-	 */
-
-	extract_header_pongs(head, n);
-
-	/*
 	 * Check that everything is OK so far for an outgoing connection: if
 	 * they did not reply with 200, then there's no need for us to reply back.
 	 */
@@ -5152,6 +5145,13 @@
 	}
 
 	/*
+	 * X-Try and X-Try-Ultrapeers -- normally only sent on 503, but some
+	 * servents always send such lines during the connection process.
+	 */
+
+	extract_header_pongs(head, n);
+
+	/*
 	 * Enforce our connection count here.
 	 *
 	 * This must come after parsing of "Accept-Encoding", since we're
