Try and test tunnel key saving and loading

This commit is contained in:
idk
2019-02-09 16:39:50 -05:00
parent 54eb978f11
commit ac48fd6619
8 changed files with 36 additions and 27 deletions

View File

@ -131,12 +131,12 @@ Donate
BTC:159M8MEUwhTzE9RXmcZxtigKaEjgfwRbHt
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCgAdFiEEcNIGBzi++AUjrK/311wDs5teFOEFAlxfRJAACgkQ11wDs5te
FOELTAf7Bd/bveeC8sfg4aVC9uG6OFUkyq6OBL9My4ZpjvRgfhwJhNzaSvMyVk+f
+FwYZefrJIdQ7mj7EcZCQnrrIjdb6ymdcMRmriKgbJnSbJJCMSRu0q2CUpFKuMII
nU6GfER1ndSrF0d6HH7ve+rRPuf8h8pi00iudfZanof4HGXvEVSNFK8gIMXYJXxC
YbfOW5jBUOkhMczGkgfLeKeqF3H2eGfRHHo2llbGgO3V552qB0zXJxSyggZYv96G
ph//4mZbGUo4tOcxQCRzXNoNZc/JfWvp8U4yR9eO76kwYZhpQ4GcS4LA4Mo1PIw+
1xVMNadXzawLoFthDmjAEMJlAP8L0Q==
=yIbe
iQEzBAEBCgAdFiEEcNIGBzi++AUjrK/311wDs5teFOEFAlxfSKIACgkQ11wDs5te
FOH9HQf+N/fPLghBcIjHCuNY/E+dsFnqYNQa1tf3mVqBovwjv8eyEz2Qjmpdy4t5
Vc4FhRcouU6iaOFhNTK/Rl2f1iEvdBpuMVD4MRUZz40AQjmiHn/2Tes/k3cCA+UQ
bL5CpT3OlnfYHFr21Ldn3xD2XGb6UtVptnh4nKtihDOsgNS1YvrNoQU/3WzBisBH
swrGLv8P3O3IzPEYHzZo6i2n585LsaAkMZPtLeRrWQ8yjgz6dEn2Hd89X7s+qFa3
Uswk9RsarCN8Z+05l6DuCreD+PLazcTM2vfsO/x0I0/ExKmzJWlEeKLfCimjf8rj
z5yI+IgbnWf7oDj5bIINWWe5rMD7pQ==
=NRoe
-----END PGP SIGNATURE-----

View File

@ -124,4 +124,3 @@ func NewSAMSSUForwarderFromConfig(iniFile, SamHost, SamPort string, label ...str
}
return nil, nil
}

View File

@ -297,7 +297,7 @@ func NewSAMClientForwarderFromOptions(opts ...func(*SAMClientForwarder) error) (
}
log.Println("Destination keys generated, tunnel name:", s.TunName)
if s.save {
if err := i2pkeys.Save(s.FilePath, s.TunName, s.passfile, &s.SamKeys); err != nil {
if err := i2pkeys.Save(s.FilePath, s.TunName, s.passfile, s.SamKeys); err != nil {
return nil, err
}
}

View File

@ -402,7 +402,7 @@ func NewSAMForwarderFromOptions(opts ...func(*SAMForwarder) error) (*SAMForwarde
}
log.Println("Destination keys generated, tunnel name:", s.TunName)
if s.save {
if err := i2pkeys.Save(s.FilePath, s.TunName, s.passfile, &s.SamKeys); err != nil {
if err := i2pkeys.Save(s.FilePath, s.TunName, s.passfile, s.SamKeys); err != nil {
return nil, err
}
}

View File

@ -18,21 +18,21 @@ func Decrypt(i2pkeypath, aeskeypath string) error {
return i2pkeyscrypt.DecryptKey(i2pkeypath, aeskeypath)
}
func Save(FilePath, TunName, passfile string, SamKeys *sam3.I2PKeys) error {
func Save(FilePath, TunName, passfile string, SamKeys sam3.I2PKeys) error {
if _, err := os.Stat(filepath.Join(FilePath, TunName+".i2pkeys")); os.IsNotExist(err) {
file, err := os.Create(filepath.Join(FilePath, TunName+".i2pkeys"))
if err != nil {
return err
}
err = sam3.StoreKeysIncompat(*SamKeys, file)
err = sam3.StoreKeysIncompat(SamKeys, file)
if err != nil {
return err
}
//err = Encrypt(filepath.Join(FilePath, TunName+".i2pkeys"), passfile)
//if err != nil {
//return err
//return err
//}
return nil
return nil
}
file, err := os.Open(filepath.Join(FilePath, TunName+".i2pkeys"))
if err != nil {
@ -40,18 +40,18 @@ func Save(FilePath, TunName, passfile string, SamKeys *sam3.I2PKeys) error {
}
//err = Decrypt(filepath.Join(FilePath, TunName+".i2pkeys"), passfile)
//if err != nil {
//return err
//return err
//}
tempkeys, err := sam3.LoadKeysIncompat(file)
SamKeys, err = sam3.LoadKeysIncompat(file)
if err != nil {
return err
}
SamKeys = &tempkeys
//err = Encrypt(filepath.Join(FilePath, TunName+".i2pkeys"), passfile)
//if err != nil {
//return err
//}
return nil
//SamKeys = &tempkeys
//err = Encrypt(filepath.Join(FilePath, TunName+".i2pkeys"), passfile)
//if err != nil {
//return err
//}
return nil
}
func Load(FilePath, TunName, passfile string, samConn *sam3.SAM) (sam3.I2PKeys, error) {
@ -70,7 +70,7 @@ func Load(FilePath, TunName, passfile string, samConn *sam3.SAM) (sam3.I2PKeys,
}
//err = Decrypt(filepath.Join(FilePath, TunName+".i2pkeys"), passfile)
//if err != nil {
//return sam3.I2PKeys{}, err
//return sam3.I2PKeys{}, err
//}
return sam3.LoadKeysIncompat(file)
}

View File

@ -20,9 +20,19 @@ func TestKeysGenLoad(t *testing.T) {
t.Fatal(err)
}
log.Println("Loaded tunnel keys")
err = Save("./", "test", "", &sk)
err = Save("./", "test", "", sk)
if err != nil {
t.Fatal(err)
}
log.Println("Saved tunnel keys")
sk, err = Load("./", "test", "", sc)
if err != nil {
t.Fatal(err)
}
log.Println("Loaded tunnel keys 2")
err = Save("./", "test", "", sk)
if err != nil {
t.Fatal(err)
}
log.Println("Saved tunnel keys 2")
}

View File

@ -298,7 +298,7 @@ func NewSAMSSUClientForwarderFromOptions(opts ...func(*SAMSSUClientForwarder) er
}
log.Println("Destination keys generated, tunnel name:", s.TunName)
if s.save {
if err := i2pkeys.Save(s.FilePath, s.TunName, s.passfile, &s.SamKeys); err != nil {
if err := i2pkeys.Save(s.FilePath, s.TunName, s.passfile, s.SamKeys); err != nil {
return nil, err
}
}

View File

@ -294,7 +294,7 @@ func NewSAMSSUForwarderFromOptions(opts ...func(*SAMSSUForwarder) error) (*SAMSS
}
log.Println("Destination keys generated, tunnel name:", s.TunName)
if s.save {
if err := i2pkeys.Save(s.FilePath, s.TunName, s.passfile, &s.SamKeys); err != nil {
if err := i2pkeys.Save(s.FilePath, s.TunName, s.passfile, s.SamKeys); err != nil {
return nil, err
}
}