]> Cypherpunks repositories - gostls13.git/commitdiff
crypto/rand: better panic message for invalid Int argument.
authorRémy Oudompheng <oudomphe@phare.normalesup.org>
Thu, 18 Apr 2013 06:21:15 +0000 (23:21 -0700)
committerBrad Fitzpatrick <bradfitz@golang.org>
Thu, 18 Apr 2013 06:21:15 +0000 (23:21 -0700)
Also document the panic to be consistent with math/rand.

Fixes #5187.

R=golang-dev, dave, bradfitz, r
CC=golang-dev
https://golang.org/cl/8303043

src/pkg/crypto/rand/util.go

index 21608dbaca8860905ab8d1c5b94758209d2b6541..0cd5e0e022f7bbb3095c6828e9a582d8eb130acc 100644 (file)
@@ -100,8 +100,11 @@ func Prime(rand io.Reader, bits int) (p *big.Int, err error) {
        }
 }
 
-// Int returns a uniform random value in [0, max).
+// Int returns a uniform random value in [0, max). It panics if max <= 0.
 func Int(rand io.Reader, max *big.Int) (n *big.Int, err error) {
+       if max.Sign() <= 0 {
+               panic("crypto/rand: argument to Int is <= 0")
+       }
        k := (max.BitLen() + 7) / 8
 
        // b is the number of bits in the most significant byte of max.