> >> On 9. Mar 2020, at 11:01, Doug Hardie <bc...@lafn.org> wrote: >> >>> I am trying to get sctp_sendmsgx to work and not having a lot of success. >>> I have not been able to find any examples on the web of using it. I have a >>> client using sctp_sendmsg working fine. I need to make use of the >>> multihoming feature which requires sctp_sendmsgx. I changed the call to >>> sctp_sendmsgx, and changed the address count to 2. However, all I get is >>> an EINVAL response. Looking through the code there are at least 2 >>> different possible causes, but I can't distinguish between them. I do have >>> two address structures in the address field. Are there any examples of how >>> to build a client with sctp_sendmsgx? >> >> I am now making some progress. If you are using the sctp_sendmsg function >> the sa_len or sin_len field is not used. However, sctp_sendx does use it. >> Leaving it at zero causes > Yepp, filling out the sa_len field is important. >> the problem. sendx now sends a connection init to the remote host. There >> is no server running there yet. It hangs for quite some time and doesn't >> try the multihome address. I seem to recall reading something about that so >> will investigate that tomorrow. > What do you see on the wire? I would expect INIT chunks to be sent to the two > addresses you provided.
If I have both network connections working, there is an INIT chunk on the primary network followed by a ABORT chunk response. Then the client sits waiting for a response which never comes. If I disconnect the primary network cable, then after about 5 seconds of starting the client, I get the INIT and ABORT chunks on the secondary network. I haven't figured out how to control the time, or how to make it switch to the secondary when the network connection is there, but the server is not responding. > > Please note that sctp_sendx() is deprecated (like sctp_sendmsg()). Please > consider using sctp_sendv(). > See https://tools.ietf.org/html/rfc6458#section-9.12 Thats quite interesting. This must have occurred after the Steven's book came out. There is no man entry for sctp_sendv in FBSD 12.1. However, I do see it in sctp_sys_calls.c so I will have to figure it out from there. Likewise there is no indication those calls are depreciated in the man pages. -- Doug _______________________________________________ freebsd-net@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"