summaryrefslogtreecommitdiff
path: root/chromium/extensions/common/manifest_parser.mojom
blob: be0aa7894b1b6e7b7f894f30497332d96f701ac6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Secure chrome extension update manifest parser provided by the utility
// process and exposed by mojo policy to the chrome browser process.

module extensions.mojom;

import "url/mojo/url.mojom";

interface ManifestParser {
  // Parse an extensions update manifest |xml| document and return the
  // |results|, or null if parsing fails.
  Parse(string xml) => (UpdateManifestResults? results);
};

struct UpdateManifestResults {
  array<UpdateManifestResult> list;
  int32 daystart_elapsed_seconds;
};

struct UpdateManifestResult {
  string extension_id;
  string version;
  string browser_min_version;

  url.mojom.Url crx_url;
  string package_hash;
  int32 size;
  string package_fingerprint;

  url.mojom.Url diff_crx_url;
  string diff_package_hash;
  int32 diff_size;
};