diff options
Diffstat (limited to 'validator/validator.h')
| -rw-r--r-- | validator/validator.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/validator/validator.h b/validator/validator.h index 694e4c89529e..72f44b16e382 100644 --- a/validator/validator.h +++ b/validator/validator.h @@ -45,11 +45,13 @@ #include "util/module.h" #include "util/data/msgreply.h" #include "validator/val_utils.h" +#include "validator/val_nsec3.h" struct val_anchors; struct key_cache; struct key_entry_key; struct val_neg_cache; struct config_strlist; +struct comm_timer; /** * This is the TTL to use when a trust anchor fails to prime. A trust anchor @@ -215,6 +217,19 @@ struct val_qstate { /** true if this state is waiting to prime a trust anchor */ int wait_prime_ta; + + /** State to continue with RRSIG validation in a message later */ + int msg_signatures_state; + /** The rrset index for the msg signatures to continue from */ + size_t msg_signatures_index; + /** Cache table for NSEC3 hashes */ + struct nsec3_cache_table nsec3_cache_table; + /** DS message from sub if it got suspended from NSEC3 calculations */ + struct dns_msg* sub_ds_msg; + /** The timer to resume processing msg signatures */ + struct comm_timer* suspend_timer; + /** Number of suspends */ + int suspend_count; }; /** @@ -262,4 +277,7 @@ void val_clear(struct module_qstate* qstate, int id); */ size_t val_get_mem(struct module_env* env, int id); +/** Timer callback for msg signatures continue timer */ +void validate_suspend_timer_cb(void* arg); + #endif /* VALIDATOR_VALIDATOR_H */ |
