You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shindig.apache.org by ss...@apache.org on 2012/06/29 18:49:02 UTC
svn commit: r1355468 - in /shindig/trunk/java/gadgets/src:
main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java
test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java
Author: ssievers
Date: Fri Jun 29 16:49:01 2012
New Revision: 1355468
URL: http://svn.apache.org/viewvc?rev=1355468&view=rev
Log:
SHINDIG-1810 | OAuth2TokenPersistence setSecret fails if no encrypter | Patch from Brian Lillie. Thanks!
Modified:
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java
Modified: shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java?rev=1355468&r1=1355467&r2=1355468&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java (original)
+++ shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistence.java Fri Jun 29 16:49:01 2012
@@ -183,16 +183,12 @@ public class OAuth2TokenPersistence impl
public void setEncryptedMacSecret(final byte[] encryptedSecret) throws OAuth2EncryptionException {
this.encryptedMacSecret = encryptedSecret;
- if (this.encrypter != null) {
- this.macSecret = this.encrypter.decrypt(encryptedSecret);
- }
+ this.macSecret = this.encrypter == null ? encryptedSecret : this.encrypter.decrypt(encryptedSecret);
}
public void setEncryptedSecret(final byte[] encryptedSecret) throws OAuth2EncryptionException {
this.encryptedSecret = encryptedSecret;
- if (this.encrypter != null) {
- this.secret = this.encrypter.decrypt(encryptedSecret);
- }
+ this.secret = this.encrypter == null ? encryptedSecret : this.encrypter.decrypt(encryptedSecret);
}
public void setExpiresAt(final long expiresAt) {
@@ -217,13 +213,11 @@ public class OAuth2TokenPersistence impl
public void setMacSecret(final byte[] secret) throws OAuth2RequestException {
this.macSecret = secret;
- if (this.encrypter != null) {
- try {
- this.encryptedMacSecret = this.encrypter.encrypt(secret);
- } catch (final OAuth2EncryptionException e) {
- throw new OAuth2RequestException(OAuth2Error.SECRET_ENCRYPTION_PROBLEM,
- "OAuth2TokenPersistence could not encrypt the mac secret", e);
- }
+ try {
+ this.encryptedMacSecret = this.encrypter == null ? secret : this.encrypter.encrypt(secret);
+ } catch (final OAuth2EncryptionException e) {
+ throw new OAuth2RequestException(OAuth2Error.SECRET_ENCRYPTION_PROBLEM,
+ "OAuth2TokenPersistence could not encrypt the mac secret", e);
}
}
@@ -241,7 +235,7 @@ public class OAuth2TokenPersistence impl
public void setSecret(final byte[] secret) throws OAuth2RequestException {
this.secret = secret;
try {
- this.encryptedSecret = this.encrypter.encrypt(secret);
+ this.encryptedSecret = this.encrypter == null ? secret : this.encrypter.encrypt(secret);
} catch (final OAuth2EncryptionException e) {
throw new OAuth2RequestException(OAuth2Error.SECRET_ENCRYPTION_PROBLEM,
"OAuth2TokenPersistence could not encrypt the token secret", e);
Modified: shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java
URL: http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java?rev=1355468&r1=1355467&r2=1355468&view=diff
==============================================================================
--- shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java (original)
+++ shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/oauth2/persistence/OAuth2TokenPersistenceTest.java Fri Jun 29 16:49:01 2012
@@ -18,14 +18,17 @@
*/
package org.apache.shindig.gadgets.oauth2.persistence;
-import java.util.Map;
+import static org.junit.Assert.assertArrayEquals;
import org.apache.shindig.gadgets.oauth2.MockUtils;
import org.apache.shindig.gadgets.oauth2.OAuth2Message;
+
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
+import java.util.Map;
+
public class OAuth2TokenPersistenceTest extends MockUtils {
private static OAuth2TokenPersistence accessToken;
private static OAuth2TokenPersistence refreshToken;
@@ -564,24 +567,30 @@ public class OAuth2TokenPersistenceTest
@Test
public void testSetSecret_2() throws Exception {
- final OAuth2TokenPersistence fixture = new OAuth2TokenPersistence(MockUtils.getDummyEncrypter());
+ final OAuth2TokenPersistence fixture = new OAuth2TokenPersistence();
fixture.setServiceName("");
- fixture.setEncryptedSecret(new byte[] {});
fixture.setUser("");
fixture.setType(org.apache.shindig.gadgets.oauth2.OAuth2Token.Type.ACCESS);
fixture.setIssuedAt(1L);
- fixture.setEncryptedMacSecret(new byte[] {});
fixture.setMacAlgorithm("");
fixture.setScope("");
fixture.setExpiresAt(1L);
- fixture.setMacSecret(new byte[] {});
- fixture.setSecret(new byte[] {});
fixture.setGadgetUri("");
fixture.setMacExt("");
fixture.setTokenType("");
- final byte[] secret = new byte[] {};
- fixture.setSecret(secret);
+ byte[] secret = "abcdef".getBytes();
+ fixture.setEncryptedSecret( secret );
+ assertArrayEquals(secret, fixture.getSecret());
+ fixture.setEncryptedMacSecret(secret);
+ assertArrayEquals(secret, fixture.getMacSecret());
+
+ byte[] secret2 = "zyxwvu".getBytes();
+ fixture.setSecret( secret2 );
+ assertArrayEquals( secret2, fixture.getEncryptedSecret() );
+ fixture.setMacSecret( secret2 );
+ assertArrayEquals( secret2, fixture.getEncryptedMacSecret() );
+
}
@Test