char *out, size_t outlen,
RADIUS_ESCAPE_STRING func)
{
- int rcode;
int64_t result;
rlm_expr_t *inst = instance;
char buffer[256];
* Format similar to String::Random.
*/
static size_t randstr_xlat(UNUSED void *instance, REQUEST *request,
- const char *fmt, char *out, size_t outlen,
+ char *fmt, char *out, size_t outlen,
RADIUS_ESCAPE_STRING func)
{
char *p;
* Example: "%{urlquote:http://example.org/}" == "http%3A%47%47example.org%47"
*/
static size_t urlquote_xlat(UNUSED void *instance, REQUEST *request,
- const char *fmt, char *out, size_t outlen,
+ char *fmt, char *out, size_t outlen,
UNUSED RADIUS_ESCAPE_STRING func)
{
char *p;
* Probably only works for ASCII
*/
static size_t lc_xlat(UNUSED void *instance, REQUEST *request,
- const char *fmt, char *out, size_t outlen,
+ char *fmt, char *out, size_t outlen,
UNUSED RADIUS_ESCAPE_STRING func)
{
char *p, *q;
* Probably only works for ASCII
*/
static size_t uc_xlat(UNUSED void *instance, REQUEST *request,
- const char *fmt, char *out, size_t outlen,
+ char *fmt, char *out, size_t outlen,
UNUSED RADIUS_ESCAPE_STRING func)
{
char *p, *q;
* Example: "%{md5:foo}" == "acbd18db4cc2f85cedef654fccc4a4d8"
*/
static size_t md5_xlat(UNUSED void *instance, REQUEST *request,
- const char *fmt, char *out, size_t outlen,
+ char *fmt, char *out, size_t outlen,
UNUSED RADIUS_ESCAPE_STRING func)
{
char buffer[1024];
* Example: "%{strtobase64:foo}" == "Zm9v"
*/
static size_t base64_encode_xlat(UNUSED void *instance, REQUEST *request,
- const char *fmt, char *out, size_t outlen)
+ char *fmt, char *out, size_t outlen,
+ UNUSED RADIUS_ESCAPE_STRING func)
{
size_t len;
char buffer[1024];
- len = radius_xlat(buffer, sizeof(buffer), fmt, request, NULL, NULL);
+ len = radius_xlat(buffer, sizeof(buffer), fmt, request, func);
/*
* We can accurately calculate the length of the output string
* Example: "%{base64tostr:Zm9v}" == "foo"
*/
static size_t base64_decode_xlat(UNUSED void *instance, REQUEST *request,
- const char *fmt, char *out, size_t outlen)
+ char *fmt, char *out, size_t outlen,
+ UNUSED RADIUS_ESCAPE_STRING func)
{
char *p;
size_t freespace = outlen;
size_t len;
- len = radius_xlat(buffer, sizeof(buffer), fmt, request, NULL, NULL);
+ len = radius_xlat(buffer, sizeof(buffer), fmt, request, func);
if (!len) {
radlog(L_ERR, "rlm_expr: xlat failed.");