Skip to content
This repository was archived by the owner on Mar 30, 2018. It is now read-only.

Commit 7206c1b

Browse files
David Gengsrderson
David Geng
authored andcommitted
Fix issue 2168 (#2205)
1 parent 2cd1383 commit 7206c1b

File tree

11 files changed

+28
-10
lines changed

11 files changed

+28
-10
lines changed

core/chaincode/exectransaction_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ func initMemSrvc() (net.Listener, error) {
5757
finitMemSrvc(nil)
5858

5959
ca.LogInit(ioutil.Discard, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
60+
ca.CacheConfiguration() // Cache configuration
6061

6162
aca := ca.NewACA()
6263
eca := ca.NewECA()

core/crypto/crypto_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1512,6 +1512,7 @@ func setup() {
15121512

15131513
func initPKI() {
15141514
ca.LogInit(ioutil.Discard, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
1515+
ca.CacheConfiguration() // Need cache the configuration first
15151516
aca = ca.NewACA()
15161517
eca = ca.NewECA()
15171518
tca = ca.NewTCA(eca)

examples/chaincode/go/asset_management02/asset_management02_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -527,7 +527,7 @@ func setup() {
527527

528528
func initMembershipSrvc() {
529529
ca.LogInit(ioutil.Discard, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
530-
530+
ca.CacheConfiguration() // Cache configuration
531531
aca = ca.NewACA()
532532
eca = ca.NewECA()
533533
tca = ca.NewTCA(eca)

examples/chaincode/go/asset_management_with_roles/asset_management_with_roles_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -365,7 +365,7 @@ func setup() {
365365

366366
func initMembershipSrvc() {
367367
ca.LogInit(ioutil.Discard, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
368-
368+
ca.CacheConfiguration() // Cache configuration
369369
aca = ca.NewACA()
370370
eca = ca.NewECA()
371371
tca = ca.NewTCA(eca)

examples/chaincode/go/rbac_tcerts_no_attrs/rbac_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -441,7 +441,7 @@ func setup() {
441441

442442
func initMemershipServices() {
443443
ca.LogInit(ioutil.Discard, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
444-
444+
ca.CacheConfiguration() // Cache configuration
445445
eca = ca.NewECA()
446446
tca = ca.NewTCA(eca)
447447
tlsca = ca.NewTLSCA(eca)

membersrvc/ca/ca.go

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import (
2929
"io/ioutil"
3030
"math/big"
3131
"os"
32+
"path/filepath"
3233
"strconv"
3334
"strings"
3435
"sync"
@@ -73,7 +74,11 @@ type AffiliationGroup struct {
7374
}
7475

7576
var (
76-
mutex = &sync.Mutex{}
77+
mutex = &sync.Mutex{}
78+
caOrganization string
79+
caCountry string
80+
rootPath string
81+
caDir string
7782
)
7883

7984
// NewCertificateSpec creates a new certificate spec
@@ -118,6 +123,13 @@ func NewDefaultCertificateSpecWithCommonName(id string, commonName string, pub i
118123
return NewDefaultPeriodCertificateSpecWithCommonName(id, commonName, serialNumber, pub, usage, opt...)
119124
}
120125

126+
func CacheConfiguration() {
127+
caOrganization = viper.GetString("pki.ca.subject.organization")
128+
caCountry = viper.GetString("pki.ca.subject.country")
129+
rootPath = viper.GetString("server.rootpath")
130+
caDir = viper.GetString("server.cadir")
131+
}
132+
121133
// GetID returns the spec's ID field/value
122134
//
123135
func (spec *CertificateSpec) GetID() string {
@@ -163,13 +175,13 @@ func (spec *CertificateSpec) GetNotAfter() *time.Time {
163175
// GetOrganization returns the spec's Organization field/value
164176
//
165177
func (spec *CertificateSpec) GetOrganization() string {
166-
return viper.GetString("pki.ca.subject.organization")
178+
return caOrganization
167179
}
168180

169181
// GetCountry returns the spec's Country field/value
170182
//
171183
func (spec *CertificateSpec) GetCountry() string {
172-
return viper.GetString("pki.ca.subject.country")
184+
return caCountry
173185
}
174186

175187
// GetSubjectKeyID returns the spec's subject KeyID
@@ -209,7 +221,7 @@ func initializeCommonTables(db *sql.DB) error {
209221
// NewCA sets up a new CA.
210222
func NewCA(name string, initTables TableInitializer) *CA {
211223
ca := new(CA)
212-
ca.path = viper.GetString("server.rootpath") + "/" + viper.GetString("server.cadir")
224+
ca.path = filepath.Join(rootPath, caDir)
213225

214226
if _, err := os.Stat(ca.path); err != nil {
215227
Info.Println("Fresh start; creating databases, key pairs, and certificates.")

membersrvc/ca/ca_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func TestNewCA(t *testing.T) {
4646

4747
//initialize logging to avoid panics in the current code
4848
LogInit(os.Stdout, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
49-
49+
CacheConfiguration() // Cache configuration
5050
//Create new CA
5151
ca := NewCA(name, initializeTables)
5252
if ca == nil {

membersrvc/ca/membersrvc_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ func setupTestConfig() {
7070

7171
func initPKI() {
7272
LogInit(ioutil.Discard, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
73+
CacheConfiguration() // Cache configuration
7374
aca = NewACA()
7475
eca = NewECA()
7576
tca = NewTCA(eca)

membersrvc/ca/tca_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ func initTCA() (*TCA, error) {
157157

158158
//initialize logging to avoid panics in the current code
159159
LogInit(os.Stdout, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
160-
160+
CacheConfiguration() // Cache configuration
161161
eca := NewECA()
162162
if eca == nil {
163163
return nil, fmt.Errorf("Could not create a new ECA")

membersrvc/ca/tlsca_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func TestTLS(t *testing.T) {
6464

6565
func startTLSCA(t *testing.T) {
6666
LogInit(ioutil.Discard, os.Stdout, os.Stdout, os.Stderr, os.Stdout)
67-
67+
CacheConfiguration() // Cache configuration
6868
ecaS = NewECA()
6969
tlscaS = NewTLSCA(ecaS)
7070

membersrvc/server.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,9 @@ func main() {
8888
}
8989

9090
ca.LogInit(iotrace, ioinfo, iowarning, ioerror, iopanic)
91+
// cache configure
92+
ca.CacheConfiguration()
93+
9194
ca.Info.Println("CA Server (" + viper.GetString("server.version") + ")")
9295

9396
aca := ca.NewACA()

0 commit comments

Comments
 (0)