diff options
author | Randall Stewart <rrs@FreeBSD.org> | 2007-06-13 01:31:53 +0000 |
---|---|---|
committer | Randall Stewart <rrs@FreeBSD.org> | 2007-06-13 01:31:53 +0000 |
commit | 9a97252585e1be47aa6f9154de1f54eab7dffe47 (patch) | |
tree | 8d5bbe40650c2eb2f33e58ff8a55f66ae96d6c38 /sys/netinet/sctputil.c | |
parent | 8004e6ecc811b69d6c31e52e63cfef2eb8ec4608 (diff) | |
download | src-9a97252585e1be47aa6f9154de1f54eab7dffe47.tar.gz src-9a97252585e1be47aa6f9154de1f54eab7dffe47.zip |
- Fixed cookie handling to calc an RTO when
its an INIT collision case.
- Fixed RTO calc to maintain a seperate variable to track
if a RTO calc as been done, this allows the RTO var to be
doubled during initial timeouts.
- Reduces the amount of stack used by process control.
- Use a constant for the peer chunk overhead.
- Name change to spell candidate correctly.
Notes
Notes:
svn path=/head/; revision=170642
Diffstat (limited to 'sys/netinet/sctputil.c')
-rw-r--r-- | sys/netinet/sctputil.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet/sctputil.c b/sys/netinet/sctputil.c index fb2e1adb0c3d..b2f9f99ff53d 100644 --- a/sys/netinet/sctputil.c +++ b/sys/netinet/sctputil.c @@ -2576,7 +2576,7 @@ sctp_calculate_rto(struct sctp_tcb *stcb, /***************************/ o_calctime = calc_time; /* this is Van Jacobson's integer version */ - if (net->RTO) { + if (net->RTO_measured) { calc_time -= (net->lastsa >> SCTP_RTT_SHIFT); /* take away 1/8th when * shift=3 */ #ifdef SCTP_RTTVAR_LOGGING @@ -2596,6 +2596,7 @@ sctp_calculate_rto(struct sctp_tcb *stcb, } } else { /* First RTO measurment */ + net->RTO_measured = 1; net->lastsa = calc_time << SCTP_RTT_SHIFT; /* Multiply by 8 when * shift=3 */ net->lastsv = calc_time; |