Add handling of the error queue for UDP sockets. We certainly need this for the flow table: this is the cause of the epoll loop that Stefano noticed. Even without the flow table it should improve robustness and debugability. Along the way we make a few other clean ups. Changes from v1: * Assorted minor changes based on Stefano's review David Gibson (5): conf: Don't configure port forwarding for a disabled protocol udp: Make udp_sock_recv static udp, tcp: Tweak handling of no_udp and no_tcp flags util: Add AF_UNSPEC support to sockaddr_ntop() udp: Handle errors on UDP sockets conf.c | 5 ++++ tcp.c | 14 ++++++++--- udp.c | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--- util.c | 33 +++++++++++++++++++++++++ util.h | 3 +++ 5 files changed, 125 insertions(+), 7 deletions(-) -- 2.45.2