Skip to content
Snippets Groups Projects
Commit 5e6a3d2f authored by Jake Taylor's avatar Jake Taylor
Browse files

fix cmd idgen to properly handle existing session files

parent 2cfdb8bf
No related branches found
No related tags found
2 merge requests!510Release,!271fix cmd idgen to properly handle existing session files
...@@ -30,7 +30,8 @@ func loadOrInitBackup(backupPath string, backupPass string, password []byte, sto ...@@ -30,7 +30,8 @@ func loadOrInitBackup(backupPath string, backupPass string, password []byte, sto
// create a new client if none exist // create a new client if none exist
var net *xxdk.Cmix var net *xxdk.Cmix
var identity xxdk.ReceptionIdentity var identity xxdk.ReceptionIdentity
if _, err := os.Stat(storeDir); errors.Is(err, fs.ErrNotExist) { _, err := os.Stat(storeDir)
if errors.Is(err, fs.ErrNotExist) {
// Initialize from scratch // Initialize from scratch
ndfJson, err := ioutil.ReadFile(viper.GetString("ndf")) ndfJson, err := ioutil.ReadFile(viper.GetString("ndf"))
if err != nil { if err != nil {
...@@ -73,12 +74,16 @@ func loadOrInitBackup(backupPath string, backupPass string, password []byte, sto ...@@ -73,12 +74,16 @@ func loadOrInitBackup(backupPath string, backupPass string, password []byte, sto
backupIdListPath, err) backupIdListPath, err)
} }
} }
}
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
net, err = xxdk.LoadCmix(storeDir, password, cmixParams) // Load or initialize xxdk.ReceptionIdentity storage
if err != nil { identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
jww.FATAL.Panicf("%+v", err) if err != nil {
}
identity, err = xxdk.MakeLegacyReceptionIdentity(net) identity, err = xxdk.MakeLegacyReceptionIdentity(net)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
...@@ -88,16 +93,6 @@ func loadOrInitBackup(backupPath string, backupPass string, password []byte, sto ...@@ -88,16 +93,6 @@ func loadOrInitBackup(backupPath string, backupPass string, password []byte, sto
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
} else {
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
} }
messenger, err := xxdk.Login(net, authCbs, identity, e2eParams) messenger, err := xxdk.Login(net, authCbs, identity, e2eParams)
......
...@@ -80,7 +80,8 @@ func loadOrInitMessenger(forceLegacy bool, password []byte, storeDir, regCode st ...@@ -80,7 +80,8 @@ func loadOrInitMessenger(forceLegacy bool, password []byte, storeDir, regCode st
// create a new client if none exist // create a new client if none exist
var net *xxdk.Cmix var net *xxdk.Cmix
var identity xxdk.ReceptionIdentity var identity xxdk.ReceptionIdentity
if _, err := os.Stat(storeDir); errors.Is(err, fs.ErrNotExist) { _, err := os.Stat(storeDir)
if errors.Is(err, fs.ErrNotExist) {
// Initialize from scratch // Initialize from scratch
ndfJson, err := ioutil.ReadFile(viper.GetString("ndf")) ndfJson, err := ioutil.ReadFile(viper.GetString("ndf"))
if err != nil { if err != nil {
...@@ -88,11 +89,20 @@ func loadOrInitMessenger(forceLegacy bool, password []byte, storeDir, regCode st ...@@ -88,11 +89,20 @@ func loadOrInitMessenger(forceLegacy bool, password []byte, storeDir, regCode st
} }
err = xxdk.NewCmix(string(ndfJson), storeDir, password, regCode) err = xxdk.NewCmix(string(ndfJson), storeDir, password, regCode)
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
}
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
// Load or initialize xxdk.ReceptionIdentity storage
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
if forceLegacy { if forceLegacy {
jww.INFO.Printf("Forcing legacy sender") jww.INFO.Printf("Forcing legacy sender")
identity, err = xxdk.MakeLegacyReceptionIdentity(net) identity, err = xxdk.MakeLegacyReceptionIdentity(net)
...@@ -107,16 +117,6 @@ func loadOrInitMessenger(forceLegacy bool, password []byte, storeDir, regCode st ...@@ -107,16 +117,6 @@ func loadOrInitMessenger(forceLegacy bool, password []byte, storeDir, regCode st
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
} else {
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
} }
messenger, err := xxdk.Login(net, authCbs, identity, e2eParams) messenger, err := xxdk.Login(net, authCbs, identity, e2eParams)
...@@ -135,7 +135,8 @@ func loadOrInitVanity(password []byte, storeDir, regCode, userIdPrefix string, ...@@ -135,7 +135,8 @@ func loadOrInitVanity(password []byte, storeDir, regCode, userIdPrefix string,
// create a new client if none exist // create a new client if none exist
var net *xxdk.Cmix var net *xxdk.Cmix
var identity xxdk.ReceptionIdentity var identity xxdk.ReceptionIdentity
if _, err := os.Stat(storeDir); errors.Is(err, fs.ErrNotExist) { _, err := os.Stat(storeDir)
if errors.Is(err, fs.ErrNotExist) {
// Initialize from scratch // Initialize from scratch
ndfJson, err := ioutil.ReadFile(viper.GetString("ndf")) ndfJson, err := ioutil.ReadFile(viper.GetString("ndf"))
if err != nil { if err != nil {
...@@ -144,11 +145,19 @@ func loadOrInitVanity(password []byte, storeDir, regCode, userIdPrefix string, ...@@ -144,11 +145,19 @@ func loadOrInitVanity(password []byte, storeDir, regCode, userIdPrefix string,
err = xxdk.NewVanityClient(string(ndfJson), storeDir, err = xxdk.NewVanityClient(string(ndfJson), storeDir,
password, regCode, userIdPrefix) password, regCode, userIdPrefix)
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
}
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
// Load or initialize xxdk.ReceptionIdentity storage
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
identity, err = xxdk.MakeLegacyReceptionIdentity(net) identity, err = xxdk.MakeLegacyReceptionIdentity(net)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
...@@ -158,16 +167,6 @@ func loadOrInitVanity(password []byte, storeDir, regCode, userIdPrefix string, ...@@ -158,16 +167,6 @@ func loadOrInitVanity(password []byte, storeDir, regCode, userIdPrefix string,
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
} else {
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
} }
messenger, err := xxdk.Login(net, authCbs, identity, e2eParams) messenger, err := xxdk.Login(net, authCbs, identity, e2eParams)
......
...@@ -30,7 +30,8 @@ func loadOrInitPrecan(precanId uint, password []byte, storeDir string, ...@@ -30,7 +30,8 @@ func loadOrInitPrecan(precanId uint, password []byte, storeDir string,
// create a new client if none exist // create a new client if none exist
var net *xxdk.Cmix var net *xxdk.Cmix
var identity xxdk.ReceptionIdentity var identity xxdk.ReceptionIdentity
if _, err := os.Stat(storeDir); errors.Is(err, fs.ErrNotExist) { _, err := os.Stat(storeDir)
if errors.Is(err, fs.ErrNotExist) {
// Initialize from scratch // Initialize from scratch
ndfJson, err := ioutil.ReadFile(viper.GetString("ndf")) ndfJson, err := ioutil.ReadFile(viper.GetString("ndf"))
if err != nil { if err != nil {
...@@ -38,30 +39,28 @@ func loadOrInitPrecan(precanId uint, password []byte, storeDir string, ...@@ -38,30 +39,28 @@ func loadOrInitPrecan(precanId uint, password []byte, storeDir string,
} }
err = xxdk.NewPrecannedClient(precanId, string(ndfJson), storeDir, password) err = xxdk.NewPrecannedClient(precanId, string(ndfJson), storeDir, password)
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
}
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
// Load or initialize xxdk.ReceptionIdentity storage
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
identity, err = xxdk.MakeLegacyReceptionIdentity(net) identity, err = xxdk.MakeLegacyReceptionIdentity(net)
if err != nil { if err != nil {
return nil jww.FATAL.Panicf("%+v", err)
} }
err = xxdk.StoreReceptionIdentity(identityStorageKey, identity, net) err = xxdk.StoreReceptionIdentity(identityStorageKey, identity, net)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
} else {
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
} }
messenger, err := xxdk.Login(net, authCbs, identity, e2eParams) messenger, err := xxdk.Login(net, authCbs, identity, e2eParams)
......
...@@ -28,7 +28,8 @@ func loadOrInitProto(protoUserPath string, password []byte, storeDir string, ...@@ -28,7 +28,8 @@ func loadOrInitProto(protoUserPath string, password []byte, storeDir string,
// create a new client if none exist // create a new client if none exist
var net *xxdk.Cmix var net *xxdk.Cmix
var identity xxdk.ReceptionIdentity var identity xxdk.ReceptionIdentity
if _, err := os.Stat(storeDir); errors.Is(err, fs.ErrNotExist) { _, err := os.Stat(storeDir)
if errors.Is(err, fs.ErrNotExist) {
// Initialize from scratch // Initialize from scratch
ndfJson, err := ioutil.ReadFile(viper.GetString("ndf")) ndfJson, err := ioutil.ReadFile(viper.GetString("ndf"))
if err != nil { if err != nil {
...@@ -48,31 +49,30 @@ func loadOrInitProto(protoUserPath string, password []byte, storeDir string, ...@@ -48,31 +49,30 @@ func loadOrInitProto(protoUserPath string, password []byte, storeDir string,
err = xxdk.NewProtoClient_Unsafe(string(ndfJson), storeDir, err = xxdk.NewProtoClient_Unsafe(string(ndfJson), storeDir,
password, protoUser) password, protoUser)
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
}
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
// Load or initialize xxdk.ReceptionIdentity storage
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
identity, err = xxdk.MakeLegacyReceptionIdentity(net) identity, err = xxdk.MakeLegacyReceptionIdentity(net)
if err != nil { if err != nil {
return nil jww.FATAL.Panicf("%+v", err)
} }
err = xxdk.StoreReceptionIdentity(identityStorageKey, identity, net) err = xxdk.StoreReceptionIdentity(identityStorageKey, identity, net)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
} }
} else {
// Initialize from storage
net, err = xxdk.LoadCmix(storeDir, password, cmixParams)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
identity, err = xxdk.LoadReceptionIdentity(identityStorageKey, net)
if err != nil {
jww.FATAL.Panicf("%+v", err)
}
} }
messenger, err := xxdk.Login(net, authCbs, identity, e2eParams) messenger, err := xxdk.Login(net, authCbs, identity, e2eParams)
if err != nil { if err != nil {
jww.FATAL.Panicf("%+v", err) jww.FATAL.Panicf("%+v", err)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment