diff options
author | tb <> | 2021-01-05 17:43:13 +0000 |
---|---|---|
committer | tb <> | 2021-01-05 17:43:13 +0000 |
commit | f7ec618da8117e2d489c8bfb902b09fc285095b5 (patch) | |
tree | 75af54ab7faa3bb7c079ae32d6a1203366015516 /src | |
parent | eb9d67981acc2795da64ed1850dcf071a7082a28 (diff) | |
download | openbsd-f7ec618da8117e2d489c8bfb902b09fc285095b5.tar.gz openbsd-f7ec618da8117e2d489c8bfb902b09fc285095b5.tar.bz2 openbsd-f7ec618da8117e2d489c8bfb902b09fc285095b5.zip |
Convert tls13_secrets_{create,destroy}() to tls13_secret_{init,cleanup}()
ok jsing
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libssl/tls13_key_schedule.c | 105 |
1 files changed, 34 insertions, 71 deletions
diff --git a/src/lib/libssl/tls13_key_schedule.c b/src/lib/libssl/tls13_key_schedule.c index bf8699dc31..ab8e99a293 100644 --- a/src/lib/libssl/tls13_key_schedule.c +++ b/src/lib/libssl/tls13_key_schedule.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: tls13_key_schedule.c,v 1.10 2021/01/05 17:40:11 tb Exp $ */ | 1 | /* $OpenBSD: tls13_key_schedule.c,v 1.11 2021/01/05 17:43:13 tb Exp $ */ |
2 | /* Copyright (c) 2018, Bob Beck <beck@openbsd.org> | 2 | /* Copyright (c) 2018, Bob Beck <beck@openbsd.org> |
3 | * | 3 | * |
4 | * Permission to use, copy, modify, and/or distribute this software for any | 4 | * Permission to use, copy, modify, and/or distribute this software for any |
@@ -54,37 +54,23 @@ tls13_secrets_destroy(struct tls13_secrets *secrets) | |||
54 | return; | 54 | return; |
55 | 55 | ||
56 | /* you can never be too sure :) */ | 56 | /* you can never be too sure :) */ |
57 | freezero(secrets->zeros.data, secrets->zeros.len); | 57 | tls13_secret_cleanup(&secrets->zeros); |
58 | freezero(secrets->empty_hash.data, secrets->empty_hash.len); | 58 | tls13_secret_cleanup(&secrets->empty_hash); |
59 | 59 | ||
60 | freezero(secrets->extracted_early.data, | 60 | tls13_secret_cleanup(&secrets->extracted_early); |
61 | secrets->extracted_early.len); | 61 | tls13_secret_cleanup(&secrets->binder_key); |
62 | freezero(secrets->binder_key.data, | 62 | tls13_secret_cleanup(&secrets->client_early_traffic); |
63 | secrets->binder_key.len); | 63 | tls13_secret_cleanup(&secrets->early_exporter_master); |
64 | freezero(secrets->client_early_traffic.data, | 64 | tls13_secret_cleanup(&secrets->derived_early); |
65 | secrets->client_early_traffic.len); | 65 | tls13_secret_cleanup(&secrets->extracted_handshake); |
66 | freezero(secrets->early_exporter_master.data, | 66 | tls13_secret_cleanup(&secrets->client_handshake_traffic); |
67 | secrets->early_exporter_master.len); | 67 | tls13_secret_cleanup(&secrets->server_handshake_traffic); |
68 | freezero(secrets->derived_early.data, | 68 | tls13_secret_cleanup(&secrets->derived_handshake); |
69 | secrets->derived_early.len); | 69 | tls13_secret_cleanup(&secrets->extracted_master); |
70 | freezero(secrets->extracted_handshake.data, | 70 | tls13_secret_cleanup(&secrets->client_application_traffic); |
71 | secrets->extracted_handshake.len); | 71 | tls13_secret_cleanup(&secrets->server_application_traffic); |
72 | freezero(secrets->client_handshake_traffic.data, | 72 | tls13_secret_cleanup(&secrets->exporter_master); |
73 | secrets->client_handshake_traffic.len); | 73 | tls13_secret_cleanup(&secrets->resumption_master); |
74 | freezero(secrets->server_handshake_traffic.data, | ||
75 | secrets->server_handshake_traffic.len); | ||
76 | freezero(secrets->derived_handshake.data, | ||
77 | secrets->derived_handshake.len); | ||
78 | freezero(secrets->extracted_master.data, | ||
79 | secrets->extracted_master.len); | ||
80 | freezero(secrets->client_application_traffic.data, | ||
81 | secrets->client_application_traffic.len); | ||
82 | freezero(secrets->server_application_traffic.data, | ||
83 | secrets->server_application_traffic.len); | ||
84 | freezero(secrets->exporter_master.data, | ||
85 | secrets->exporter_master.len); | ||
86 | freezero(secrets->resumption_master.data, | ||
87 | secrets->resumption_master.len); | ||
88 | 74 | ||
89 | freezero(secrets, sizeof(struct tls13_secrets)); | 75 | freezero(secrets, sizeof(struct tls13_secrets)); |
90 | } | 76 | } |
@@ -106,62 +92,39 @@ tls13_secrets_create(const EVP_MD *digest, int resumption) | |||
106 | if ((secrets = calloc(1, sizeof(struct tls13_secrets))) == NULL) | 92 | if ((secrets = calloc(1, sizeof(struct tls13_secrets))) == NULL) |
107 | goto err; | 93 | goto err; |
108 | 94 | ||
109 | if ((secrets->zeros.data = calloc(hash_length, sizeof(uint8_t))) == | 95 | if (!tls13_secret_init(&secrets->zeros, hash_length)) |
110 | NULL) | ||
111 | goto err; | 96 | goto err; |
112 | secrets->zeros.len = hash_length; | 97 | if (!tls13_secret_init(&secrets->empty_hash, hash_length)) |
113 | |||
114 | if ((secrets->empty_hash.data = malloc(hash_length)) == NULL) | ||
115 | goto err; | 98 | goto err; |
116 | secrets->empty_hash.len = hash_length; | ||
117 | 99 | ||
118 | if ((secrets->extracted_early.data = malloc(hash_length)) == NULL) | 100 | if (!tls13_secret_init(&secrets->extracted_early, hash_length)) |
119 | goto err; | 101 | goto err; |
120 | secrets->extracted_early.len = hash_length; | 102 | if (!tls13_secret_init(&secrets->binder_key, hash_length)) |
121 | if ((secrets->binder_key.data = malloc(hash_length)) == NULL) | ||
122 | goto err; | 103 | goto err; |
123 | secrets->binder_key.len = hash_length; | 104 | if (!tls13_secret_init(&secrets->client_early_traffic, hash_length)) |
124 | if ((secrets->client_early_traffic.data = malloc(hash_length)) == NULL) | ||
125 | goto err; | 105 | goto err; |
126 | secrets->client_early_traffic.len = hash_length; | 106 | if (!tls13_secret_init(&secrets->early_exporter_master, hash_length)) |
127 | if ((secrets->early_exporter_master.data = malloc(hash_length)) == | ||
128 | NULL) | ||
129 | goto err; | 107 | goto err; |
130 | secrets->early_exporter_master.len = hash_length; | 108 | if (!tls13_secret_init(&secrets->derived_early, hash_length)) |
131 | if ((secrets->derived_early.data = malloc(hash_length)) == NULL) | ||
132 | goto err; | 109 | goto err; |
133 | secrets->derived_early.len = hash_length; | 110 | if (!tls13_secret_init(&secrets->extracted_handshake, hash_length)) |
134 | if ((secrets->extracted_handshake.data = malloc(hash_length)) == NULL) | ||
135 | goto err; | 111 | goto err; |
136 | secrets->extracted_handshake.len = hash_length; | 112 | if (!tls13_secret_init(&secrets->client_handshake_traffic, hash_length)) |
137 | if ((secrets->client_handshake_traffic.data = malloc(hash_length)) | ||
138 | == NULL) | ||
139 | goto err; | 113 | goto err; |
140 | secrets->client_handshake_traffic.len = hash_length; | 114 | if (!tls13_secret_init(&secrets->server_handshake_traffic, hash_length)) |
141 | if ((secrets->server_handshake_traffic.data = malloc(hash_length)) | ||
142 | == NULL) | ||
143 | goto err; | 115 | goto err; |
144 | secrets->server_handshake_traffic.len = hash_length; | 116 | if (!tls13_secret_init(&secrets->derived_handshake, hash_length)) |
145 | if ((secrets->derived_handshake.data = malloc(hash_length)) == NULL) | ||
146 | goto err; | 117 | goto err; |
147 | secrets->derived_handshake.len = hash_length; | 118 | if (!tls13_secret_init(&secrets->extracted_master, hash_length)) |
148 | if ((secrets->extracted_master.data = malloc(hash_length)) == NULL) | ||
149 | goto err; | 119 | goto err; |
150 | secrets->extracted_master.len = hash_length; | 120 | if (!tls13_secret_init(&secrets->client_application_traffic, hash_length)) |
151 | if ((secrets->client_application_traffic.data = malloc(hash_length)) == | ||
152 | NULL) | ||
153 | goto err; | 121 | goto err; |
154 | secrets->client_application_traffic.len = hash_length; | 122 | if (!tls13_secret_init(&secrets->server_application_traffic, hash_length)) |
155 | if ((secrets->server_application_traffic.data = malloc(hash_length)) == | ||
156 | NULL) | ||
157 | goto err; | 123 | goto err; |
158 | secrets->server_application_traffic.len = hash_length; | 124 | if (!tls13_secret_init(&secrets->exporter_master, hash_length)) |
159 | if ((secrets->exporter_master.data = malloc(hash_length)) == NULL) | ||
160 | goto err; | 125 | goto err; |
161 | secrets->exporter_master.len = hash_length; | 126 | if (!tls13_secret_init(&secrets->resumption_master, hash_length)) |
162 | if ((secrets->resumption_master.data = malloc(hash_length)) == NULL) | ||
163 | goto err; | 127 | goto err; |
164 | secrets->resumption_master.len = hash_length; | ||
165 | 128 | ||
166 | /* | 129 | /* |
167 | * Calculate the hash of a zero-length string - this is needed during | 130 | * Calculate the hash of a zero-length string - this is needed during |