Hi George George Cheimonidis wrote: > Hi Vlad! > > I am sending this email, after the discussion that we had in the forum > thread > https://sourceforge.net/projects/lksctp/forums/forum/83479/topic/3615562. > This was related to the problem that I faced when using connect() after > binding to three IP addresses (two IPv4 and one IPv6). The problem seemed > to occur when auth_enable is set. > I am willing to rebuild the SCTP module with the patches that you mentioned. > Please provide me with some instructions on how to apply these patches, if > possible. > > Best regards, > George > Here is a debug patch that should apply against either 2.6.31 or 2.6.33. To apply it, you'll need the Ubuntu sources or sources from kernel.org To apply them, just use $ patch -p1 < patchfile Then rebuild the kernel or just the sctp module if you don't want to wait too long. To build the module you do $ make net/sctp/sctp.ko Thanks for doing this. -vlad
diff --git a/net/sctp/sm_make_chunk.c b/net/sctp/sm_make_chunk.c index 9e73291..22a30ac 100644 --- a/net/sctp/sm_make_chunk.c +++ b/net/sctp/sm_make_chunk.c @@ -228,6 +228,8 @@ struct sctp_chunk *sctp_make_init(const struct sctp_association *asoc, chunksize += sizeof(aiparam); chunksize += vparam_len; + + printk("DEBUG: INIT size prior to Auth %zd\n", chunksize); /* Account for AUTH related parameters */ if (sctp_auth_enable) { @@ -256,6 +258,9 @@ struct sctp_chunk *sctp_make_init(const struct sctp_association *asoc, if (num_ext) chunksize += sizeof(sctp_supported_ext_param_t) + num_ext; + printk("DEBUG: INIT size after AUTH and extensions(%d) %zd", + num_ext, chunksize); + /* RFC 2960 3.3.2 Initiation (INIT) (1) * * Note 3: An INIT chunk MUST NOT contain more than one Host