| 316 | } |
| 317 | |
| 318 | apr_array_header_t *md_array_str_remove(apr_pool_t *p, apr_array_header_t *src, |
| 319 | const char *exclude, int case_sensitive) |
| 320 | { |
| 321 | apr_array_header_t *dest = apr_array_make(p, src->nelts, sizeof(const char*)); |
| 322 | if (dest) { |
| 323 | int i; |
| 324 | for (i = 0; i < src->nelts; i++) { |
| 325 | const char *s = APR_ARRAY_IDX(src, i, const char *); |
| 326 | if (!exclude |
| 327 | || (case_sensitive && strcmp(exclude, s)) |
| 328 | || (!case_sensitive && apr_cstr_casecmp(exclude, s))) { |
| 329 | APR_ARRAY_PUSH(dest, const char *) = apr_pstrdup(p, s); |
| 330 | } |
| 331 | } |
| 332 | } |
| 333 | return dest; |
| 334 | } |
| 335 | |
| 336 | int md_array_str_add_missing(apr_array_header_t *dest, apr_array_header_t *src, int case_sensitive) |
| 337 | { |
no outgoing calls
no test coverage detected