diff options
author | Rasmus Dahlberg <rasmus@rgdd.se> | 2024-05-26 15:37:58 +0200 |
---|---|---|
committer | Rasmus Dahlberg <rasmus@rgdd.se> | 2024-05-26 15:37:58 +0200 |
commit | 20f52e16880210b1893d89e2d20819171632da32 (patch) | |
tree | b1096c252f2e64815b7747982c62092b09e29824 /internal/manager | |
parent | c6f84bb9ed7acb355c2e9ed4b4dcb352d4af6ee6 (diff) |
Only bootstrap a compact range once per log
As opposed to doing a new bootstrap with get-proof-by-hash every time
the next root is constructed. Bootstrapping the compact range from a
get-proof-by-hash query works for the most part, but fails if the log
included a duplicate entry and gives us the index for that instead. Log
operators with duplicate entries include Cloudflare and Digicert.
If bootstrap fails (unlucky), we try to bootstrap again once the log's
signed tree head moved forward (hoping the last entry has no duplicate).
The more reliable way to bootstrap a compact range would be to use the
get-entry-and-proof endpoint. This does not work in practise because
some logs are not implementing this endpoint. Digicert has such logs.
Diffstat (limited to 'internal/manager')
-rw-r--r-- | internal/manager/manager.go | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/internal/manager/manager.go b/internal/manager/manager.go index bf1ad92..ce31b1b 100644 --- a/internal/manager/manager.go +++ b/internal/manager/manager.go @@ -51,6 +51,7 @@ func New(cfg Config, fch chan []feedback.Event, mch chan monitor.Event, cch chan s, err := storage.New(storage.Config{ Bootstrap: cfg.Bootstrap, Directory: cfg.Directory, + Logger: cfg.Logger, AlertDelay: cfg.AlertDelay, StaticLogs: cfg.Policy.StaticLogs, RemoveLogs: cfg.Policy.RemoveLogs, |