1. 28 Jul, 2017 1 commit
    • Jason Yellick's avatar
      [FAB-5525] Fix configtx memory allocation bug · b3c14300
      Jason Yellick authored
      
      
      The configtx code uses an 'append(...)' against a slice, and records the
      new slice address when computing the config map.  Through sheer dumb
      luck, this code works for config groups which are only nested 2 levels
      deep, because the append call triggers a true new memory allocation.
      However, for config groups 3 levels deep (such as consortium groups),
      the append call actually re-uses the underlying memory for the slice.
      
      This causes the path to be corrupted internally for the consortium group
      items, and cause the wrong policy to be resolved when checking for a
      policy which has been specified relatively.
      
      This fix manually allocates new memory, copies it, and then appends the
      element.
      
      Change-Id: I0f4df619e006cdfebba60173156bda597d42a544
      Signed-off-by: default avatarJason Yellick <jyellick@us.ibm.com>
      b3c14300
  2. 13 Jun, 2017 1 commit
    • Jason Yellick's avatar
      [FAB-2487] Restrict channelIDs to CouchDB/Kafka · 94d7e9af
      Jason Yellick authored
      
      
      The current channel ID checks are to ensure that the IDs comply with the
      Kafka topic naming restrictions.
      
      However, it is possible that two different channel IDs such as TestChain
      and testchain would both map to the same couchdb name, causing an
      intersection and failure.
      
      This CR changes the logic to test for the intersection of the
      restrictions on CouchDB and Kafka.  In particular, the logic now
      requires that Channel IDs:
      
      1. Contain only lower case ASCII alphanumerics, dots '.' and dashes '-'
      2. Are shorter than 250 characters.
      3. Start with a letter
      
      Note that this is not a true intersection, because the ledger must still
      map '.' to '_' for CouchDB, but this mapping is bijective so is safe and
      free from collisions.
      
      Because the configuration key name checking was leveraging this same
      code path, the existing function was duplicated, to leave the same logic
      checks in place for the config.
      
      Although the code diff is relatively high, this is largely due to the
      copying and renaming.
      
      Change-Id: Ie957cf9b8a075233bfcc5d3748e1a91e795ff067
      Signed-off-by: default avatarJason Yellick <jyellick@us.ibm.com>
      94d7e9af
  3. 07 May, 2017 1 commit
  4. 26 Apr, 2017 1 commit
  5. 28 Mar, 2017 1 commit
  6. 06 Mar, 2017 1 commit
  7. 14 Feb, 2017 2 commits