[Cluster-devel] cluster/dlm-kernel/src lowcomms.c
lhh at sourceware.org
lhh at sourceware.org
Tue Oct 30 17:42:05 UTC 2007
CVSROOT: /cvs/cluster
Module name: cluster
Branch: RHEL46
Changes by: lhh at sourceware.org 2007-10-30 17:42:04
Modified files:
dlm-kernel/src : lowcomms.c
Log message:
Fix #338511 - dlm trying to connect from wrong IP
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/dlm-kernel/src/lowcomms.c.diff?cvsroot=cluster&only_with_tag=RHEL46&r1=1.22.2.17&r2=1.22.2.17.2.1
--- cluster/dlm-kernel/src/Attic/lowcomms.c 2007/08/13 20:07:09 1.22.2.17
+++ cluster/dlm-kernel/src/Attic/lowcomms.c 2007/10/30 17:42:04 1.22.2.17.2.1
@@ -555,6 +555,7 @@
{
int result = -EHOSTUNREACH;
struct sockaddr_in6 saddr;
+ struct sockaddr_in6 my_addr;
int addr_len;
struct socket *sock;
@@ -589,6 +590,13 @@
add_sock(sock, con);
+ /* Bind to local address before send */
+ memcpy(&my_addr, &local_addr, sizeof(my_addr));
+ result = sock->ops->bind(sock, &my_addr, (int)(sizeof(my_addr)));
+ if (result < 0) {
+ printk("dlm: could not bind to local address for connect: %d\n", result);
+ }
+
log_debug2("connecting to %d", con->nodeid);
result =
sock->ops->connect(sock, (struct sockaddr *) &saddr, addr_len,
More information about the Cluster-devel
mailing list