# Module Netmech_scram_sasl

    module Netmech_scram_sasl: sig .. end

SCRAM as SASL mechanism

This module needs the SHA-1 hash function. In order to use it, initialize crypto support, e.g. by including the `nettls-gnutls` packages and calling `Nettls_gnutls.init`.

As for all SASL mechanisms in OCamlnet, SASLprep is not automatically called. Users of SCRAM should pass user names and passwords through `Netsaslprep.saslprep`.

    module type PROFILE = sig .. end

The profile sets some basic parameters.

    module SHA1: PROFILE

Uses SHA-1 as hash function.

    module SHA1_PLUS: PROFILE

Same as `Netmech_scram_sasl.SHA1`, only that the mechanism name is "SCRAM-SHA-1-PLUS"

    module SHA256: PROFILE

Uses SHA-256 as hash function.

    module SHA256_PLUS: PROFILE

Same as `Netmech_scram_sasl.SHA256`, only that the mechanism name is "SCRAM-SHA-256-PLUS"

    module SCRAM: functor (P : PROFILE) -> Netsys_sasl_types.SASL_MECHANISM

Create a new SCRAM SASL mechanism for this profile.

    module SCRAM_SHA1: Netsys_sasl_types.SASL_MECHANISM

SCRAM with SHA1 profile

    module SCRAM_SHA1_PLUS: Netsys_sasl_types.SASL_MECHANISM

SCRAM with SHA1_PLUS profile

    module SCRAM_SHA256: Netsys_sasl_types.SASL_MECHANISM

SCRAM with SHA256 profile

    module SCRAM_SHA256_PLUS: Netsys_sasl_types.SASL_MECHANISM

SCRAM with SHA256_PLUS profile