コード例 #1
0
ファイル: ike_alg_sha2.c プロジェクト: fatenever/libreswan
/*
 * IKE_ALG_INIT_NAME: ike_alg_sha2_init
 */
void ike_alg_sha2_init(void)
{
	if (ike_alg_register_hash(&hash_desc_sha2_512))
		ike_alg_add(&integ_desc_sha2_256.common);

	if (ike_alg_register_hash(&hash_desc_sha2_384))
		ike_alg_add(&integ_desc_sha2_384.common);

	if (ike_alg_register_hash(&hash_desc_sha2_256))
		ike_alg_add(&integ_desc_sha2_512.common);
}
コード例 #2
0
ファイル: crypto.c プロジェクト: jgimenez/libreswan
void init_crypto(void)
{
	if (mpz_init_set_str(&groupgenerator, MODP_GENERATOR, 10) != 0
	    ||  mpz_init_set_str(&generator_dh22, MODP_GENERATOR_DH22,
				 16) != 0 ||
	    mpz_init_set_str(&generator_dh23, MODP_GENERATOR_DH23, 16) != 0 ||
	    mpz_init_set_str(&generator_dh24, MODP_GENERATOR_DH24, 16) != 0
	    /* modp768_modulus no longer supported */
	    || mpz_init_set_str(&modp1024_modulus, MODP1024_MODULUS,
				16) != 0 ||
	    mpz_init_set_str(&modp1536_modulus, MODP1536_MODULUS, 16) != 0 ||
	    mpz_init_set_str(&modp2048_modulus, MODP2048_MODULUS, 16) != 0 ||
	    mpz_init_set_str(&modp3072_modulus, MODP3072_MODULUS, 16) != 0 ||
	    mpz_init_set_str(&modp4096_modulus, MODP4096_MODULUS, 16) != 0 ||
	    mpz_init_set_str(&modp6144_modulus, MODP6144_MODULUS, 16) != 0 ||
	    mpz_init_set_str(&modp8192_modulus, MODP8192_MODULUS, 16) != 0
	    || mpz_init_set_str(&dh22_modulus, MODP1024_MODULUS_DH22,
				16) != 0 ||
	    mpz_init_set_str(&dh23_modulus, MODP2048_MODULUS_DH23, 16) != 0 ||
	    mpz_init_set_str(&dh24_modulus, MODP2048_MODULUS_DH24, 16) != 0
	    )
		exit_log("mpz_init_set_str() failed in init_crypto()");

#ifdef USE_TWOFISH
	ike_alg_twofish_init();
#endif

#ifdef USE_SERPENT
	ike_alg_serpent_init();
#endif

#ifdef USE_AES
	ike_alg_aes_init();
#endif

#ifdef USE_3DES
	ike_alg_add((struct ike_alg *) &crypto_encrypter_3des);
#endif

#ifdef USE_SHA2
	ike_alg_sha2_init();
#endif

#ifdef USE_SHA1
	ike_alg_add((struct ike_alg *) &crypto_hasher_sha1);
	ike_alg_add((struct ike_alg *) &crypto_integ_sha1);
#endif

#ifdef USE_MD5
	ike_alg_add((struct ike_alg *) &crypto_hasher_md5);
	ike_alg_add((struct ike_alg *) &crypto_integ_md5);
#endif
}
コード例 #3
0
ファイル: ike_alg_sha2.c プロジェクト: dotmark/libreswan
/*
 * IKE_ALG_INIT_NAME: ike_alg_sha2_init
 */
int ike_alg_sha2_init(void)
{
	int ret;

	ret = ike_alg_register_hash(&hash_desc_sha2_512);
	if (ret == 0) {
		ret = ike_alg_register_hash(&hash_desc_sha2_384);
		if (ret == 0) {
			ret = ike_alg_register_hash(&hash_desc_sha2_256);

			ike_alg_add((struct ike_alg *) &integ_desc_sha2_256);
			ike_alg_add((struct ike_alg *) &integ_desc_sha2_384);
			ike_alg_add((struct ike_alg *) &integ_desc_sha2_512);
		}
	}
	return ret;
}
コード例 #4
0
ファイル: crypto.c プロジェクト: odit/rv042
void
init_crypto(void)
{
    if (mpz_init_set_str(&groupgenerator, MODP_GENERATOR, 10) != 0
    || mpz_init_set_str(&modp768_modulus, MODP768_MODULUS, 16) != 0
    || mpz_init_set_str(&modp1024_modulus, MODP1024_MODULUS, 16) != 0
    || mpz_init_set_str(&modp1536_modulus, MODP1536_MODULUS, 16) != 0
    || mpz_init_set_str(&modp2048_modulus, MODP2048_MODULUS, 16) != 0
    || mpz_init_set_str(&modp3072_modulus, MODP3072_MODULUS, 16) != 0
    || mpz_init_set_str(&modp4096_modulus, MODP4096_MODULUS, 16) != 0
    || mpz_init_set_str(&modp6144_modulus, MODP6144_MODULUS, 16) != 0
    || mpz_init_set_str(&modp8192_modulus, MODP8192_MODULUS, 16) != 0)
	exit_log("mpz_init_set_str() failed in init_crypto()");

    ike_alg_add((struct ike_alg *) &crypto_encryptor_des);
    ike_alg_add((struct ike_alg *) &crypto_encryptor_3des);
    ike_alg_add((struct ike_alg *) &crypto_hasher_sha1);
    ike_alg_add((struct ike_alg *) &crypto_hasher_md5);
    ike_alg_init();
}