Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-07-10 | Remove net/raw_cb.h from includes and replace the RAWSNDQ, RAWRCVQ with | Claudio Jeker | |
protocol specific ones. OK mpi@ | |||
2018-07-10 | After removing raw_usrreq() from route and pfkey, the global sockaddr | Alexander Bluhm | |
variables can be delared constant. OK claudio@ mpi@ | |||
2018-07-09 | Inline the raw_usrreq() function into route_usrreq(). This simplifies the | Claudio Jeker | |
route code since there is no more special wrapping needed and in some places the PRU cases get easier because route(4) for example always connected. OK bluhm@ henning@ mpi@ | |||
2018-07-05 | fix comment: s/always send/always sent/ | Stuart Henderson | |
2018-07-05 | RTM_BFD route messages are also a special case. suggested by claudio@, | Sebastian Benoit | |
ok phessler@ | |||
2018-07-05 | not all route messages have a priority. Move the priority filter check | Sebastian Benoit | |
where it belongs. Problem spotted by by remi@ ok sthen@ claudio@ krw@ | |||
2018-07-01 | Retire support for unused RTM_LOCK messages, it's redundant w/ RTM_CHANGE. | Martin Pieuchot | |
ok tb@, sthen@ | |||
2018-06-25 | Factorize MPLS setup/teardown into two functions. | Martin Pieuchot | |
ok claudio@ | |||
2018-06-25 | Push the NET_LOCK() down in rtm_output(). | Martin Pieuchot | |
ok tb@, visa@ | |||
2018-06-11 | Rename routing & pfkey tables for coherency with other PCB tables. | Martin Pieuchot | |
ok claudio@ | |||
2018-06-11 | Push the KERNEL_LOCK() inside route_input(). | Martin Pieuchot | |
ok visa@, tb@ | |||
2018-06-06 | Prefix fields of pfkey & routing PCBs, part 2, no functionnal change. | Martin Pieuchot | |
ok tb@ | |||
2018-06-06 | Prefix fields of pfkey & routing PCBs, no functionnal change. | Martin Pieuchot | |
ok visa@, tb@ | |||
2018-06-06 | Asseert that a pfkey or routing socket is referenced by a `fp' instead | Martin Pieuchot | |
of calling sofree(), when its PCB is detached. This is different from TCP which does not always detach `inpcb's from sockets. In the pfkey & routing case caling sofree() there is a noop whereas for TCP it's needed to free closed connections. Having fewer sofree() makes it easier to understand the code and move the locks down. ok visa@ | |||
2018-05-14 | Use a SRP list to protect pfkeyv2 sockets, thus removing the need to | Martin Pieuchot | |
grab the KERNEL_LOCK() when delivering messages. This is the same solution already used by routing sockets. ok claudio@, visa@ | |||
2018-05-08 | Introduce rtm_sendup() a function to deliver routing messages to a | Martin Pieuchot | |
socket receive buffer. It is modelled after pfkey_sendup() as both will need the same MP treatment. ok tb@, bluhm@, visa@ | |||
2018-04-24 | Remove unused rtentry parameter. | Florian Obser | |
Input bluhm OK benno, kn, claudio | |||
2018-02-19 | Remove almost unused `flags' argument of suser(). | Martin Pieuchot | |
The account flag `ASU' will no longer be set but that makes suser() mpsafe since it no longer mess with a per-process field. No objection from millert@, ok tedu@, bluhm@ | |||
2018-02-11 | Add a ROUTE_PRIOFILTER socket option for roueing sockets that | Sebastian Benoit | |
allows filtering on the priority of the route. All routes up to the specified value will be passed. ok claudio, ok henning previous version, feedback and manpage from sthen. | |||
2018-02-08 | Make the routing socket more MP save by using a SRPL list for the pcb list. | Claudio Jeker | |
Still needs the big kernel lock but this is another step in the right direction. With and OK mpi@ | |||
2017-12-18 | Size for free(9). | Martin Pieuchot | |
From <kshe59 at zoho.eu> | |||
2017-12-13 | Spacing from kshe59@zoho.eu. | Martin Pieuchot | |
2017-12-13 | Sizes for free in route_output(). | Martin Pieuchot | |
From kshe59@zoho.eu. | |||
2017-12-10 | Remove outdated comment and trailing spaces. | Martin Pieuchot | |
From kshe59@zoho.eu | |||
2017-11-03 | After inlining of raw_detach we know the sizes for free; pointed out | Florian Obser | |
by & OK mpi, input & OK visa | |||
2017-11-03 | use rop->rcb similar like in pfkeyv2_detach(); suggested by visa | Florian Obser | |
2017-11-03 | Inline trivial functions from raw_cb.c and tedu it. | Florian Obser | |
Suggested by and OK mpi, OK visa | |||
2017-11-02 | Move PRU_DETACH out of pr_usrreq into per proto pr_detach | Florian Obser | |
functions to pave way for more fine grained locking. Suggested by, comments & OK mpi | |||
2017-10-09 | Reduces the scope of the NET_LOCK() in sysctl(2) path. | Martin Pieuchot | |
Exposes per-CPU counters to real parrallelism. ok visa@, bluhm@, jca@ | |||
2017-09-05 | Replace NET_ASSERT_LOCKED() by soassertlocked() in *_usrreq(). | Martin Pieuchot | |
Not all of them need the NET_LOCK(). ok bluhm@ | |||
2017-09-01 | Change sosetopt() to no longer free the mbuf it receives and change | Martin Pieuchot | |
all the callers to call m_freem(9). Support from deraadt@ and tedu@, ok visa@, bluhm@ | |||
2017-08-11 | Remove NET_LOCK()'s argument. | Martin Pieuchot | |
Tested by Hrvoje Popovski, ok bluhm@ | |||
2017-08-10 | Prevent userland to modify RTF_LOCAL route entries. | Martin Pieuchot | |
In particular setting an expiration timer on a route entry which would confuse L2 state machines. ok bluhm@ | |||
2017-08-02 | Move a sanity check that only makes sense for userland where it belongs. | Martin Pieuchot | |
ok bluhm@, florian@ | |||
2017-07-30 | Enable mpath support in the Allotment Routing Table (ART) on the ramdisk. | Florian Obser | |
OK mpi | |||
2017-07-30 | Switch installer to Allotment Routing Table (ART). | Florian Obser | |
Prompted by a bugreport by naddy that IPv6 autoconfiguration is broken in the installer. OK mpi, "go for it" deraadt | |||
2017-07-28 | Add an error argument to rtm_send() instead of rerolling it inside | Martin Pieuchot | |
rtdeletemsg(). ok bluhm@ | |||
2017-07-26 | Fix typo in comment, ok deraadt@ | anton | |
2017-07-24 | rt_getifa() is only needed for routing commands submited by userland. | Martin Pieuchot | |
So rename it to rtm_getifa(), move it where it belongs and stop calling it from rtrequest(9). Route entries created by the kernel must always specify the corresponding `ifa'. ok claudio@ | |||
2017-07-03 | Both PF_ROUTE and PF_KEY need to start to take care of their own PCB list | Claudio Jeker | |
to simplify the locking of those lists. For now move the LIST_ENTRY from rawcb into routecb and in the pfkey case a new keycb. Do some cleanup and renaming in the pfkey code but more to come. OK bluhm@ mpi@ | |||
2017-06-26 | Assert that the corresponding socket is locked when manipulating socket | Martin Pieuchot | |
buffers. This is one step towards unlocking TCP input path. Note that all the functions asserting for the socket lock are not necessarilly MP-safe. All the fields of 'struct socket' aren't protected. Introduce a new kernel-only kqueue hint, NOTE_SUBMIT, to be able to tell when a filter needs to lock the underlying data structures. Logic and name taken from NetBSD. Tested by Hrvoje Popovski. ok claudio@, bluhm@, mikeb@ | |||
2017-06-09 | Replace rtrequest(RTM_DELETE...) rtrequest_delete() and do not even | Martin Pieuchot | |
try to remove a route from the table if it is and invalid cache. This is a step towards decoupling code dealing with userland and kernel inserted routes. ok bluhm@ | |||
2017-04-19 | Use the rt_rmx defines that hide the struct rt_kmetrics indirection. | Alexander Bluhm | |
No binary change. OK mpi@ | |||
2017-04-05 | When building counter memory in preparation to copy to userland, always | Theo de Raadt | |
zero the buffers first. All the current objects appear to be safe, however future changes might introduce structure pads. Discussed with guenther, ok bluhm | |||
2017-03-16 | Do not allow to change the gateway of an existing entry if the AF | Martin Pieuchot | |
family is incorrect. Prevent bgpd(8) to corrupt ARP entries as reported by Joe Holden. ok benno@, claudio@ | |||
2017-03-13 | Move PRU_ATTACH out of the pr_usrreq functions into pr_attach. | Claudio Jeker | |
Attach is quite a different thing to the other PRU functions and this should make locking a bit simpler. This also removes the ugly hack on how proto was passed to the attach function. OK bluhm@ and mpi@ on a previous version | |||
2017-03-09 | Remove unecessary splsoftnet()/splx() dances. | Martin Pieuchot | |
ok bluhm@, claudio@ | |||
2017-03-07 | Do not grab the NET_LOCK() for routing sockets operations. | Martin Pieuchot | |
The only function that need the lock is rtm_output() as it messes with the routing table. So grab the lock there since it is safe to sleep in a process context. ok bluhm@ | |||
2017-03-07 | Since route_input is no longer part of the protosw struct it is possible to | Claudio Jeker | |
pass the socket to it and do the SO_USELOOPBACK check there. This removes a the nasty hack in the output function where the sp_family is set to 0 temporarily. OK bluhm@ mpi@ | |||
2017-03-06 | Move the guts of route_output() meesing with the routing table in their | Martin Pieuchot | |
own function. ok bluhm@ |