Skip to main content

Fully-featured ManageSieve command-line client and library

Project description

OpenSSF best practices badge

SieveManager

Sieve is a programming language for filtering email. Sieve scripts are typically run by the mail server when mail is delivered to an inbox, so they need to be managed remotely.

SieveManager is a command-line client for uploading, downloading, and managing remote Sieve scripts using the ManageSieve protocol. It can also be used as a Python module.

WARNING: The command-line interface, the configuration semantics, and the Python API may still change.

Example

Upload and activate a Sieve script:

$ sievemgr user@imap.foo.example
user@imap.foo.example's password: <password>
sieve://user@imap.foo.example> put script.sieve
sieve://user@imap.foo.example> activate script.sieve

In Python:

from sievemgr import SieveManager
with SieveManager('imap.foo.example') as mgr:
    mgr.authenticate('user', 'password')
    with open('sieve.script', 'br') as script:
        mgr.putscript(script, 'sieve.script')
    mgr.setactive('sieve.script')

Features

  • Complies fully with RFC 5804 (ManageSieve protocol)

  • Login can be automated with:

    • Password managers

    • GnuPG-encrypted password files

    • sieve.cf

    • .netrc

  • Password-based authentication with:

    • CRAM-MD5

    • LOGIN

    • PLAIN

    • SCRAM-* and SCRAM-*-PLUS [1] with

      • SHA-1

      • SHA-2-234

      • SHA-2-256

      • SHA-2-384

      • SHA-2-512

      • SHA-3-512

  • TLS client authentication

  • Proxy authentication

  • Tab-completion

  • Scriptable

  • Emacs-like backup of scripts

  • Checks whether TLS certificates have been revoked (using lightweight OCSP)

  • Supports TLS Server Name Indication

  • Supports giving IPv6 addresses on the command-line

Documentation

Use sievemgr -h, type “help” in the SieveManager shell, or see the home page.

Contact

Home page:

https://odkr.codeberg.page/sievemgr

Issue tracker:

https://github.com/odkr/sievemgr/issues

Source code (primary):

https://codeberg.org/odkr/sievemgr

Source code (secondary):

https://notabug.org/odkr/sievemgr

License

Copyright 2023 and 2024 Odin Kroeger

SieveManager is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the FreeSoftware Foundation, either version 3 of the License, or (at your option) any later version.

SieveManager is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SieveManager. If not, see <https://www.gnu.org/licenses/>.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sievemgr-0.7.4.7.tar.gz (76.6 kB view details)

Uploaded Source

Built Distribution

sievemgr-0.7.4.7-py3-none-any.whl (61.2 kB view details)

Uploaded Python 3

File details

Details for the file sievemgr-0.7.4.7.tar.gz.

File metadata

  • Download URL: sievemgr-0.7.4.7.tar.gz
  • Upload date:
  • Size: 76.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for sievemgr-0.7.4.7.tar.gz
Algorithm Hash digest
SHA256 72bc08a47e8e390948287449ade63d5f0f025c1aaa1d90c1de20b048432654d2
MD5 11d2e805db7ccdde63b7d414dbf25fae
BLAKE2b-256 0fbab66df22f0debb44e89cbcc5098e7411e0f705f4a16d0e85d249fc4fac1be

See more details on using hashes here.

File details

Details for the file sievemgr-0.7.4.7-py3-none-any.whl.

File metadata

  • Download URL: sievemgr-0.7.4.7-py3-none-any.whl
  • Upload date:
  • Size: 61.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for sievemgr-0.7.4.7-py3-none-any.whl
Algorithm Hash digest
SHA256 94737d3bba7276bc304188517a6f86188e2cc676c65d3eb0eb27de5795fc86d2
MD5 9a30710111d1df8fc107f8bc5f82aadc
BLAKE2b-256 6b4977bc2d08731f2fbcfd60a1a2cc8cc89700e551f42b6aa7ac780ceb212f35

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page