Author: yliu
Date: Wed Aug  6 04:43:58 2014
New Revision: 1616092

URL: http://svn.apache.org/r1616092
Log:
HDFS-6817. Fix findbugs and other warnings. (yliu)

Modified:
    
hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/AesCtrCryptoCodec.java
    
hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/random/OsSecureRandom.java

Modified: 
hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/AesCtrCryptoCodec.java
URL: 
http://svn.apache.org/viewvc/hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/AesCtrCryptoCodec.java?rev=1616092&r1=1616091&r2=1616092&view=diff
==============================================================================
--- 
hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/AesCtrCryptoCodec.java
 (original)
+++ 
hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/AesCtrCryptoCodec.java
 Wed Aug  6 04:43:58 2014
@@ -50,14 +50,10 @@ public abstract class AesCtrCryptoCodec 
     Preconditions.checkArgument(IV.length == AES_BLOCK_SIZE);
     
     System.arraycopy(initIV, 0, IV, 0, CTR_OFFSET);
-    long l = (initIV[CTR_OFFSET + 0] << 56)
-        + ((initIV[CTR_OFFSET + 1] & 0xFF) << 48)
-        + ((initIV[CTR_OFFSET + 2] & 0xFF) << 40)
-        + ((initIV[CTR_OFFSET + 3] & 0xFF) << 32)
-        + ((initIV[CTR_OFFSET + 4] & 0xFF) << 24)
-        + ((initIV[CTR_OFFSET + 5] & 0xFF) << 16)
-        + ((initIV[CTR_OFFSET + 6] & 0xFF) << 8)
-        + (initIV[CTR_OFFSET + 7] & 0xFF);
+    long l = 0;
+    for (int i = 0; i < 8; i++) {
+      l = ((l << 8) | (initIV[CTR_OFFSET + i] & 0xff));
+    }
     l += counter;
     IV[CTR_OFFSET + 0] = (byte) (l >>> 56);
     IV[CTR_OFFSET + 1] = (byte) (l >>> 48);

Modified: 
hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/random/OsSecureRandom.java
URL: 
http://svn.apache.org/viewvc/hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/random/OsSecureRandom.java?rev=1616092&r1=1616091&r2=1616092&view=diff
==============================================================================
--- 
hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/random/OsSecureRandom.java
 (original)
+++ 
hadoop/common/branches/fs-encryption/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/random/OsSecureRandom.java
 Wed Aug  6 04:43:58 2014
@@ -37,14 +37,15 @@ import static org.apache.hadoop.fs.Commo
  */
 @InterfaceAudience.Private
 public class OsSecureRandom extends Random implements Closeable, Configurable {
+  private static final long serialVersionUID = 6391500337172057900L;
 
-  private Configuration conf;
+  private transient Configuration conf;
 
   private final int RESERVOIR_LENGTH = 8192;
 
   private String randomDevPath;
 
-  private FileInputStream stream;
+  private transient FileInputStream stream;
 
   private final byte[] reservoir = new byte[RESERVOIR_LENGTH];
 
@@ -65,7 +66,7 @@ public class OsSecureRandom extends Rand
   }
   
   @Override
-  public void setConf(Configuration conf) {
+  synchronized public void setConf(Configuration conf) {
     this.conf = conf;
     this.randomDevPath = conf.get(
         HADOOP_SECURITY_SECURE_RANDOM_DEVICE_FILE_PATH_KEY,
@@ -80,7 +81,7 @@ public class OsSecureRandom extends Rand
   }
 
   @Override
-  public Configuration getConf() {
+  synchronized public Configuration getConf() {
     return conf;
   }
 
@@ -100,16 +101,15 @@ public class OsSecureRandom extends Rand
   @Override
   synchronized protected int next(int nbits) {
     fillReservoir(4);
-    int n = reservoir[pos] |
-        (reservoir[pos + 1] << 8) |
-        (reservoir[pos + 2] << 16) |
-        (reservoir[pos + 3] << 24);
-    pos += 4;
+    int n = 0;
+    for (int i = 0; i < 4; i++) {
+      n = ((n << 8) | (reservoir[pos++] & 0xff));
+    }
     return n & (0xffffffff >> (32 - nbits));
   }
 
   @Override
-  public void close() throws IOException {
+  synchronized public void close() throws IOException {
     stream.close();
   }
 }


Reply via email to