Hi,
Filter runtime errors (`F_ERROR`) currently share filtered counters and the
`filtered out` route trace with intentional policy rejects (`F_REJECT`). The
detailed interpreter error is rate-limited, which can make route-dependent
filter failures difficult to classify.
One example is constructing a standard-community pair from a 32-bit Large
Community field. Configuration parsing succeeds because the concrete value is
route-dependent, but a value above 65535 correctly fails the pair constructor
at runtime.
This series:
1. reports both evaluated values in pair range errors;
2. keeps the existing filtered aggregate, adds a runtime-error subset for
import and export, and uses a distinct route trace;
3. documents runtime pair checks and a safe LC-field guard.
The series does not change log rate limits or add another error-log source.
Silent export evaluations do not alter the new counters, and import
keep-filtered behavior is unchanged.
Base: thread-next 06ca9bf5c588df6c0587eb64bd375eb0ade526ab
Validation:
- autoreconf, configure, full build, and make check;
- BIRD user and programmer HTML documentation;
- daemon-level import/export errors and explicit-reject controls;
- keep-filtered and silent export-query behavior.
An equivalent series for current master is available if this should also land
in BIRD 2.
Alice39s (3):
filter: report values for out-of-range pair components
nest: track filter runtime errors in channel statistics
doc: explain pair construction range failures
Thanks,
Alice39s
alice39s@xmsl.dev