Skip to content

Commit 627a53e

Browse files
authored
Merge pull request #32 from fooinha/fix/merge-pr
Prevent requirement of C99 mode
2 parents 367d230 + d6137cd commit 627a53e

File tree

2 files changed

+25
-19
lines changed

2 files changed

+25
-19
lines changed

patches/nginx.1.17.1.ssl.extensions.patch

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
diff -r d964b0aee8e7 src/event/ngx_event_openssl.c
22
--- a/src/event/ngx_event_openssl.c Thu May 23 16:49:22 2019 +0300
33
+++ b/src/event/ngx_event_openssl.c Sat Jun 01 14:53:52 2019 +0000
4-
@@ -1588,6 +1588,107 @@
4+
@@ -1588,6 +1588,108 @@
55
return NGX_OK;
66
}
77

@@ -14,6 +14,7 @@ diff -r d964b0aee8e7 src/event/ngx_event_openssl.c
1414
+ unsigned short *ciphers_out = NULL;
1515
+ int *curves_out = NULL;
1616
+ int *point_formats_out = NULL;
17+
+ size_t i;
1718
+ size_t len = 0;
1819
+ SSL *s = NULL;
1920
+
@@ -42,7 +43,7 @@ diff -r d964b0aee8e7 src/event/ngx_event_openssl.c
4243
+ len = c->ssl->curves_sz * sizeof(unsigned short);
4344
+ c->ssl->curves = ngx_pnalloc(c->pool, len);
4445
+ if (c->ssl->curves != NULL) {
45-
+ for (size_t i = 0; i < c->ssl->curves_sz; i++) {
46+
+ for (i = 0; i < c->ssl->curves_sz; i++) {
4647
+ c->ssl->curves[i] = curves_out[i];
4748
+ }
4849
+ }

src/ngx_ssl_ja3.c

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@ static const unsigned short GREASE[] = {
5050
static int
5151
ngx_ssl_ja3_is_ext_greased(int id)
5252
{
53-
for (size_t i = 0; i < (sizeof(GREASE) / sizeof(GREASE[0])); ++i) {
53+
size_t i;
54+
for (i = 0; i < (sizeof(GREASE) / sizeof(GREASE[0])); ++i) {
5455
if (id == GREASE[i]) {
5556
return 1;
5657
}
@@ -96,9 +97,10 @@ static const int nid_list[] = {
9697
static unsigned short
9798
ngx_ssl_ja3_nid_to_cid(int nid)
9899
{
100+
unsigned char i;
99101
unsigned char sz = (sizeof(nid_list) / sizeof(nid_list[0]));
100102

101-
for (unsigned char i = 0; i < sz; i++) {
103+
for (i = 0; i < sz; i++) {
102104
if (nid == nid_list[i]) {
103105
return i+1;
104106
}
@@ -125,6 +127,7 @@ ngx_ssj_ja3_num_digits(int n)
125127
static void
126128
ngx_ssl_ja3_detail_print(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3)
127129
{
130+
size_t i;
128131
/* Version */
129132
ngx_log_debug1(NGX_LOG_DEBUG_EVENT,
130133
pool->log, 0, "ssl_ja3: Version: %d\n", ja3->version);
@@ -134,7 +137,7 @@ ngx_ssl_ja3_detail_print(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3)
134137
pool->log, 0, "ssl_ja3: ciphers: length: %d\n",
135138
ja3->ciphers_sz);
136139

137-
for (size_t i = 0; i < ja3->ciphers_sz; ++i) {
140+
for (i = 0; i < ja3->ciphers_sz; ++i) {
138141
ngx_log_debug2(NGX_LOG_DEBUG_EVENT,
139142
pool->log, 0, "ssl_ja3: | cipher: 0x%04uxD -> %d",
140143
ja3->ciphers[i],
@@ -147,7 +150,7 @@ ngx_ssl_ja3_detail_print(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3)
147150
pool->log, 0, "ssl_ja3: extensions: length: %d\n",
148151
ja3->extensions_sz);
149152

150-
for (size_t i = 0; i < ja3->extensions_sz; ++i) {
153+
for (i = 0; i < ja3->extensions_sz; ++i) {
151154
ngx_log_debug2(NGX_LOG_DEBUG_EVENT,
152155
pool->log, 0, "ssl_ja3: | extension: 0x%04uxD -> %d",
153156
ja3->extensions[i],
@@ -160,7 +163,7 @@ ngx_ssl_ja3_detail_print(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3)
160163
pool->log, 0, "ssl_ja3: curves: length: %d\n",
161164
ja3->curves_sz);
162165

163-
for (size_t i = 0; i < ja3->curves_sz; ++i) {
166+
for (i = 0; i < ja3->curves_sz; ++i) {
164167
ngx_log_debug2(NGX_LOG_DEBUG_EVENT,
165168
pool->log, 0, "ssl_ja3: | curves: 0x%04uxD -> %d",
166169
ja3->curves[i],
@@ -172,7 +175,7 @@ ngx_ssl_ja3_detail_print(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3)
172175
ngx_log_debug1(NGX_LOG_DEBUG_EVENT,
173176
pool->log, 0, "ssl_ja3: formats: length: %d\n",
174177
ja3->point_formats_sz);
175-
for (size_t i = 0; i < ja3->point_formats_sz; ++i) {
178+
for (i = 0; i < ja3->point_formats_sz; ++i) {
176179
ngx_log_debug1(NGX_LOG_DEBUG_EVENT,
177180
pool->log, 0, "ssl_ja3: | format: %d",
178181
ja3->point_formats[i]
@@ -185,6 +188,7 @@ ngx_ssl_ja3_detail_print(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3)
185188
void
186189
ngx_ssl_ja3_fp(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3, ngx_str_t *out)
187190
{
191+
size_t i;
188192
size_t len = 0, cur = 0;
189193

190194
if (pool == NULL || ja3 == NULL || out == NULL) {
@@ -195,31 +199,31 @@ ngx_ssl_ja3_fp(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3, ngx_str_t *out)
195199
++len; /* ',' separator */
196200

197201
if (ja3->ciphers_sz) {
198-
for (size_t i = 0; i < ja3->ciphers_sz; ++i) {
202+
for (i = 0; i < ja3->ciphers_sz; ++i) {
199203
len += ngx_ssj_ja3_num_digits(ja3->ciphers[i]); /* cipher [i] */
200204
}
201205
len += (ja3->ciphers_sz - 1); /* '-' separators */
202206
}
203207
++len; /* ',' separator */
204208

205209
if (ja3->extensions_sz) {
206-
for (size_t i = 0; i < ja3->extensions_sz; ++i) {
210+
for (i = 0; i < ja3->extensions_sz; ++i) {
207211
len += ngx_ssj_ja3_num_digits(ja3->extensions[i]); /* ext [i] */
208212
}
209213
len += (ja3->extensions_sz - 1); /* '-' separators */
210214
}
211215
++len; /* ',' separator */
212216

213217
if (ja3->curves_sz) {
214-
for (size_t i = 0; i < ja3->curves_sz; ++i) {
218+
for (i = 0; i < ja3->curves_sz; ++i) {
215219
len += ngx_ssj_ja3_num_digits(ja3->curves[i]); /* curves [i] */
216220
}
217221
len += (ja3->curves_sz - 1); /* '-' separators */
218222
}
219223
++len; /* ',' separator */
220224

221225
if (ja3->point_formats_sz) {
222-
for (size_t i = 0; i < ja3->point_formats_sz; ++i) {
226+
for (i = 0; i < ja3->point_formats_sz; ++i) {
223227
len += ngx_ssj_ja3_num_digits(ja3->point_formats[i]); /* fmt [i] */
224228
}
225229
len += (ja3->point_formats_sz - 1); /* '-' separators */
@@ -233,7 +237,7 @@ ngx_ssl_ja3_fp(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3, ngx_str_t *out)
233237
cur += len;
234238

235239
if (ja3->ciphers_sz) {
236-
for (size_t i = 0; i < ja3->ciphers_sz; ++i) {
240+
for (i = 0; i < ja3->ciphers_sz; ++i) {
237241
if (i > 0) {
238242
ngx_snprintf(out->data + (cur++), 1, "-");
239243
}
@@ -245,7 +249,7 @@ ngx_ssl_ja3_fp(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3, ngx_str_t *out)
245249
ngx_snprintf(out->data + (cur++), 1, ",");
246250

247251
if (ja3->extensions_sz) {
248-
for (size_t i = 0; i < ja3->extensions_sz; i++) {
252+
for (i = 0; i < ja3->extensions_sz; i++) {
249253
if (i > 0) {
250254
ngx_snprintf(out->data + (cur++), 1, "-");
251255
}
@@ -257,7 +261,7 @@ ngx_ssl_ja3_fp(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3, ngx_str_t *out)
257261
ngx_snprintf(out->data + (cur++), 1, ",");
258262

259263
if (ja3->curves_sz) {
260-
for (size_t i = 0; i < ja3->curves_sz; i++) {
264+
for (i = 0; i < ja3->curves_sz; i++) {
261265
if (i > 0) {
262266
ngx_snprintf(out->data + (cur++), 1, "-");
263267
}
@@ -269,7 +273,7 @@ ngx_ssl_ja3_fp(ngx_pool_t *pool, ngx_ssl_ja3_t *ja3, ngx_str_t *out)
269273
ngx_snprintf(out->data + (cur++), 1, ",");
270274

271275
if (ja3->point_formats_sz) {
272-
for (size_t i = 0; i < ja3->point_formats_sz; i++) {
276+
for (i = 0; i < ja3->point_formats_sz; i++) {
273277
if (i > 0) {
274278
ngx_snprintf(out->data + (cur++), 1, "-");
275279
}
@@ -297,6 +301,7 @@ int
297301
ngx_ssl_ja3(ngx_connection_t *c, ngx_pool_t *pool, ngx_ssl_ja3_t *ja3) {
298302

299303
SSL *ssl;
304+
size_t i;
300305
size_t len = 0;
301306
unsigned short us = 0;
302307

@@ -327,7 +332,7 @@ ngx_ssl_ja3(ngx_connection_t *c, ngx_pool_t *pool, ngx_ssl_ja3_t *ja3) {
327332
return NGX_DECLINED;
328333
}
329334
/* Filter out GREASE extensions */
330-
for (size_t i = 0; i < c->ssl->ciphers_sz; ++i) {
335+
for (i = 0; i < c->ssl->ciphers_sz; ++i) {
331336
us = ntohs(c->ssl->ciphers[i]);
332337
if (! ngx_ssl_ja3_is_ext_greased(us)) {
333338
ja3->ciphers[ja3->ciphers_sz++] = us;
@@ -344,7 +349,7 @@ ngx_ssl_ja3(ngx_connection_t *c, ngx_pool_t *pool, ngx_ssl_ja3_t *ja3) {
344349
if (ja3->extensions == NULL) {
345350
return NGX_DECLINED;
346351
}
347-
for (size_t i = 0; i < c->ssl->extensions_size; ++i) {
352+
for (i = 0; i < c->ssl->extensions_size; ++i) {
348353
if (! ngx_ssl_ja3_is_ext_greased(c->ssl->extensions[i])) {
349354
ja3->extensions[ja3->extensions_sz++] = c->ssl->extensions[i];
350355
}
@@ -360,7 +365,7 @@ ngx_ssl_ja3(ngx_connection_t *c, ngx_pool_t *pool, ngx_ssl_ja3_t *ja3) {
360365
if (ja3->curves == NULL) {
361366
return NGX_DECLINED;
362367
}
363-
for (size_t i = 0; i < c->ssl->curves_sz; i++) {
368+
for (i = 0; i < c->ssl->curves_sz; i++) {
364369
us = ntohs(c->ssl->curves[i]);
365370
if (! ngx_ssl_ja3_is_ext_greased(us)) {
366371
ja3->curves[ja3->curves_sz++] = ngx_ssl_ja3_nid_to_cid(c->ssl->curves[i]);

0 commit comments

Comments
 (0)