| // Copyright 2018 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| library fuchsia.pkg; |
| |
| /// BlobId is a content-addressed merkle root that describes an artifact that is tracked by the |
| /// packaging system. |
| struct BlobId { |
| array<uint8>:32 merkle_root; |
| }; |
| |
| /// BlobInfo is a tuple of the content-addressed merkle root for an artifact, along with that |
| /// artifact's length in bytes. |
| struct BlobInfo { |
| BlobId blob_id; |
| uint64 length; |
| }; |
| |
| /// PackageUrl is the URL for a package. |
| /// https://fuchsia.dev/fuchsia-src/concepts/storage/package_url |
| struct PackageUrl { |
| string:2048 url; |
| }; |
| |
| /// PackageIndexEntry represents a single entry in the package index. |
| struct PackageIndexEntry { |
| PackageUrl package_url; |
| BlobId meta_far_blob_id; |
| }; |