diff options
| author | Emmanuel Raviart <eraviart@entrouvert.com> | 2004-07-22 08:37:09 +0000 |
|---|---|---|
| committer | Emmanuel Raviart <eraviart@entrouvert.com> | 2004-07-22 08:37:09 +0000 |
| commit | c2dc90e2e99a83a1d80042c0405ecba94ad01845 (patch) | |
| tree | 329fb42f4f50fedf6c52d98d4fc1a5cd840c507c /java | |
| parent | 255f09ed98f1e554093dce03c384bf5c4dbea091 (diff) | |
| download | lasso-c2dc90e2e99a83a1d80042c0405ecba94ad01845.tar.gz lasso-c2dc90e2e99a83a1d80042c0405ecba94ad01845.tar.xz lasso-c2dc90e2e99a83a1d80042c0405ecba94ad01845.zip | |
Java & Python tests do not regress. They even progress.
Diffstat (limited to 'java')
| -rw-r--r-- | java/src/c/com_entrouvert_lasso_LassoLogin.c | 2 | ||||
| -rw-r--r-- | java/src/java/com/entrouvert/lasso/Lasso.java | 10 | ||||
| -rw-r--r-- | java/src/java/com/entrouvert/lasso/LassoLogin.java | 2 | ||||
| -rw-r--r-- | java/tests/LoginTest.java | 14 |
4 files changed, 25 insertions, 3 deletions
diff --git a/java/src/c/com_entrouvert_lasso_LassoLogin.c b/java/src/c/com_entrouvert_lasso_LassoLogin.c index a3dd9f74..e0a726c0 100644 --- a/java/src/c/com_entrouvert_lasso_LassoLogin.c +++ b/java/src/c/com_entrouvert_lasso_LassoLogin.c @@ -201,7 +201,7 @@ JNIEXPORT jint JNICALL Java_com_entrouvert_lasso_LassoLogin_initRequest return result; } -JNIEXPORT jint JNICALL Java_com_entrouvert_lasso_LassoLogin_mustAuthenticate +JNIEXPORT jboolean JNICALL Java_com_entrouvert_lasso_LassoLogin_mustAuthenticate (JNIEnv * env, jobject this){ int result; LassoLogin* login; diff --git a/java/src/java/com/entrouvert/lasso/Lasso.java b/java/src/java/com/entrouvert/lasso/Lasso.java index a1d5700d..884dfcbf 100644 --- a/java/src/java/com/entrouvert/lasso/Lasso.java +++ b/java/src/java/com/entrouvert/lasso/Lasso.java @@ -30,6 +30,16 @@ public class Lasso { // Lasso System.loadLibrary("jlasso"); } + static final public int httpMethodGet = 1; + static final public int httpMethodPost = 2; + static final public int httpMethodRedirect = 3; + static final public int httpMethodSoap = 4; + + /* Consent */ + static final public String libConsentObtained = "urn:liberty:consent:obtained"; + static final public String libConsentUnavailable = "urn:liberty:consent:unavailable"; + static final public String libConsentInapplicable = "urn:liberty:consent:inapplicable"; + /* NameIDPolicyType */ static final public String libNameIdPolicyTypeNone = "none"; static final public String libNameIdPolicyTypeOneTime = "onetime"; diff --git a/java/src/java/com/entrouvert/lasso/LassoLogin.java b/java/src/java/com/entrouvert/lasso/LassoLogin.java index 91d59406..d8229543 100644 --- a/java/src/java/com/entrouvert/lasso/LassoLogin.java +++ b/java/src/java/com/entrouvert/lasso/LassoLogin.java @@ -67,7 +67,7 @@ public class LassoLogin extends LassoProfileContext { // LassoLogin native public int initRequest(String responseMsg, int responseMethod); - native public int mustAuthenticate(); + native public boolean mustAuthenticate(); native public int processAuthnResponseMsg(String authnResponseMsg); diff --git a/java/tests/LoginTest.java b/java/tests/LoginTest.java index d4455f34..018e8545 100644 --- a/java/tests/LoginTest.java +++ b/java/tests/LoginTest.java @@ -77,6 +77,7 @@ public class LoginTest extends TestCase { } public void test02_serviceProviderLogin() { + // Service provider login using HTTP redirect. String spContextDump = generateServiceProviderContextDump(); assertNotNull(spContextDump); LassoServer spContext = new LassoServer(spContextDump); @@ -86,9 +87,20 @@ public class LoginTest extends TestCase { LassoAuthnRequest authnRequest = (LassoAuthnRequest) spLoginContext.getRequest(); authnRequest.setPassive(false); authnRequest.setNameIdPolicy(Lasso.libNameIdPolicyTypeFederated); - // FIXME authnRequest.setConsent(Lasso.libConsentObtained); + authnRequest.setConsent(Lasso.libConsentObtained); authnRequest.setRelayState("fake"); assertEquals(spLoginContext.buildAuthnRequestMsg(), 0); + String authnRequestUrl = spLoginContext.getMsgUrl(); + String authnRequestMsg = authnRequestUrl.substring(authnRequestUrl.indexOf("?") + 1); + int method = Lasso.httpMethodRedirect; + + // Identity provider singleSignOn, for a user having no federation. + String idpContextDump = generateIdentityProviderContextDump(); + assertNotNull(idpContextDump); + LassoServer idpContext = new LassoServer(idpContextDump); + LassoLogin idpLoginContext = new LassoLogin(idpContext, null); + assertEquals(idpLoginContext.initFromAuthnRequestMsg(authnRequestMsg, method), 0); + assertTrue(idpLoginContext.mustAuthenticate()); } public static Test suite() { |
