{ "info": { "author": "Vince Spicer", "author_email": "vinces1979@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "repoze.what.plugins.ip\n======================\n\nIt is a repoze.what_ plugin that provides an ip_from predicate.\n\nInstallation\n------------\n\neasy_install_::\n\n $ /bin/easy_install repoze.what.plugins.ip\n\npip_::\n\n $ /bin/pip install repoze.what.plugins.ip\n\nSource\n------\n\nThe source code can be found at code.google.com_.\n\nUsage\n-----\n\n``ip_from([allowed=None], [proxies=None])`` checks whether REMOTE_ADDR in the\nenvironment points to an allowed IP address. If HTTP_X_FORWARDED_FOR is set\nin the environment (meaning proxy access) then REMOTE_ADDR is treated as a proxy\naddress and HTTP_X_FORWARDED_FOR as an originating IP address.\n\n``allowed`` optional, default - ``None``\n A list of IPs to allow access. Can be a string which is then interpreted as\n a single IP address\n\n``proxies`` optional, default - ``None``\n If a list or tuple provided then treated as a list of authorized proxy IP\n addresses.\n\n If a string or unicode provided then treated as a single IP address.\n\n Any other value - ``bool(proxies) == True`` means that all proxies are\n accepted\n\nYou can filter the incoming IP address::\n\n >>> from repoze.what.plugins.ip import ip_from\n >>> p = ip_from(allowed=['192.168.1.1'])\n >>> env = {'REMOTE_ADDR': '192.168.1.1'}\n >>> p.is_met(env)\n True\n >>> env = {'REMOTE_ADDR': '192.168.1.10'}\n >>> p.is_met(env)\n False\n\nBy default proxy access is disabled. You can enable it with ``proxies=True``::\n\n >>> p = ip_from(allowed=['192.168.0.0/24'], proxies=True)\n >>> env = {\n ... 'REMOTE_ADDR': '192.168.1.1', # proxy\n ... 'HTTP_X_FORWARDED_FOR': '192.168.1.5' # origin\n ... }\n >>> p.is_met(env)\n True\n\nAnd you can also explicitly specify proxies to allow::\n\n >>> p = ip_from(allowed='192.168.1.5', proxies=['192.168.0.0/24'])\n >>> env = {\n ... 'REMOTE_ADDR': '192.168.1.1', # proxy\n ... 'HTTP_X_FORWARDED_FOR': '192.168.1.5' # origin\n ... }\n >>> p.is_met(env)\n True\n\n.. _repoze.what: http://what.repoze.org/docs/1.0/ \n.. _easy_install: http://peak.telecommunity.com/DevCenter/EasyInstall \n.. _pip: http://pip.openplans.org/ \n.. _code.google.com: http://code.google.com/p/repoze-what-plugins-ip/", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://code.google.com/p/repoze-what-plugins-ip", "keywords": "wsgi repoze what paste paster google ip ipaddr proxy\n remote_addr x_forwarded_for http_x_forwarded_for", "license": "Apache 2.0", "maintainer": null, "maintainer_email": null, "name": "repoze.what.plugins.ip", "package_url": "https://pypi.org/project/repoze.what.plugins.ip/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/repoze.what.plugins.ip/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://code.google.com/p/repoze-what-plugins-ip" }, "release_url": "https://pypi.org/project/repoze.what.plugins.ip/0.2/", "requires_dist": null, "requires_python": null, "summary": "ip based restrictions for repoze.what.", "version": "0.2" }, "last_serial": 798840, "releases": { "0.1.3.1": [ { "comment_text": "", "digests": { "md5": "9b60d3f4059f93292026fd0f7b01abe9", "sha256": "16a917b0ca0886b38978b10a1f94a344ee70d8bfec97504befb0fc1675baefb0" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.1.3.1-py2.5.egg", "has_sig": false, "md5_digest": "9b60d3f4059f93292026fd0f7b01abe9", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 26056, "upload_time": "2009-07-20T20:21:34", "url": "https://files.pythonhosted.org/packages/8c/9d/785ae26935dc27dc3bbe12ffad293e0ca7abdde6e1be05f27056a7cf44b8/repoze.what.plugins.ip-0.1.3.1-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "0612f1fb2b2f82be081c5f8b9249ef93", "sha256": "9d1ba73405e3b926ef4f9a987d291e17b019f4fa7b5120f8b947522625d32eff" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.1.3.1-py2.6.egg", "has_sig": false, "md5_digest": "0612f1fb2b2f82be081c5f8b9249ef93", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 26019, "upload_time": "2009-07-20T20:21:16", "url": "https://files.pythonhosted.org/packages/12/21/d0a1ed272affd0e49daa8f3253fcd49c1ab4d5a3de46fa192ec41de7e31e/repoze.what.plugins.ip-0.1.3.1-py2.6.egg" } ], "0.1.3.2": [ { "comment_text": "", "digests": { "md5": "d3fd5c6cc8b54197ef093be0ad42b1a3", "sha256": "52fe3f51e20b82b66f4acef4abc628d002fead44363f985ea0cf66b4ea63591b" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.1.3.2-py2.5.egg", "has_sig": false, "md5_digest": "d3fd5c6cc8b54197ef093be0ad42b1a3", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 26207, "upload_time": "2009-07-20T20:28:34", "url": "https://files.pythonhosted.org/packages/4f/a7/caf021aeab4f115365328a6818c264b3244626a80fda3d762b83f3b4a6d6/repoze.what.plugins.ip-0.1.3.2-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "f67dfbb35ade8f33ed242ea4fa27b311", "sha256": "4dc5a140edb8801996b01855ebffda18182bb96717afc3132a3602d95692c998" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.1.3.2-py2.6.egg", "has_sig": false, "md5_digest": "f67dfbb35ade8f33ed242ea4fa27b311", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 26170, "upload_time": "2009-07-20T20:28:38", "url": "https://files.pythonhosted.org/packages/8e/3c/8fa529d08608583092b1b912298433ef79d2159ec0cb1673728cc3ed1016/repoze.what.plugins.ip-0.1.3.2-py2.6.egg" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "af10cb857fc8f650f68445936cac5789", "sha256": "c37002d5a76d1eee85cd92da226ee7ab01ac1199a80a0ad5a81b3599972b77e2" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.1.4-py2.5.egg", "has_sig": false, "md5_digest": "af10cb857fc8f650f68445936cac5789", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 31600, "upload_time": "2009-10-08T16:36:29", "url": "https://files.pythonhosted.org/packages/bf/9c/0dcdbfed0e0711f3f5eb6a0d35f089f7b7103fd5b5acad0359e1920c07a4/repoze.what.plugins.ip-0.1.4-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "0039d88f3f24304e575a87eeb5e920db", "sha256": "fe349311967754ce7c3d4a78cd2ed852b1cd76602bdc8323d59be11ec9fed530" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.1.4-py2.6.egg", "has_sig": false, "md5_digest": "0039d88f3f24304e575a87eeb5e920db", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 31541, "upload_time": "2009-10-08T16:36:17", "url": "https://files.pythonhosted.org/packages/1d/69/5db946b57771bb39864dd11ee98a612732607419f5769e1593bf9de15e0e/repoze.what.plugins.ip-0.1.4-py2.6.egg" } ], "0.1.4.1": [ { "comment_text": "", "digests": { "md5": "4bbd65eda976e513291b9cdf0b4a964f", "sha256": "9ac517e6dd3e435dd598a79ba707fa4027854ff54b4e52a9f6c8c827cea485f1" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.1.4.1-py2.5.egg", "has_sig": false, "md5_digest": "4bbd65eda976e513291b9cdf0b4a964f", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 32030, "upload_time": "2009-10-08T18:18:06", "url": "https://files.pythonhosted.org/packages/b3/2c/f962e80244354d5f974430d0eae92bb835d83639dc8105c25cb2ba523cc0/repoze.what.plugins.ip-0.1.4.1-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "847aa3561d47cd021c8dd5a984d20679", "sha256": "d42e0b82d9ccfccb6e2be99335f0920939336be6e0b11e1af735034ff5f303ee" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.1.4.1-py2.6.egg", "has_sig": false, "md5_digest": "847aa3561d47cd021c8dd5a984d20679", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 31969, "upload_time": "2009-10-08T18:18:02", "url": "https://files.pythonhosted.org/packages/a3/f8/f9f0db024410cc2287a081ce34cc01fcb6f9b794f4eb8bed761ae883d6a8/repoze.what.plugins.ip-0.1.4.1-py2.6.egg" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "ead055787f6142daffbe19f2e1c44211", "sha256": "ba20b4ad7e15a4d554239cfada336cf7663d2a330ccff75fd64f73915b8adc39" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.2-py2.5.egg", "has_sig": false, "md5_digest": "ead055787f6142daffbe19f2e1c44211", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 36874, "upload_time": "2010-06-24T21:24:38", "url": "https://files.pythonhosted.org/packages/69/fa/6a1568c343734d8ea6f7095c673986ef582363d8805289279db1c596ef0a/repoze.what.plugins.ip-0.2-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "56c467a2a0b7ffbc48c1ce6d511cc262", "sha256": "366e0a6019db02a35a128917a04e8d691b2f55944d0b0131b51446844b49f049" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.2-py2.6.egg", "has_sig": false, "md5_digest": "56c467a2a0b7ffbc48c1ce6d511cc262", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 36831, "upload_time": "2010-06-24T21:19:11", "url": "https://files.pythonhosted.org/packages/b3/31/24a8d64e2338b5b20bb8cb29830408c283218cf683ae7c5d3316ccff1918/repoze.what.plugins.ip-0.2-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "47645cd70db4dcb27de8b89df9fbb3f6", "sha256": "d6837ff113c8e07068800a925248053cfbc2c12a93d94b9732b3b1ba5e01a5d5" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.2.tar.gz", "has_sig": false, "md5_digest": "47645cd70db4dcb27de8b89df9fbb3f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17843, "upload_time": "2010-06-24T21:19:10", "url": "https://files.pythonhosted.org/packages/c0/3b/15dfbc57cbedf2bf75e8bcfb550f658845e3449078e27b9abe5a2413d497/repoze.what.plugins.ip-0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ead055787f6142daffbe19f2e1c44211", "sha256": "ba20b4ad7e15a4d554239cfada336cf7663d2a330ccff75fd64f73915b8adc39" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.2-py2.5.egg", "has_sig": false, "md5_digest": "ead055787f6142daffbe19f2e1c44211", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 36874, "upload_time": "2010-06-24T21:24:38", "url": "https://files.pythonhosted.org/packages/69/fa/6a1568c343734d8ea6f7095c673986ef582363d8805289279db1c596ef0a/repoze.what.plugins.ip-0.2-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "56c467a2a0b7ffbc48c1ce6d511cc262", "sha256": "366e0a6019db02a35a128917a04e8d691b2f55944d0b0131b51446844b49f049" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.2-py2.6.egg", "has_sig": false, "md5_digest": "56c467a2a0b7ffbc48c1ce6d511cc262", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 36831, "upload_time": "2010-06-24T21:19:11", "url": "https://files.pythonhosted.org/packages/b3/31/24a8d64e2338b5b20bb8cb29830408c283218cf683ae7c5d3316ccff1918/repoze.what.plugins.ip-0.2-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "47645cd70db4dcb27de8b89df9fbb3f6", "sha256": "d6837ff113c8e07068800a925248053cfbc2c12a93d94b9732b3b1ba5e01a5d5" }, "downloads": -1, "filename": "repoze.what.plugins.ip-0.2.tar.gz", "has_sig": false, "md5_digest": "47645cd70db4dcb27de8b89df9fbb3f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17843, "upload_time": "2010-06-24T21:19:10", "url": "https://files.pythonhosted.org/packages/c0/3b/15dfbc57cbedf2bf75e8bcfb550f658845e3449078e27b9abe5a2413d497/repoze.what.plugins.ip-0.2.tar.gz" } ] }