Bug 135736

Summary: cman needs to be able to send AF_CLUSTER messages to self
Product: [Retired] Red Hat Cluster Suite Reporter: Jonathan Earl Brassow <jbrassow>
Component: gfsAssignee: Christine Caulfield <ccaulfie>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4CC: teigland
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-10-19 15:23:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jonathan Earl Brassow 2004-10-14 19:15:58 UTC
Description of problem:
Please allow cman to send messages to self.

If my nodeid is 3, I would like to be able to send a message to myself (nodeid 
3):

saddr.scl_nodeid = my_id

sock_sendmsg(...)

Version-Release number of selected component (if applicable):
CVS

How reproducible:
always


Additional info:

Without this ability, the node providing a service will not be able to run that 
service.

In the cluster mirror, a server for the log is designated.  That machine is also a 
client and must be able to comunicate with the server thread.

Comment 1 Christine Caulfield 2004-10-18 15:12:34 UTC
This should work now. Note that if you want to include yourself in a
broadcast message then MSG_BCASTSELF should be added to the flags.

Checking in cnxman.c;
/cvs/cluster/cluster/cman-kernel/src/cnxman.c,v  <--  cnxman.c
new revision: 1.29; previous revision: 1.28
done
Checking in cnxman-socket.h;
/cvs/cluster/cluster/cman-kernel/src/cnxman-socket.h,v  <-- 
cnxman-socket.h
new revision: 1.6; previous revision: 1.5
done


Comment 2 Jonathan Earl Brassow 2004-10-18 20:26:50 UTC
Yes, a machine can now send to itself.

However, after doing a sock_recvmsg, the scl_port # should be set to
the machine the packet was received from.  Instead, it is the machine
doing the receiving who's port is reported.

Comment 3 Christine Caulfield 2004-10-19 12:08:15 UTC
OK try that.

Checking in cnxman-private.h;
/cvs/cluster/cluster/cman-kernel/src/cnxman-private.h,v  <--  cnxman-private.h
new revision: 1.10; previous revision: 1.9
done
Checking in cnxman.c;
/cvs/cluster/cluster/cman-kernel/src/cnxman.c,v  <--  cnxman.c
new revision: 1.30; previous revision: 1.29
done


Comment 4 Jonathan Earl Brassow 2004-10-19 15:23:24 UTC
All good now.

Comment 5 Kiersten (Kerri) Anderson 2004-11-16 19:05:39 UTC
Updating version to the right level in the defects.  Sorry for the storm.