Skip to content

Commit e917997

Browse files
[Delegations prereq] Make snapshot manifest list dynamic
Splitting up #175
1 parent eac0a85 commit e917997

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

repo.go

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,6 @@ var topLevelMetadata = []string{
2828
"timestamp.json",
2929
}
3030

31-
var snapshotMetadata = []string{
32-
"root.json",
33-
"targets.json",
34-
}
35-
3631
// TargetsWalkFunc is a function of a target path name and a target payload used to
3732
// execute some function on each staged target file. For example, it may normalize path
3833
// names and generate target file metadata with additional custom metadata.
@@ -830,6 +825,12 @@ func (r *Repo) Snapshot() error {
830825
return r.SnapshotWithExpires(data.DefaultExpires("snapshot"))
831826
}
832827

828+
func (r *Repo) snapshotManifests() []string {
829+
// Note: root pinning is not supported in Spec 1.0.19.
830+
// root.json might need to be removed.
831+
return []string{"root.json", "targets.json"}
832+
}
833+
833834
func (r *Repo) SnapshotWithExpires(expires time.Time) error {
834835
if !validExpires(expires) {
835836
return ErrInvalidExpires{expires}
@@ -844,12 +845,12 @@ func (r *Repo) SnapshotWithExpires(expires time.Time) error {
844845
return err
845846
}
846847

847-
for _, name := range snapshotMetadata {
848-
if err := r.verifySignature(name, db); err != nil {
848+
for _, manifestName := range r.snapshotManifests() {
849+
if err := r.verifySignature(manifestName, db); err != nil {
849850
return err
850851
}
851852
var err error
852-
snapshot.Meta[name], err = r.snapshotFileMeta(name)
853+
snapshot.Meta[manifestName], err = r.snapshotFileMeta(manifestName)
853854
if err != nil {
854855
return err
855856
}
@@ -974,7 +975,7 @@ func (r *Repo) Commit() error {
974975
if err != nil {
975976
return err
976977
}
977-
for _, name := range snapshotMetadata {
978+
for _, name := range r.snapshotManifests() {
978979
expected, ok := snapshot.Meta[name]
979980
if !ok {
980981
return fmt.Errorf("tuf: snapshot.json missing hash for %s", name)

0 commit comments

Comments
 (0)