// Copyright the Hyperledger Fabric contributors. All rights reserved.
//
// SPDX-License-Identifier: Apache-2.0

syntax = "proto3";

option java_package = "org.hyperledger.fabric.protos.peer";
option go_package = "github.com/hyperledger/fabric-protos-go/peer";

package protos;

import "peer/proposal_response.proto";

// SignedChaincodeDeploymentSpec carries the CDS along with endorsements
message SignedChaincodeDeploymentSpec {
    // This is the bytes of the ChaincodeDeploymentSpec
    bytes chaincode_deployment_spec = 1;

    // This is the instantiation policy which is identical in structure
    // to endorsement policy.  This policy is checked by the VSCC at commit
    // time on the instantiation (all peers will get the same policy as it
    // will be part of the LSCC instantation record and will be part of the
    // hash as well)
    bytes instantiation_policy = 2;

    // The endorsements of the above deployment spec, the owner's signature over
    // chaincode_deployment_spec and Endorsement.endorser.
    repeated Endorsement owner_endorsements = 3;
}

