本文整理汇总了C++中crypto_unregister_alg函数的典型用法代码示例。如果您正苦于以下问题:C++ crypto_unregister_alg函数的具体用法?C++ crypto_unregister_alg怎么用?C++ crypto_unregister_alg使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了crypto_unregister_alg函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: p8_init
int __init p8_init(void)
{
int ret = 0;
struct crypto_alg **alg_it;
for (alg_it = algs; *alg_it; alg_it++) {
ret = crypto_register_alg(*alg_it);
printk(KERN_INFO "crypto_register_alg '%s' = %d\n",
(*alg_it)->cra_name, ret);
if (ret) {
for (alg_it--; alg_it >= algs; alg_it--)
crypto_unregister_alg(*alg_it);
break;
}
}
if (ret)
return ret;
ret = crypto_register_shash(&p8_ghash_alg);
if (ret) {
for (alg_it = algs; *alg_it; alg_it++)
crypto_unregister_alg(*alg_it);
}
return ret;
}
开发者ID:01org,项目名称:thunderbolt-software-kernel-tree,代码行数:25,代码来源:vmx.c
示例2: crypto_null_mod_init
static int __init crypto_null_mod_init(void)
{
int ret = 0;
ret = crypto_register_alg(&cipher_null);
if (ret < 0)
goto out;
ret = crypto_register_alg(&skcipher_null);
if (ret < 0)
goto out_unregister_cipher;
ret = crypto_register_shash(&digest_null);
if (ret < 0)
goto out_unregister_skcipher;
ret = crypto_register_alg(&compress_null);
if (ret < 0)
goto out_unregister_digest;
out:
return ret;
out_unregister_digest:
crypto_unregister_shash(&digest_null);
out_unregister_skcipher:
crypto_unregister_alg(&skcipher_null);
out_unregister_cipher:
crypto_unregister_alg(&cipher_null);
goto out;
}
开发者ID:DESHONOR,项目名称:BroodROM_kernel_huawei_honor,代码行数:31,代码来源:crypto_null.c
示例3: AesEngineExit
static void __exit AesEngineExit(void)
{
crypto_unregister_alg(&mcrypto_aes_ecb_alg);
crypto_unregister_alg(&mcrypto_aes_cbc_alg);
aes_engine_uninit();
}
开发者ID:andy-padavan,项目名称:rt-n56u,代码行数:7,代码来源:aes_engine.c
示例4: crypto_null_mod_fini
static void __exit crypto_null_mod_fini(void)
{
crypto_unregister_alg(&compress_null);
crypto_unregister_shash(&digest_null);
crypto_unregister_alg(&skcipher_null);
crypto_unregister_alg(&cipher_null);
}
开发者ID:DESHONOR,项目名称:BroodROM_kernel_huawei_honor,代码行数:7,代码来源:crypto_null.c
示例5: prng_mod_fini
static void __exit prng_mod_fini(void)
{
crypto_unregister_alg(&rng_alg);
#ifdef CONFIG_CRYPTO_FIPS
crypto_unregister_alg(&fips_rng_alg);
#endif
return;
}
开发者ID:12rafael,项目名称:jellytimekernel,代码行数:8,代码来源:ansi_cprng.c
示例6: aes_s390_fini
static void __exit aes_s390_fini(void)
{
crypto_unregister_alg(&ctr_aes_alg);
free_page((unsigned long) ctrblk);
crypto_unregister_alg(&xts_aes_alg);
crypto_unregister_alg(&cbc_aes_alg);
crypto_unregister_alg(&ecb_aes_alg);
crypto_unregister_alg(&aes_alg);
}
开发者ID:Blackburn29,项目名称:PsycoKernel,代码行数:9,代码来源:aes_s390.c
示例7: geode_aes_probe
static int __devinit
geode_aes_probe(struct pci_dev *dev, const struct pci_device_id *id)
{
int ret;
ret = pci_enable_device(dev);
if (ret)
return ret;
ret = pci_request_regions(dev, "geode-aes");
if (ret)
goto eenable;
_iobase = pci_iomap(dev, 0, 0);
if (_iobase == NULL) {
ret = -ENOMEM;
goto erequest;
}
spin_lock_init(&lock);
/* Clear any pending activity */
iowrite32(AES_INTR_PENDING | AES_INTR_MASK, _iobase + AES_INTR_REG);
ret = crypto_register_alg(&geode_alg);
if (ret)
goto eiomap;
ret = crypto_register_alg(&geode_ecb_alg);
if (ret)
goto ealg;
ret = crypto_register_alg(&geode_cbc_alg);
if (ret)
goto eecb;
printk(KERN_NOTICE "geode-aes: GEODE AES engine enabled.\n");
return 0;
eecb:
crypto_unregister_alg(&geode_ecb_alg);
ealg:
crypto_unregister_alg(&geode_alg);
eiomap:
pci_iounmap(dev, _iobase);
erequest:
pci_release_regions(dev);
eenable:
pci_disable_device(dev);
printk(KERN_ERR "geode-aes: GEODE AES initialization failed.\n");
return ret;
}
开发者ID:12rafael,项目名称:jellytimekernel,代码行数:57,代码来源:geode-aes.c
示例8: geode_aes_remove
static void geode_aes_remove(struct pci_dev *dev)
{
crypto_unregister_alg(&geode_alg);
crypto_unregister_alg(&geode_ecb_alg);
crypto_unregister_alg(&geode_cbc_alg);
pci_iounmap(dev, _iobase);
_iobase = NULL;
pci_release_regions(dev);
pci_disable_device(dev);
}
开发者ID:03199618,项目名称:linux,代码行数:12,代码来源:geode-aes.c
示例9: xlr_crypt_alg_init
static int __init xlr_crypt_alg_init(void)
{
int ret;
if ((ret = crypto_register_alg(&xlr_aes_alg)))
goto err_out;
if ((ret = crypto_register_alg(&xlr_ecb_aes_alg)))
goto err1;
if ((ret = crypto_register_alg(&xlr_cbc_aes_alg)))
goto err2;
if ((ret = crypto_register_alg(&xlr_des_alg)))
goto err3;
if ((ret = crypto_register_alg(&xlr_ecb_des_alg)))
goto err4;
if ((ret = crypto_register_alg(&xlr_cbc_des_alg)))
goto err5;
if ((ret = crypto_register_alg(&xlr_des3_alg)))
goto err6;
if ((ret = crypto_register_alg(&xlr_ecb_des3_alg)))
goto err7;
if ((ret = crypto_register_alg(&xlr_cbc_des3_alg)))
goto err8;
// if ((ret = crypto_register_alg(&xlr_ctr_aes_alg)))
// goto err9;
printk(KERN_NOTICE "Using XLR hardware for AES/DES/3DES algorithm.\n");
return 0;
//err9:
// crypto_unregister_alg(&xlr_cbc_des3_alg);
err8:
crypto_unregister_alg(&xlr_ecb_des3_alg);
err7:
crypto_unregister_alg(&xlr_des3_alg);
err6:
crypto_unregister_alg(&xlr_cbc_des_alg);
err5:
crypto_unregister_alg(&xlr_ecb_des_alg);
err4:
crypto_unregister_alg(&xlr_des_alg);
err3:
crypto_unregister_alg(&xlr_cbc_aes_alg);
err2:
crypto_unregister_alg(&xlr_ecb_aes_alg);
err1:
crypto_unregister_alg(&xlr_aes_alg);
err_out:
printk(KERN_ERR "XLR hardware AES/DES/3DES initialization failed.\n");
return ret;
}
开发者ID:millken,项目名称:zhuxianB30,代码行数:59,代码来源:nlm_enc.c
示例10: ifxdeu_fini_aes
/*! \fn void __exit ifxdeu_fini_aes (void)
* \ingroup IFX_AES_FUNCTIONS
* \brief unregister aes driver
*/
void __exit ifxdeu_fini_aes (void)
{
crypto_unregister_alg (&ifxdeu_aes_alg);
crypto_unregister_alg (&ifxdeu_ecb_aes_alg);
crypto_unregister_alg (&ifxdeu_cbc_aes_alg);
crypto_unregister_alg (&ifxdeu_ctr_basic_aes_alg);
crypto_unregister_alg (&ifxdeu_ctr_rfc3686_aes_alg);
#ifdef CONFIG_CRYPTO_DEV_PWR_SAVE_MODE
#ifdef CONFIG_CRYPTO_DEV_DMA
FREE_MEMORY(aes_buff_in);
FREE_MEMORY(aes_buff_out);
#endif
#endif /* CONFIG_CRYPTO_DEV_PWR_SAVE_MODE */
}
开发者ID:patrick-ken,项目名称:easybox-904-lte-firmware,代码行数:19,代码来源:ifxmips_aes.c
示例11: mv_remove
static int mv_remove(struct platform_device *pdev)
{
struct crypto_priv *cp = platform_get_drvdata(pdev);
crypto_unregister_alg(&mv_aes_alg_ecb);
crypto_unregister_alg(&mv_aes_alg_cbc);
kthread_stop(cp->queue_th);
free_irq(cp->irq, cp);
memset(cp->sram, 0, cp->sram_size);
iounmap(cp->sram);
iounmap(cp->reg);
kfree(cp);
cpg = NULL;
return 0;
}
开发者ID:CoreTech-Development,项目名称:buildroot-linux-kernel,代码行数:15,代码来源:mv_cesa.c
示例12: padlock_init
static int __init padlock_init(void)
{
int rc = -ENODEV;
if (!cpu_has_phe) {
printk(KERN_NOTICE PFX "VIA PadLock Hash Engine not detected.\n");
return -ENODEV;
}
if (!cpu_has_phe_enabled) {
printk(KERN_NOTICE PFX "VIA PadLock detected, but not enabled. Hmm, strange...\n");
return -ENODEV;
}
rc = crypto_register_alg(&sha1_alg);
if (rc)
goto out;
rc = crypto_register_alg(&sha256_alg);
if (rc)
goto out_unreg1;
printk(KERN_NOTICE PFX "Using VIA PadLock ACE for SHA1/SHA256 algorithms.\n");
return 0;
out_unreg1:
crypto_unregister_alg(&sha1_alg);
out:
printk(KERN_ERR PFX "VIA PadLock SHA1/SHA256 initialization failed.\n");
return rc;
}
开发者ID:E-LLP,项目名称:n900,代码行数:32,代码来源:padlock-sha.c
示例13: des_s390_exit
static void des_s390_exit(void)
{
while (des_s390_algs_num--)
crypto_unregister_alg(des_s390_algs_ptr[des_s390_algs_num]);
if (ctrblk)
free_page((unsigned long) ctrblk);
}
开发者ID:KutuSystems,项目名称:kutu_linux,代码行数:7,代码来源:des_s390.c
示例14: rk_crypto_register
static int rk_crypto_register(struct rk_crypto_info *crypto_info)
{
unsigned int i, k;
int err = 0;
for (i = 0; i < ARRAY_SIZE(rk_cipher_algs); i++) {
rk_cipher_algs[i]->dev = crypto_info;
if (rk_cipher_algs[i]->type == ALG_TYPE_CIPHER)
err = crypto_register_alg(
&rk_cipher_algs[i]->alg.crypto);
else
err = crypto_register_ahash(
&rk_cipher_algs[i]->alg.hash);
if (err)
goto err_cipher_algs;
}
return 0;
err_cipher_algs:
for (k = 0; k < i; k++) {
if (rk_cipher_algs[i]->type == ALG_TYPE_CIPHER)
crypto_unregister_alg(&rk_cipher_algs[k]->alg.crypto);
else
crypto_unregister_ahash(&rk_cipher_algs[i]->alg.hash);
}
return err;
}
开发者ID:01org,项目名称:thunderbolt-software-kernel-tree,代码行数:27,代码来源:rk3288_crypto.c
示例15: sahara_unregister_algs
static void sahara_unregister_algs(struct sahara_dev *dev)
{
int i;
for (i = 0; i < ARRAY_SIZE(aes_algs); i++)
crypto_unregister_alg(&aes_algs[i]);
}
开发者ID:AdaLovelance,项目名称:lxcGrsecKernels,代码行数:7,代码来源:sahara.c
示例16: xlr_crypt_alg_fini
static void __exit xlr_crypt_alg_fini(void)
{
crypto_unregister_alg(&xlr_cbc_aes_alg);
crypto_unregister_alg(&xlr_ecb_aes_alg);
crypto_unregister_alg(&xlr_aes_alg);
crypto_unregister_alg(&xlr_cbc_des_alg);
crypto_unregister_alg(&xlr_ecb_des_alg);
crypto_unregister_alg(&xlr_des_alg);
crypto_unregister_alg(&xlr_cbc_des3_alg);
crypto_unregister_alg(&xlr_ecb_des3_alg);
crypto_unregister_alg(&xlr_des3_alg);
// crypto_unregister_alg(&xlr_ctr_aes_alg);
}
开发者ID:millken,项目名称:zhuxianB30,代码行数:13,代码来源:nlm_enc.c
示例17: cfs_crypto_crc32_unregister
void cfs_crypto_crc32_unregister(void)
{
#ifdef HAVE_STRUCT_SHASH_ALG
crypto_unregister_shash(&alg);
#else
crypto_unregister_alg(&alg);
#endif
}
开发者ID:dmlb2000,项目名称:lustre-release,代码行数:8,代码来源:linux-crypto-crc32.c
示例18: aes_init
static int __init aes_init(void)
{
int ret;
if (crypt_s390_func_available(KM_AES_128_ENCRYPT))
keylen_flag |= AES_KEYLEN_128;
if (crypt_s390_func_available(KM_AES_192_ENCRYPT))
keylen_flag |= AES_KEYLEN_192;
if (crypt_s390_func_available(KM_AES_256_ENCRYPT))
keylen_flag |= AES_KEYLEN_256;
if (!keylen_flag)
return -EOPNOTSUPP;
/* z9 109 and z9 BC/EC only support 128 bit key length */
if (keylen_flag == AES_KEYLEN_128) {
aes_alg.cra_u.cipher.cia_max_keysize = AES_MIN_KEY_SIZE;
ecb_aes_alg.cra_u.blkcipher.max_keysize = AES_MIN_KEY_SIZE;
cbc_aes_alg.cra_u.blkcipher.max_keysize = AES_MIN_KEY_SIZE;
printk(KERN_INFO
"aes_s390: hardware acceleration only available for"
"128 bit keys\n");
}
ret = crypto_register_alg(&aes_alg);
if (ret)
goto aes_err;
ret = crypto_register_alg(&ecb_aes_alg);
if (ret)
goto ecb_aes_err;
ret = crypto_register_alg(&cbc_aes_alg);
if (ret)
goto cbc_aes_err;
out:
return ret;
cbc_aes_err:
crypto_unregister_alg(&ecb_aes_alg);
ecb_aes_err:
crypto_unregister_alg(&aes_alg);
aes_err:
goto out;
}
开发者ID:3sOx,项目名称:asuswrt-merlin,代码行数:46,代码来源:aes_s390.c
示例19: sunxi_ss_alg_unregister
static void sunxi_ss_alg_unregister(void)
{
int i;
for (i=0; i<ARRAY_SIZE(sunxi_ss_algs); i++)
crypto_unregister_alg(&sunxi_ss_algs[i]);
for (i=0; i<ARRAY_SIZE(sunxi_ss_algs_hash); i++)
crypto_unregister_ahash(&sunxi_ss_algs_hash[i]);
}
开发者ID:925outer,项目名称:BPI-M2P-bsp,代码行数:10,代码来源:sunxi_ss.c
示例20: p8_exit
void __exit p8_exit(void)
{
struct crypto_alg **alg_it;
for (alg_it = algs; *alg_it; alg_it++) {
printk(KERN_INFO "Removing '%s'\n", (*alg_it)->cra_name);
crypto_unregister_alg(*alg_it);
}
crypto_unregister_shash(&p8_ghash_alg);
}
开发者ID:01org,项目名称:thunderbolt-software-kernel-tree,代码行数:10,代码来源:vmx.c
注:本文中的crypto_unregister_alg函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论