Hi,
I got troubles on a svr4.0 box.
if you setup a snmp session and an asynchronous for example
get request:
set s [snmp session -community foo]
# the community does not exist, it will timeout
$s get sysDescr.0 { puts "something happens" }
the scotty interpreter will block... no prompt anymore.
My guess the problem (really stupid) is in the
tkEvent.c file, of the tk4.0 distribution.
here a raw fix :
numFound = select(numFds, (SELECT_MASK *) &ready[0],
(SELECT_MASK *) &ready[MASK_SIZE],
(SELECT_MASK *) &ready[2*MASK_SIZE], timeoutPtr);
if (numFound == -1) {
/*
* Some systems don't clear the masks after an error, so
* we have to do it here.
*/
memset((VOID *) ready, 0, 3*MASK_SIZE*sizeof(fd_mask));
}
if (numFound == 0) {
/*
* on a svr4.0 machine you have to do this also....
*/
memset((VOID *) ready, 0, 3*MASK_SIZE*sizeof(fd_mask));
goto checkTime;
}
goto checkFiles;
The similar stuff is in the idlelist (but correct in the svr4.0 case)
if (numFound <= 0) {
/*
* Some systems don't clear the masks after an error, so
* we have to do it here.
*/
memset((VOID *) ready, 0, 3*MASK_SIZE*sizeof(fd_mask));
}
I hope this can help
ciao,
Andrea
-- ``` (o o) +-----------------oOO--(_)--OOo-----------------------------+ | | |Andrea Fino - Internet E-Mail - af@iconet.ico.olivetti.com | | | |Phone +39-0125-521711 Fax +39-0125-521104 | | | | Of course these are my views...etc...etc... 8-) | | | |GCS | | -d+(---) -p+ c+++ l u++ e* m++ s/s n+ h f(+) g+ w+ t r y?| +-----------------------------------------------------------+