chiark
/
gitweb
/
~ian
/
chiark-tcl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
07851a4
)
actually clean out unwanted file handlers; docuemtn -reverse options in right place
author
ian
<ian>
Sun, 19 Dec 2004 23:26:32 +0000
(23:26 +0000)
committer
ian
<ian>
Sun, 19 Dec 2004 23:26:32 +0000
(23:26 +0000)
adns/adns.c
patch
|
blob
|
history
diff --git
a/adns/adns.c
b/adns/adns.c
index 01f0dc6718524d3a759cf47f8672591eab88ac3d..78b6d7925f791213ce40e5c68658878db3d87b45 100644
(file)
--- a/
adns/adns.c
+++ b/
adns/adns.c
@@
-37,6
+37,8
@@
* -quotefail-cname
* -cname-loose
* -cname-forbid
* -quotefail-cname
* -cname-loose
* -cname-forbid
+ * -reverse
+ * -reverse-any ZONE-A-LIKE
*
* adns new-resolver [RES-OPTIONS...] => RESOLVER
* options:
*
* adns new-resolver [RES-OPTIONS...] => RESOLVER
* options:
@@
-46,8
+48,6
@@
* -noenv|-debug|-logpid
* -checkc-entex
* -checkc-freq
* -noenv|-debug|-logpid
* -checkc-entex
* -checkc-freq
- * -reverse
- * -reverse-any ZONE-A-LIKE
* -config CONFIG-STRING
*
* adns set-default-resolver RESOLVER
* -config CONFIG-STRING
*
* adns set-default-resolver RESOLVER
@@
-301,8
+301,8
@@
static void destroy_resolver_defcb(ClientData resolver_v, Tcl_Interp *ip) {
}
int do_adns_destroy_resolver(ClientData cd, Tcl_Interp *ip, void *res_v) {
}
int do_adns_destroy_resolver(ClientData cd, Tcl_Interp *ip, void *res_v) {
- destroy_resolver(ip,res_v);
tabledataid_disposing(ip,res_v,&adnstcl_resolvers);
tabledataid_disposing(ip,res_v,&adnstcl_resolvers);
+ destroy_resolver(ip,res_v);
return TCL_OK;
}
return TCL_OK;
}
@@
-637,9
+637,15
@@
static void asynch_sethandlers_generic(Resolver *res,
if (FD_ISSET(fd, &want[0])) mask |= TCL_READABLE;
if (FD_ISSET(fd, &want[1])) mask |= TCL_WRITABLE;
if (FD_ISSET(fd, &want[2])) mask |= TCL_EXCEPTION;
if (FD_ISSET(fd, &want[0])) mask |= TCL_READABLE;
if (FD_ISSET(fd, &want[1])) mask |= TCL_WRITABLE;
if (FD_ISSET(fd, &want[2])) mask |= TCL_EXCEPTION;
- if (mask) Tcl_CreateFileHandler(fd,mask,asynch_filehandler,res);
- else Tcl_DeleteFileHandler(fd);
+ if (mask) {
+ Tcl_CreateFileHandler(fd,mask,asynch_filehandler,res);
+ FD_SET(fd, &res->handling[i]);
+ } else {
+ Tcl_DeleteFileHandler(fd);
+ FD_CLR(fd, &res->handling[i]);
+ }
}
}
+ res->maxfd= maxfd;
Tcl_DeleteTimerHandler(res->timertoken);
Tcl_DeleteTimerHandler(res->timertoken);