Skip to main content

Fully-featured ManageSieve command-line client and library

Project description

OpenSSF best practices badge

SieveManager

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

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

WARNING: The command-line interface, the configuration semantics, and the Python API, are not yet stable.

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 homepage.

CONTACT

Homepage:

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

LICENCE

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.6.tar.gz (76.6 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for sievemgr-0.7.4.6.tar.gz
Algorithm Hash digest
SHA256 bbb5e4a5390fdd51b89241139949f3c39805f14116759c4e9c21eda32b79d630
MD5 ab7547720018bfb26a413b9dbebf19f0
BLAKE2b-256 0138ae24421612fd4bfa62f3a0a89d81bee5c8f7ca1a3871b8108ccd6c3f3d76

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for sievemgr-0.7.4.6-py3-none-any.whl
Algorithm Hash digest
SHA256 18954e6c578bae4b86868321079141e0a2756191d02eebebcb3208f4cc054b80
MD5 8aee69bc76f0d1ab4109c64148ccd811
BLAKE2b-256 c28abdddd6c1f05668565fbc9da491e26af6eb2cd17c2baecd36df1b998e77bc

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