diff options
author | David S. Miller <davem@davemloft.net> | 2010-05-03 19:20:44 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-05-03 19:24:31 -0400 |
commit | f5460618405eec8c3300947a499011528a115acd (patch) | |
tree | 19aba5acb6d91d5a20400292aaf1881a6b26c118 /net/sctp/sm_make_chunk.c | |
parent | 4f70ecca9c57731b4acbe5043eb22e4416bd2368 (diff) | |
parent | 0e3aef8d09a8c11e3fb83cdcb24b5bc7421b3726 (diff) |
Merge branch 'net-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vxy/lksctp-dev
Add missing linux/vmalloc.h include to net/sctp/probe.c
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp/sm_make_chunk.c')
-rw-r--r-- | net/sctp/sm_make_chunk.c | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/net/sctp/sm_make_chunk.c b/net/sctp/sm_make_chunk.c index 30c1767186b8..d8261f3d7715 100644 --- a/net/sctp/sm_make_chunk.c +++ b/net/sctp/sm_make_chunk.c | |||
@@ -445,10 +445,17 @@ struct sctp_chunk *sctp_make_init_ack(const struct sctp_association *asoc, | |||
445 | if (!retval) | 445 | if (!retval) |
446 | goto nomem_chunk; | 446 | goto nomem_chunk; |
447 | 447 | ||
448 | /* Per the advice in RFC 2960 6.4, send this reply to | 448 | /* RFC 2960 6.4 Multi-homed SCTP Endpoints |
449 | * the source of the INIT packet. | 449 | * |
450 | * An endpoint SHOULD transmit reply chunks (e.g., SACK, | ||
451 | * HEARTBEAT ACK, * etc.) to the same destination transport | ||
452 | * address from which it received the DATA or control chunk | ||
453 | * to which it is replying. | ||
454 | * | ||
455 | * [INIT ACK back to where the INIT came from.] | ||
450 | */ | 456 | */ |
451 | retval->transport = chunk->transport; | 457 | retval->transport = chunk->transport; |
458 | |||
452 | retval->subh.init_hdr = | 459 | retval->subh.init_hdr = |
453 | sctp_addto_chunk(retval, sizeof(initack), &initack); | 460 | sctp_addto_chunk(retval, sizeof(initack), &initack); |
454 | retval->param_hdr.v = sctp_addto_chunk(retval, addrs_len, addrs.v); | 461 | retval->param_hdr.v = sctp_addto_chunk(retval, addrs_len, addrs.v); |
@@ -487,18 +494,6 @@ struct sctp_chunk *sctp_make_init_ack(const struct sctp_association *asoc, | |||
487 | /* We need to remove the const qualifier at this point. */ | 494 | /* We need to remove the const qualifier at this point. */ |
488 | retval->asoc = (struct sctp_association *) asoc; | 495 | retval->asoc = (struct sctp_association *) asoc; |
489 | 496 | ||
490 | /* RFC 2960 6.4 Multi-homed SCTP Endpoints | ||
491 | * | ||
492 | * An endpoint SHOULD transmit reply chunks (e.g., SACK, | ||
493 | * HEARTBEAT ACK, * etc.) to the same destination transport | ||
494 | * address from which it received the DATA or control chunk | ||
495 | * to which it is replying. | ||
496 | * | ||
497 | * [INIT ACK back to where the INIT came from.] | ||
498 | */ | ||
499 | if (chunk) | ||
500 | retval->transport = chunk->transport; | ||
501 | |||
502 | nomem_chunk: | 497 | nomem_chunk: |
503 | kfree(cookie); | 498 | kfree(cookie); |
504 | nomem_cookie: | 499 | nomem_cookie: |
@@ -1254,7 +1249,6 @@ struct sctp_chunk *sctp_chunkify(struct sk_buff *skb, | |||
1254 | INIT_LIST_HEAD(&retval->list); | 1249 | INIT_LIST_HEAD(&retval->list); |
1255 | retval->skb = skb; | 1250 | retval->skb = skb; |
1256 | retval->asoc = (struct sctp_association *)asoc; | 1251 | retval->asoc = (struct sctp_association *)asoc; |
1257 | retval->resent = 0; | ||
1258 | retval->has_tsn = 0; | 1252 | retval->has_tsn = 0; |
1259 | retval->has_ssn = 0; | 1253 | retval->has_ssn = 0; |
1260 | retval->rtt_in_progress = 0; | 1254 | retval->rtt_in_progress = 0; |