Re: connect() hangs after binding to three IP addresses and auth_enable is set

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [Linux Networking Development]     [Linux OMAP]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux