Index: modules/ldap/ldap.man ================================================================== --- modules/ldap/ldap.man +++ modules/ldap/ldap.man @@ -1,7 +1,7 @@ [comment {-*- tcl -*- doctools manpage}] -[vset VERSION 1.9.1] +[vset VERSION 1.9.2] [manpage_begin ldap n [vset VERSION]] [keywords {directory access}] [keywords internet] [keywords ldap] [keywords {ldap client}] Index: modules/ldap/ldap.tcl ================================================================== --- modules/ldap/ldap.tcl +++ modules/ldap/ldap.tcl @@ -42,11 +42,11 @@ # #----------------------------------------------------------------------------- package require Tcl 8.4 package require asn 0.7 -package provide ldap 1.9.1 +package provide ldap 1.9.2 namespace eval ldap { namespace export connect secure_connect \ disconnect \ @@ -766,12 +766,16 @@ return } else { set conn(pdu,partial) 1 append conn(pdu,received) $type } - } - eof { + } + partial { + # See ticket https://core.tcl.tk/tcllib/tktview/c247ed5db42e373470bf8a6302717e76eb3c6106 + return + } + eof { CleanupWaitingMessages $handle set conn(lastError) "Server closed connection" catch {close $conn(sock)} return } @@ -778,16 +782,15 @@ default { CleanupWaitingMessages $handle set bytes $type[read $conn(sock)] binary scan $bytes h* values set conn(lastError) [format \ - "Error reading SEQUENCE response for handle %s : %s : %s" $handle $code $values] + "Error reading SEQUENCE response for handle %s : %s : %s" $handle $code $values] return - } + } } } - # fetch the length if {[::info exists conn(pdu,length)] && $conn(pdu,length) >= 0} { # we already have a decoded length } else { Index: modules/ldap/pkgIndex.tcl ================================================================== --- modules/ldap/pkgIndex.tcl +++ modules/ldap/pkgIndex.tcl @@ -1,7 +1,7 @@ # Tcl package index file, version 1.1 if {![package vsatisfies [package provide Tcl] 8.4]} {return} -package ifneeded ldap 1.9.1 [list source [file join $dir ldap.tcl]] +package ifneeded ldap 1.9.2 [list source [file join $dir ldap.tcl]] # the OO level wrapper for ldap package ifneeded ldapx 1.0 [list source [file join $dir ldapx.tcl]]