mirror of
https://github.com/openssl/openssl.git
synced 2024-12-21 06:09:35 +08:00
e748b4fbae
Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/15637)
73 lines
3.3 KiB
Plaintext
73 lines
3.3 KiB
Plaintext
digraph cipher {
|
|
bgcolor="transparent";
|
|
|
|
begin [label=start, color="#deeaee", style="filled"];
|
|
newed [fontcolor="#c94c4c", style="solid"];
|
|
|
|
initialised [fontcolor="#c94c4c"];
|
|
updated [fontcolor="#c94c4c"];
|
|
finaled [fontcolor="#c94c4c"];
|
|
end [label="freed", color="#deeaee", style="filled"];
|
|
|
|
d_initialised [label="initialised\n(decryption)", fontcolor="#c94c4c"];
|
|
d_updated [label="updated\n(decryption)", fontcolor="#c94c4c"];
|
|
e_initialised [label="initialised\n(encryption)", fontcolor="#c94c4c"];
|
|
e_updated [label="updated\n(encryption)", fontcolor="#c94c4c"];
|
|
|
|
begin -> newed [label="EVP_CIPHER_CTX_new"];
|
|
newed -> initialised [label="EVP_CipherInit"];
|
|
initialised -> initialised [label="EVP_CipherInit\n(not required but allowed)",
|
|
style=dashed];
|
|
initialised -> updated [label="EVP_CipherUpdate", weight=2];
|
|
updated -> updated [label="EVP_CipherUpdate"];
|
|
updated -> finaled [label="EVP_CipherFinal"];
|
|
finaled -> finaled [label="EVP_CIPHER_CTX_get_params\n(AEAD encryption)",
|
|
style=dashed];
|
|
finaled -> end [label="EVP_CIPHER_CTX_free"];
|
|
newed -> d_initialised [label="EVP_DecryptInit"];
|
|
d_initialised -> d_initialised [label="EVP_DecryptInit\n(not required but allowed)",
|
|
style=dashed];
|
|
d_initialised -> d_updated [label="EVP_DecryptUpdate", weight=2];
|
|
d_updated -> d_updated [label="EVP_DecryptUpdate"];
|
|
d_updated -> finaled [label="EVP_DecryptFinal"];
|
|
newed -> e_initialised [label="EVP_EncryptInit"];
|
|
e_initialised -> e_initialised [label="EVP_EncryptInit\n(not required but allowed)",
|
|
style=dashed];
|
|
e_initialised -> e_updated [label="EVP_EncryptUpdate", weight=2];
|
|
e_updated -> e_updated [label="EVP_EncryptUpdate"];
|
|
e_updated -> finaled [label="EVP_EncryptFinal"];
|
|
most -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
|
|
color="#034f84", fontcolor="#034f84"];
|
|
most [label="any of the initialised\nupdated or finaled states", style=dashed,
|
|
color="#034f84", fontcolor="#034f84"];
|
|
}
|
|
|
|
/* This is a version with a single flavour which is easier to comprehend
|
|
digraph cipher {
|
|
bgcolor="transparent";
|
|
|
|
begin [label=start, color="#deeaee", style="filled"];
|
|
newed [fontcolor="#c94c4c", style="solid"];
|
|
initialised [fontcolor="#c94c4c"];
|
|
updated [fontcolor="#c94c4c"];
|
|
finaled [fontcolor="#c94c4c"];
|
|
end [label="freed", color="#deeaee", style="filled"];
|
|
|
|
begin -> newed [label="EVP_CIPHER_CTX_new"];
|
|
newed -> initialised [label="EVP_CipherInit"];
|
|
initialised -> initialised [label="EVP_CipherInit\n(not required but allowed)",
|
|
style=dashed];
|
|
initialised -> updated [label="EVP_CipherUpdate", weight=2];
|
|
updated -> updated [label="EVP_CipherUpdate"];
|
|
updated -> finaled [label="EVP_CipherFinal"];
|
|
finaled -> finaled [label="EVP_CIPHER_CTX_get_params\n(AEAD encryption)",
|
|
style=dashed];
|
|
finaled -> end [label="EVP_CIPHER_CTX_free"];
|
|
finaled -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
|
|
color="#034f84", fontcolor="#034f84"];
|
|
updated -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
|
|
color="#034f84", fontcolor="#034f84"];
|
|
}
|
|
*/
|
|
|