From a50ed4ab01b64202fefb69ba2e359c9278233bb8 Mon Sep 17 00:00:00 2001 From: "Sascha L. Teichmann" Date: Thu, 19 May 2022 12:22:06 +0200 Subject: [PATCH] Write correct url prefix to provider-metadata. --- cmd/csaf_aggregator/indices.go | 4 ++-- cmd/csaf_aggregator/mirror.go | 4 ++-- csaf/models.go | 8 ++++++-- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/cmd/csaf_aggregator/indices.go b/cmd/csaf_aggregator/indices.go index 9b7ab27..34adcba 100644 --- a/cmd/csaf_aggregator/indices.go +++ b/cmd/csaf_aggregator/indices.go @@ -144,7 +144,7 @@ func (w *worker) writeROLIE(label string, summaries []summary) error { fname := "csaf-feed-tlp-" + labelFolder + ".json" feedURL := w.cfg.Domain + "/.well-known/csaf-aggregator/" + - w.provider.Name + "/" + fname + w.provider.Name + "/" + labelFolder + "/" + fname entries := make([]*csaf.Entry, len(summaries)) @@ -199,7 +199,7 @@ func (w *worker) writeROLIE(label string, summaries []summary) error { // Sort by descending updated order. rolie.SortEntriesByUpdated() - path := filepath.Join(w.dir, fname) + path := filepath.Join(w.dir, labelFolder, fname) return util.WriteToFile(path, rolie) } diff --git a/cmd/csaf_aggregator/mirror.go b/cmd/csaf_aggregator/mirror.go index 4fad34a..1e75e41 100644 --- a/cmd/csaf_aggregator/mirror.go +++ b/cmd/csaf_aggregator/mirror.go @@ -203,8 +203,8 @@ func (w *worker) writeProviderMetadata() error { fname := filepath.Join(w.dir, "provider-metadata.json") - pm := csaf.NewProviderMetadataDomain( - w.cfg.Domain, + pm := csaf.NewProviderMetadataPrefix( + w.cfg.Domain+"/.well-known/csaf-aggreator/"+w.provider.Name, w.labelsFromSummaries()) // Figure out the role diff --git a/csaf/models.go b/csaf/models.go index e2ec961..035bb60 100644 --- a/csaf/models.go +++ b/csaf/models.go @@ -607,11 +607,15 @@ func NewProviderMetadata(canonicalURL string) *ProviderMetadata { // NewProviderMetadataDomain creates a new provider with the given URL // and tlps feeds. func NewProviderMetadataDomain(domain string, tlps []TLPLabel) *ProviderMetadata { + return NewProviderMetadataPrefix(domain+"/.well-known/csaf", tlps) +} - prefix := "/.well-known/csaf" +// NewProviderMetadataPrefix creates a new provider with a given prefix +// and tlps feeds. +func NewProviderMetadataPrefix(prefix string, tlps []TLPLabel) *ProviderMetadata { pm := NewProviderMetadata( - domain + prefix + "/provider-metadata.json") + prefix + "/provider-metadata.json") if len(tlps) == 0 { return pm