Add participants to account info; passphrase for account creation is optional for Dirk

This commit is contained in:
Jim McDonald
2020-08-30 09:38:21 +01:00
parent e64a46f126
commit e84b600d5d
4 changed files with 22 additions and 1 deletions

View File

@@ -61,7 +61,7 @@ In quiet mode this will return 0 if the account is created successfully, otherwi
outputIf(debug, fmt.Sprintf("Distributed account has %d/%d threshold", viper.GetUint32("signing-threshold"), viper.GetUint32("participants")))
ctx, cancel := context.WithTimeout(context.Background(), viper.GetDuration("timeout"))
defer cancel()
account, err = distributedCreator.CreateDistributedAccount(ctx, accountName, viper.GetUint32("participants"), viper.GetUint32("signing-threshold"), []byte(getPassphrase()))
account, err = distributedCreator.CreateDistributedAccount(ctx, accountName, viper.GetUint32("participants"), viper.GetUint32("signing-threshold"), []byte(getOptionalPassphrase()))
} else {
if viper.GetString("path") != "" {
// Want a pathed account

View File

@@ -58,6 +58,13 @@ In quiet mode this will return 0 if the account exists, otherwise 1.`,
if distributedAccount, ok := account.(e2wtypes.DistributedAccount); ok {
fmt.Printf("Composite public key: %#x\n", distributedAccount.CompositePublicKey().Marshal())
fmt.Printf("Signing threshold: %d/%d\n", distributedAccount.SigningThreshold(), len(distributedAccount.Participants()))
if verbose {
fmt.Printf("Participants:\n")
for k, v := range distributedAccount.Participants() {
fmt.Printf(" %d: %s\n", k, v)
}
}
withdrawalPubKey = distributedAccount.CompositePublicKey()
}
if verbose {

View File

@@ -37,3 +37,13 @@ func getPassphrase() string {
assert(len(passphrases) == 1, "multiple passphrases supplied; cannot continue")
return passphrases[0]
}
// getOptionalPassphrase fetches the passphrase if supplied by the user.
func getOptionalPassphrase() string {
passphrases := getPassphrases()
if len(passphrases) == 0 {
return ""
}
assert(len(passphrases) == 1, "multiple passphrases supplied; cannot continue")
return passphrases[0]
}