| 1176 | } |
| 1177 | |
| 1178 | static const char *unescape_func(ap_expr_eval_ctx_t *ctx, const void *data, |
| 1179 | const char *arg) |
| 1180 | { |
| 1181 | char *result = apr_pstrdup(ctx->p, arg); |
| 1182 | int ret = ap_unescape_url_keep2f(result, 0); |
| 1183 | if (ret == OK) |
| 1184 | return result; |
| 1185 | ap_log_rerror(LOG_MARK(ctx->info), APLOG_DEBUG, 0, ctx->r, APLOGNO(00538) |
| 1186 | "%s %% escape in unescape('%s') at %s:%d", |
| 1187 | ret == HTTP_BAD_REQUEST ? "Bad" : "Forbidden", arg, |
| 1188 | ctx->info->filename, ctx->info->line_number); |
| 1189 | return ""; |
| 1190 | } |
| 1191 | |
| 1192 | static int op_nz(ap_expr_eval_ctx_t *ctx, const void *data, const char *arg) |
| 1193 | { |
nothing calls this directly
no test coverage detected