aaronhurt / tcl-scripts Goto Github PK
View Code? Open in Web Editor NEWmisc eggdrop and standalone tcl scripts
misc eggdrop and standalone tcl scripts
rblchk.tcl will not return a positive result eventhough an IP is listed when using DNSBLs that do not provide a TXT record, such as rbl.efnetrbl.org which only provides an A record, and thus allows malicious clients to go unnoticed.
Hey, can you fix the script pls - looks like that espn or whatever have change the URL. The Bot refreshs at the partyline but no output at the channels :(
I came across this when I saw Tornevall had some issues.
This kind of error (timed out connection, shown below) seems to block the calling proc from continuing any further if this call fails. In the circumstances that I use this script this is bad and continuance is wanted regardless of a timed out connection to some blacklist DNS server.
The error:
Tcl error: Error calling dig: (/usr/bin/dig 230.88.162.195.dnsbl.tornevall.org ANY):
Tcl error: ; <<>> DiG 9.5.2-RedHat-9.5.2-1.fc10 <<>> 230.88.162.195.dnsbl.tornevall.org ANY
Tcl error: ;; global options: printcmd
Tcl error: ;; connection timed out; no servers could be reached
Tcl error: child process exited abnormally
Luckily this timeout does not seem to prevent other blacklist DNS servers from being queried (but it of course slows it down), but this has me confused a bit because there are 2 other blacklists configured aswell, so why does it even throw this error unless for example ALL blacklists were unreachable due to DNS resolution issues on the network (which I simulated by blocking all outgoing port 53 traffic)?
Couldn't this be made so that no error is returned in the case of a timed out connection? Ie, only make it error for more serious problems with calling the dig binary (like for example failing to execute the binary because it is set to chmod 0000 or something)?
Also, when I was reproducing this error I saw that every blacklist lookup seems to hang the bot untill the error is returned by the ::rblchk::dig proc, some good 20 seconds later.
I wanted to quickly work around the problem by making it return 0 or 1 but that actually gave another problem: every configured blacklist lookup returned a positive result while in reality the IP was not listed at all so I had to undo that again.
Edit: I just overlooked a small detail in that error output, the error is due to the dig process not exiting cleanly due to this time out. (duh!)
Perhaps the workings of how the script checks for availability of the dig binary should be changed because current behavior is not really ideal since there's no real issue here, only a timed out lookup.
Sorry if I don't make sense somewhere, it's late in the morning and I've been testing/working this for a while. ;)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.