diff --git a/lib/net/ldap.rb b/lib/net/ldap.rb index f7a98ef5..9c13a97d 100644 --- a/lib/net/ldap.rb +++ b/lib/net/ldap.rb @@ -712,7 +712,7 @@ def open begin @open_connection = new_connection payload[:connection] = @open_connection - payload[:bind] = @open_connection.bind(@auth) + payload[:bind] = @result = @open_connection.bind(@auth) yield self ensure @open_connection.close if @open_connection diff --git a/lib/net/ldap/version.rb b/lib/net/ldap/version.rb index 0a57d621..d0c61424 100644 --- a/lib/net/ldap/version.rb +++ b/lib/net/ldap/version.rb @@ -1,5 +1,5 @@ module Net class LDAP - VERSION = "0.16.1" + VERSION = "0.16.2" end end diff --git a/test/integration/test_return_codes.rb b/test/integration/test_return_codes.rb index 13cb594a..30057a2a 100644 --- a/test/integration/test_return_codes.rb +++ b/test/integration/test_return_codes.rb @@ -4,6 +4,14 @@ # See: section 12.12 http://www.openldap.org/doc/admin24/overlays.html class TestReturnCodeIntegration < LDAPIntegrationTestCase + def test_open_error + @ldap.authenticate "cn=fake", "creds" + @ldap.open do + result = @ldap.get_operation_result + assert_equal Net::LDAP::ResultCodeInvalidCredentials, result.code + end + end + def test_operations_error refute @ldap.search(filter: "cn=operationsError", base: "ou=Retcodes,dc=example,dc=org") assert result = @ldap.get_operation_result