| 77 | unsigned int idlen, apr_pool_t *p); |
| 78 | |
| 79 | static const char *socache_dbm_create(ap_socache_instance_t **context, |
| 80 | const char *arg, |
| 81 | apr_pool_t *tmp, apr_pool_t *p) |
| 82 | { |
| 83 | ap_socache_instance_t *ctx; |
| 84 | |
| 85 | *context = ctx = apr_pcalloc(p, sizeof *ctx); |
| 86 | |
| 87 | if (arg && *arg) { |
| 88 | ctx->data_file = ap_server_root_relative(p, arg); |
| 89 | if (!ctx->data_file) { |
| 90 | return apr_psprintf(tmp, "Invalid cache file path %s", arg); |
| 91 | } |
| 92 | } |
| 93 | |
| 94 | apr_pool_create(&ctx->pool, p); |
| 95 | apr_pool_tag(ctx->pool, "socache_dbm_instance"); |
| 96 | |
| 97 | return NULL; |
| 98 | } |
| 99 | |
| 100 | #if AP_NEED_SET_MUTEX_PERMS |
| 101 | static int try_chown(apr_pool_t *p, server_rec *s, |
nothing calls this directly
no test coverage detected