diff options
-rw-r--r-- | radsecproxy.c | 15 | ||||
-rw-r--r-- | udp.c | 1 |
2 files changed, 7 insertions, 9 deletions
diff --git a/radsecproxy.c b/radsecproxy.c index 3dc3903..9a35c21 100644 --- a/radsecproxy.c +++ b/radsecproxy.c @@ -1729,15 +1729,12 @@ int addclientrq(struct request *rq) { if (rq->udpport == r->udpport && !memcmp(rq->rqauth, r->rqauth, 16)) { gettimeofday(&now, NULL); if (now.tv_sec - r->created.tv_sec < r->from->conf->dupinterval) { -#if 0 - later - if (r->replybuf) { - debug(DBG_INFO, "radsrv: already sent reply to request with id %d from %s, resending", rq->rqid, addr2string(r->from->addr)); - r->refcount++; - sendreply(r); - } else -#endif - debug(DBG_INFO, "radsrv: already got request with id %d from %s, ignoring", rq->rqid, addr2string(r->from->addr)); + if (r->replybuf) { + debug(DBG_INFO, "addclientrq: already sent reply to request with id %d from %s, resending", rq->rqid, addr2string(r->from->addr)); + r->refcount++; + sendreply(r); + } else + debug(DBG_INFO, "addclientrq: already got request with id %d from %s, ignoring", rq->rqid, addr2string(r->from->addr)); return 0; } } @@ -208,6 +208,7 @@ void *udpserverwr(void *arg) { port_set((struct sockaddr *)&to, reply->udpport); if (sendto(reply->udpsock, reply->replybuf, RADLEN(reply->replybuf), 0, (struct sockaddr *)&to, SOCKADDR_SIZE(to)) < 0) debug(DBG_WARN, "udpserverwr: send failed"); + debug(DBG_DBG, "udpserverwr: refcount %d", reply->refcount); freerq(reply); } } |