| 886 | } |
| 887 | |
| 888 | static apr_status_t remove_nms_file(void *baton, apr_pool_t *p, apr_pool_t *ptemp, |
| 889 | const char *dir, const char *name, apr_filetype_e ftype) |
| 890 | { |
| 891 | inspect_ctx *ctx = baton; |
| 892 | const char *fname; |
| 893 | apr_finfo_t inf; |
| 894 | apr_status_t rv = APR_SUCCESS; |
| 895 | |
| 896 | (void)p; |
| 897 | if (APR_DIR == ftype) goto leave; |
| 898 | if (APR_SUCCESS != (rv = md_util_path_merge(&fname, ptemp, dir, name, NULL))) goto leave; |
| 899 | if (APR_SUCCESS != (rv = apr_stat(&inf, fname, APR_FINFO_MTIME, ptemp))) goto leave; |
| 900 | if (inf.mtime >= ctx->ts) goto leave; |
| 901 | |
| 902 | md_log_perror(MD_LOG_MARK, MD_LOG_TRACE3, 0, ptemp, "remove_nms file: %s/%s", dir, name); |
| 903 | rv = apr_file_remove(fname, ptemp); |
| 904 | |
| 905 | leave: |
| 906 | return rv; |
| 907 | } |
| 908 | |
| 909 | static apr_status_t remove_nms_dir(void *baton, apr_pool_t *p, apr_pool_t *ptemp, |
| 910 | const char *dir, const char *name, apr_filetype_e ftype) |
nothing calls this directly
no test coverage detected