--- tcllib-1.11.1/modules/dns/dns.tcl.orig	2009-09-06 18:19:27.000000000 +0200
+++ tcllib-1.11.1/modules/dns/dns.tcl	2009-09-06 18:19:59.000000000 +0200
@@ -435,6 +435,7 @@
     upvar #0 $token state
     if {[info exists state]} {
         catch {close $state(sock)}
+        set state(sock) nil
         catch {after cancel $state(after)}
         unset state
     }
@@ -756,6 +757,7 @@
 	set state(status) error
     }
     catch {close $state(sock)}
+    set state(sock) nil
     catch {after cancel $state(after)}
     if {[info exists state(-command)] && $state(-command) != {}} {
 	if {[catch {eval $state(-command) {$token}} err]} {
