From: Sridhar S. <sr...@us...> - 2005-07-27 21:55:09
|
On Wed, 2005-07-27 at 15:28 -0400, Thomas Suchecki wrote: > Hello, > > I'm trying to retrieve the originator of a > SCTP_ASSOC_CHANGE(COMMUNICATION_UP) event by looking into the msg_name > socket address structure located in the msghdr structure, in the > incoming message. I can look at the msg_iov.base and retrieve the > notification type no problem so I think the overall message is ok, but > whenever I try to get the msg_name and then the IP I get 0.0.0.0. So I > decided first to check msg_namelen and its value is 0 also. Am I missing > something here? > > Here is a sample of my code: > > Type of the msg (which is the message that I get from recvmsg()) > struct msghdr *msg > > printf("%d", msg->msg_namelen); > > Should this not return the length of the msg_name, in my case I always > get 0. Are you setting msg_namelen to the size of msg_name buffer before calling recvmsg()? -Sridhar |