summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--radsecproxy.c3
-rw-r--r--util.c1
2 files changed, 3 insertions, 1 deletions
diff --git a/radsecproxy.c b/radsecproxy.c
index 9518725..2201af9 100644
--- a/radsecproxy.c
+++ b/radsecproxy.c
@@ -1649,6 +1649,7 @@ void respond(struct request *rq, uint8_t code, char *message) {
radmsg_free(rq->msg);
rq->msg = msg;
debug(DBG_DBG, "respond: sending %s to %s", radmsgtype2string(msg->code), rq->from->conf->host);
+ rq->refcount++;
sendreply(rq);
}
@@ -1877,7 +1878,7 @@ int radsrv(struct request *rq) {
rmclrqexit:
rmclientrq(rq, msg->id);
exit:
- free(rq);
+ freerq(rq);
free(userascii);
return 1;
}
diff --git a/util.c b/util.c
index 02614eb..9a54b57 100644
--- a/util.c
+++ b/util.c
@@ -127,6 +127,7 @@ struct sockaddr *addr_copy(struct sockaddr *in) {
}
break;
}
+ out->sa_family = in->sa_family;
return out;
}