X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=secnet.git;a=blobdiff_plain;f=udp.c;h=d1ada01f6f1d83eb56dce10336a1b33a552bc927;hp=9be56e1caeb14acd95dd907eafe1a86d38e04095;hb=HEAD;hpb=9c6a8729f6553615786878b382d4d44d2a54eec0 diff --git a/udp.c b/udp.c index 9be56e1..d1ada01 100644 --- a/udp.c +++ b/udp.c @@ -173,7 +173,7 @@ static void udp_socks_afterpoll(void *state, struct pollfd *fds, int nfds) ca.comm=&cc->ops; ca.ia=from; ca.ix=i; - done=comm_notify(&cc->notify, cc->rbuf, &ca); + done=comm_notify(cc, cc->rbuf, &ca); if (done) { udp_sock_experienced(0,uc,socks,us,0, from.sa.sa_family,0,0); @@ -186,7 +186,9 @@ static void udp_socks_afterpoll(void *state, struct pollfd *fds, int nfds) /* Manufacture and send NAK packet */ source=get_uint32(cc->rbuf->start); /* Us */ dest=get_uint32(cc->rbuf->start+4); /* Them */ - send_nak(&ca,source,dest,msgtype,cc->rbuf,"unwanted"); + send_nak(&ca,source,dest,msgtype,cc->rbuf, + priomsg_getmessage(&cc->why_unwanted, + "unwanted")); } BUF_FREE(cc->rbuf); } @@ -269,7 +271,8 @@ static bool_t record_socket_gotaddr(struct udpcommon *uc, struct udpsock *us, socklen_t salen=sizeof(us->addr); int r=getsockname(us->fd,&us->addr.sa,&salen); if (r) FAIL("getsockname()"); - if (salen>sizeof(us->addr)) { errno=0; FAIL("getsockname() length"); } + if ((size_t)salen>sizeof(us->addr)) /* cast squashes clang warning */ + { errno=0; FAIL("getsockname() length"); } return True; failed: