]> Cypherpunks.ru repositories - govpn.git/commitdiff
Rename NoiseEnable field for simplicity
authorSergey Matveev <stargrave@stargrave.org>
Thu, 17 Sep 2015 17:42:10 +0000 (20:42 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Thu, 17 Sep 2015 17:50:09 +0000 (20:50 +0300)
Signed-off-by: Sergey Matveev <stargrave@stargrave.org>
src/govpn/cmd/govpn-client/main.go
src/govpn/conf.go [new file with mode: 0644]
src/govpn/handshake.go
src/govpn/identify.go
src/govpn/peer.go

index f85908145f4a74637df75d22834bc0d82ae9442a..467bec6545645ac9bde4f06d734d884eeb78dd51 100644 (file)
@@ -74,12 +74,12 @@ func main() {
 
        pub, priv := govpn.NewVerifier(id, govpn.StringFromFile(*keyPath))
        conf = &govpn.PeerConf{
-               Id:          id,
-               Timeout:     time.Second * time.Duration(timeout),
-               NoiseEnable: *noisy,
-               CPR:         *cpr,
-               DSAPub:      pub,
-               DSAPriv:     priv,
+               Id:      id,
+               Timeout: time.Second * time.Duration(timeout),
+               Noise:   *noisy,
+               CPR:     *cpr,
+               DSAPub:  pub,
+               DSAPriv: priv,
        }
        govpn.PeersInitDummy(id, conf)
        log.Println(govpn.VersionGet())
diff --git a/src/govpn/conf.go b/src/govpn/conf.go
new file mode 100644 (file)
index 0000000..0eff590
--- /dev/null
@@ -0,0 +1,42 @@
+/*
+GoVPN -- simple secure free software virtual private network daemon
+Copyright (C) 2014-2015 Sergey Matveev <stargrave@stargrave.org>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+package govpn
+
+import (
+       "time"
+
+       "github.com/agl/ed25519"
+)
+
+type PeerConf struct {
+       Id         *PeerId       `json:"-"`
+       Name       string        `json:"name"`
+       Up         string        `json:"up"`
+       Down       string        `json:"down"`
+       TimeoutInt int           `json:"timeout"`
+       Timeout    time.Duration `json:"-"`
+       Noise      bool          `json:"noise"`
+       CPR        int           `json:"cpr"`
+       Verifier   string        `json:"verifier"`
+
+       // This is passphrase verifier
+       DSAPub *[ed25519.PublicKeySize]byte `json:"-"`
+       // This field exists only on client's side
+       DSAPriv *[ed25519.PrivateKeySize]byte `json:"-"`
+}
index 1c7c43d6fd83dac0de0f7483fca7840b868adeee..0aa65bd624e4e9366db2275b3acff5d6fc04ad1d 100644 (file)
@@ -171,7 +171,7 @@ func HandshakeStart(addr string, conn io.Writer, conf *PeerConf) *Handshake {
                log.Fatalln("Error reading random for nonce:", err)
        }
        var enc []byte
-       if conf.NoiseEnable {
+       if conf.Noise {
                enc = make([]byte, MTU-xtea.BlockSize-RSize)
        } else {
                enc = make([]byte, 32)
@@ -224,7 +224,7 @@ func (h *Handshake) Server(data []byte) *Peer {
                        log.Fatalln("Error reading random for S:", err)
                }
                var encRs []byte
-               if h.Conf.NoiseEnable {
+               if h.Conf.Noise {
                        encRs = make([]byte, MTU-len(encPub)-xtea.BlockSize)
                } else {
                        encRs = make([]byte, RSize+SSize)
@@ -259,7 +259,7 @@ func (h *Handshake) Server(data []byte) *Peer {
 
                // Send final answer to client
                var enc []byte
-               if h.Conf.NoiseEnable {
+               if h.Conf.Noise {
                        enc = make([]byte, MTU-xtea.BlockSize)
                } else {
                        enc = make([]byte, RSize)
@@ -318,7 +318,7 @@ func (h *Handshake) Client(data []byte) *Peer {
                sign := ed25519.Sign(h.Conf.DSAPriv, h.key[:])
 
                var enc []byte
-               if h.Conf.NoiseEnable {
+               if h.Conf.Noise {
                        enc = make([]byte, MTU-xtea.BlockSize)
                } else {
                        enc = make([]byte, RSize+RSize+SSize+ed25519.SignatureSize)
index c7675b6368b48cc62e7eef3180e8515ac1421e1b..3f506ecc61e09828a2201114890bdb6f936c236b 100644 (file)
@@ -56,17 +56,6 @@ func (id PeerId) MarshalJSON() ([]byte, error) {
        return []byte(`"` + result + `"`), nil
 }
 
-type PeerConf struct {
-       Id          *PeerId
-       Timeout     time.Duration
-       NoiseEnable bool
-       CPR         int
-       // This is passphrase verifier
-       DSAPub *[ed25519.PublicKeySize]byte
-       // This field exists only in dummy configuration on client's side
-       DSAPriv *[ed25519.PrivateKeySize]byte
-}
-
 type cipherCache map[PeerId]*xtea.Cipher
 
 var (
index 7219248397a1152a543115260d533e08a2329750..7366ffd642da84cec01a7ec76dc361667286855a 100644 (file)
@@ -123,7 +123,7 @@ func newPeer(isClient bool, addr string, conn io.Writer, conf *PeerConf, key *[S
        timeout := conf.Timeout
 
        cprCycle := cprCycleCalculate(conf.CPR)
-       noiseEnable := conf.NoiseEnable
+       noiseEnable := conf.Noise
        if conf.CPR > 0 {
                noiseEnable = true
                timeout = cprCycle