Sockets: Unified API for main and other loops
Now sk_open() requires an explicit IO loop to open the socket in. Also specific functions for socket RX pause / resume are added to allow for BGP corking. And last but not least, socket reloop is now synchronous to resolve weird cases of the target loop stopping before actually picking up the relooped socket. Now the caller must ensure that both loops are locked while relooping, and this way all sockets always have their respective loop.
Showing
- lib/io-loop.h 4 additions, 4 deletionslib/io-loop.h
- lib/socket.h 8 additions, 4 deletionslib/socket.h
- proto/babel/packets.c 1 addition, 1 deletionproto/babel/packets.c
- proto/bfd/bfd.c 0 additions, 11 deletionsproto/bfd/bfd.c
- proto/bfd/packets.c 6 additions, 9 deletionsproto/bfd/packets.c
- proto/bgp/bgp.c 2 additions, 2 deletionsproto/bgp/bgp.c
- proto/bgp/packets.c 3 additions, 2 deletionsproto/bgp/packets.c
- proto/ospf/iface.c 2 additions, 2 deletionsproto/ospf/iface.c
- proto/radv/packets.c 1 addition, 1 deletionproto/radv/packets.c
- proto/rip/packets.c 1 addition, 1 deletionproto/rip/packets.c
- proto/rpki/ssh_transport.c 1 addition, 3 deletionsproto/rpki/ssh_transport.c
- proto/rpki/tcp_transport.c 1 addition, 3 deletionsproto/rpki/tcp_transport.c
- proto/rpki/transport.c 0 additions, 2 deletionsproto/rpki/transport.c
- sysdep/bsd/krt-sock.c 1 addition, 1 deletionsysdep/bsd/krt-sock.c
- sysdep/linux/netlink.c 1 addition, 1 deletionsysdep/linux/netlink.c
- sysdep/unix/io-loop.c 137 additions, 69 deletionssysdep/unix/io-loop.c
- sysdep/unix/io-loop.h 5 additions, 4 deletionssysdep/unix/io-loop.h
- sysdep/unix/io.c 57 additions, 98 deletionssysdep/unix/io.c
- sysdep/unix/main.c 1 addition, 1 deletionsysdep/unix/main.c
- sysdep/unix/unix.h 4 additions, 1 deletionsysdep/unix/unix.h
Loading
Please register or sign in to comment