summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bind.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/bind.go b/bind.go
index 9176eca..b941f0c 100644
--- a/bind.go
+++ b/bind.go
@@ -35,7 +35,7 @@ func (l *Conn) Bind( username, password string ) *Error {
defer l.finishMessage( messageID )
packet = <-channel
- if packet != nil {
+ if packet == nil {
return NewError( ErrorNetwork, os.NewError( "Could not retrieve response" ) )
}
@@ -46,5 +46,10 @@ func (l *Conn) Bind( username, password string ) *Error {
ber.PrintPacket( packet )
}
+ result_code, result_description := getLDAPResultCode( packet )
+ if result_code != 0 {
+ return NewError( result_code, os.NewError( result_description ) )
+ }
+
return nil
}