History log of /src/sys/netinet/sctp_output.c |
Revision | | Date | Author | Comments |
1.39 |
| 12-Jun-2025 |
ozaki-r | sctp: follow the recent change of ip_newid()
|
1.38 |
| 14-Apr-2025 |
andvar | fix few typos in comments and update link to Printer Device Class spec.
|
1.37 |
| 08-Sep-2024 |
rillig | fix a/an grammar in obvious cases
|
1.36 |
| 05-Jul-2024 |
rin | sys: Drop redundant NULL check before m_freem(9)
m_freem(9) safely has accepted NULL argument at least since 4.2BSD: https://www.tuhs.org/cgi-bin/utree.pl?file=4.2BSD/usr/src/sys/sys/uipc_mbuf.c
Compile-tested on amd64/ALL.
Suggested by knakahara@
|
1.35 |
| 09-Feb-2024 |
andvar | branches: 1.35.2; fix spelling mistakes, mainly in comments and log messages.
|
1.34 |
| 13-Sep-2023 |
bouyer | handle EHOSTDOWN the same way as EHOSTUNREACH in sctp_med_chunk_output(). Compile-tested only (I don't have a sctp setup); proposed in http://mail-index.netbsd.org/tech-net/2023/09/11/msg008611.html LGTM from Greg Troxel and Robert Swindells
|
1.33 |
| 04-Nov-2022 |
ozaki-r | branches: 1.33.2; inpcb: rename functions to in6pcb_*
|
1.32 |
| 28-Oct-2022 |
ozaki-r | Adjust dccp and sctp for struct inpcb separation
|
1.31 |
| 31-May-2022 |
andvar | fix various typos in comments, documentation and messages.
|
1.30 |
| 28-May-2022 |
andvar | fix various typos, mainly in comments.
|
1.29 |
| 08-Apr-2022 |
andvar | fix various typos, mainly in comments, but also log messages, docs, game text.
|
1.28 |
| 05-Dec-2021 |
msaitoh | s/futher/further/ in comment.
|
1.27 |
| 05-Dec-2021 |
msaitoh | s/measurment/measurement/ in comment.
|
1.26 |
| 21-Oct-2021 |
andvar | fix various typos, mainly in comments, but also in man pages and log messages.
|
1.25 |
| 07-Sep-2021 |
andvar | s/aquire/acquire/ in comments, also one typo fix acqure->acquire.
|
1.24 |
| 03-Sep-2021 |
andvar | fix typos in comments, mainly s/extention/extension/ and s/sufficent/sufficient/
|
1.23 |
| 24-Jul-2021 |
andvar | Fix all remaining typos, mainly in comments but also in few definitions and log messages, reported by me in PR kern/54889. Also fixed some additional typos in comments, found on review of same files or typos.
|
1.22 |
| 13-Jun-2020 |
roy | branches: 1.22.6; SCTP: Use ifp->if_mtu rather than ND_IFINFO(ifp)->linkmtu
|
1.21 |
| 26-Dec-2019 |
msaitoh | Fix typo in comment.
|
1.20 |
| 03-Dec-2019 |
msaitoh | s/upate/update/ in comment.
|
1.19 |
| 13-Nov-2019 |
ozaki-r | Get rid of unnecessary NULL checks for rt_ifa and ifa_ifp
They are always non-NULL nowadays.
|
1.18 |
| 22-Dec-2018 |
maxv | Replace M_ALIGN and MH_ALIGN by m_align.
|
1.17 |
| 16-Sep-2018 |
skrll | interrupt has two 'r's
fix another typo while I'm here (flsah)
|
1.16 |
| 03-Sep-2018 |
riastradh | Rename min/max -> uimin/uimax for better honesty.
These functions are defined on unsigned int. The generic name min/max should not silently truncate to 32 bits on 64-bit systems. This is purely a name change -- no functional change intended.
HOWEVER! Some subsystems have
#define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b))
even though our standard name for that is MIN/MAX. Although these may invite multiple evaluation bugs, these do _not_ cause integer truncation.
To avoid `fixing' these cases, I first changed the name in libkern, and then compile-tested every file where min/max occurred in order to confirm that it failed -- and thus confirm that nothing shadowed min/max -- before changing it.
I have left a handful of bootloaders that are too annoying to compile-test, and some dead code:
cobalt ews4800mips hp300 hppa ia64 luna68k vax acorn32/if_ie.c (not included in any kernels) macppc/if_gm.c (superseded by gem(4))
It should be easy to fix the fallout once identified -- this way of doing things fails safe, and the goal here, after all, is to _avoid_ silent integer truncations, not introduce them.
Maybe one day we can reintroduce min/max as type-generic things that never silently truncate. But we should avoid doing that for a while, so that existing code has a chance to be detected by the compiler for conversion to uimin/uimax without changing the semantics until we can properly audit it all. (Who knows, maybe in some cases integer truncation is actually intended!)
|
1.15 |
| 03-May-2018 |
maxv | branches: 1.15.2; Remove m_copy completely.
|
1.14 |
| 01-May-2018 |
maxv | Remove now unused net_osdep.h includes, the other BSDs did the same.
|
1.13 |
| 30-Mar-2018 |
maya | correct typo: and and -> and (comments only)
heads up on this being a common typo from chris28.
|
1.12 |
| 10-Dec-2017 |
rjs | branches: 1.12.2; Improve compliance to RFC 6458.
|
1.11 |
| 27-Jun-2017 |
rjs | branches: 1.11.4; Use host byte order for a debug message.
|
1.10 |
| 03-Mar-2017 |
ozaki-r | Pass inpcb/in6pcb instead of socket to ip_output/ip6_output
- Passing a socket to Layer 3 is layer violation and even unnecessary - The change makes codes of callers and IPsec a bit simple
|
1.9 |
| 23-Dec-2016 |
maya | branches: 1.9.2; Remove extraneous parentheses. no functional change
Appeases clang
|
1.8 |
| 08-Dec-2016 |
ozaki-r | Add rtcache_unref to release points of rtentry stemming from rtcache
In the MP-safe world, a rtentry stemming from a rtcache can be freed at any points. So we need to protect rtentries somehow say by reference couting or passive references. Regardless of the method, we need to call some release function of a rtentry after using it.
The change adds a new function rtcache_unref to release a rtentry. At this point, this function does nothing because for now we don't add a reference to a rtentry when we get one from a rtcache. We will add something useful in a further commit.
This change is a part of changes for MP-safe routing table. It is separated to avoid one big change that makes difficult to debug by bisecting.
|
1.7 |
| 07-Jul-2016 |
ozaki-r | branches: 1.7.2; Switch the address list of intefaces to pslist(9)
As usual, we leave the old list to avoid breaking kvm(3) users.
|
1.6 |
| 10-Jun-2016 |
ozaki-r | Avoid storing a pointer of an interface in a mbuf
Having a pointer of an interface in a mbuf isn't safe if we remove big kernel locks; an interface object (ifnet) can be destroyed anytime in any packet processing and accessing such object via a pointer is racy. Instead we have to get an object from the interface collection (ifindex2ifnet) via an interface index (if_index) that is stored to a mbuf instead of an pointer.
The change provides two APIs: m_{get,put}_rcvif_psref that use psref(9) for sleep-able critical sections and m_{get,put}_rcvif that use pserialize(9) for other critical sections. The change also adds another API called m_get_rcvif_NOMPSAFE, that is NOT MP-safe and for transition moratorium, i.e., it is intended to be used for places where are not planned to be MP-ified soon.
The change adds some overhead due to psref to performance sensitive paths, however the overhead is not serious, 2% down at worst.
Proposed on tech-kern and tech-net.
|
1.5 |
| 10-Jun-2016 |
ozaki-r | Introduce m_set_rcvif and m_reset_rcvif
The API is used to set (or reset) a received interface of a mbuf. They are counterpart of m_get_rcvif, which will come in another commit, hide internal of rcvif operation, and reduce the diff of the upcoming change.
No functional change.
|
1.4 |
| 12-May-2016 |
ozaki-r | Protect ifnet list with psz and psref
The change ensures that ifnet objects in the ifnet list aren't freed during list iterations by using pserialize(9) and psref(9).
Note that the change adds a pslist(9) for ifnet but doesn't remove the original ifnet list (ifnet_list) to avoid breaking kvm(3) users. We shouldn't use the original list in the kernel anymore.
|
1.3 |
| 25-Apr-2016 |
rjs | Fix build when IPSEC enabled.
|
1.2 |
| 03-Apr-2016 |
mlelstv | Replace generic queue macros with IFNET/IFADDR macros.
|
1.1 |
| 13-Oct-2015 |
rjs | branches: 1.1.2; Add core networking support for SCTP.
|
1.1.2.7 |
| 28-Aug-2017 |
skrll | Sync with HEAD
|
1.1.2.6 |
| 05-Feb-2017 |
skrll | Sync with HEAD
|
1.1.2.5 |
| 09-Jul-2016 |
skrll | Sync with HEAD
|
1.1.2.4 |
| 29-May-2016 |
skrll | Sync with HEAD
|
1.1.2.3 |
| 22-Apr-2016 |
skrll | Sync with HEAD
|
1.1.2.2 |
| 27-Dec-2015 |
skrll | Sync with HEAD (as of 26th Dec)
|
1.1.2.1 |
| 13-Oct-2015 |
skrll | file sctp_output.c was added on branch nick-nhusb on 2015-12-27 12:10:07 +0000
|
1.7.2.2 |
| 20-Mar-2017 |
pgoyette | Sync with HEAD
|
1.7.2.1 |
| 07-Jan-2017 |
pgoyette | Sync with HEAD. (Note that most of these changes are simply $NetBSD$ tag issues.)
|
1.9.2.1 |
| 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.11.4.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.11.4.1 |
| 27-Jun-2017 |
jdolecek | file sctp_output.c was added on branch tls-maxphys on 2017-12-03 11:39:04 +0000
|
1.12.2.6 |
| 26-Dec-2018 |
pgoyette | Sync with HEAD, resolve a few conflicts
|
1.12.2.5 |
| 30-Sep-2018 |
pgoyette | Ssync with HEAD
|
1.12.2.4 |
| 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|
1.12.2.3 |
| 21-May-2018 |
pgoyette | Sync with HEAD
|
1.12.2.2 |
| 02-May-2018 |
pgoyette | Synch with HEAD
|
1.12.2.1 |
| 07-Apr-2018 |
pgoyette | Sync with HEAD. 77 conflicts resolved - all of them $NetBSD$
|
1.15.2.3 |
| 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.15.2.2 |
| 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.15.2.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.22.6.1 |
| 01-Aug-2021 |
thorpej | Sync with HEAD.
|
1.33.2.2 |
| 29-Jul-2025 |
martin | Pull up following revision(s) (requested by ozaki-r in ticket #1140):
sys/netinet/ip_output.c: revision 1.330 sys/netinet/sctp_output.c: revision 1.39 sys/netinet/ip_mroute.c: revision 1.166 sys/netipsec/ipsecif.c: revision 1.24 sys/netipsec/xform_ipip.c: revision 1.80 sys/netinet/ip_output.c: revision 1.327 sys/netinet/ip_output.c: revision 1.328 sys/netinet/ip_input.c: revision 1.406 sys/netinet/ip_output.c: revision 1.329 sys/netinet/in_var.h: revision 1.105
in: get rid of unused argument from ip_newid() and ip_newid_range()
in: take a reference of ifp on IP_ROUTETOIF The ifp could be released after ia4_release(ia).
in: narrow the scope of ifa in ip_output (NFC)
sctp: follow the recent change of ip_newid()
in: avoid racy ifa_acquire(rt->rt_ifa) in ip_output() If a rtentry is being destroyed asynchronously, ifa referenced by rt_ifa can be destructed and taking ifa_acquire(rt->rt_ifa) aborts with a KASSERT failure. Fortunately, the ifa is not actually freed because of a reference by rt_ifa, it can be available (except some functions like psref) so as long the rtentry is held. PR kern/59527
in: avoid racy ia4_acquire(ifatoia(rt->rt_ifa) in ip_rtaddr() Same as the case of ip_output(), it's racy and should be avoided. PR kern/59527
|
1.33.2.1 |
| 13-Sep-2024 |
martin | Pull up following revision(s) (requested by rin in ticket #863):
sys/netinet/sctp_output.c: revision 1.34
handle EHOSTDOWN the same way as EHOSTUNREACH in sctp_med_chunk_output().
Compile-tested only (I don't have a sctp setup); proposed in http://mail-index.netbsd.org/tech-net/2023/09/11/msg008611.html
LGTM from Greg Troxel and Robert Swindells
|
1.35.2.1 |
| 02-Aug-2025 |
perseant | Sync with HEAD
|