Mateusz Guzik
662c13053f
net: clean up empty lines in .c and .h files
2020-09-01 21:19:14 +00:00
Michael Tuexen
91e04f9e7a
Detect and handle an invalid reassembly constellation, which results in
...
a memory leak.
Thanks to Felix Weinrank for finding this issue using fuzz testing the
userland stack.
MFC after: 1 week
2020-07-23 01:35:24 +00:00
Michael Tuexen
3ee11586b2
Whitespace change due to upstream cleanup.
...
MFC after: 1 week
2020-06-12 16:40:10 +00:00
Michael Tuexen
2f9e6db0be
More cleanups due to ifdef cleanup done upstream
...
MFC after: 1 week
2020-06-12 16:31:13 +00:00
Michael Tuexen
70486b27ae
Retire SCTP_SO_LOCK_TESTING.
...
This was intended to test the locking used in the MacOS X kernel on a
FreeBSD system, to make use of WITNESS and other debugging infrastructure.
This hasn't been used for ages, to take it out to reduce the #ifdef
complexity.
MFC after: 1 week
2020-06-07 14:39:20 +00:00
Michael Tuexen
2cf3347109
Non-functional changes due to cleanup (upstream removing of Panda support)
...
of the code
MFC after: 1 week
2020-06-06 18:20:09 +00:00
Michael Tuexen
25ec355353
Handle integer overflows correctly when converting msecs and secs to
...
ticks and vice versa.
These issues were caught by recently added panic() calls on INVARIANTS
systems.
Reported by: syzbot+b44787b4be7096cd1590@syzkaller.appspotmail.com
Reported by: syzbot+35f82d22805c1e899685@syzkaller.appspotmail.com
MFC after: 1 week
2020-03-28 20:25:45 +00:00
Michael Tuexen
64f29eb1df
Remove an unused timer type.
...
MFC after: 1 week
2020-02-20 15:37:44 +00:00
Michael Tuexen
bbf9f080e9
Improve numbering of debug information.
...
Submitted by: Taylor Brandstetter
MFC after: 1 week
2020-02-04 12:34:16 +00:00
Michael Tuexen
d9ba240c1c
Limit the user-controllable amount of memory the kernel allocates
...
via IPPROTO_SCTP level socket options.
This issue was found by running syzkaller.
MFC after: 1 week
2019-01-16 11:33:47 +00:00
Michael Tuexen
1a0b021677
Refactor the SHUTDOWN_PENDING state handling.
...
This is not a functional change but a preperation for the upcoming
DTrace support. It is necessary to change the state in one
logical operation, even if it involves clearing the sub state
SHUTDOWN_PENDING.
MFC after: 1 month
2018-08-21 13:25:32 +00:00
Michael Tuexen
839d21d62e
Use the stacb instead of the asoc in state macros.
...
This is not a functional change. Just a preparation for upcoming
dtrace state change provider support.
2018-08-13 13:58:45 +00:00
Michael Tuexen
cf6339882e
Add constant for the PAD chunk as defined in RFC 4820.
...
This will be used by traceroute and traceroute6 soon.
MFC after: 1 week
2018-01-27 13:46:55 +00:00
Michael Tuexen
07e75d0a37
Update references in comments, since the IDs have become an RFC long
...
time ago. Also cleanup whitespaces. No functional change.
MFC after: 1 week
2018-01-27 13:43:03 +00:00
Pedro F. Giffuni
51369649b0
sys: further adoption of SPDX licensing ID tags.
...
Mainly focus on files that use BSD 3-Clause license.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
Special thanks to Wind River for providing access to "The Duke of
Highlander" tool: an older (2014) run over FreeBSD tree was useful as a
starting point.
2017-11-20 19:43:44 +00:00
Michael Tuexen
8c8e10b763
Code cleanup, not functional change.
...
This avoids taking a pointer of a packed structure which allows simpler
compilation of the userland stack.
MFC after: 1 week
2017-10-14 10:02:59 +00:00
Michael Tuexen
cdd2d7d4a5
Code cleanup, no functional change.
...
MFC after: 1 week
2017-09-21 11:56:31 +00:00
Michael Tuexen
fe40f49bb3
Remove code not used on any platform currently supported.
...
MFC after: 1 week
2017-09-16 21:26:06 +00:00
Michael Tuexen
1a7abbb3be
Use a longer buffer for messages in ERROR chunks.
...
This allows them to be sent in a non truncated way and addresses a warning
given by newver versions of gcc.
Thanks to Anselm Jonas Scholl for reporting it and providing a patch.
2017-06-23 09:27:31 +00:00
Michael Tuexen
49656eefc8
Cleanup the names of SSN, SID, TSN, FSN, PPID and MID.
...
This made a couple of bugs visible in handling SSN wrap-arounds
when using DATA chunks. Now bulk transfer seems to work fine...
This fixes the issue reported in
https://github.com/sctplab/usrsctp/issues/111
MFC after: 1 week
2016-12-07 19:30:59 +00:00
Michael Tuexen
8e1b295f09
Fix the PR-SCTP behaviour.
...
This is done by rrs@.
MFC after: 3 days
2016-07-17 13:14:51 +00:00
Pedro F. Giffuni
cd0a4ff6a5
netinet/sctp*: minor spelling fixes in comments.
...
No functional change.
Reviewed by: tuexen
2016-05-02 20:56:11 +00:00
Randall Stewart
44249214d3
This is work done by Michael Tuexen and myself at the IETF. This
...
adds the new I-Data (Interleaved Data) message. This allows a user
to be able to have complete freedom from Head Of Line blocking that
was previously there due to the in-ability to send multiple large
messages without the TSN's being in sequence. The code as been
tested with Michaels various packet drill scripts as well as
inter-networking between the IETF's location in Argentina and Germany.
2016-04-07 09:10:34 +00:00
Michael Tuexen
9a8e308861
Improve compilation on windows 64-bit (for the userland stack).
...
MFC after: 1 week
2016-03-27 10:04:25 +00:00
Michael Tuexen
e51963a7bb
Loopback addresses are 127.0.0.0/8, not 127.0.0.1/32.
...
MFC after: 1 week
2016-02-11 22:29:39 +00:00
Michael Tuexen
e629b9fc56
Ensure that ERROR chunks are always padded by implementing this
...
in the routine, which queues an ERROR chunk, instead on relyinh
on the callers to do so. Since one caller missed this, this actially
fixes a bug.
MFC after: 1 week
2015-09-11 13:54:33 +00:00
Michael Tuexen
2e2d67945a
Use 5 times RTO.Max as the default for the shutdown guard timer
...
as required by RFC 4960. The sysctl variable can be used to
overwrite this.
Discussed with: rrs
MFC after: 1 week
2015-08-29 17:26:29 +00:00
Michael Tuexen
e92c2a8d6a
Fix the exporting of SCTP association states to userland. Without this,
...
associations in SHUTDOWN-PENDING were never reported correctly.
MFC after: 3 weeks
2015-08-29 09:14:32 +00:00
Michael Tuexen
b7d130befc
Fix and cleanup the debug information. This has no user-visible changes.
...
Thanks to Irene Ruengeler for proving a patch.
MFC after: 3 days
2015-05-28 16:00:23 +00:00
Michael Tuexen
f47f328dc5
Fix the handling of sysctl variables when used with VIMAGE.
...
While there do some cleanup of the code.
MFC after: 1 week
2014-09-06 19:12:14 +00:00
Michael Tuexen
fe96e2852e
Use SCTP_OVER_UDP_TUNNELING_PORT more consistently.
...
MFC after: 3 days
2014-03-29 20:21:36 +00:00
Michael Tuexen
ff1ffd7499
* Provide information in error causes in ASCII instead of
...
proprietary binary format.
* Add support for a diagnostic information error cause.
The code is sysctlable and the default is 0, which
means it is not sent.
This is joint work with rrs@.
MFC after: 1 week
2014-03-16 12:32:16 +00:00
Michael Tuexen
77dabf96d9
Remove a buggy comparision when setting manually the path MTU.
...
After fixing, the comparision would have become redundant.
Thanks to Andrew Galante for reporting the issue.
MFC after: 3 days
2013-10-15 20:21:27 +00:00
Michael Tuexen
ee1ccd9258
Fix a bug were only 2048 streams where usable even though more than
...
2048 streams were negotiated on the wire. While there, remove the
hard coded limit of 2048 streams.
MFC after: 3 days
2013-07-05 10:08:49 +00:00
Michael Tuexen
ebae998767
Add a macro for checking for IPv4 link local addresses.
...
MFC after: 1 week
2013-03-31 18:27:46 +00:00
Michael Tuexen
325c8c46b1
Get the accounting working. We now have counters how many
...
chunks for each SCTP outgoing stream are in the send and
sent queue.
While there, improve the naming of NR-SACK related constants
recently introduced.
MFC after: 1 week
2012-11-16 19:39:10 +00:00
Michael Tuexen
98f2956c11
Improve PR-SCTP if used in combination with NR-SACK.
...
Based on work done by Mohammad Rajiullah.
MFC after: 1 week
2012-11-07 20:59:00 +00:00
Michael Tuexen
807aad636f
Use consistent text at the begining of the files.
...
MFC after: 3 days
2012-05-23 11:26:28 +00:00
Michael Tuexen
635b6ff793
Use a default for max_burst of 4 and l2var of 2.
...
This was discussed with rrs@.
MFC after: 3 days
2012-05-17 18:12:24 +00:00
Michael Tuexen
389b1b118c
Support SCTP_REMOTE_ERROR notification.
...
MFC after: 3 days
2012-05-13 22:27:54 +00:00
Michael Tuexen
1edc9dbae5
Provide in the SCTP_SEND_FAILED and SCTP_SEND_FAILED_EVENT notifications
...
the correct ssf_error or ssfe_error as required by RFC 6458.
MFC after: 3 days
2012-05-13 19:32:49 +00:00
Michael Tuexen
b342faf4bf
Remove unused constants.
...
MFC after: 3 days
2012-05-13 17:17:13 +00:00
Michael Tuexen
410a3b1ef0
Use ECONNABORTED in cases where the ABORT was sent to the peer.
...
MFC after: 3 days
2012-05-13 16:56:16 +00:00
Michael Tuexen
d426064666
Provide the flags in the SCTP stream reconfig related notification
...
as specified in RFC 6525.
MFC after: 3 days
2012-05-05 21:41:16 +00:00
Randall Stewart
c4e848b770
Make stream our stream reset implementation
...
compliant to RFC6525.
MFC after: 1 month
2012-03-29 13:36:53 +00:00
Michael Tuexen
60990c0c06
Address issues found by clang. While there, fix also some style
...
issues.
MFC after: 3 months.
2011-12-27 10:16:24 +00:00
Michael Tuexen
7215cc1b74
Fix unused parameter warnings.
...
While there, fix some whitespace issues.
MFC after: 3 months.
2011-12-17 19:21:40 +00:00
Michael Tuexen
972478a4c0
Fix a bug reported by Irene Ruengeler which resulted in not sending
...
out HEARTBEATs when requested by the user. The HEARTBEATs were only
queued, but not actually sent out.
MFC after: 2 months.
2011-12-10 10:52:54 +00:00
Michael Tuexen
80c79bbe7a
Fix the enabling/disabling of Heartbeats and path MTU
...
discovery when using the SCTP_PEER_ADDR_PARAMS socket option.
Approved by: re
MFC after: 1 month.
2011-09-17 08:50:29 +00:00
Michael Tuexen
ca85e9482a
The result of a joint work between rrs@ and myself at the IETF:
...
* Decouple the path supervision using a separate HB timer per path.
* Add support for potentially failed state.
* Bring back RTO.min to 1 second.
* Accept packets on IP-addresses already announced via an ASCONF
* While there: do some cleanups.
Approved by: re@
MFC after: 2 months.
2011-08-03 20:21:00 +00:00