mirror of
https://github.com/gocsaf/csaf.git
synced 2025-12-22 11:55:40 +01:00
Only write provider metadata back if it is marked as dynamic in config.
This commit is contained in:
parent
fbe20dbf60
commit
45299f7e44
2 changed files with 32 additions and 29 deletions
|
|
@ -19,15 +19,16 @@ const (
|
||||||
)
|
)
|
||||||
|
|
||||||
type config struct {
|
type config struct {
|
||||||
Key string `toml:"key"`
|
Key string `toml:"key"`
|
||||||
Folder string `toml:"folder"`
|
Folder string `toml:"folder"`
|
||||||
Web string `toml:"web"`
|
Web string `toml:"web"`
|
||||||
TLPs []tlp `toml:"tlps"`
|
TLPs []tlp `toml:"tlps"`
|
||||||
UploadSignature bool `toml:"upload_signature"`
|
UploadSignature bool `toml:"upload_signature"`
|
||||||
OpenPGPURL string `toml:"openpgp_url"`
|
OpenPGPURL string `toml:"openpgp_url"`
|
||||||
Domain string `toml:"domain"`
|
Domain string `toml:"domain"`
|
||||||
NoPassphrase bool `toml:"no_passphrase"`
|
NoPassphrase bool `toml:"no_passphrase"`
|
||||||
Publisher *csaf.Publisher `toml:"publisher"`
|
DynamicProviderMetaData bool `toml:"dynamic_provider_metadata"`
|
||||||
|
Publisher *csaf.Publisher `toml:"publisher"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type tlp string
|
type tlp string
|
||||||
|
|
|
||||||
|
|
@ -59,29 +59,31 @@ func doTransaction(
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Write back provider metadata.
|
// Write back provider metadata if its dynamic.
|
||||||
newMetaName, newMetaFile, err := mkUniqFile(metadata)
|
if cfg.DynamicProviderMetaData {
|
||||||
if err != nil {
|
newMetaName, newMetaFile, err := mkUniqFile(metadata)
|
||||||
os.RemoveAll(newDir)
|
if err != nil {
|
||||||
return err
|
os.RemoveAll(newDir)
|
||||||
}
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
if err := pmd.Save(newMetaFile); err != nil {
|
if err := pmd.Save(newMetaFile); err != nil {
|
||||||
newMetaFile.Close()
|
newMetaFile.Close()
|
||||||
os.Remove(newMetaName)
|
os.Remove(newMetaName)
|
||||||
os.RemoveAll(newDir)
|
os.RemoveAll(newDir)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := newMetaFile.Close(); err != nil {
|
if err := newMetaFile.Close(); err != nil {
|
||||||
os.Remove(newMetaName)
|
os.Remove(newMetaName)
|
||||||
os.RemoveAll(newDir)
|
os.RemoveAll(newDir)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := os.Rename(newMetaName, metadata); err != nil {
|
if err := os.Rename(newMetaName, metadata); err != nil {
|
||||||
os.RemoveAll(newDir)
|
os.RemoveAll(newDir)
|
||||||
return err
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Switch directories.
|
// Switch directories.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue