summaryrefslogtreecommitdiff
path: root/sys/kern/uipc_socket.c
AgeCommit message (Expand)Author
2021-05-01Implement per-socket `so_lock' rwlock(9) and use it to protect routingmvs
2021-04-26Revert per-socket `so_lock' rwlock(9) and use it to protect routingClaudio Jeker
2021-04-25Implement per-socket `so_lock' rwlock(9) and use it to protect routingmvs
2021-02-24In sorflush() use m_purge() instead of handrolling it.Alexander Bluhm
2021-02-18Release mbuf(9) chain with a simple m_freem(9) loop in sorflush().mvs
2021-01-17Replace SB_KNOTE and sb_flagsintr with direct checking of klist.Visa Hankala
2021-01-09If the loop check in somove(9) goes to release without setting anAlexander Bluhm
2020-12-25Refactor klist insertion and removalVisa Hankala
2020-12-12Rename the macro MCLGETI to MCLGETL and removes the dead parameter ifp.jan
2020-11-17Fix handling of MSG_PEEK in soreceive() for the case where an emptyClaudio Jeker
2020-09-29Move the solock() call outside of solisten(). The reason is that theClaudio Jeker
2020-08-07sosplice(9): fully validate idle timeoutcheloha
2020-06-22Extend kqueue interface with EVFILT_EXCEPT filter.Martin Pieuchot
2020-06-18Compare `so' and `sosp' types just after `sosp' obtaining. We can't splicemvs
2020-06-15Set __EV_HUP when the conditions matching poll(2)'s POLLUP are found.Martin Pieuchot
2020-04-12In sosplice(), temporarily release the socket lock before callinganton
2020-04-07Abstract the head of knote lists. This allows extending the lists,Visa Hankala
2020-03-11Fix unlimited recursion caused by local outbound bcast/mcast packetAlexandr Nedvedicky
2020-02-20Replace field f_isfd with field f_flags in struct filterops to allowVisa Hankala
2020-02-14Push the KERNEL_LOCK() insidge pgsigio() and selwakeup().Martin Pieuchot
2020-01-15Keep socket timeout intervals in nsecs and use them with tsleep_nsec(9).Martin Pieuchot
2019-12-31Use C99 designated initializers with struct filterops. In addition,Visa Hankala
2019-12-12Reintroduce socket locking inside socket event filters.Visa Hankala
2019-12-02Revert "timeout(9): switch to tickless backend"cheloha
2019-11-26timeout(9): switch to tickless backendcheloha
2019-07-22implement SO_DOMAIN and SO_PROTOCOL so that the domain and the protocolRobert Nagy
2019-07-11listen(2) should return EINVAL if the socket is connected.Alexander Bluhm
2019-07-04Remove a useless kernel lock from the TCP socket splicing path.Alexander Bluhm
2018-12-17When using MSG_WAITALL, soreceive() can sleep while processing theAlexander Bluhm
2018-11-30Trivial MH_ALIGN/M_ALIGN to m_align conversions.Claudio Jeker
2018-11-21When using MSG_PEEK to peak into packets skip control messages holdingClaudio Jeker
2018-11-19Utilize sigio with sockets.Visa Hankala
2018-08-21If the control message of IP_SENDSRCADDR did not fit into the socketAlexander Bluhm
2018-07-30Use FNONBLOCK instead of SS_NBIO to check/indicate that the I/O modeMartin Pieuchot
2018-07-05Serialize the sosplice taskq allocation. This prevents an unlikelyVisa Hankala
2018-06-14In soclose() and soaccept() convert the KASSERT(SS_NOFDREF) backAlexander Bluhm
2018-06-06Pass the socket to sounlock(), this prepare the terrain for per-socketMartin Pieuchot
2018-06-06Asseert that a pfkey or routing socket is referenced by a `fp' insteadMartin Pieuchot
2018-05-08Socket splicing can delay operations by task or timeout. IntroduceAlexander Bluhm
2018-04-08AF_LOCAL was a failed attempt (by POSIX?) to seem less UNIX-specific, butPhilip Guenther
2018-03-27Use a goto to merge multiple error blocks in sosplice().Martin Pieuchot
2018-03-01When socket splicing is involved, delay the pool_put() after theAlexander Bluhm
2018-02-19Grab solock() inside soconnect2() instead of asserting for it to be held.Martin Pieuchot
2018-02-19Remove almost unused `flags' argument of suser().Martin Pieuchot
2018-01-10Mark sosplice task mp safe, do not grab kernel lock for tcp output.Alexander Bluhm
2018-01-09Change `so_state' and `so_error' to unsigned int such that they canMartin Pieuchot
2018-01-02Do not memset() the whole structure in sorflush() to keep `sb_flagsintr'Martin Pieuchot
2017-12-19Remove unnecessary unlock/lock dance when following a goto.Martin Pieuchot
2017-12-18Revert grabbing the socket lock in kqueue(2) filters.Martin Pieuchot
2017-12-10Move SB_SPLICE, SB_WAIT and SB_SEL to `sb_flags', serialized by solock().Martin Pieuchot