]> Cypherpunks.ru repositories - govpn.git/blobdiff - src/cypherpunks.ru/govpn/encless.go
crypto/rand does not guarantee full read at once
[govpn.git] / src / cypherpunks.ru / govpn / encless.go
index 30eb4a5e33d9446f07c646c03bede769c4043339..f9d9bbfe075e587e6fd16fd9e023a62a5f343537 100644 (file)
@@ -19,6 +19,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 package govpn
 
 import (
+       "io"
+
        "cypherpunks.ru/govpn/aont"
        "cypherpunks.ru/govpn/cnw"
 )
@@ -36,7 +38,7 @@ const (
 func EnclessEncode(authKey *[32]byte, nonce, in []byte) ([]byte, error) {
        r := new([aont.RSize]byte)
        var err error
-       if _, err = Rand.Read(r[:]); err != nil {
+       if _, err = io.ReadFull(Rand, r[:]); err != nil {
                return nil, err
        }
        aonted, err := aont.Encode(r, in)