From: Alan T. DeKok Date: Thu, 9 Apr 2009 08:35:38 +0000 (+0200) Subject: Do recursive xlat X-Git-Tag: release_2_1_7~216 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=05cd3af506e6cf3b8509686426405f5b375cdea4;p=thirdparty%2Ffreeradius-server.git Do recursive xlat --- diff --git a/src/main/xlat.c b/src/main/xlat.c index af5f88370b2..7033338a6a2 100644 --- a/src/main/xlat.c +++ b/src/main/xlat.c @@ -450,9 +450,15 @@ static size_t xlat_md5(UNUSED void *instance, REQUEST *request, int i; uint8_t digest[16]; FR_MD5_CTX ctx; + char buffer[1024]; + + if (!radius_xlat(buffer, sizeof(buffer), fmt, request, func)) { + *out = '\0'; + return 0; + } fr_MD5Init(&ctx); - fr_MD5Update(&ctx, (void *) fmt, strlen(fmt)); + fr_MD5Update(&ctx, (void *) buffer, strlen(buffer)); fr_MD5Final(digest, &ctx); if (outlen < 33) {