You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2019/09/18 11:36:27 UTC
[tinkerpop] branch master updated (e1d31e8 -> 109136d)
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git.
from e1d31e8 Merge branch 'tp34'
add fec2522 TINKERPOP-2132 Preserved original error messaging prior to #1187
new 9a62d92 Merge branch 'tp33' into tp34
new 109136d Merge branch 'tp34'
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../tinkerpop/gremlin/driver/Connection.java | 12 ++++--
.../tinkerpop/gremlin/driver/ConnectionPool.java | 4 +-
.../apache/tinkerpop/gremlin/driver/Handler.java | 45 +++++++++++++++++++---
.../server/handler/SaslAuthenticationHandler.java | 13 ++++---
.../server/GremlinServerAuthIntegrateTest.java | 4 +-
.../server/GremlinServerAuthKrb5IntegrateTest.java | 13 ++-----
...tractGremlinServerChannelizerIntegrateTest.java | 4 +-
7 files changed, 65 insertions(+), 30 deletions(-)
[tinkerpop] 02/02: Merge branch 'tp34'
Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 109136d0d8275bb6eebd4f31e4080f2423db6ca0
Merge: e1d31e8 9a62d92
Author: Stephen Mallette <sp...@genoprime.com>
AuthorDate: Wed Sep 18 07:36:14 2019 -0400
Merge branch 'tp34'
.../tinkerpop/gremlin/driver/Connection.java | 12 ++++--
.../tinkerpop/gremlin/driver/ConnectionPool.java | 4 +-
.../apache/tinkerpop/gremlin/driver/Handler.java | 45 +++++++++++++++++++---
.../server/handler/SaslAuthenticationHandler.java | 13 ++++---
.../server/GremlinServerAuthIntegrateTest.java | 4 +-
.../server/GremlinServerAuthKrb5IntegrateTest.java | 13 ++-----
...tractGremlinServerChannelizerIntegrateTest.java | 4 +-
7 files changed, 65 insertions(+), 30 deletions(-)
[tinkerpop] 01/02: Merge branch 'tp33' into tp34
Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 9a62d92c2fd5645f4885f4c4ea13d120daaf7cb1
Merge: 8dcfb5c fec2522
Author: Stephen Mallette <sp...@genoprime.com>
AuthorDate: Wed Sep 18 07:36:06 2019 -0400
Merge branch 'tp33' into tp34
.../tinkerpop/gremlin/driver/Connection.java | 12 ++++--
.../tinkerpop/gremlin/driver/ConnectionPool.java | 4 +-
.../apache/tinkerpop/gremlin/driver/Handler.java | 45 +++++++++++++++++++---
.../server/handler/SaslAuthenticationHandler.java | 13 ++++---
.../server/GremlinServerAuthIntegrateTest.java | 4 +-
.../server/GremlinServerAuthKrb5IntegrateTest.java | 13 ++-----
...tractGremlinServerChannelizerIntegrateTest.java | 4 +-
7 files changed, 65 insertions(+), 30 deletions(-)
diff --cc gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Handler.java
index 74cf761,18655ce..774adaf
--- a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Handler.java
+++ b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/Handler.java
@@@ -83,15 -84,29 +85,29 @@@ final class Handler
@Override
protected void channelRead0(final ChannelHandlerContext channelHandlerContext, final ResponseMessage response) throws Exception {
- // We are only interested in AUTHENTICATE responses here. Everything else can
- // get passed down the pipeline
+ // We are only interested in AUTHENTICATE or UNAUTHORIZED responses here. Everything else can
+ // get passed down the pipeline.
+ if (response.getStatus().getCode() == ResponseStatusCode.UNAUTHORIZED)
+ channelHandlerContext.attr(saslClientKey).set(null);
+
if (response.getStatus().getCode() == ResponseStatusCode.AUTHENTICATE) {
- final Attribute<SaslClient> saslClient = channelHandlerContext.attr(saslClientKey);
- final Attribute<Subject> subject = channelHandlerContext.attr(subjectKey);
+ final Attribute<SaslClient> saslClient = ((AttributeMap) channelHandlerContext).attr(saslClientKey);
+ final Attribute<Subject> subject = ((AttributeMap) channelHandlerContext).attr(subjectKey);
final RequestMessage.Builder messageBuilder = RequestMessage.build(Tokens.OPS_AUTHENTICATION);
+
// First time through we don't have a sasl client
if (saslClient.get() == null) {
- subject.set(login());
+ try {
+ subject.set(login());
+ } catch (LoginException le) {
+ // prevent the client side LoginException from bubbling up since Connection.validate() swallows
+ // the LoginException and doesn't give feedback to the user.
+ final ResponseMessage clientSideError = ResponseMessage.build(response.getRequestId())
+ .code(ResponseStatusCode.FORBIDDEN).statusMessage(le.getMessage()).create();
+ channelHandlerContext.fireChannelRead(clientSideError);
+ return;
+ }
+
try {
saslClient.set(saslClient(getHostName(channelHandlerContext)));
} catch (SaslException saslException) {
diff --cc gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerAuthKrb5IntegrateTest.java
index 5707ca9,7205c7b..0ca812d
--- a/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerAuthKrb5IntegrateTest.java
+++ b/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerAuthKrb5IntegrateTest.java
@@@ -49,11 -46,10 +47,10 @@@ import java.util.concurrent.TimeUnit
import java.util.concurrent.ExecutionException;
import static org.apache.tinkerpop.gremlin.process.traversal.AnonymousTraversalSource.traversal;
+import static org.hamcrest.MatcherAssert.assertThat;
- import static org.hamcrest.core.AnyOf.anyOf;
import static org.hamcrest.core.IsInstanceOf.instanceOf;
+ import static org.hamcrest.core.StringContains.containsString;
import static org.junit.Assert.assertEquals;
- import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.assertThat;
import static org.junit.Assert.fail;
/**