github.com/ZihuaZhang/fabric-protos-go@v1.0.7/common/configtx.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // source: common/configtx.proto
     3  
     4  package common
     5  
     6  import (
     7  	fmt "fmt"
     8  	proto "github.com/golang/protobuf/proto"
     9  	math "math"
    10  )
    11  
    12  // Reference imports to suppress errors if they are not otherwise used.
    13  var _ = proto.Marshal
    14  var _ = fmt.Errorf
    15  var _ = math.Inf
    16  
    17  // This is a compile-time assertion to ensure that this generated file
    18  // is compatible with the proto package it is being compiled against.
    19  // A compilation error at this line likely means your copy of the
    20  // proto package needs to be updated.
    21  const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
    22  
    23  // ConfigEnvelope is designed to contain _all_ configuration for a chain with no dependency
    24  // on previous configuration transactions.
    25  //
    26  // It is generated with the following scheme:
    27  //  1. Retrieve the existing configuration
    28  //  2. Note the config properties (ConfigValue, ConfigPolicy, ConfigGroup) to be modified
    29  //  3. Add any intermediate ConfigGroups to the ConfigUpdate.read_set (sparsely)
    30  //  4. Add any additional desired dependencies to ConfigUpdate.read_set (sparsely)
    31  //  5. Modify the config properties, incrementing each version by 1, set them in the ConfigUpdate.write_set
    32  //     Note: any element not modified but specified should already be in the read_set, so may be specified sparsely
    33  //  6. Create ConfigUpdate message and marshal it into ConfigUpdateEnvelope.update and encode the required signatures
    34  //     a) Each signature is of type ConfigSignature
    35  //     b) The ConfigSignature signature is over the concatenation of signature_header and the ConfigUpdate bytes (which includes a ChainHeader)
    36  //  5. Submit new Config for ordering in Envelope signed by submitter
    37  //     a) The Envelope Payload has data set to the marshaled ConfigEnvelope
    38  //     b) The Envelope Payload has a header of type Header.Type.CONFIG_UPDATE
    39  //
    40  // The configuration manager will verify:
    41  //  1. All items in the read_set exist at the read versions
    42  //  2. All items in the write_set at a different version than, or not in, the read_set have been appropriately signed according to their mod_policy
    43  //  3. The new configuration satisfies the ConfigSchema
    44  type ConfigEnvelope struct {
    45  	Config               *Config   `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
    46  	LastUpdate           *Envelope `protobuf:"bytes,2,opt,name=last_update,json=lastUpdate,proto3" json:"last_update,omitempty"`
    47  	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
    48  	XXX_unrecognized     []byte    `json:"-"`
    49  	XXX_sizecache        int32     `json:"-"`
    50  }
    51  
    52  func (m *ConfigEnvelope) Reset()         { *m = ConfigEnvelope{} }
    53  func (m *ConfigEnvelope) String() string { return proto.CompactTextString(m) }
    54  func (*ConfigEnvelope) ProtoMessage()    {}
    55  func (*ConfigEnvelope) Descriptor() ([]byte, []int) {
    56  	return fileDescriptor_5190bbf196fa7499, []int{0}
    57  }
    58  
    59  func (m *ConfigEnvelope) XXX_Unmarshal(b []byte) error {
    60  	return xxx_messageInfo_ConfigEnvelope.Unmarshal(m, b)
    61  }
    62  func (m *ConfigEnvelope) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    63  	return xxx_messageInfo_ConfigEnvelope.Marshal(b, m, deterministic)
    64  }
    65  func (m *ConfigEnvelope) XXX_Merge(src proto.Message) {
    66  	xxx_messageInfo_ConfigEnvelope.Merge(m, src)
    67  }
    68  func (m *ConfigEnvelope) XXX_Size() int {
    69  	return xxx_messageInfo_ConfigEnvelope.Size(m)
    70  }
    71  func (m *ConfigEnvelope) XXX_DiscardUnknown() {
    72  	xxx_messageInfo_ConfigEnvelope.DiscardUnknown(m)
    73  }
    74  
    75  var xxx_messageInfo_ConfigEnvelope proto.InternalMessageInfo
    76  
    77  func (m *ConfigEnvelope) GetConfig() *Config {
    78  	if m != nil {
    79  		return m.Config
    80  	}
    81  	return nil
    82  }
    83  
    84  func (m *ConfigEnvelope) GetLastUpdate() *Envelope {
    85  	if m != nil {
    86  		return m.LastUpdate
    87  	}
    88  	return nil
    89  }
    90  
    91  // Config represents the config for a particular channel
    92  type Config struct {
    93  	Sequence             uint64       `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"`
    94  	ChannelGroup         *ConfigGroup `protobuf:"bytes,2,opt,name=channel_group,json=channelGroup,proto3" json:"channel_group,omitempty"`
    95  	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
    96  	XXX_unrecognized     []byte       `json:"-"`
    97  	XXX_sizecache        int32        `json:"-"`
    98  }
    99  
   100  func (m *Config) Reset()         { *m = Config{} }
   101  func (m *Config) String() string { return proto.CompactTextString(m) }
   102  func (*Config) ProtoMessage()    {}
   103  func (*Config) Descriptor() ([]byte, []int) {
   104  	return fileDescriptor_5190bbf196fa7499, []int{1}
   105  }
   106  
   107  func (m *Config) XXX_Unmarshal(b []byte) error {
   108  	return xxx_messageInfo_Config.Unmarshal(m, b)
   109  }
   110  func (m *Config) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   111  	return xxx_messageInfo_Config.Marshal(b, m, deterministic)
   112  }
   113  func (m *Config) XXX_Merge(src proto.Message) {
   114  	xxx_messageInfo_Config.Merge(m, src)
   115  }
   116  func (m *Config) XXX_Size() int {
   117  	return xxx_messageInfo_Config.Size(m)
   118  }
   119  func (m *Config) XXX_DiscardUnknown() {
   120  	xxx_messageInfo_Config.DiscardUnknown(m)
   121  }
   122  
   123  var xxx_messageInfo_Config proto.InternalMessageInfo
   124  
   125  func (m *Config) GetSequence() uint64 {
   126  	if m != nil {
   127  		return m.Sequence
   128  	}
   129  	return 0
   130  }
   131  
   132  func (m *Config) GetChannelGroup() *ConfigGroup {
   133  	if m != nil {
   134  		return m.ChannelGroup
   135  	}
   136  	return nil
   137  }
   138  
   139  type ConfigUpdateEnvelope struct {
   140  	ConfigUpdate         []byte             `protobuf:"bytes,1,opt,name=config_update,json=configUpdate,proto3" json:"config_update,omitempty"`
   141  	Signatures           []*ConfigSignature `protobuf:"bytes,2,rep,name=signatures,proto3" json:"signatures,omitempty"`
   142  	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
   143  	XXX_unrecognized     []byte             `json:"-"`
   144  	XXX_sizecache        int32              `json:"-"`
   145  }
   146  
   147  func (m *ConfigUpdateEnvelope) Reset()         { *m = ConfigUpdateEnvelope{} }
   148  func (m *ConfigUpdateEnvelope) String() string { return proto.CompactTextString(m) }
   149  func (*ConfigUpdateEnvelope) ProtoMessage()    {}
   150  func (*ConfigUpdateEnvelope) Descriptor() ([]byte, []int) {
   151  	return fileDescriptor_5190bbf196fa7499, []int{2}
   152  }
   153  
   154  func (m *ConfigUpdateEnvelope) XXX_Unmarshal(b []byte) error {
   155  	return xxx_messageInfo_ConfigUpdateEnvelope.Unmarshal(m, b)
   156  }
   157  func (m *ConfigUpdateEnvelope) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   158  	return xxx_messageInfo_ConfigUpdateEnvelope.Marshal(b, m, deterministic)
   159  }
   160  func (m *ConfigUpdateEnvelope) XXX_Merge(src proto.Message) {
   161  	xxx_messageInfo_ConfigUpdateEnvelope.Merge(m, src)
   162  }
   163  func (m *ConfigUpdateEnvelope) XXX_Size() int {
   164  	return xxx_messageInfo_ConfigUpdateEnvelope.Size(m)
   165  }
   166  func (m *ConfigUpdateEnvelope) XXX_DiscardUnknown() {
   167  	xxx_messageInfo_ConfigUpdateEnvelope.DiscardUnknown(m)
   168  }
   169  
   170  var xxx_messageInfo_ConfigUpdateEnvelope proto.InternalMessageInfo
   171  
   172  func (m *ConfigUpdateEnvelope) GetConfigUpdate() []byte {
   173  	if m != nil {
   174  		return m.ConfigUpdate
   175  	}
   176  	return nil
   177  }
   178  
   179  func (m *ConfigUpdateEnvelope) GetSignatures() []*ConfigSignature {
   180  	if m != nil {
   181  		return m.Signatures
   182  	}
   183  	return nil
   184  }
   185  
   186  // ConfigUpdate is used to submit a subset of config and to have the orderer apply to Config
   187  // it is always submitted inside a ConfigUpdateEnvelope which allows the addition of signatures
   188  // resulting in a new total configuration.  The update is applied as follows:
   189  //  1. The versions from all of the elements in the read_set is verified against the versions in the existing config.
   190  //     If there is a mismatch in the read versions, then the config update fails and is rejected.
   191  //  2. Any elements in the write_set with the same version as the read_set are ignored.
   192  //  3. The corresponding mod_policy for every remaining element in the write_set is collected.
   193  //  4. Each policy is checked against the signatures from the ConfigUpdateEnvelope, any failing to verify are rejected
   194  //  5. The write_set is applied to the Config and the ConfigGroupSchema verifies that the updates were legal
   195  type ConfigUpdate struct {
   196  	ChannelId            string            `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
   197  	ReadSet              *ConfigGroup      `protobuf:"bytes,2,opt,name=read_set,json=readSet,proto3" json:"read_set,omitempty"`
   198  	WriteSet             *ConfigGroup      `protobuf:"bytes,3,opt,name=write_set,json=writeSet,proto3" json:"write_set,omitempty"`
   199  	IsolatedData         map[string][]byte `protobuf:"bytes,5,rep,name=isolated_data,json=isolatedData,proto3" json:"isolated_data,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   200  	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
   201  	XXX_unrecognized     []byte            `json:"-"`
   202  	XXX_sizecache        int32             `json:"-"`
   203  }
   204  
   205  func (m *ConfigUpdate) Reset()         { *m = ConfigUpdate{} }
   206  func (m *ConfigUpdate) String() string { return proto.CompactTextString(m) }
   207  func (*ConfigUpdate) ProtoMessage()    {}
   208  func (*ConfigUpdate) Descriptor() ([]byte, []int) {
   209  	return fileDescriptor_5190bbf196fa7499, []int{3}
   210  }
   211  
   212  func (m *ConfigUpdate) XXX_Unmarshal(b []byte) error {
   213  	return xxx_messageInfo_ConfigUpdate.Unmarshal(m, b)
   214  }
   215  func (m *ConfigUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   216  	return xxx_messageInfo_ConfigUpdate.Marshal(b, m, deterministic)
   217  }
   218  func (m *ConfigUpdate) XXX_Merge(src proto.Message) {
   219  	xxx_messageInfo_ConfigUpdate.Merge(m, src)
   220  }
   221  func (m *ConfigUpdate) XXX_Size() int {
   222  	return xxx_messageInfo_ConfigUpdate.Size(m)
   223  }
   224  func (m *ConfigUpdate) XXX_DiscardUnknown() {
   225  	xxx_messageInfo_ConfigUpdate.DiscardUnknown(m)
   226  }
   227  
   228  var xxx_messageInfo_ConfigUpdate proto.InternalMessageInfo
   229  
   230  func (m *ConfigUpdate) GetChannelId() string {
   231  	if m != nil {
   232  		return m.ChannelId
   233  	}
   234  	return ""
   235  }
   236  
   237  func (m *ConfigUpdate) GetReadSet() *ConfigGroup {
   238  	if m != nil {
   239  		return m.ReadSet
   240  	}
   241  	return nil
   242  }
   243  
   244  func (m *ConfigUpdate) GetWriteSet() *ConfigGroup {
   245  	if m != nil {
   246  		return m.WriteSet
   247  	}
   248  	return nil
   249  }
   250  
   251  func (m *ConfigUpdate) GetIsolatedData() map[string][]byte {
   252  	if m != nil {
   253  		return m.IsolatedData
   254  	}
   255  	return nil
   256  }
   257  
   258  // ConfigGroup is the hierarchical data structure for holding config
   259  type ConfigGroup struct {
   260  	Version              uint64                   `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
   261  	Groups               map[string]*ConfigGroup  `protobuf:"bytes,2,rep,name=groups,proto3" json:"groups,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   262  	Values               map[string]*ConfigValue  `protobuf:"bytes,3,rep,name=values,proto3" json:"values,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   263  	Policies             map[string]*ConfigPolicy `protobuf:"bytes,4,rep,name=policies,proto3" json:"policies,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   264  	ModPolicy            string                   `protobuf:"bytes,5,opt,name=mod_policy,json=modPolicy,proto3" json:"mod_policy,omitempty"`
   265  	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
   266  	XXX_unrecognized     []byte                   `json:"-"`
   267  	XXX_sizecache        int32                    `json:"-"`
   268  }
   269  
   270  func (m *ConfigGroup) Reset()         { *m = ConfigGroup{} }
   271  func (m *ConfigGroup) String() string { return proto.CompactTextString(m) }
   272  func (*ConfigGroup) ProtoMessage()    {}
   273  func (*ConfigGroup) Descriptor() ([]byte, []int) {
   274  	return fileDescriptor_5190bbf196fa7499, []int{4}
   275  }
   276  
   277  func (m *ConfigGroup) XXX_Unmarshal(b []byte) error {
   278  	return xxx_messageInfo_ConfigGroup.Unmarshal(m, b)
   279  }
   280  func (m *ConfigGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   281  	return xxx_messageInfo_ConfigGroup.Marshal(b, m, deterministic)
   282  }
   283  func (m *ConfigGroup) XXX_Merge(src proto.Message) {
   284  	xxx_messageInfo_ConfigGroup.Merge(m, src)
   285  }
   286  func (m *ConfigGroup) XXX_Size() int {
   287  	return xxx_messageInfo_ConfigGroup.Size(m)
   288  }
   289  func (m *ConfigGroup) XXX_DiscardUnknown() {
   290  	xxx_messageInfo_ConfigGroup.DiscardUnknown(m)
   291  }
   292  
   293  var xxx_messageInfo_ConfigGroup proto.InternalMessageInfo
   294  
   295  func (m *ConfigGroup) GetVersion() uint64 {
   296  	if m != nil {
   297  		return m.Version
   298  	}
   299  	return 0
   300  }
   301  
   302  func (m *ConfigGroup) GetGroups() map[string]*ConfigGroup {
   303  	if m != nil {
   304  		return m.Groups
   305  	}
   306  	return nil
   307  }
   308  
   309  func (m *ConfigGroup) GetValues() map[string]*ConfigValue {
   310  	if m != nil {
   311  		return m.Values
   312  	}
   313  	return nil
   314  }
   315  
   316  func (m *ConfigGroup) GetPolicies() map[string]*ConfigPolicy {
   317  	if m != nil {
   318  		return m.Policies
   319  	}
   320  	return nil
   321  }
   322  
   323  func (m *ConfigGroup) GetModPolicy() string {
   324  	if m != nil {
   325  		return m.ModPolicy
   326  	}
   327  	return ""
   328  }
   329  
   330  // ConfigValue represents an individual piece of config data
   331  type ConfigValue struct {
   332  	Version              uint64   `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
   333  	Value                []byte   `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
   334  	ModPolicy            string   `protobuf:"bytes,3,opt,name=mod_policy,json=modPolicy,proto3" json:"mod_policy,omitempty"`
   335  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   336  	XXX_unrecognized     []byte   `json:"-"`
   337  	XXX_sizecache        int32    `json:"-"`
   338  }
   339  
   340  func (m *ConfigValue) Reset()         { *m = ConfigValue{} }
   341  func (m *ConfigValue) String() string { return proto.CompactTextString(m) }
   342  func (*ConfigValue) ProtoMessage()    {}
   343  func (*ConfigValue) Descriptor() ([]byte, []int) {
   344  	return fileDescriptor_5190bbf196fa7499, []int{5}
   345  }
   346  
   347  func (m *ConfigValue) XXX_Unmarshal(b []byte) error {
   348  	return xxx_messageInfo_ConfigValue.Unmarshal(m, b)
   349  }
   350  func (m *ConfigValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   351  	return xxx_messageInfo_ConfigValue.Marshal(b, m, deterministic)
   352  }
   353  func (m *ConfigValue) XXX_Merge(src proto.Message) {
   354  	xxx_messageInfo_ConfigValue.Merge(m, src)
   355  }
   356  func (m *ConfigValue) XXX_Size() int {
   357  	return xxx_messageInfo_ConfigValue.Size(m)
   358  }
   359  func (m *ConfigValue) XXX_DiscardUnknown() {
   360  	xxx_messageInfo_ConfigValue.DiscardUnknown(m)
   361  }
   362  
   363  var xxx_messageInfo_ConfigValue proto.InternalMessageInfo
   364  
   365  func (m *ConfigValue) GetVersion() uint64 {
   366  	if m != nil {
   367  		return m.Version
   368  	}
   369  	return 0
   370  }
   371  
   372  func (m *ConfigValue) GetValue() []byte {
   373  	if m != nil {
   374  		return m.Value
   375  	}
   376  	return nil
   377  }
   378  
   379  func (m *ConfigValue) GetModPolicy() string {
   380  	if m != nil {
   381  		return m.ModPolicy
   382  	}
   383  	return ""
   384  }
   385  
   386  type ConfigPolicy struct {
   387  	Version              uint64   `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
   388  	Policy               *Policy  `protobuf:"bytes,2,opt,name=policy,proto3" json:"policy,omitempty"`
   389  	ModPolicy            string   `protobuf:"bytes,3,opt,name=mod_policy,json=modPolicy,proto3" json:"mod_policy,omitempty"`
   390  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   391  	XXX_unrecognized     []byte   `json:"-"`
   392  	XXX_sizecache        int32    `json:"-"`
   393  }
   394  
   395  func (m *ConfigPolicy) Reset()         { *m = ConfigPolicy{} }
   396  func (m *ConfigPolicy) String() string { return proto.CompactTextString(m) }
   397  func (*ConfigPolicy) ProtoMessage()    {}
   398  func (*ConfigPolicy) Descriptor() ([]byte, []int) {
   399  	return fileDescriptor_5190bbf196fa7499, []int{6}
   400  }
   401  
   402  func (m *ConfigPolicy) XXX_Unmarshal(b []byte) error {
   403  	return xxx_messageInfo_ConfigPolicy.Unmarshal(m, b)
   404  }
   405  func (m *ConfigPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   406  	return xxx_messageInfo_ConfigPolicy.Marshal(b, m, deterministic)
   407  }
   408  func (m *ConfigPolicy) XXX_Merge(src proto.Message) {
   409  	xxx_messageInfo_ConfigPolicy.Merge(m, src)
   410  }
   411  func (m *ConfigPolicy) XXX_Size() int {
   412  	return xxx_messageInfo_ConfigPolicy.Size(m)
   413  }
   414  func (m *ConfigPolicy) XXX_DiscardUnknown() {
   415  	xxx_messageInfo_ConfigPolicy.DiscardUnknown(m)
   416  }
   417  
   418  var xxx_messageInfo_ConfigPolicy proto.InternalMessageInfo
   419  
   420  func (m *ConfigPolicy) GetVersion() uint64 {
   421  	if m != nil {
   422  		return m.Version
   423  	}
   424  	return 0
   425  }
   426  
   427  func (m *ConfigPolicy) GetPolicy() *Policy {
   428  	if m != nil {
   429  		return m.Policy
   430  	}
   431  	return nil
   432  }
   433  
   434  func (m *ConfigPolicy) GetModPolicy() string {
   435  	if m != nil {
   436  		return m.ModPolicy
   437  	}
   438  	return ""
   439  }
   440  
   441  type ConfigSignature struct {
   442  	SignatureHeader      []byte   `protobuf:"bytes,1,opt,name=signature_header,json=signatureHeader,proto3" json:"signature_header,omitempty"`
   443  	Signature            []byte   `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
   444  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   445  	XXX_unrecognized     []byte   `json:"-"`
   446  	XXX_sizecache        int32    `json:"-"`
   447  }
   448  
   449  func (m *ConfigSignature) Reset()         { *m = ConfigSignature{} }
   450  func (m *ConfigSignature) String() string { return proto.CompactTextString(m) }
   451  func (*ConfigSignature) ProtoMessage()    {}
   452  func (*ConfigSignature) Descriptor() ([]byte, []int) {
   453  	return fileDescriptor_5190bbf196fa7499, []int{7}
   454  }
   455  
   456  func (m *ConfigSignature) XXX_Unmarshal(b []byte) error {
   457  	return xxx_messageInfo_ConfigSignature.Unmarshal(m, b)
   458  }
   459  func (m *ConfigSignature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   460  	return xxx_messageInfo_ConfigSignature.Marshal(b, m, deterministic)
   461  }
   462  func (m *ConfigSignature) XXX_Merge(src proto.Message) {
   463  	xxx_messageInfo_ConfigSignature.Merge(m, src)
   464  }
   465  func (m *ConfigSignature) XXX_Size() int {
   466  	return xxx_messageInfo_ConfigSignature.Size(m)
   467  }
   468  func (m *ConfigSignature) XXX_DiscardUnknown() {
   469  	xxx_messageInfo_ConfigSignature.DiscardUnknown(m)
   470  }
   471  
   472  var xxx_messageInfo_ConfigSignature proto.InternalMessageInfo
   473  
   474  func (m *ConfigSignature) GetSignatureHeader() []byte {
   475  	if m != nil {
   476  		return m.SignatureHeader
   477  	}
   478  	return nil
   479  }
   480  
   481  func (m *ConfigSignature) GetSignature() []byte {
   482  	if m != nil {
   483  		return m.Signature
   484  	}
   485  	return nil
   486  }
   487  
   488  func init() {
   489  	proto.RegisterType((*ConfigEnvelope)(nil), "common.ConfigEnvelope")
   490  	proto.RegisterType((*Config)(nil), "common.Config")
   491  	proto.RegisterType((*ConfigUpdateEnvelope)(nil), "common.ConfigUpdateEnvelope")
   492  	proto.RegisterType((*ConfigUpdate)(nil), "common.ConfigUpdate")
   493  	proto.RegisterMapType((map[string][]byte)(nil), "common.ConfigUpdate.IsolatedDataEntry")
   494  	proto.RegisterType((*ConfigGroup)(nil), "common.ConfigGroup")
   495  	proto.RegisterMapType((map[string]*ConfigGroup)(nil), "common.ConfigGroup.GroupsEntry")
   496  	proto.RegisterMapType((map[string]*ConfigPolicy)(nil), "common.ConfigGroup.PoliciesEntry")
   497  	proto.RegisterMapType((map[string]*ConfigValue)(nil), "common.ConfigGroup.ValuesEntry")
   498  	proto.RegisterType((*ConfigValue)(nil), "common.ConfigValue")
   499  	proto.RegisterType((*ConfigPolicy)(nil), "common.ConfigPolicy")
   500  	proto.RegisterType((*ConfigSignature)(nil), "common.ConfigSignature")
   501  }
   502  
   503  func init() { proto.RegisterFile("common/configtx.proto", fileDescriptor_5190bbf196fa7499) }
   504  
   505  var fileDescriptor_5190bbf196fa7499 = []byte{
   506  	// 645 bytes of a gzipped FileDescriptorProto
   507  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0x61, 0x4f, 0xd4, 0x4c,
   508  	0x10, 0x0e, 0xd7, 0x5e, 0xe9, 0xcd, 0xf5, 0xe0, 0xde, 0x85, 0x37, 0x36, 0x17, 0x8d, 0x58, 0x0d,
   509  	0x01, 0x13, 0x8a, 0xe2, 0x07, 0x88, 0x89, 0x31, 0x51, 0x89, 0x82, 0x89, 0xd1, 0x12, 0xf9, 0x40,
   510  	0x4c, 0x9a, 0xa5, 0x5d, 0x7a, 0x95, 0x5e, 0xb7, 0x6e, 0xb7, 0x68, 0x7f, 0x92, 0x7f, 0xcd, 0x5f,
   511  	0x61, 0xba, 0xbb, 0x2d, 0x2d, 0x1e, 0x67, 0xfc, 0x02, 0xcc, 0xcc, 0xf3, 0x3c, 0x33, 0xcf, 0xce,
   512  	0x76, 0x81, 0xff, 0x03, 0x3a, 0x9b, 0xd1, 0x74, 0x37, 0xa0, 0xe9, 0x45, 0x1c, 0xf1, 0x1f, 0x6e,
   513  	0xc6, 0x28, 0xa7, 0xc8, 0x90, 0xe9, 0xc9, 0x5a, 0x53, 0xae, 0x7e, 0xc9, 0xe2, 0xa4, 0xe6, 0x64,
   514  	0x34, 0x89, 0x83, 0x98, 0xe4, 0x32, 0xed, 0x5c, 0xc2, 0xca, 0x6b, 0xa1, 0x72, 0x98, 0x5e, 0x91,
   515  	0x84, 0x66, 0x04, 0x6d, 0x82, 0x21, 0x75, 0xed, 0xa5, 0x8d, 0xa5, 0xad, 0xe1, 0xde, 0x8a, 0xab,
   516  	0x74, 0x24, 0xce, 0x53, 0x55, 0xf4, 0x14, 0x86, 0x09, 0xce, 0xb9, 0x5f, 0x64, 0x21, 0xe6, 0xc4,
   517  	0xee, 0x09, 0xf0, 0xb8, 0x06, 0xd7, 0x72, 0x1e, 0x54, 0xa0, 0xcf, 0x02, 0xe3, 0x7c, 0x05, 0x43,
   518  	0x8a, 0xa0, 0x09, 0x98, 0x39, 0xf9, 0x56, 0x90, 0x34, 0x20, 0xa2, 0x8d, 0xee, 0x35, 0x31, 0x3a,
   519  	0x80, 0x51, 0x30, 0xc5, 0x69, 0x4a, 0x12, 0x3f, 0x62, 0xb4, 0xc8, 0x94, 0xf4, 0x5a, 0x77, 0x8e,
   520  	0xb7, 0x55, 0xc9, 0xb3, 0x14, 0x52, 0x44, 0xc7, 0xba, 0xa9, 0x8d, 0x75, 0x4f, 0xe7, 0x65, 0x46,
   521  	0x1c, 0x0e, 0xeb, 0x12, 0x28, 0x7b, 0x37, 0xf6, 0x1e, 0xc2, 0x48, 0x1a, 0xa8, 0x07, 0xaf, 0xda,
   522  	0x5b, 0x9e, 0x15, 0xb4, 0xc0, 0x68, 0x1f, 0x20, 0x8f, 0xa3, 0x14, 0xf3, 0x82, 0x91, 0xdc, 0xee,
   523  	0x6d, 0x68, 0x5b, 0xc3, 0xbd, 0x3b, 0xdd, 0xfe, 0x27, 0x75, 0xdd, 0x6b, 0x41, 0x9d, 0x9f, 0x3d,
   524  	0xb0, 0xda, 0x6d, 0xd1, 0x3d, 0x80, 0xda, 0x4c, 0x1c, 0x8a, 0x5e, 0x03, 0x6f, 0xa0, 0x32, 0x47,
   525  	0x21, 0x72, 0xc1, 0x64, 0x04, 0x87, 0x7e, 0x4e, 0xf8, 0x22, 0x9b, 0xcb, 0x15, 0xe8, 0x84, 0x70,
   526  	0xf4, 0x04, 0x06, 0xdf, 0x59, 0xcc, 0x89, 0x20, 0x68, 0xb7, 0x13, 0x4c, 0x81, 0xaa, 0x18, 0xef,
   527  	0x61, 0x14, 0xe7, 0x34, 0xc1, 0x9c, 0x84, 0x7e, 0x88, 0x39, 0xb6, 0xfb, 0xc2, 0xcd, 0x66, 0x97,
   528  	0x25, 0xa7, 0x75, 0x8f, 0x14, 0xf2, 0x0d, 0xe6, 0xf8, 0x30, 0xe5, 0xac, 0xf4, 0xac, 0xb8, 0x95,
   529  	0x9a, 0xbc, 0x84, 0xff, 0xfe, 0x80, 0xa0, 0x31, 0x68, 0x97, 0xa4, 0x54, 0xde, 0xaa, 0x3f, 0xd1,
   530  	0x3a, 0xf4, 0xaf, 0x70, 0x52, 0xc8, 0x4b, 0x61, 0x79, 0x32, 0x78, 0xde, 0x3b, 0x58, 0x3a, 0xd6,
   531  	0x4d, 0x7d, 0xdc, 0x57, 0x1b, 0xfa, 0xa5, 0xc1, 0xb0, 0x35, 0x33, 0xb2, 0x61, 0xf9, 0x8a, 0xb0,
   532  	0x3c, 0xa6, 0xa9, 0xba, 0x12, 0x75, 0x88, 0xf6, 0xc1, 0x10, 0x37, 0xa1, 0x5e, 0xc5, 0xfd, 0x39,
   533  	0x96, 0x5d, 0xf1, 0x33, 0x97, 0x53, 0x2b, 0x78, 0x45, 0x14, 0xbd, 0x73, 0x5b, 0xbb, 0x9d, 0x78,
   534  	0x2a, 0x10, 0x8a, 0x28, 0xe1, 0xe8, 0x05, 0x98, 0xf5, 0x87, 0x62, 0xeb, 0x82, 0xfa, 0x60, 0x1e,
   535  	0xf5, 0xa3, 0xc2, 0x48, 0x72, 0x43, 0xa9, 0xb6, 0x3e, 0xa3, 0xa1, 0x2f, 0xe2, 0xd2, 0xee, 0xcb,
   536  	0xad, 0xcf, 0x68, 0x28, 0xf0, 0xe5, 0xe4, 0x03, 0x0c, 0x5b, 0xd3, 0xce, 0x39, 0xc0, 0xed, 0xf6,
   537  	0x01, 0xde, 0xb2, 0xe2, 0xeb, 0x53, 0xad, 0xf4, 0x5a, 0x26, 0xfe, 0x59, 0x4f, 0x70, 0xdb, 0x7a,
   538  	0x9f, 0x60, 0xd4, 0x71, 0x36, 0x47, 0xf1, 0x71, 0x57, 0x71, 0xbd, 0xab, 0x28, 0x7d, 0xb6, 0x24,
   539  	0x9d, 0x2f, 0xf5, 0xae, 0x45, 0xb3, 0x05, 0xbb, 0x9e, 0x7b, 0x77, 0x6e, 0x1c, 0xa8, 0x76, 0xe3,
   540  	0x40, 0x1d, 0x5a, 0x7f, 0x75, 0x32, 0x5e, 0x20, 0xbf, 0x09, 0x86, 0x12, 0xe9, 0x75, 0x5f, 0x37,
   541  	0x35, 0xb2, 0xaa, 0xfe, 0xad, 0xe1, 0x19, 0xac, 0xde, 0x78, 0x06, 0xd0, 0x36, 0x8c, 0x9b, 0x87,
   542  	0xc0, 0x9f, 0x12, 0x1c, 0x12, 0xa6, 0xde, 0x96, 0xd5, 0x26, 0xff, 0x4e, 0xa4, 0xd1, 0x5d, 0x18,
   543  	0x34, 0x29, 0xe5, 0xf3, 0x3a, 0xf1, 0xea, 0x14, 0x1e, 0x51, 0x16, 0xb9, 0xd3, 0x32, 0x23, 0x2c,
   544  	0x21, 0x61, 0x44, 0x98, 0x7b, 0x81, 0xcf, 0x59, 0x1c, 0xc8, 0x27, 0x3b, 0x57, 0x13, 0x9f, 0xb9,
   545  	0x51, 0xcc, 0xa7, 0xc5, 0x79, 0x15, 0xee, 0xb6, 0xc0, 0xbb, 0x12, 0xbc, 0x23, 0xc1, 0x3b, 0x11,
   546  	0x55, 0xff, 0x07, 0xce, 0x0d, 0x91, 0x79, 0xf6, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x4e, 0x9b, 0x6e,
   547  	0xa7, 0x3e, 0x06, 0x00, 0x00,
   548  }