From: Zhu B. <zhu...@gm...> - 2012-10-21 08:26:05
|
from http://tools.ietf.org/pdf/draft-ietf-tsvwg-sctpsocket-32.pdf 8.2.1. Association Status (SCTP_STATUS) Applications can retrieve current status information about an association, including association state, peer receiver window size, number of unacknowledged data chunks, and number of data chunks ... To access these status values, the application calls getsockopt() with the option name SCTP_STATUS. getsockopt can be called with option_name SCTP_STATUS. this point is not said on http://pubs.opengroup.org/onlinepubs/009695399/functions/getsockopt.html Seems the page didn't say anything related SCTP. Thanks for the hint. On Sun, Oct 21, 2012 at 3:38 PM, Michael Tuexen < Mic...@lu...> wrote: > On Oct 21, 2012, at 4:22 AM, Neil Horman wrote: > > > On Sat, Oct 20, 2012 at 11:24:05PM +0800, Zhu Bicen wrote: > >> Hello, all, > >> > >> There is a problem when trying the first SCTP example(10.2 SCTP > >> One-to-Many-Style Streaming Echo Server sctpserv01.c ) on Unix Network > >> Programming. > >> > >> The issue is the the call to sctp_get_no_strms fail due to getsockopt > >> error: Invalid argument. > >> > >> I tried this also on Debian 6, and CentOs 6.3, both have the same issue. > >> the sctp related toos and lib all installed by apt-get, i didn't build > >> these manually. > >> > >> Linux debian 2.6.32-5-686 #1 SMP Sun Sep 23 09:49:36 UTC 2012 i686 > GNU/Linux > >> > >> Has anyone met this issue before? > >> > >> Thanks! > >> > > Theres only 2 reasons that calling that socket options returns EINVAL, > if you > > don't pass in at least sizeof(struct sctp_status) bytes of data, or if > your > > association id is invalid. Since its pretty clear your passing in > enough of a > > buffer, I imagine the sctp_address_to_associd is returning an > association id > > thats invalid. What does your implementation of that function look like? > > > > Also, a nit, you probably don't want to pass IPPROTO_SCTP as your socket > level > > arugment. SOL_SCTP is the right define to pass. Both are defined to be > the > > same value in linux, so its not a big deal, but you probably want to use > the > > latter value to make your code portable. > Regarding portability: Where is defined that you use SOL_SCTP as the second > argument of getsockopt()? FreeBSD doesn't support it and > http://pubs.opengroup.org/onlinepubs/009695399/functions/getsockopt.html > doesn't define it either. > Any hints welcome. > > Best regards > Michael > > > > Neil > > > >> > > > > > ------------------------------------------------------------------------------ > > Everyone hates slow websites. So do we. > > Make your web apps faster with AppDynamics > > Download AppDynamics Lite for free today: > > http://p.sf.net/sfu/appdyn_sfd2d_oct > > _______________________________________________ > > Lksctp-developers mailing list > > Lks...@li... > > https://lists.sourceforge.net/lists/listinfo/lksctp-developers > > > > -- Best Regards Bicen Zhu |