You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2017/11/15 21:05:49 UTC
[25/31] qpid-proton git commit: PROTON-1655: [go] TestAuthPlain fails
when SASL_IMPL is none
PROTON-1655: [go] TestAuthPlain fails when SASL_IMPL is none
Added electron.SASLExtended() check for extended SASL support.
Skip tests that can't be run without extended support when it is not available.
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/91195b58
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/91195b58
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/91195b58
Branch: refs/heads/go1
Commit: 91195b58019a1be801e4fc9d8fd0a3f7ab433f3e
Parents: a1ceb2f
Author: Alan Conway <ac...@redhat.com>
Authored: Mon Oct 30 17:14:26 2017 -0400
Committer: Alan Conway <ac...@redhat.com>
Committed: Mon Oct 30 17:14:26 2017 -0400
----------------------------------------------------------------------
.../bindings/go/src/qpid.apache.org/electron/auth_test.go | 9 +++++++++
.../go/src/qpid.apache.org/electron/connection.go | 8 ++++++++
.../bindings/go/src/qpid.apache.org/proton/wrappers.go | 10 ++++++++++
3 files changed, 27 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/91195b58/proton-c/bindings/go/src/qpid.apache.org/electron/auth_test.go
----------------------------------------------------------------------
diff --git a/proton-c/bindings/go/src/qpid.apache.org/electron/auth_test.go b/proton-c/bindings/go/src/qpid.apache.org/electron/auth_test.go
index 73a9299..9eb48c0 100644
--- a/proton-c/bindings/go/src/qpid.apache.org/electron/auth_test.go
+++ b/proton-c/bindings/go/src/qpid.apache.org/electron/auth_test.go
@@ -57,6 +57,9 @@ func TestAuthAnonymous(t *testing.T) {
}
func TestAuthPlain(t *testing.T) {
+ if !SASLExtended() {
+ t.Skip()
+ }
fatalIf(t, configureSASL())
got, err := testAuthClientServer(t,
[]ConnectionOption{SASLAllowInsecure(true), SASLAllowedMechs("PLAIN"), User("fred@proton"), Password([]byte("xxx"))},
@@ -66,6 +69,9 @@ func TestAuthPlain(t *testing.T) {
}
func TestAuthBadPass(t *testing.T) {
+ if !SASLExtended() {
+ t.Skip()
+ }
fatalIf(t, configureSASL())
_, err := testAuthClientServer(t,
[]ConnectionOption{SASLAllowInsecure(true), SASLAllowedMechs("PLAIN"), User("fred@proton"), Password([]byte("yyy"))},
@@ -76,6 +82,9 @@ func TestAuthBadPass(t *testing.T) {
}
func TestAuthBadUser(t *testing.T) {
+ if !SASLExtended() {
+ t.Skip()
+ }
fatalIf(t, configureSASL())
_, err := testAuthClientServer(t,
[]ConnectionOption{SASLAllowInsecure(true), SASLAllowedMechs("PLAIN"), User("foo@bar"), Password([]byte("yyy"))},
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/91195b58/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go
----------------------------------------------------------------------
diff --git a/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go b/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go
index 267ee1e..2749b2b 100644
--- a/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go
+++ b/proton-c/bindings/go/src/qpid.apache.org/electron/connection.go
@@ -374,6 +374,14 @@ func GlobalSASLConfigDir(dir string) { globalSASLConfigDir = dir }
//
func GlobalSASLConfigName(dir string) { globalSASLConfigName = dir }
+// Do we support extended SASL negotiation?
+// All implementations of Proton support ANONYMOUS and EXTERNAL on both
+// client and server sides and PLAIN on the client side.
+//
+// Extended SASL implememtations use an external library (Cyrus SASL)
+// to support other mechanisms beyond these basic ones.
+func SASLExtended() bool { return proton.SASLExtended() }
+
var (
globalSASLConfigName string
globalSASLConfigDir string
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/91195b58/proton-c/bindings/go/src/qpid.apache.org/proton/wrappers.go
----------------------------------------------------------------------
diff --git a/proton-c/bindings/go/src/qpid.apache.org/proton/wrappers.go b/proton-c/bindings/go/src/qpid.apache.org/proton/wrappers.go
index 879ad53..09f3e65 100644
--- a/proton-c/bindings/go/src/qpid.apache.org/proton/wrappers.go
+++ b/proton-c/bindings/go/src/qpid.apache.org/proton/wrappers.go
@@ -448,3 +448,13 @@ func (t Transport) Push(bytes []byte) int {
func (t Transport) SASL() SASL {
return SASL{C.pn_sasl(t.pn)}
}
+
+// Do we support extended SASL negotiation?
+// All implementations of Proton support ANONYMOUS and EXTERNAL on both
+// client and server sides and PLAIN on the client side.
+//
+// Extended SASL implememtations use an external library (Cyrus SASL)
+// to support other mechanisms beyond these basic ones.
+func SASLExtended() bool {
+ return bool(C.pn_sasl_extended())
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org