summaryrefslogtreecommitdiff
path: root/radsecproxy.c
diff options
context:
space:
mode:
Diffstat (limited to 'radsecproxy.c')
-rw-r--r--radsecproxy.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/radsecproxy.c b/radsecproxy.c
index 4772442..35b0caa 100644
--- a/radsecproxy.c
+++ b/radsecproxy.c
@@ -1911,6 +1911,9 @@ int radsrv(struct request *rq) {
rq->origid = id;
memcpy(rq->origauth, auth, 16);
memcpy(auth, newauth, 16);
+
+ if (to->conf->rewriteout)
+ dorewrite(rq->buf, to->conf->rewriteout);
sendrq(to, rq);
return 1;
@@ -2071,6 +2074,13 @@ int replyh(struct server *server, unsigned char *buf) {
if (messageauth)
messageauth = attrget(attrs, len, RAD_Attr_Message_Authenticator);
}
+
+ if (from->conf->rewriteout) {
+ dorewrite(buf, from->conf->rewriteout);
+ len = RADLEN(buf) - 20;
+ if (messageauth)
+ messageauth = attrget(attrs, len, RAD_Attr_Message_Authenticator);
+ }
if (messageauth) {
if (!createmessageauth(buf, ATTRVAL(messageauth), from->conf->secret)) {