Skip to content

Commit

Permalink
support certfp import
Browse files Browse the repository at this point in the history
  • Loading branch information
slingamn committed Dec 4, 2020
1 parent 3aeac42 commit 32f3c69
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions irc/import.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ type userImport struct {
RegisteredAt int64 `json:"registeredAt"`
Vhost string
AdditionalNicks []string `json:"additionalNicks"`
Certfps []string
}

type channelImport struct {
Expand Down Expand Up @@ -83,9 +84,19 @@ func doImportDBGeneric(config *Config, dbImport databaseImport, credsType Creden
log.Printf("invalid username %s: %v", username, err)
continue
}
var certfps []string
for _, certfp := range userInfo.Certfps {
normalizedCertfp, err := utils.NormalizeCertfp(certfp)
if err == nil {
certfps = append(certfps, normalizedCertfp)
} else {
log.Printf("invalid certfp %s for %s\n", username, certfp)
}
}
credentials := AccountCredentials{
Version: credsType,
PassphraseHash: []byte(userInfo.Hash),
Certfps: certfps,
}
marshaledCredentials, err := json.Marshal(&credentials)
if err != nil {
Expand All @@ -104,6 +115,9 @@ func doImportDBGeneric(config *Config, dbImport databaseImport, credsType Creden
if len(userInfo.AdditionalNicks) != 0 {
tx.Set(fmt.Sprintf(keyAccountAdditionalNicks, cfUsername), marshalReservedNicks(userInfo.AdditionalNicks), nil)
}
for _, certfp := range certfps {
tx.Set(fmt.Sprintf(keyCertToAccount, certfp), cfUsername, nil)
}
}

for chname, chInfo := range dbImport.Channels {
Expand Down

0 comments on commit 32f3c69

Please sign in to comment.