]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/life-cycles/cipher.dot
doc: update Graphviz images to have a transparent background
[thirdparty/openssl.git] / doc / life-cycles / cipher.dot
CommitLineData
4aac71f7 1digraph cipher {
ee96d128
P
2 bgcolor="transparent";
3
4aac71f7
P
4 begin [label=start, color="#deeaee", style="filled"];
5 newed [fontcolor="#c94c4c", style="solid"];
6
7 initialised [fontcolor="#c94c4c"];
8 updated [fontcolor="#c94c4c"];
9 finaled [fontcolor="#c94c4c"];
10 end [label="freed", color="#deeaee", style="filled"];
11
12 d_initialised [label="initialised\n(decryption)", fontcolor="#c94c4c"];
13 d_updated [label="updated\n(decryption)", fontcolor="#c94c4c"];
14 e_initialised [label="initialised\n(encryption)", fontcolor="#c94c4c"];
15 e_updated [label="updated\n(encryption)", fontcolor="#c94c4c"];
16
17 begin -> newed [label="EVP_CIPHER_CTX_new"];
18 newed -> initialised [label="EVP_CipherInit"];
19 initialised -> initialised [label="EVP_CipherInit\n(not required but allowed)",
20 style=dashed];
21 initialised -> updated [label="EVP_CipherUpdate", weight=2];
22 updated -> updated [label="EVP_CipherUpdate"];
23 updated -> finaled [label="EVP_CipherFinal"];
24 finaled -> finaled [label="EVP_CIPHER_CTX_get_params\n(AEAD encryption)",
25 style=dashed];
26 finaled -> end [label="EVP_CIPHER_CTX_free"];
27 finaled -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
28 color="#034f84", fontcolor="#034f84"];
29 updated -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
30 color="#034f84", fontcolor="#034f84"];
31 newed -> d_initialised [label="EVP_DecryptInit"];
32 d_initialised -> d_initialised [label="EVP_DecryptInit\n(not required but allowed)",
33 style=dashed];
34 d_initialised -> d_updated [label="EVP_DecryptUpdate", weight=2];
35 d_updated -> d_updated [label="EVP_DecryptUpdate"];
36 d_updated -> finaled [label="EVP_DecryptFinal"];
37 d_updated -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
38 color="#034f84", fontcolor="#034f84"];
39 newed -> e_initialised [label="EVP_EncryptInit"];
40 e_initialised -> e_initialised [label="EVP_EncryptInit\n(not required but allowed)",
41 style=dashed];
42 e_initialised -> e_updated [label="EVP_EncryptUpdate", weight=2];
43 e_updated -> e_updated [label="EVP_EncryptUpdate"];
44 e_updated -> finaled [label="EVP_EncryptFinal"];
45 e_updated -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
46 color="#034f84", fontcolor="#034f84"];
47}
48
49/* This is a version with a single flavour which is easier to comprehend
50digraph cipher {
51 begin [label=start, color="#deeaee", style="filled"];
52 newed [fontcolor="#c94c4c", style="solid"];
53 initialised [fontcolor="#c94c4c"];
54 updated [fontcolor="#c94c4c"];
55 finaled [fontcolor="#c94c4c"];
56 end [label="freed", color="#deeaee", style="filled"];
57
58 begin -> newed [label="EVP_CIPHER_CTX_new"];
59 newed -> initialised [label="EVP_CipherInit"];
60 initialised -> initialised [label="EVP_CipherInit\n(not required but allowed)",
61 style=dashed];
62 initialised -> updated [label="EVP_CipherUpdate", weight=2];
63 updated -> updated [label="EVP_CipherUpdate"];
64 updated -> finaled [label="EVP_CipherFinal"];
65 finaled -> finaled [label="EVP_CIPHER_CTX_get_params\n(AEAD encryption)",
66 style=dashed];
67 finaled -> end [label="EVP_CIPHER_CTX_free"];
68 finaled -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
69 color="#034f84", fontcolor="#034f84"];
70 updated -> newed [label="EVP_CIPHER_CTX_reset", style=dashed,
71 color="#034f84", fontcolor="#034f84"];
72}
73*/
74