| 3206 | } |
| 3207 | |
| 3208 | staticfn unsigned long |
| 3209 | str2conditionbitmask(char *str) |
| 3210 | { |
| 3211 | unsigned long conditions_bitmask = 0UL; |
| 3212 | char **subfields; |
| 3213 | int i, sf; |
| 3214 | |
| 3215 | sf = splitsubfields(str, &subfields, SIZE(conditions)); |
| 3216 | |
| 3217 | if (sf < 1) |
| 3218 | return 0UL; |
| 3219 | |
| 3220 | for (i = 0; i < sf; ++i) { |
| 3221 | unsigned long bm = match_str2conditionbitmask(subfields[i]); |
| 3222 | |
| 3223 | if (!bm) { |
| 3224 | config_error_add("Unknown condition '%s'", subfields[i]); |
| 3225 | return 0UL; |
| 3226 | } |
| 3227 | conditions_bitmask |= bm; |
| 3228 | } |
| 3229 | return conditions_bitmask; |
| 3230 | } |
| 3231 | |
| 3232 | staticfn boolean |
| 3233 | parse_condition(char (*s)[QBUFSZ], int sidx) |
no test coverage detected