diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-02-12 20:10:44 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-02-12 20:13:03 +0100 |
commit | bffe99aeadae09abd02f2bd3184925af6b680535 (patch) | |
tree | 556d223ebcd32b957e62e15353087b93a824641c | |
parent | 77285c99aa30eb802d0281175990e6809501ec18 (diff) |
Don't use modules
Feel free to revert this if you have a strong feeling about it. But so
far as I can see, it adds a lot of complexity for basically no upsides.
-rw-r--r-- | cookie.go | 5 | ||||
-rw-r--r-- | device.go | 3 | ||||
-rw-r--r-- | noise-protocol.go | 9 | ||||
-rw-r--r-- | ratelimiter.go (renamed from internal/ratelimiter/ratelimiter.go) | 2 | ||||
-rw-r--r-- | ratelimiter_test.go (renamed from internal/ratelimiter/ratelimiter_test.go) | 2 | ||||
-rw-r--r-- | tai64n.go (renamed from internal/tai64n/tai64n.go) | 4 | ||||
-rw-r--r-- | tai64n_test.go (renamed from internal/tai64n/tai64n_test.go) | 6 | ||||
-rw-r--r-- | xchacha20.go (renamed from internal/xchacha20poly1305/xchacha20.go) | 6 | ||||
-rw-r--r-- | xchacha20_test.go (renamed from internal/xchacha20poly1305/xchacha20_test.go) | 6 |
9 files changed, 20 insertions, 23 deletions
@@ -3,7 +3,6 @@ package main import ( "crypto/hmac" "crypto/rand" - "git.zx2c4.com/wireguard-go/internal/xchacha20poly1305" "golang.org/x/crypto/blake2s" "golang.org/x/crypto/chacha20poly1305" "sync" @@ -158,7 +157,7 @@ func (st *CookieChecker) CreateReply( return nil, err } - xchacha20poly1305.Encrypt( + XChaCha20Poly1305Encrypt( reply.Cookie[:0], &reply.Nonce, cookie[:], @@ -202,7 +201,7 @@ func (st *CookieGenerator) ConsumeReply(msg *MessageCookieReply) bool { var cookie [blake2s.Size128]byte - _, err := xchacha20poly1305.Decrypt( + _, err := XChaCha20Poly1305Decrypt( cookie[:0], &msg.Nonce, msg.Cookie[:], @@ -1,7 +1,6 @@ package main import ( - "git.zx2c4.com/wireguard-go/internal/ratelimiter" "runtime" "sync" "sync/atomic" @@ -51,7 +50,7 @@ type Device struct { rate struct { underLoadUntil atomic.Value - limiter ratelimiter.Ratelimiter + limiter Ratelimiter } pool struct { diff --git a/noise-protocol.go b/noise-protocol.go index df08a0a..31ae55b 100644 --- a/noise-protocol.go +++ b/noise-protocol.go @@ -2,7 +2,6 @@ package main import ( "errors" - "git.zx2c4.com/wireguard-go/internal/tai64n" "golang.org/x/crypto/blake2s" "golang.org/x/crypto/chacha20poly1305" "golang.org/x/crypto/poly1305" @@ -59,7 +58,7 @@ type MessageInitiation struct { Sender uint32 Ephemeral NoisePublicKey Static [NoisePublicKeySize + poly1305.TagSize]byte - Timestamp [tai64n.TimestampSize + poly1305.TagSize]byte + Timestamp [TimestampSize + poly1305.TagSize]byte MAC1 [blake2s.Size128]byte MAC2 [blake2s.Size128]byte } @@ -100,7 +99,7 @@ type Handshake struct { remoteStatic NoisePublicKey // long term key remoteEphemeral NoisePublicKey // ephemeral public key precomputedStaticStatic [NoisePublicKeySize]byte // precomputed shared secret - lastTimestamp tai64n.Timestamp + lastTimestamp Timestamp lastInitiationConsumption time.Time } @@ -207,7 +206,7 @@ func (device *Device) CreateMessageInitiation(peer *Peer) (*MessageInitiation, e // encrypt timestamp - timestamp := tai64n.Now() + timestamp := TimestampNow() func() { var key [chacha20poly1305.KeySize]byte KDF2( @@ -272,7 +271,7 @@ func (device *Device) ConsumeMessageInitiation(msg *MessageInitiation) *Peer { // verify identity - var timestamp tai64n.Timestamp + var timestamp Timestamp var key [chacha20poly1305.KeySize]byte handshake.mutex.RLock() diff --git a/internal/ratelimiter/ratelimiter.go b/ratelimiter.go index 006900a..168a743 100644 --- a/internal/ratelimiter/ratelimiter.go +++ b/ratelimiter.go @@ -1,4 +1,4 @@ -package ratelimiter +package main /* Copyright (C) 2015-2017 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved. */ diff --git a/internal/ratelimiter/ratelimiter_test.go b/ratelimiter_test.go index 37339ee..9b0abfd 100644 --- a/internal/ratelimiter/ratelimiter_test.go +++ b/ratelimiter_test.go @@ -1,4 +1,4 @@ -package ratelimiter +package main import ( "net" diff --git a/internal/tai64n/tai64n.go b/tai64n.go index da5257c..8c5ebe0 100644 --- a/internal/tai64n/tai64n.go +++ b/tai64n.go @@ -1,4 +1,4 @@ -package tai64n +package main import ( "bytes" @@ -11,7 +11,7 @@ const base = uint64(4611686018427387914) type Timestamp [TimestampSize]byte -func Now() Timestamp { +func TimestampNow() Timestamp { var tai64n Timestamp now := time.Now() secs := base + uint64(now.Unix()) diff --git a/internal/tai64n/tai64n_test.go b/tai64n_test.go index 389b65c..a9e22b0 100644 --- a/internal/tai64n/tai64n_test.go +++ b/tai64n_test.go @@ -1,4 +1,4 @@ -package tai64n +package main import ( "testing" @@ -9,10 +9,10 @@ import ( * as used by WireGuard. */ func TestMonotonic(t *testing.T) { - old := Now() + old := TimestampNow() for i := 0; i < 10000; i++ { time.Sleep(time.Nanosecond) - next := Now() + next := TimestampNow() if !next.After(old) { t.Error("TAI64N, not monotonically increasing on nano-second scale") } diff --git a/internal/xchacha20poly1305/xchacha20.go b/xchacha20.go index a6e59f0..8e7d99f 100644 --- a/internal/xchacha20poly1305/xchacha20.go +++ b/xchacha20.go @@ -2,7 +2,7 @@ // Use of this source code is governed by a license that can be // found in the LICENSE file. -package xchacha20poly1305 +package main import ( "encoding/binary" @@ -138,7 +138,7 @@ func hChaCha20(out *[32]byte, nonce []byte, key *[32]byte) { binary.LittleEndian.PutUint32(out[28:], v15) } -func Encrypt( +func XChaCha20Poly1305Encrypt( dst []byte, nonceFull *[24]byte, plaintext []byte, @@ -153,7 +153,7 @@ func Encrypt( return aead.Seal(dst, nonce[:], plaintext, additionalData) } -func Decrypt( +func XChaCha20Poly1305Decrypt( dst []byte, nonceFull *[24]byte, plaintext []byte, diff --git a/internal/xchacha20poly1305/xchacha20_test.go b/xchacha20_test.go index 5d5b78f..0f41cf8 100644 --- a/internal/xchacha20poly1305/xchacha20_test.go +++ b/xchacha20_test.go @@ -1,4 +1,4 @@ -package xchacha20poly1305 +package main import ( "encoding/hex" @@ -60,7 +60,7 @@ func TestXChaCha20(t *testing.T) { // test encryption - ct := Encrypt( + ct := XChaCha20Poly1305Encrypt( nil, &nonceArray, pt, @@ -74,7 +74,7 @@ func TestXChaCha20(t *testing.T) { // test decryption - ptp, err := Decrypt( + ptp, err := XChaCha20Poly1305Decrypt( nil, &nonceArray, ct, |