summaryrefslogtreecommitdiff
path: root/java/security/SecureRandom.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/security/SecureRandom.java')
-rw-r--r--java/security/SecureRandom.java14
1 files changed, 9 insertions, 5 deletions
diff --git a/java/security/SecureRandom.java b/java/security/SecureRandom.java
index 649966fee..d17a886d2 100644
--- a/java/security/SecureRandom.java
+++ b/java/security/SecureRandom.java
@@ -1,5 +1,5 @@
/* SecureRandom.java --- Secure Random class implementation
- Copyright (C) 1999, 2001, 2002, 2003, 2005, 2006, 2014
+ Copyright (C) 1999, 2001, 2002, 2003, 2005, 2006, 2014, 2015
Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -310,7 +310,7 @@ public class SecureRandom extends Random
@param seed seed bytes to seed with
*/
- public void setSeed(byte[] seed)
+ public synchronized void setSeed(byte[] seed)
{
secureRandomSpi.engineSetSeed(seed);
isSeeded = true;
@@ -322,7 +322,8 @@ public class SecureRandom extends Random
@param seed 8 seed bytes to seed with
*/
- public void setSeed(long seed)
+ @Override
+ public synchronized void setSeed(long seed)
{
// This particular setSeed will be called by Random.Random(), via
// our own constructor, before secureRandomSpi is initialized. In
@@ -351,7 +352,8 @@ public class SecureRandom extends Random
@param bytes array to store generated bytes in
*/
- public void nextBytes(byte[] bytes)
+ @Override
+ public synchronized void nextBytes(byte[] bytes)
{
if (!isSeeded)
setSeed(getSeed(32));
@@ -369,6 +371,8 @@ public class SecureRandom extends Random
@return the random bits
*/
+ @Override
+ @SuppressWarnings("sync-override") // nextBytes(byte[]) is synchronized
protected final int next(int numBits)
{
if (numBits == 0)
@@ -404,7 +408,7 @@ public class SecureRandom extends Random
@return an array containing the seed bytes
*/
- public byte[] generateSeed(int numBytes)
+ public synchronized byte[] generateSeed(int numBytes)
{
return secureRandomSpi.engineGenerateSeed(numBytes);
}