+ bool_t success=r>=0;
+ if (us->experienced[recvsend][af][success]++)
+ return;
+ lg_perror(lg, uc->cc.cl.description, &uc->cc.loc,
+ success ? M_INFO : M_WARNING,
+ success ? 0 : errnoval,
+ "%s %s experiencing some %s %s%s%s",
+ socksdesc,iaddr_to_string(&us->addr),
+ success?"success":"trouble",
+ recvsend?"transmitting":"receiving",
+ af?" ":"", af?af_name(af):"");
+}
+
+static void udp_socks_afterpoll(void *state, struct pollfd *fds, int nfds)
+{
+ struct udpsocks *socks=state;
+ struct udpcommon *uc=socks->uc;