Documentation ¶
Index ¶
- func GetOrCreateTimestamp(gun string, store storage.MetaStore, cryptoService signed.CryptoService) (*time.Time, []byte, error)
- func GetOrCreateTimestampKey(gun string, store storage.MetaStore, crypto signed.CryptoService, ...) (data.PublicKey, error)
- func NewTimestampUpdate(prev *data.SignedTimestamp, repo *tuf.Repo) (*storage.MetaUpdate, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetOrCreateTimestamp ¶
func GetOrCreateTimestamp(gun string, store storage.MetaStore, cryptoService signed.CryptoService) ( *time.Time, []byte, error)
GetOrCreateTimestamp returns the current timestamp for the gun. This may mean a new timestamp is generated either because none exists, or because the current one has expired. Once generated, the timestamp is saved in the store. Additionally, if we had to generate a new snapshot for this timestamp, it is also saved in the store
func GetOrCreateTimestampKey ¶
func GetOrCreateTimestampKey(gun string, store storage.MetaStore, crypto signed.CryptoService, createAlgorithm string) (data.PublicKey, error)
GetOrCreateTimestampKey returns the timestamp key for the gun. It uses the store to lookup an existing timestamp key and the crypto to generate a new one if none is found. It attempts to handle the race condition that may occur if 2 servers try to create the key at the same time by simply querying the store a second time if it receives a conflict when writing.
func NewTimestampUpdate ¶
func NewTimestampUpdate(prev *data.SignedTimestamp, repo *tuf.Repo) (*storage.MetaUpdate, error)
NewTimestampUpdate produces a new timestamp and returns it as a metadata update, given the previous timestamp and the TUF repo assuming that the root and current snapshot have already been loaded.
Types ¶
This section is empty.