Metadata-Version: 1.0
Name: python-ping
Version: 2011.10.17.376a019
Summary: A pure python ICMP ping implementation using raw sockets.
Home-page: https://github.com/jedie/python-ping/
Author: Jens Diemer
Author-email: python-ping@jensdiemer.de
License: UNKNOWN
Description: A pure python ping implementation using raw sockets.
        
        Note that ICMP messages can only be sent from processes running as root
        (in Windows, you must run this script as 'Administrator').
        
        Original Version from `Matthew Dixon Cowles <ftp://ftp.visi.com/users/mdc/ping.py>`_
        
        * copyleft 1989-2011 by the python-ping team, see `AUTHORS <https://github.com/jedie/python-ping/blob/master/AUTHORS>`_ for more details.
        
        * license: GNU GPL v2, see `LICENSE <https://github.com/jedie/python-ping/blob/master/LICENSE>`_ for more details.
        
        usage
        =====
        
        ::
        
            ~/python-ping$ sudo ./ping.py google.com
            
            PYTHON-PING google.com (209.85.148.99): 55 data bytes
            64 bytes from google.com (209.85.148.99): icmp_seq=0 ttl=54 time=56.2 ms
            64 bytes from google.com (209.85.148.99): icmp_seq=1 ttl=54 time=55.7 ms
            64 bytes from google.com (209.85.148.99): icmp_seq=2 ttl=54 time=55.5 ms
            
            ----google.com PYTHON PING Statistics----
            3 packets transmitted, 3 packets received, 0.0% packet loss
            round-trip (ms)  min/avg/max = 55.468/55.795/56.232
        
        -----
        TODOs
        -----
        
        * refactor ping.py
        
        * create a CLI interface
        
        * add a "suprocess ping", with output parser
        
        ----------
        contribute
        ----------
        
        `Fork this repo <http://help.github.com/fork-a-repo/>`_ on `GitHub <https://github.com/jedie/python-ping/>`_ and `send pull requests <http://help.github.com/send-pull-requests/>`_. Thank you.
        
        ----------------
        Revision history
        ----------------
        
        Oct. 17, 2011
        -------------
        
        * `Bugfix if host is unknown <https://github.com/jedie/python-ping/pull/6>`_
        
        Oct. 12, 2011
        -------------
        
        Merge sources and create a seperate github repository:
        
        * `https://github.com/jedie/python-ping <https://github.com/jedie/python-ping>`_
        
        Add a simple CLI interface.
        
        September 12, 2011
        ------------------
        
        Bugfixes + cleanup by Jens Diemer
        Tested with Ubuntu + Windows 7
        
        September 6, 2011
        -----------------
        
        `Cleanup by Martin Falatic. <http://www.falatic.com/index.php/39/pinging-with-python>`_
        Restored lost comments and docs. Improved functionality: constant time between
        pings, internal times consistently use milliseconds. Clarified annotations
        (e.g., in the checksum routine). Using unsigned data in IP & ICMP header
        pack/unpack unless otherwise necessary. Signal handling. Ping-style output
        formatting and stats.
        
        August 3, 2011
        --------------
        
        Ported to py3k by Zach Ware. Mostly done by 2to3; also minor changes to
        deal with bytes vs. string changes (no more ord() in checksum() because
        >source_string< is actually bytes, added .encode() to data in
        send_one_ping()).  That's about it.
        
        March 11, 2010
        --------------
        
        changes by Samuel Stauffer:
        replaced time.clock with default_timer which is set to
        time.clock on windows and time.time on other systems.
        
        November 8, 2009
        ----------------
        
        Fixes by `George Notaras <http://www.g-loaded.eu/2009/10/30/python-ping/>`_,
        reported by `Chris Hallman <http://cdhallman.blogspot.com>`_:
        
        Improved compatibility with GNU/Linux systems.
        
        Changes in this release:
        
        Re-use time.time() instead of time.clock(). The 2007 implementation
        worked only under Microsoft Windows. Failed on GNU/Linux.
        time.clock() behaves differently under `the two OSes <http://docs.python.org/library/time.html#time.clock>`_.
        
        May 30, 2007
        ------------
        
        little `rewrite by Jens Diemer <http://www.python-forum.de/post-69122.html#69122>`_:
        
        * change socket asterisk import to a normal import
        
        * replace time.time() with time.clock()
        
        * delete "return None" (or change to "return" only)
        
        * in checksum() rename "str" to "source_string"
        
        December 4, 2000
        ----------------
        
        Changed the struct.pack() calls to pack the checksum and ID as
        unsigned. My thanks to Jerome Poincheval for the fix.
        
        November 22, 1997
        -----------------
        
        Initial hack. Doesn't do much, but rather than try to guess
        what features I (or others) will want in the future, I've only
        put in what I need now.
        
        December 16, 1997
        -----------------
        
        For some reason, the checksum bytes are in the wrong order when
        this is run under Solaris 2.X for SPARC but it works right under
        Linux x86. Since I don't know just what's wrong, I'll swap the
        bytes always and then do an htons().
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: GNU General Public License (GPL)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Networking :: Monitoring
