ERR_LIB_DH
ERR_raise(ERR_LIB_DH, ERR_R_ASN1_LIB);
ERR_raise(ERR_LIB_DH, ERR_R_ASN1_LIB);
ERR_raise(ERR_LIB_DH, ERR_R_ASN1_LIB);
ERR_raise(ERR_LIB_DH, ERR_R_ASN1_LIB);
ERR_raise(ERR_LIB_DH, ERR_R_ASN1_LIB);
ERR_raise(ERR_LIB_DH, DH_R_BN_ERROR);
ERR_raise(ERR_LIB_DH, DH_R_BN_ERROR);
ERR_raise(ERR_LIB_DH, reason);
ERR_raise(ERR_LIB_DH, DH_R_MISSING_PUBKEY);
ERR_raise(ERR_LIB_DH, ERR_R_DH_LIB);
ERR_raise(ERR_LIB_DH, DH_R_PARAMETER_ENCODING_ERROR);
ERR_raise(ERR_LIB_DH, DH_R_DECODE_ERROR);
ERR_raise(ERR_LIB_DH, DH_R_DECODE_ERROR);
ERR_raise(ERR_LIB_DH, DH_R_BN_DECODE_ERROR);
ERR_raise(ERR_LIB_DH, DH_R_BN_ERROR);
ERR_raise(ERR_LIB_DH, EVP_R_DECODE_ERROR);
ERR_raise(ERR_LIB_DH, DH_R_NOT_SUITABLE_GENERATOR);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_Q_NOT_PRIME);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_INVALID_Q_VALUE);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_INVALID_J_VALUE);
ERR_raise(ERR_LIB_DH, DH_R_UNABLE_TO_CHECK_GENERATOR);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_P_NOT_PRIME);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_P_NOT_SAFE_PRIME);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_SMALL);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_PUBKEY_TOO_SMALL);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_PUBKEY_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_PUBKEY_INVALID);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_CHECK_P_NOT_PRIME);
ERR_raise(ERR_LIB_DH, DH_R_NOT_SUITABLE_GENERATOR);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_SMALL);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_LARGE);
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_BAD_FFC_PARAMETERS), "bad ffc parameters" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_BAD_GENERATOR), "bad generator" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_BN_DECODE_ERROR), "bn decode error" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_BN_ERROR), "bn error" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_CHECK_INVALID_J_VALUE),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_CHECK_INVALID_Q_VALUE),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_CHECK_PUBKEY_INVALID),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_CHECK_PUBKEY_TOO_LARGE),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_CHECK_PUBKEY_TOO_SMALL),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_CHECK_P_NOT_PRIME), "check p not prime" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_CHECK_P_NOT_SAFE_PRIME),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_CHECK_Q_NOT_PRIME), "check q not prime" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_DECODE_ERROR), "decode error" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_INVALID_PARAMETER_NAME),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_INVALID_PARAMETER_NID),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_INVALID_PUBKEY), "invalid public key" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_INVALID_SECRET), "invalid secret" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_INVALID_SIZE), "invalid size" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_KDF_PARAMETER_ERROR), "kdf parameter error" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_KEYS_NOT_SET), "keys not set" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_MISSING_PUBKEY), "missing pubkey" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_MODULUS_TOO_LARGE), "modulus too large" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_MODULUS_TOO_SMALL), "modulus too small" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_NOT_SUITABLE_GENERATOR),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_NO_PARAMETERS_SET), "no parameters set" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_NO_PRIVATE_VALUE), "no private value" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_PARAMETER_ENCODING_ERROR),
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_PEER_KEY_ERROR), "peer key error" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_Q_TOO_LARGE), "q too large" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_SHARED_INFO_ERROR), "shared info error" },
{ ERR_PACK(ERR_LIB_DH, 0, DH_R_UNABLE_TO_CHECK_GENERATOR),
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_SMALL);
ERR_raise(ERR_LIB_DH, DH_R_BAD_GENERATOR);
ERR_raise(ERR_LIB_DH, ERR_R_BN_LIB);
ERR_raise(ERR_LIB_DH, DH_R_INVALID_PARAMETER_NID);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_Q_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_SMALL);
ERR_raise(ERR_LIB_DH, ERR_R_BN_LIB);
ERR_raise(ERR_LIB_DH, err_reason);
ERR_raise(ERR_LIB_DH, DH_R_INVALID_PUBKEY);
ERR_raise(ERR_LIB_DH, DH_R_INVALID_SIZE);
ERR_raise(ERR_LIB_DH, DH_R_BN_ERROR);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_Q_TOO_LARGE);
ERR_raise(ERR_LIB_DH, DH_R_MODULUS_TOO_SMALL);
ERR_raise(ERR_LIB_DH, DH_R_NO_PRIVATE_VALUE);
ERR_raise(ERR_LIB_DH, ERR_R_BN_LIB);
ERR_raise(ERR_LIB_DH, DH_R_INVALID_SECRET);
ERR_raise(ERR_LIB_DH, ERR_R_ENGINE_LIB);
ERR_raise(ERR_LIB_DH, ERR_R_ENGINE_LIB);
ERR_raise(ERR_LIB_DH, ERR_R_INIT_FAIL);
ERR_raise(ERR_LIB_DH, ERR_R_CRYPTO_LIB);
ERR_raise(ERR_LIB_DH, DH_R_INVALID_PARAMETER_NAME);
ERR_raise(ERR_LIB_DH, DH_R_NO_PARAMETERS_SET);
ERR_raise(ERR_LIB_DH, DH_R_KEYS_NOT_SET);
ERR_raise(ERR_LIB_DH, DH_R_KEYS_NOT_SET);
ERR_raise(ERR_LIB_DH, ERR_R_BUF_LIB);
ERR_raise(ERR_LIB_DH, ERR_R_EC_LIB);
{ ERR_PACK(ERR_LIB_DH, 0, 0), "Diffie-Hellman routines" },
ERR_raise(ERR_LIB_DH, DH_R_BAD_FFC_PARAMETERS);
ERR_raise(ERR_LIB_DH, DH_R_BAD_FFC_PARAMETERS);
ERR_raise(ERR_LIB_DH, DH_R_NOT_SUITABLE_GENERATOR);
ERR_raise(ERR_LIB_DH, ERR_R_RSA_LIB);
#define DHerr(f, r) ERR_raise_data(ERR_LIB_DH, (r), NULL)
#define ERR_R_DH_LIB (ERR_LIB_DH /* 5 */ | ERR_RFLAG_COMMON)