Metadata-Version: 2.1
Name: aiosasl
Version: 0.5.0
Summary: Pure-python, protocol agnostic SASL library for asyncio
Home-page: https://github.com/horazont/aiosasl
Author: Jonas Wielicki
Author-email: jonas@wielicki.name
License: LGPLv3+
Keywords: asyncio sasl library
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)
License-File: LICENSES
License-File: COPYING.LESSER
License-File: COPYING.gpl3

``aiosasl``, pure python generic asyncio SASL library
#####################################################

.. image:: https://github.com/horazont/aiosasl/workflows/CI/badge.svg
  :target: https://github.com/horazont/aiosasl/actions?query=workflow%3ACI+branch%3Adevel

.. image:: https://coveralls.io/repos/github/horazont/aiosasl/badge.svg?branch=devel
  :target: https://coveralls.io/github/horazont/aiosasl?branch=devel

``aiosasl`` provides a generic, asyncio-based SASL library. It can be used with
any protocol, provided the neccessary interface code is provided by the
application or protocol implementation.

Dependencies
------------

* Python ≥ 3.5

Supported SASL mechanisms
-------------------------

* ``PLAIN``: authenticate with plaintext password (RFC 4616)
* ``ANONYMOUS``: anonymous "authentication" (RFC 4505)
* ``SCRAM-SHA-1`` and ``SCRAM-SHA-256`` (and the ``-PLUS`` variants with
  channel binding): Salted Challenge Response Authentication (RFC 5802)

Documentation
-------------

Official documentation can be built with sphinx and is available online
`on our servers <https://docs.zombofant.net/aiosasl/0.5/>`_.

Supported channel binding methods
---------------------------------

* ``tls-unique`` and ``tls-server-end-point`` with a pyOpenSSL connection
* all methods supported by the Python standard library when using the
  ``ssl`` module
