当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


erlang crypto_key_fun(CryptoKeyFun)用法及代码示例


crypto_key_fun(CryptoKeyFun) -> ok | {error, Reason}
类型:
CryptoKeyFun = crypto_fun()
Reason = badfun | exists | term()
crypto_fun() = 乐趣((crypto_fun_arg()) ->term())
crypto_fun_arg() =
初始化|清除 | {debug_info、mode()、module(),文件:filename()}

mode() = des3_cbc

注册一个一元函数,如果 beam_lib 必须读取已加密的 debug_info 块,则调用该函数。乐趣在于由函数启动的进程。

如果在尝试注册乐趣时已经注册了乐趣,则返回{error, exists}

fun 必须处理以下参数:

CryptoKeyFun(init) -> ok | {ok, NewCryptoKeyFun} | {error, Term}

当乐趣注册时调用,在持有乐趣的进程中。在这里,加密 key fun 可以进行任何必要的初始化。如果返回 {ok, NewCryptoKeyFun},则注册 NewCryptoKeyFun 而不是 CryptoKeyFun 。如果返回 {error, Term} ,则注册将中止,并且 crypto_key_fun/1 也会返回 {error, Term}

CryptoKeyFun({debug_info, Mode, Module, Filename}) -> Key

当名为 Filename 的文件中的模块 Module 需要 key 时调用。 Mode是加密算法的类型;目前,唯一可能的值是 des3_cbc 。如果没有可用的 key ,则调用将失败(引发异常)。

CryptoKeyFun(clear) -> term()

在取消注册乐趣之前调用。在这里可以进行任何清理工作。返回值并不重要,但会作为其返回值的一部分传递回clear_crypto_key_fun/0 的调用者。

相关用法


注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 crypto_key_fun(CryptoKeyFun) -> ok | {error, Reason}。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。