summaryrefslogtreecommitdiff
path: root/sys/netinet/ip_divert.c
AgeCommit message (Expand)Author
2024-08-16Introduce PR_MPSYSCTL flag to mark mp-safe (*pr_sysctl)() handlers andVitaliy Makkoveev
2024-07-12Remove internet PCB mutex.Alexander Bluhm
2024-03-05Validate IPv4 packet options in divert output.Alexander Bluhm
2024-02-11Use `sb_mtx' instead of `inp_mtx' in receive path for inet sockets.Vitaliy Makkoveev
2024-02-03Rework socket buffers locking for shared netlock.Vitaliy Makkoveev
2023-09-16Allow counters_read(9) to take an optional scratch buffer.Martin Pieuchot
2023-05-13Instead of implementing IPv4 header checksum creation everywhere,Alexander Bluhm
2023-04-04When sending IP packets to userland with divert-packet rules, theAlexander Bluhm
2022-10-17Change pru_abort() return type to the type of void and make pru_abort()Vitaliy Makkoveev
2022-10-03System calls should not fail due to temporary memory shortage inAlexander Bluhm
2022-09-05Use shared netlock in soreceive(). The UDP and IP divert layerAlexander Bluhm
2022-09-03Move PRU_PEERADDR request to (*pru_peeraddr)().Vitaliy Makkoveev
2022-09-03Move PRU_SOCKADDR request to (*pru_sockaddr)()Vitaliy Makkoveev
2022-09-02Move PRU_CONTROL request to (*pru_control)().Vitaliy Makkoveev
2022-09-01Move PRU_CONNECT2 request to (*pru_connect2)().Vitaliy Makkoveev
2022-08-31Move PRU_SENDOOB request to (*pru_sendoob)().Vitaliy Makkoveev
2022-08-29Move PRU_RCVOOB request to (*pru_rcvoob)().Vitaliy Makkoveev
2022-08-28Move PRU_SENSE request to (*pru_sense)().Vitaliy Makkoveev
2022-08-28Move PRU_ABORT request to (*pru_abort)().Vitaliy Makkoveev
2022-08-27Move PRU_SEND request to (*pru_send)().Vitaliy Makkoveev
2022-08-26Move PRU_RCVD request to (*pru_rcvd)().Vitaliy Makkoveev
2022-08-22Move PRU_SHUTDOWN request to (*pru_shutdown)().Vitaliy Makkoveev
2022-08-22Move PRU_DISCONNECT request to (*pru_disconnect).Vitaliy Makkoveev
2022-08-22Move PRU_ACCEPT request to (*pru_accept)().Vitaliy Makkoveev
2022-08-21Move PRU_CONNECT request to (*pru_connect)() handler.Vitaliy Makkoveev
2022-08-21Move PRU_LISTEN request to (*pru_listen)() handler.Vitaliy Makkoveev
2022-08-21Introduce a mutex per inpcb to serialize access to socket receiveAlexander Bluhm
2022-08-20Move PRU_BIND request to (*pru_bind)() handler.Vitaliy Makkoveev
2022-08-15Introduce 'pr_usrreqs' structure and move existing user-protocolVitaliy Makkoveev
2022-05-09Protect sbappendaddr() in divert_packet() with kernel lock. WithAlexander Bluhm
2022-05-05Clean up divert_packet(). Function does not return error, make itAlexander Bluhm
2022-02-25Reported-by: syzbot+1b5b209ce506db4d411d@syzkaller.appspotmail.comPhilip Guenther
2022-02-25Move pr_attach and pr_detach to a new structure pr_usrreqs that canPhilip Guenther
2020-11-16Remove the cases folded into sysctl_bounded_args but left behindgnezdo
2020-08-24Convert divert*_sysctl to sysctl_bounded_argsgnezdo
2020-08-01Move range check inside sysctl_int_arrgnezdo
2019-02-04Avoid an mbuf double free in the oob soreceive() path. In theAlexander Bluhm
2018-11-10Do not translate the EACCES error from pf(4) to EHOSTUNREACH anymore.Alexander Bluhm
2018-10-04Revert the inpcb table mutex commit. It triggers a witness panicAlexander Bluhm
2018-09-20As a step towards per inpcb or socket locks, remove the net lockAlexander Bluhm
2018-04-24Push NET_LOCK down in the default ifioctl case.Paul Irofti
2017-11-02Move PRU_DETACH out of pr_usrreq into per proto pr_detachFlorian Obser
2017-10-09Reduces the scope of the NET_LOCK() in sysctl(2) path.Martin Pieuchot
2017-10-06Unfortunately I removed too much in my previous commit and brokeAlexander Bluhm
2017-10-06Kill the divert-packet socket option IP_DIVERTFL to filter packets.Alexander Bluhm
2017-09-06Replace the call to ifa_ifwithaddr() in divert6_output() with aAlexander Bluhm
2017-09-06Replace the call to ifa_ifwithaddr() in divert_output() with a routeAlexander Bluhm
2017-09-05Replace NET_ASSERT_LOCKED() by soassertlocked() in *_usrreq().Martin Pieuchot
2017-07-27Grab the KERNEL_LOCK() before calling sorwakeup().Martin Pieuchot
2017-06-26Assert that the corresponding socket is locked when manipulating socketMartin Pieuchot