{ "info": { "author": "John Hagen", "author_email": "johnthagen@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "``pytap2`` - Object oriented interface to Linux Tun/Tap devices\n===============================================================\n\n.. image:: https://travis-ci.org/johnthagen/pytap2.svg?branch=master\n :target: https://travis-ci.org/johnthagen/pytap2\n\n.. image:: https://codeclimate.com/github/johnthagen/pytap2/badges/gpa.svg\n :target: https://codeclimate.com/github/johnthagen/pytap2\n\n.. image:: https://codeclimate.com/github/johnthagen/pytap2/badges/issue_count.svg\n :target: https://codeclimate.com/github/johnthagen/pytap2\n\n\n.. image:: https://codecov.io/github/johnthagen/pytap2/coverage.svg\n :target: https://codecov.io/github/johnthagen/pytap2\n\n.. image:: https://img.shields.io/pypi/v/pytap2.svg\n :target: https://pypi.python.org/pypi/pytap2\n\n.. image:: https://img.shields.io/pypi/status/pytap2.svg\n :target: https://pypi.python.org/pypi/pytap2\n\n.. image:: https://img.shields.io/pypi/pyversions/pytap2.svg\n :target: https://pypi.python.org/pypi/pytap2/\n\nFork of `PyTap `_ that supports Python 2 & 3.\n\nInstallation\n------------\n\nYou can install, upgrade, and uninstall ``pytap2`` with these commands:\n\n.. code:: shell-session\n\n $ pip install pytap2\n $ pip install --upgrade pytap2\n $ pip uninstall pytap2\n\nUsage\n-----\n\nUsing as a context manager automatically brings up the device and closes it at the\nend of the ``with`` block.\n\n.. code:: python\n\n from pytap2 import TapDevice\n\n with TapDevice() as device:\n device.ifconfig(mtu=1300)\n device.write(b'0000')\n\nOr manually call ``up()`` and ``close()``.\n\n.. code:: python\n\n from pytap2 import TapDevice\n\n device = TapDevice()\n device.up()\n device.ifconfig(mtu=1300)\n device.write(b'0000')\n device.close()\n\nThe ``fileno()`` method is defined, so that the device object can be passed directly\nto `select() `_.\n\nReleases\n--------\n\n1.5.0 - 2018-07-09\n^^^^^^^^^^^^^^^^^^\n\nSupport Python 3.7.\n\n1.4.0 - 2017-10-24\n^^^^^^^^^^^^^^^^^^\n\nAllow disabling packet information header (``IFF_NO_PI``) and default ``read()`` to read entire\nMTU worth of data plus the packet information header if present.\n\n1.3.0 - 2017-07-31\n^^^^^^^^^^^^^^^^^^\n\nAdd ``fileno()`` method to support ``select()`` calls.\n\n1.2.0 - 2017-06-19\n^^^^^^^^^^^^^^^^^^\n\nContext manager support added.\n\n1.1.0 - 2017-06-17\n^^^^^^^^^^^^^^^^^^\n\nAllow ``read()`` to be called with a specific number of bytes to read.\n\n\n1.0.0 - 2017-06-16\n^^^^^^^^^^^^^^^^^^\n\nInitial release that supports Python 2 and 3.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/johnthagen/pytap2", "keywords": "pytap,tun,tap,networking", "license": "", "maintainer": "", "maintainer_email": "", "name": "pytap2", "package_url": "https://pypi.org/project/pytap2/", "platform": "", "project_url": "https://pypi.org/project/pytap2/", "project_urls": { "Homepage": "https://github.com/johnthagen/pytap2" }, "release_url": "https://pypi.org/project/pytap2/1.5.0/", "requires_dist": null, "requires_python": "", "summary": "Object-oriented wrapper around the Linux Tun/Tap device for Python 2 and 3", "version": "1.5.0" }, "last_serial": 4045517, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "9580c204edb16c1ff257a8a4d91e984a", "sha256": "362943b9bd67f04e4c5bf2d10f20aff5fe0213101dd99a528b7a67934527c5b7" }, "downloads": -1, "filename": "pytap2-1.0.0.tar.gz", "has_sig": false, "md5_digest": "9580c204edb16c1ff257a8a4d91e984a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3680, "upload_time": "2017-06-17T01:50:49", "url": "https://files.pythonhosted.org/packages/48/6b/935764677c9ef5238f3e3f6534ff416fa44f052471442bbed5633191f479/pytap2-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "5c0e518cd698ede9337091502a7e24f9", "sha256": "e0a281bd175574a8d5bbd74fc480eba4da8980810d89753a1493549c4e3e2097" }, "downloads": -1, "filename": "pytap2-1.1.0.tar.gz", "has_sig": false, "md5_digest": "5c0e518cd698ede9337091502a7e24f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3786, "upload_time": "2017-06-17T14:14:02", "url": "https://files.pythonhosted.org/packages/f4/44/8c27994f55acce0a25b169627afe699e11cf2a7ec1467661047517a0cc58/pytap2-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "9fe778c661bd05b4e6fe7108cf369c96", "sha256": "63e29f7166f5618dae3f100e08f6d3227135e9446d3c88ea0de5968084c8d2cc" }, "downloads": -1, "filename": "pytap2-1.2.0.tar.gz", "has_sig": false, "md5_digest": "9fe778c661bd05b4e6fe7108cf369c96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3956, "upload_time": "2017-06-19T21:26:37", "url": "https://files.pythonhosted.org/packages/88/c6/a899c4fa028941456df76838712419198247297c7119fd1e29e96db83d83/pytap2-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "ee40c3c32ea6750854aa085debfb07c6", "sha256": "65e75ded09e21c66284ff5abb3f285728b588ba11bae468b084ee4f97d9cf2c2" }, "downloads": -1, "filename": "pytap2-1.3.0.tar.gz", "has_sig": false, "md5_digest": "ee40c3c32ea6750854aa085debfb07c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4115, "upload_time": "2017-07-31T12:20:42", "url": "https://files.pythonhosted.org/packages/36/ae/a5a7f65fcbce67a3c2a7af0beddd10611618d0ca93cdf7e41c9966a43a7a/pytap2-1.3.0.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "20864850b5400929130691136f1a7446", "sha256": "87abce81c2e91dabe631122f91995d8e64ac11d8db6bd33198486842e6704317" }, "downloads": -1, "filename": "pytap2-1.4.0.tar.gz", "has_sig": false, "md5_digest": "20864850b5400929130691136f1a7446", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4664, "upload_time": "2017-10-25T01:35:32", "url": "https://files.pythonhosted.org/packages/d8/59/d5483ddae8f399281b77eafe12d055707be544be80075fd1b70aba8eae46/pytap2-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "388bb41d00f18149d2185e1503e6b360", "sha256": "eaf6b4594da931f54b1337f7941e2141fe683bceaa7fa178d79c768e6163f6e9" }, "downloads": -1, "filename": "pytap2-1.5.0.tar.gz", "has_sig": false, "md5_digest": "388bb41d00f18149d2185e1503e6b360", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4711, "upload_time": "2018-07-09T23:55:35", "url": "https://files.pythonhosted.org/packages/a1/ee/c3183ec1571a92c13cc356f92d6d84d339c4476ce73552ae3ba79b62cdea/pytap2-1.5.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "388bb41d00f18149d2185e1503e6b360", "sha256": "eaf6b4594da931f54b1337f7941e2141fe683bceaa7fa178d79c768e6163f6e9" }, "downloads": -1, "filename": "pytap2-1.5.0.tar.gz", "has_sig": false, "md5_digest": "388bb41d00f18149d2185e1503e6b360", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4711, "upload_time": "2018-07-09T23:55:35", "url": "https://files.pythonhosted.org/packages/a1/ee/c3183ec1571a92c13cc356f92d6d84d339c4476ce73552ae3ba79b62cdea/pytap2-1.5.0.tar.gz" } ] }