[OpenAFS] FileLog: rxi_sendmsg failed, error 22, MultiProbeAlternateAddress_r - patch attached

Rainer Toebbicke rtb@pclella.cern.ch
Wed, 08 Aug 2007 17:30:52 +0200


This is a multi-part message in MIME format.
--------------050008060001030501010408
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

MultiProbeAlternateAddress_r badly indexes the list of interfaces for 
clients with multiple IP interfaces, resulting in peers with IP 
address 0 port 0 to be created. This in turn results in rxi_sendmsg 
errors (on systems where caught early, as on Linux, on others it may 
pass unnoticed).

Patch attached, bcc'ed to openafs-bugs.

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Rainer Toebbicke
European Laboratory for Particle Physics(CERN) - Geneva, Switzerland
Phone: +41 22 767 8985       Fax: +41 22 767 7155

--------------050008060001030501010408
Content-Type: text/plain;
 name="p_callback_multiprobe"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="p_callback_multiprobe"

--- openafs/src/viced/callback.c.o1	2007-03-20 14:36:27.000000000 +0100
+++ openafs/src/viced/callback.c	2007-08-08 14:43:36.000000000 +0200
@@ -2169,8 +2169,8 @@
 
 	interfaces[j] = host->interface->interface[i];
 	conns[j] =
-	    rx_NewConnection(interfaces[i].addr, 
-			     interfaces[i].port, 1, sc, 0);
+	    rx_NewConnection(interfaces[j].addr, 
+			     interfaces[j].port, 1, sc, 0);
 	rx_SetConnDeadTime(conns[j], 2);
 	rx_SetConnHardDeadTime(conns[j], AFS_HARDDEADTIME);
 	j++;

--------------050008060001030501010408--