136 |
$idxinfo(control) $idx $line |
$idxinfo(control) $idx $line |
137 |
} |
} |
138 |
} else { |
} else { |
139 |
|
putloglev d * "net: eof!(read) idx $idx" |
140 |
# Send {} to the control proc and kill the sock/idx. |
# Send {} to the control proc and kill the sock/idx. |
141 |
# Note, A check on valididx (from the control proc) is one way to tell wether or not an EOF has actually been received. |
# Note, A check on valididx (from the control proc) is one way to tell wether or not an EOF has actually been received. |
142 |
$idxinfo(control) $idx {} |
$idxinfo(control) $idx {} |
148 |
foreach {a d} [::tcldrop::idx::Info $idx] { array set idxinfo $d } |
foreach {a d} [::tcldrop::idx::Info $idx] { array set idxinfo $d } |
149 |
catch { killutimer $idxinfo(connecttimer) } |
catch { killutimer $idxinfo(connecttimer) } |
150 |
catch { fileevent $idxinfo(sock) writable {} } |
catch { fileevent $idxinfo(sock) writable {} } |
151 |
if {[info exists idxinfo(writable)]} { |
if {[info exists idxinfo(writable)]} { $idxinfo(writable) $idx } |
|
$idxinfo(writable) $idx |
|
|
} |
|
152 |
} |
} |
153 |
|
|
154 |
proc ::tcldrop::conn::ConnectTimeout {idx} { killidx $idx } |
proc ::tcldrop::conn::ConnectTimeout {idx} { |
155 |
|
putloglev d * "net: timeout!(connect) idx $idx" |
156 |
|
killidx $idx |
157 |
|
} |