[Suit] draft-moran-suit-manifest-02

Rønningstad, Øyvind <Oyvind.Ronningstad@nordicsemi.no> Wed, 04 July 2018 08:26 UTC

Return-Path: <Oyvind.Ronningstad@nordicsemi.no>
X-Original-To: suit@ietfa.amsl.com
Delivered-To: suit@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 00A2A130DF9 for <suit@ietfa.amsl.com>; Wed, 4 Jul 2018 01:26:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nordicsemi.no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UJzfnal7b_a4 for <suit@ietfa.amsl.com>; Wed, 4 Jul 2018 01:26:29 -0700 (PDT)
Received: from ironport01.nordicsemi.no (mx01.nordicsemi.no [194.19.86.146]) (using TLSv1.2 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A39B912426A for <suit@ietf.org>; Wed, 4 Jul 2018 01:26:28 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nordicsemi.no; l=10407; s=default; t=1530692788; h=from:to:subject:date:message-id:mime-version; bh=/kb0sUNLKC4amhsjB4Mgxalp1xm8fmFsuPMk0BwON38=; b=cPE/YFYE8PTl939L8LtNurXUmBUSpdYuYeI1LcGBqNLEoWqkvout/45p /ub0DYrz6y8AWmi2iIN07ZP2kkmojEoy+lr8f4CALUni8nVoJVArM3Een lEMh2oBrnA8Sp2eYlUOPRUxuKUvQL2uQDds8YfVBbt5SKXE7D82WRwViE 8=;
X-IronPort-AV: E=Sophos; i="5.51,306,1526335200"; d="scan'208,217"; a="11226791"
From: "Rønningstad, Øyvind" <Oyvind.Ronningstad@nordicsemi.no>
To: suit <suit@ietf.org>
Thread-Topic: draft-moran-suit-manifest-02
Thread-Index: AdQTbk+t1KsTGeClRXioTvYSJXY/hw==
Date: Wed, 04 Jul 2018 08:26:25 +0000
Message-ID: <edc46af214244a119950582014c8dbfe@nordicsemi.no>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [192.9.200.83]
Content-Type: multipart/alternative; boundary="_000_edc46af214244a119950582014c8dbfenordicsemino_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/suit/dE14TlmMDmb7SCYfOdn4uB7OHlg>
Subject: [Suit] draft-moran-suit-manifest-02
X-BeenThere: suit@ietf.org
X-Mailman-Version: 2.1.26
Precedence: list
List-Id: Software Updates for Internet of Things <suit.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/suit>, <mailto:suit-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/suit/>
List-Post: <mailto:suit@ietf.org>
List-Help: <mailto:suit-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/suit>, <mailto:suit-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 04 Jul 2018 08:26:33 -0000

Thanks Brendan (and Hannes) for all your great work on the documents.

I have some of questions and comments regarding the manifest format:


  *   I'm still not 100% sure of the intended difference between extensions and directives, can you put a sentence into the document?
  *   No element has more than one inode or onode. How would "one resource may be used by multiple processors" work?
  *   If a processing step or target takes multiple input resources (I assume this happens when they all specify the same onode), how does the process know which resource is which (which blob is the compression table, and which is the data)? I.e. how is the order of arguments decided?
  *   What does it mean for a Target to be an alias (I'm referring to the comment on Target::encoding: "the format of the resource (nil when alias)")?
  *   Can dependency resources serve as input to processors or targets? If so, what data does the dependency resource provide as input to that processor or target? If not, what should the onode value be?
  *   CDDL nitpicking:
     *   Some name inconsistencies: ProcessingStep vs Processor, TargetInfo vs Target.
     *   There's probably a typo in the definition of Directive. Should it be an array of maps?
     *   Target::storageIdentifier and Target::componentIdentifier don't use the custom types for StorageIdentifier and ComponentIdentifier.
     *   I think digests should have a type, so the user can more easily restrict its format after choosing a digest algorithm.
     *   Suggestion: Add nint to textKeys group.
     *   AuthenticatedManifest should probably contain an authenticatedManifestVersion or similar.
     *   "Processor" might be confusing ("does it mean CPU?").

Øyvind