Don't Use This
This fork has been ageing here for a while. The original script was written in 1998, and has been kept alive by a number of people (myself included) who kept doing small tweaks here and there to make it compliant with the latest Python versions. This has been proved by the mere fact that there are at least three variants of this in PyPI, still none of which seem to have improved the overall quality of the code, which quite honestly makes me ashamed of having this on my GitHub.
I had plans on updating this for a while now, given that my latest commits have been noticed to be buggy by the people in the comments, but this codebase is just too old to be saved in my opinion. I thought this would benefit much more from a complete rewrite, especially cause this is GPL Licensed and therefore impossible to use for any serious commercial project. So now I am attempting to do just that.
So what should I use?
However some people might want something more feature-packed, and that is what
my full rewrite aims for. It has completely
new features such as a modular set of functions that can be used separately from the
script if you wish to, functions that are easier to interface with for things that are
used frequently such as a probing function, which determines if the host is up depending
on a given threshold. It also does things the other one doesn't and neither does this one,
such as actually verifying checksums for corrupted packets or for the data itself, it
actually increments the
seqn in the request packets, it actually generates identifiers
in a way that is not completely idiotic (
int((id(timeout) * random()) % 65535)), and many
other things. Also, it's BSD Licensed so you can use it for commercial projects however you'd
The only reason you should still use this version is if you're still running Python 2. In that case you should probably look at another fork of this (there are plenty) cause mine is broken and I don't intend to fix this legacy nightmare codebase anymore.
Thanks for reading.