{ "info": { "author": "Eric V. Smith", "author_email": "eric@trueblade.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "============\nmanagesieve3\n============\n\nOverview\n========\n\nA pure Python client implementation of \"A Protocol for Remotely\nManaging Sieve Scripts\", as defined in `RFC-5804\n`_. It works with either Python\n2.7 or Python 3.3+.\n\nModule Contents\n===============\n\nclass Managesieve\n-----------------\n\nThe main class for interactive with sieve server.\n\nHere are the members of the *Managesive* class. All of these methods\nmay raise a *ServerResponseNo* or *ServerResponseBye* exception. See\nRFC-5804 for details on when *NO* or *BYE* is returned by the server.\n\n*Managesieve(host=None, port=None)*\n\n If *host* is *None*, it defaults to 'localhost'. If *port* is\n None, it defaults to 4190. The connection to the server is\n immediately made. This method may raise any exception raised by\n the *socket* module.\n\n*cmd_authenticate(auth_type, options=None)*\n\n Send an *AUTHENTICATION* request to the sieve server, along with\n the speficied options, any. On success, returns None. If the\n authentication fails, a *ServerResponseNo* exception is raised.\n\n*cmd_capability()*\n\n Send a *CAPABILITY* request to the sieve server. Returns a list of\n tuples, one per capability returned by the server.\n\n*cmd_checkscript(contents)*\n\n Send a *CHECKSCRIPT* request to the sieve server. If the contents\n of the script are valid, returns *None*. Otherwise, a\n *ServerResponseNo* exception is raised.\n\n*cmd_deletescript(name)*\n\n Send a *DELETESCRIPT* request to the sieve server. The script\n *name* is deleted. Returns *None* on success. Raises a\n *ServerResponseNo* if the script cannot be deleted (for example, if\n it does not exist or is the currently active script).\n\n*cmd_getscript(name)*\n\n Send a *GETSCRIPT* request to the sieve server. On success, the\n contents script named *name* is returned. On error (for example,\n if the script does not exist), a *ServerResponseNo* exception is\n raised.\n\n*cmd_havespace(name, size)*\n\n Send a *HAVESPACE* request to the sieve server. *name* is the name\n of a possibly non-existent script, and *size* a size, in bytes. If\n the server is willing to store a script named *name* of size\n *size*, then *None* is returned. Otherwise, a *ServerResponseNo*\n exception is raised.\n\n*cmd_listscripts()*\n\n Send a *LISTSCRIPT* request to the sieve server. On success, a\n 2-tuple is returned. The first element is a set containing the\n names of all of the scripts on the server. If a script is active,\n its name is returned in the second element of the tuple. If no\n script is active, the second element is *None*.\n\n*cmd_logout()*\n\n Send a *LOGOUT* request to the sieve server. The user is logged\n out, and on success *None* is returned.\n\n*cmd_noop()*\n\n Send a *NOOP* request to the sieve server. This is a protocol\n no-op, and may be used to keep the connection alive. *None* is\n returned.\n\n*cmd_putscript(name, contents)*\n\n Send a *PUTSCRIPT* request to the sieve server. A script with name\n *name* and contents specified by *contents* is stored on the\n server. On success, *None* is returned. If an error occurs,\n including the script contents being invalid, a *ServerResponseNo*\n exception is raised. Note that putting a script to the server does\n not change the currently active script.\n\n*cmd_renamescript(oldname, newname)*\n\n Send a *RENAMESCRIPT* request to the sieve server. The script\n named *oldname* is renamed to *newname*. *None* is returned on\n success.\n\n*cmd_setactive(name)*\n\n Send a *SETACTIVE* request to the sieve server. The script named\n *name* is set as the active script. Returns *None* on success.\n\n*cmd_starttls(keyfile=None, certfile=None, cert_reqs=_ssl.CERT_NONE, ssl_version=_ssl.PROTOCOL_SSLv23, ca_certs=None, ciphers=None)*\n\n Send a *STARTTLS* request to the sieve server. *keyfile* and\n *certfile* are currently ignored. On success, the conenction to\n the sieve server is now encrypted. The return value is the same as\n *cmd_capabilities*, which may have changed since the connection was\n first opened.\n\n The *keyfile*, *certfile*, *cert_reqs*, *ssl_version*, *ca_certs*,\n and *cipher* parameters have the same meaning as (and are passed\n directly to) *ssl.wrap_socket*.\n\n*login_plain(username, authuser, password)*\n\n Logs on to the sieve server, using the *PLAIN* authentication\n scheme. *username* is the user whose account will be accessed.\n *authuser* is the name of the user being authenticated, and\n *password* is that password for *authuser*.\n\nExceptions\n----------\n\nBaseException\n+++++++++++++\n\nThe base class for all exceptions raised by managesieve3.\n\nServerResponseNo\n++++++++++++++++\n\nThe sieve server sent an unexpected *NO* response. See RFC-5804 for\ndetails.\n\nAvailable fields are:\n\n+-----------+------------------------------------------------------+\n| Name | Description |\n+-----------+------------------------------------------------------+\n| *name* | The name of the RFC-5804 command that was being |\n| | executed when the server returned a NO response. |\n+-----------+------------------------------------------------------+\n| *code* | The code returned in the NO response. This is a |\n| | list (possibly of length 1) of the heirarchical |\n| | response codes. |\n+-----------+------------------------------------------------------+\n| *text* | The human readable text error message, if any. |\n+-----------+------------------------------------------------------+\n| *results* | The textual body of the response, if any. |\n+-----------+------------------------------------------------------+\n\n\nServerResponseBye\n+++++++++++++++++\n\n\nThe sieve server sent a *BYE* response. See RFC-5804 for details.\n\nAvailable fields are:\n\n+-----------+------------------------------------------------------+\n| Name | Description |\n+-----------+------------------------------------------------------+\n| *name* | The name of the RFC-5804 command that was being |\n| | executed when the server returned a BYE response. |\n+-----------+------------------------------------------------------+\n| *code* | The code returned in the BYE response. This is a |\n| | list (possibly of length 1) of the heirarchical |\n| | response codes. |\n+-----------+------------------------------------------------------+\n| *text* | The human readable text error message, if any. |\n+-----------+------------------------------------------------------+\n| *results* | The textual body of the response, if any. |\n+-----------+------------------------------------------------------+\n\nServerProtocolError\n+++++++++++++++++++\n\nThe client code detected a protocol error when talking to the sieve\nserver.\n\nChange log\n==========\n\n1.1 2016-10-27 Eric V. Smith\n----------------------------\n\n* Remove hack for setting RPM name (issue #4).\n\n* Always use setuptools (issue #3).\n\n* Add additional ssl.wrap_socket() parameters to starttls().\n\n\n1.0 2015-06-02 Eric V. Smith\n----------------------------\n\n* Initial release.\n\n* Implements all RFC-5804 commands.\n\n* Contains an extensive test suite for command parsing. I really need\n to create a dummy server to test the socket handling and STARTTLS.\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/ericvsmith/managesieve3", "keywords": "", "license": "Apache License Version 2.0", "maintainer": "", "maintainer_email": "", "name": "managesieve3", "package_url": "https://pypi.org/project/managesieve3/", "platform": "", "project_url": "https://pypi.org/project/managesieve3/", "project_urls": { "Homepage": "https://bitbucket.org/ericvsmith/managesieve3" }, "release_url": "https://pypi.org/project/managesieve3/1.1/", "requires_dist": null, "requires_python": "", "summary": "Implements an RFC-5804 Manage Sieve client.", "version": "1.1" }, "last_serial": 2425845, "releases": { "0.1a5": [ { "comment_text": "", "digests": { "md5": "1862819ba4098d01699802d9a5d3314f", "sha256": "b4da0d17161195821235d0a9496688c3bb03f393c0b45bed89e3602fc6e2adb7" }, "downloads": -1, "filename": "managesieve3-0.1a5.tar.gz", "has_sig": false, "md5_digest": "1862819ba4098d01699802d9a5d3314f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9976, "upload_time": "2015-06-01T10:37:23", "url": "https://files.pythonhosted.org/packages/6a/38/632455f185d08809f58bfcc8bc60d00edc2b414f94f3bbb08fc33792eab6/managesieve3-0.1a5.tar.gz" } ], "0.1a6": [ { "comment_text": "", "digests": { "md5": "1ff881559af964d8e6066c6587e33a4f", "sha256": "8fe27dd56967a41994137c8273c3e851a4f04ebfeb8dbf19903c341b8ab7c9e3" }, "downloads": -1, "filename": "managesieve3-0.1a6.tar.gz", "has_sig": false, "md5_digest": "1ff881559af964d8e6066c6587e33a4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13836, "upload_time": "2015-06-02T15:59:43", "url": "https://files.pythonhosted.org/packages/c4/cb/6c78d91ac1c520bdc40fd0e16b0965344b81160efa40a849f9a530a16b69/managesieve3-0.1a6.tar.gz" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "e16d1c321fbd9cde5fbdfa5dfdbbfe6a", "sha256": "60b25434367cbcaf554f5343b32d18f143bf53f811083a3aba0f47121b623d30" }, "downloads": -1, "filename": "managesieve3-1.0.tar.gz", "has_sig": false, "md5_digest": "e16d1c321fbd9cde5fbdfa5dfdbbfe6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14578, "upload_time": "2015-06-02T19:07:06", "url": "https://files.pythonhosted.org/packages/9f/7f/a0a373ce5baf176fece2908b2e73b7594926aabac4727a0be49ed8376506/managesieve3-1.0.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "bb150baf7bfcb2ad68232216a612f98f", "sha256": "1cc6241cb4217b7191820fa0554efb67702c4501db63ddec7e9271e5c58c9a78" }, "downloads": -1, "filename": "managesieve3-1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bb150baf7bfcb2ad68232216a612f98f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11007, "upload_time": "2016-10-27T10:18:11", "url": "https://files.pythonhosted.org/packages/24/c1/a09d4847a59e8ac3dc950b5b88b6d23ce789f431acbe3b1b4ed9a5fa3bd1/managesieve3-1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "707cf4d7cec1620005b10992e2fec8a2", "sha256": "7c43f23d8d0c83b6aaae93a0f661cef9c4657bbc90cc7c9cf37e775150c021ab" }, "downloads": -1, "filename": "managesieve3-1.1.tar.gz", "has_sig": false, "md5_digest": "707cf4d7cec1620005b10992e2fec8a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15106, "upload_time": "2016-10-27T10:18:13", "url": "https://files.pythonhosted.org/packages/a7/7c/f8f5ad82e73c6471048f10661b3abd0671bb15b62587c547eabbf477edeb/managesieve3-1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bb150baf7bfcb2ad68232216a612f98f", "sha256": "1cc6241cb4217b7191820fa0554efb67702c4501db63ddec7e9271e5c58c9a78" }, "downloads": -1, "filename": "managesieve3-1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bb150baf7bfcb2ad68232216a612f98f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11007, "upload_time": "2016-10-27T10:18:11", "url": "https://files.pythonhosted.org/packages/24/c1/a09d4847a59e8ac3dc950b5b88b6d23ce789f431acbe3b1b4ed9a5fa3bd1/managesieve3-1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "707cf4d7cec1620005b10992e2fec8a2", "sha256": "7c43f23d8d0c83b6aaae93a0f661cef9c4657bbc90cc7c9cf37e775150c021ab" }, "downloads": -1, "filename": "managesieve3-1.1.tar.gz", "has_sig": false, "md5_digest": "707cf4d7cec1620005b10992e2fec8a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15106, "upload_time": "2016-10-27T10:18:13", "url": "https://files.pythonhosted.org/packages/a7/7c/f8f5ad82e73c6471048f10661b3abd0671bb15b62587c547eabbf477edeb/managesieve3-1.1.tar.gz" } ] }