Versions in this module Expand all Collapse all v1 v1.1.2 Sep 2, 2020 Changes in this version + const PostBatchInterval + func ASN1MarshalSCTs(scts []*AssignedSCT) ([]byte, error) + func BuildLogClient(log *loglist2.Log) (client.AddLogClient, error) + func NewStubLogClient(log *loglist2.Log) (client.AddLogClient, error) + type AssignedSCT struct + LogURL string + SCT *ct.SignedCertificateTimestamp + func GetSCTs(ctx context.Context, submitter Submitter, chain []ct.ASN1Cert, asPreChain bool, ...) ([]*AssignedSCT, error) + type CTPolicyType int + const AppleCTPolicy + const ChromeCTPolicy + type Distributor struct + func NewDistributor(ll *loglist2.LogList, plc ctpolicy.CTPolicy, lcBuilder LogClientBuilder, ...) (*Distributor, error) + func (d *Distributor) AddChain(ctx context.Context, rawChain [][]byte, loadPendingLogs bool) ([]*AssignedSCT, error) + func (d *Distributor) AddPreChain(ctx context.Context, rawChain [][]byte, loadPendingLogs bool) ([]*AssignedSCT, error) + func (d *Distributor) RefreshRoots(ctx context.Context) map[string]error + func (d *Distributor) SubmitToLog(ctx context.Context, logURL string, chain []ct.ASN1Cert, asPreChain bool) (*ct.SignedCertificateTimestamp, error) + type DistributorBuilder func(*loglist2.LogList) (*Distributor, error) + func GetDistributorBuilder(plc CTPolicyType, lcBuilder LogClientBuilder, mf monitoring.MetricFactory) DistributorBuilder + type InfoData struct + LogListJSON template.HTML + LogListPath template.HTML + PolicyName string + type LogClientBuilder func(*loglist2.Log) (client.AddLogClient, error) + type LogListData struct + DownloadTime time.Time + JSON []byte + List *loglist2.LogList + type LogListManager struct + Errors chan error + LLUpdates chan LogListData + func NewLogListManager(llr LogListRefresher, mf monitoring.MetricFactory) *LogListManager + func (llm *LogListManager) GetTwoLatestLogLists() (*LogListData, *LogListData) + func (llm *LogListManager) LastJSON() []byte + func (llm *LogListManager) ProduceClientLogList() LogListData + func (llm *LogListManager) RefreshLogList(ctx context.Context) (*LogListData, error) + func (llm *LogListManager) Run(ctx context.Context, llRefresh time.Duration) + func (llm *LogListManager) Source() string + type LogListRefresher interface + LastJSON func() []byte + Refresh func() (*LogListData, error) + Source func() string + func NewCustomLogListRefresher(client *http.Client, llPath string) LogListRefresher + func NewLogListRefresher(llPath string) LogListRefresher + type Proxy struct + Init chan bool + func NewProxy(llm *LogListManager, db DistributorBuilder, mf monitoring.MetricFactory) *Proxy + func (p *Proxy) AddChain(ctx context.Context, rawChain [][]byte, loadPendingLogs bool) ([]*AssignedSCT, error) + func (p *Proxy) AddPreChain(ctx context.Context, rawChain [][]byte, loadPendingLogs bool) ([]*AssignedSCT, error) + func (p *Proxy) Run(ctx context.Context, llRefresh time.Duration, rootsRefresh time.Duration) + type ProxyServer struct + func NewProxyServer(logListPath string, dBuilder DistributorBuilder, reqTimeout time.Duration, ...) *ProxyServer + func (s *ProxyServer) HandleAddChain(w http.ResponseWriter, r *http.Request) + func (s *ProxyServer) HandleAddPreChain(w http.ResponseWriter, r *http.Request) + func (s *ProxyServer) HandleInfo(w http.ResponseWriter, r *http.Request) + func (s *ProxyServer) Run(ctx context.Context, logListRefreshInterval time.Duration, ...) + type SCTBatch struct + SCTs []ct.SignedCertificateTimestamp + type Submitter interface + SubmitToLog func(ctx context.Context, logURL string, chain []ct.ASN1Cert, asPreChain bool) (*ct.SignedCertificateTimestamp, error)