puma 5.5.1 → 5.5.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puma might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 79c6d8e0b864d27712116c6e235baddf99aaf663d8b152b11287b16ecf2a80a1
4
- data.tar.gz: 4fc99948c0655ffc08e3304a758a50b0370553912cc9bf808bed40abc6501458
3
+ metadata.gz: 3f0ef12e973901d1ef05ea411057d82c5dc3e3c6fbe471402abfea5cb9e9a5da
4
+ data.tar.gz: 32b6b9e7a34748bd8facf5d6bb2bb8fc0b3aedda83823b4db826d9b16fdf9290
5
5
  SHA512:
6
- metadata.gz: 7d2b50dca388c1ea1494a2c8cf326d159d1e1c8ebdb4d68f4e07a120a10bf623b3545f1b991dce15da6ab0fe8d97b27c1612170dbc2f296bdeca04748268274b
7
- data.tar.gz: cfa324c8ce8353ca3454c133c0f10c351c2171a7e355ffec3cd72ba774e97badb1c027d48ea3a7c30472678c528be3a7a8f3f083aa195a88527157ae8223a4b4
6
+ metadata.gz: a7792db683a263be5a0bd226578f98d55bcfb9ecab6fcdd1fc09da8b903f7960f149711b5174660ff6ebfa5402e2eb0e0d75ff1b5ce1110dfbec85e0532ed078
7
+ data.tar.gz: 344ad1f7eae75c085e42e24583a77a2444e8a92386fa8ac66ad7ea8d35ae3a72d7db0c01da60a2d20bc04330608b260685eb934603c9440df7208f809a6994f1
data/History.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## 5.5.2 / 2021-10-12
2
+
3
+ * Bugfixes
4
+ * Allow UTF-8 in HTTP header values
5
+
1
6
  ## 5.5.1 / 2021-10-12
2
7
 
3
8
  * Security
@@ -426,13 +426,16 @@ st18:
426
426
  case 18:
427
427
  #line 428 "ext/puma_http11/http11_parser.c"
428
428
  switch( (*p) ) {
429
- case 9: goto tr25;
430
429
  case 13: goto tr26;
431
430
  case 32: goto tr27;
431
+ case 127: goto st0;
432
432
  }
433
- if ( 33 <= (*p) && (*p) <= 126 )
434
- goto tr25;
435
- goto st0;
433
+ if ( (*p) > 8 ) {
434
+ if ( 10 <= (*p) && (*p) <= 31 )
435
+ goto st0;
436
+ } else if ( (*p) >= 0 )
437
+ goto st0;
438
+ goto tr25;
436
439
  tr25:
437
440
  #line 46 "ext/puma_http11/http11_parser.rl"
438
441
  { MARK(mark, p); }
@@ -441,14 +444,17 @@ st19:
441
444
  if ( ++p == pe )
442
445
  goto _test_eof19;
443
446
  case 19:
444
- #line 445 "ext/puma_http11/http11_parser.c"
447
+ #line 448 "ext/puma_http11/http11_parser.c"
445
448
  switch( (*p) ) {
446
- case 9: goto st19;
447
449
  case 13: goto tr29;
450
+ case 127: goto st0;
448
451
  }
449
- if ( 32 <= (*p) && (*p) <= 126 )
450
- goto st19;
451
- goto st0;
452
+ if ( (*p) > 8 ) {
453
+ if ( 10 <= (*p) && (*p) <= 31 )
454
+ goto st0;
455
+ } else if ( (*p) >= 0 )
456
+ goto st0;
457
+ goto st19;
452
458
  tr9:
453
459
  #line 53 "ext/puma_http11/http11_parser.rl"
454
460
  {
@@ -491,7 +497,7 @@ st20:
491
497
  if ( ++p == pe )
492
498
  goto _test_eof20;
493
499
  case 20:
494
- #line 495 "ext/puma_http11/http11_parser.c"
500
+ #line 501 "ext/puma_http11/http11_parser.c"
495
501
  switch( (*p) ) {
496
502
  case 32: goto tr31;
497
503
  case 60: goto st0;
@@ -512,7 +518,7 @@ st21:
512
518
  if ( ++p == pe )
513
519
  goto _test_eof21;
514
520
  case 21:
515
- #line 516 "ext/puma_http11/http11_parser.c"
521
+ #line 522 "ext/puma_http11/http11_parser.c"
516
522
  switch( (*p) ) {
517
523
  case 32: goto tr33;
518
524
  case 60: goto st0;
@@ -533,7 +539,7 @@ st22:
533
539
  if ( ++p == pe )
534
540
  goto _test_eof22;
535
541
  case 22:
536
- #line 537 "ext/puma_http11/http11_parser.c"
542
+ #line 543 "ext/puma_http11/http11_parser.c"
537
543
  switch( (*p) ) {
538
544
  case 43: goto st22;
539
545
  case 58: goto st23;
@@ -558,7 +564,7 @@ st23:
558
564
  if ( ++p == pe )
559
565
  goto _test_eof23;
560
566
  case 23:
561
- #line 562 "ext/puma_http11/http11_parser.c"
567
+ #line 568 "ext/puma_http11/http11_parser.c"
562
568
  switch( (*p) ) {
563
569
  case 32: goto tr8;
564
570
  case 34: goto st0;
@@ -578,7 +584,7 @@ st24:
578
584
  if ( ++p == pe )
579
585
  goto _test_eof24;
580
586
  case 24:
581
- #line 582 "ext/puma_http11/http11_parser.c"
587
+ #line 588 "ext/puma_http11/http11_parser.c"
582
588
  switch( (*p) ) {
583
589
  case 32: goto tr37;
584
590
  case 34: goto st0;
@@ -601,7 +607,7 @@ st25:
601
607
  if ( ++p == pe )
602
608
  goto _test_eof25;
603
609
  case 25:
604
- #line 605 "ext/puma_http11/http11_parser.c"
610
+ #line 611 "ext/puma_http11/http11_parser.c"
605
611
  switch( (*p) ) {
606
612
  case 32: goto tr41;
607
613
  case 34: goto st0;
@@ -621,7 +627,7 @@ st26:
621
627
  if ( ++p == pe )
622
628
  goto _test_eof26;
623
629
  case 26:
624
- #line 625 "ext/puma_http11/http11_parser.c"
630
+ #line 631 "ext/puma_http11/http11_parser.c"
625
631
  switch( (*p) ) {
626
632
  case 32: goto tr44;
627
633
  case 34: goto st0;
@@ -43,7 +43,7 @@
43
43
 
44
44
  field_name = ( token -- ":" )+ >start_field $snake_upcase_field %write_field;
45
45
 
46
- field_value = ( print | "\t" )* >start_value %write_value;
46
+ field_value = ( (any -- CTL) | "\t" )* >start_value %write_value;
47
47
 
48
48
  message_header = field_name ":" " "* field_value :> CRLF;
49
49
 
@@ -34,9 +34,9 @@ private static short[] init__puma_parser_key_offsets_0()
34
34
  {
35
35
  return new short [] {
36
36
  0, 0, 8, 17, 27, 29, 30, 31, 32, 33, 34, 36,
37
- 39, 41, 44, 45, 61, 62, 78, 83, 87, 95, 103, 113,
38
- 121, 130, 138, 146, 155, 164, 173, 182, 191, 200, 209, 218,
39
- 227, 236, 245, 254, 263, 272, 281, 290, 299, 308, 309
37
+ 39, 41, 44, 45, 61, 62, 78, 85, 91, 99, 107, 117,
38
+ 125, 134, 142, 150, 159, 168, 177, 186, 195, 204, 213, 222,
39
+ 231, 240, 249, 258, 267, 276, 285, 294, 303, 312, 313
40
40
  };
41
41
  }
42
42
 
@@ -52,26 +52,27 @@ private static char[] init__puma_parser_trans_keys_0()
52
52
  46, 48, 57, 48, 57, 13, 48, 57, 10, 13, 33, 124,
53
53
  126, 35, 39, 42, 43, 45, 46, 48, 57, 65, 90, 94,
54
54
  122, 10, 33, 58, 124, 126, 35, 39, 42, 43, 45, 46,
55
- 48, 57, 65, 90, 94, 122, 9, 13, 32, 33, 126, 9,
56
- 13, 32, 126, 32, 60, 62, 127, 0, 31, 34, 35, 32,
57
- 60, 62, 127, 0, 31, 34, 35, 43, 58, 45, 46, 48,
58
- 57, 65, 90, 97, 122, 32, 34, 35, 60, 62, 127, 0,
59
- 31, 32, 34, 35, 60, 62, 63, 127, 0, 31, 32, 34,
60
- 35, 60, 62, 127, 0, 31, 32, 34, 35, 60, 62, 127,
61
- 0, 31, 32, 36, 95, 45, 46, 48, 57, 65, 90, 32,
62
- 36, 95, 45, 46, 48, 57, 65, 90, 32, 36, 95, 45,
63
- 46, 48, 57, 65, 90, 32, 36, 95, 45, 46, 48, 57,
64
- 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90, 32,
65
- 36, 95, 45, 46, 48, 57, 65, 90, 32, 36, 95, 45,
66
- 46, 48, 57, 65, 90, 32, 36, 95, 45, 46, 48, 57,
67
- 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90, 32,
68
- 36, 95, 45, 46, 48, 57, 65, 90, 32, 36, 95, 45,
69
- 46, 48, 57, 65, 90, 32, 36, 95, 45, 46, 48, 57,
70
- 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90, 32,
71
- 36, 95, 45, 46, 48, 57, 65, 90, 32, 36, 95, 45,
72
- 46, 48, 57, 65, 90, 32, 36, 95, 45, 46, 48, 57,
73
- 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90, 32,
74
- 36, 95, 45, 46, 48, 57, 65, 90, 32, 0
55
+ 48, 57, 65, 90, 94, 122, 13, 32, 127, 0, 8, 10,
56
+ 31, 13, 127, 0, 8, 10, 31, 32, 60, 62, 127, 0,
57
+ 31, 34, 35, 32, 60, 62, 127, 0, 31, 34, 35, 43,
58
+ 58, 45, 46, 48, 57, 65, 90, 97, 122, 32, 34, 35,
59
+ 60, 62, 127, 0, 31, 32, 34, 35, 60, 62, 63, 127,
60
+ 0, 31, 32, 34, 35, 60, 62, 127, 0, 31, 32, 34,
61
+ 35, 60, 62, 127, 0, 31, 32, 36, 95, 45, 46, 48,
62
+ 57, 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90,
63
+ 32, 36, 95, 45, 46, 48, 57, 65, 90, 32, 36, 95,
64
+ 45, 46, 48, 57, 65, 90, 32, 36, 95, 45, 46, 48,
65
+ 57, 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90,
66
+ 32, 36, 95, 45, 46, 48, 57, 65, 90, 32, 36, 95,
67
+ 45, 46, 48, 57, 65, 90, 32, 36, 95, 45, 46, 48,
68
+ 57, 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90,
69
+ 32, 36, 95, 45, 46, 48, 57, 65, 90, 32, 36, 95,
70
+ 45, 46, 48, 57, 65, 90, 32, 36, 95, 45, 46, 48,
71
+ 57, 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90,
72
+ 32, 36, 95, 45, 46, 48, 57, 65, 90, 32, 36, 95,
73
+ 45, 46, 48, 57, 65, 90, 32, 36, 95, 45, 46, 48,
74
+ 57, 65, 90, 32, 36, 95, 45, 46, 48, 57, 65, 90,
75
+ 32, 0
75
76
  };
76
77
  }
77
78
 
@@ -95,7 +96,7 @@ private static byte[] init__puma_parser_range_lengths_0()
95
96
  {
96
97
  return new byte [] {
97
98
  0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 1, 1,
98
- 1, 1, 0, 6, 0, 6, 1, 1, 2, 2, 4, 1,
99
+ 1, 1, 0, 6, 0, 6, 2, 2, 2, 2, 4, 1,
99
100
  1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3,
100
101
  3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0
101
102
  };
@@ -108,9 +109,9 @@ private static short[] init__puma_parser_index_offsets_0()
108
109
  {
109
110
  return new short [] {
110
111
  0, 0, 6, 13, 21, 24, 26, 28, 30, 32, 34, 36,
111
- 39, 41, 44, 46, 57, 59, 70, 75, 79, 86, 93, 100,
112
- 108, 117, 125, 133, 140, 147, 154, 161, 168, 175, 182, 189,
113
- 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 261
112
+ 39, 41, 44, 46, 57, 59, 70, 76, 81, 88, 95, 102,
113
+ 110, 119, 127, 135, 142, 149, 156, 163, 170, 177, 184, 191,
114
+ 198, 205, 212, 219, 226, 233, 240, 247, 254, 261, 263
114
115
  };
115
116
  }
116
117
 
@@ -125,23 +126,24 @@ private static byte[] init__puma_parser_indicies_0()
125
126
  10, 1, 11, 1, 12, 1, 13, 1, 14, 1, 15, 1,
126
127
  16, 15, 1, 17, 1, 18, 17, 1, 19, 1, 20, 21,
127
128
  21, 21, 21, 21, 21, 21, 21, 21, 1, 22, 1, 23,
128
- 24, 23, 23, 23, 23, 23, 23, 23, 23, 1, 25, 26,
129
- 27, 25, 1, 28, 29, 28, 1, 30, 1, 1, 1, 1,
130
- 1, 31, 32, 1, 1, 1, 1, 1, 33, 34, 35, 34,
131
- 34, 34, 34, 1, 8, 1, 9, 1, 1, 1, 1, 35,
132
- 36, 1, 38, 1, 1, 39, 1, 1, 37, 40, 1, 42,
133
- 1, 1, 1, 1, 41, 43, 1, 45, 1, 1, 1, 1,
134
- 44, 2, 46, 46, 46, 46, 46, 1, 2, 47, 47, 47,
135
- 47, 47, 1, 2, 48, 48, 48, 48, 48, 1, 2, 49,
136
- 49, 49, 49, 49, 1, 2, 50, 50, 50, 50, 50, 1,
137
- 2, 51, 51, 51, 51, 51, 1, 2, 52, 52, 52, 52,
138
- 52, 1, 2, 53, 53, 53, 53, 53, 1, 2, 54, 54,
139
- 54, 54, 54, 1, 2, 55, 55, 55, 55, 55, 1, 2,
140
- 56, 56, 56, 56, 56, 1, 2, 57, 57, 57, 57, 57,
141
- 1, 2, 58, 58, 58, 58, 58, 1, 2, 59, 59, 59,
142
- 59, 59, 1, 2, 60, 60, 60, 60, 60, 1, 2, 61,
143
- 61, 61, 61, 61, 1, 2, 62, 62, 62, 62, 62, 1,
144
- 2, 63, 63, 63, 63, 63, 1, 2, 1, 1, 0
129
+ 24, 23, 23, 23, 23, 23, 23, 23, 23, 1, 26, 27,
130
+ 1, 1, 1, 25, 29, 1, 1, 1, 28, 30, 1, 1,
131
+ 1, 1, 1, 31, 32, 1, 1, 1, 1, 1, 33, 34,
132
+ 35, 34, 34, 34, 34, 1, 8, 1, 9, 1, 1, 1,
133
+ 1, 35, 36, 1, 38, 1, 1, 39, 1, 1, 37, 40,
134
+ 1, 42, 1, 1, 1, 1, 41, 43, 1, 45, 1, 1,
135
+ 1, 1, 44, 2, 46, 46, 46, 46, 46, 1, 2, 47,
136
+ 47, 47, 47, 47, 1, 2, 48, 48, 48, 48, 48, 1,
137
+ 2, 49, 49, 49, 49, 49, 1, 2, 50, 50, 50, 50,
138
+ 50, 1, 2, 51, 51, 51, 51, 51, 1, 2, 52, 52,
139
+ 52, 52, 52, 1, 2, 53, 53, 53, 53, 53, 1, 2,
140
+ 54, 54, 54, 54, 54, 1, 2, 55, 55, 55, 55, 55,
141
+ 1, 2, 56, 56, 56, 56, 56, 1, 2, 57, 57, 57,
142
+ 57, 57, 1, 2, 58, 58, 58, 58, 58, 1, 2, 59,
143
+ 59, 59, 59, 59, 1, 2, 60, 60, 60, 60, 60, 1,
144
+ 2, 61, 61, 61, 61, 61, 1, 2, 62, 62, 62, 62,
145
+ 62, 1, 2, 63, 63, 63, 63, 63, 1, 2, 1, 1,
146
+ 0
145
147
  };
146
148
  }
147
149
 
@@ -210,7 +212,7 @@ static final int puma_parser_error = 0;
210
212
  cs = 0;
211
213
 
212
214
 
213
- // line 214 "ext/puma_http11/org/jruby/puma/Http11Parser.java"
215
+ // line 216 "ext/puma_http11/org/jruby/puma/Http11Parser.java"
214
216
  {
215
217
  cs = puma_parser_start;
216
218
  }
@@ -242,7 +244,7 @@ static final int puma_parser_error = 0;
242
244
  parser.buffer = buffer;
243
245
 
244
246
 
245
- // line 246 "ext/puma_http11/org/jruby/puma/Http11Parser.java"
247
+ // line 248 "ext/puma_http11/org/jruby/puma/Http11Parser.java"
246
248
  {
247
249
  int _klen;
248
250
  int _trans = 0;
@@ -398,7 +400,7 @@ case 1:
398
400
  { p += 1; _goto_targ = 5; if (true) continue _goto;}
399
401
  }
400
402
  break;
401
- // line 402 "ext/puma_http11/org/jruby/puma/Http11Parser.java"
403
+ // line 404 "ext/puma_http11/org/jruby/puma/Http11Parser.java"
402
404
  }
403
405
  }
404
406
  }
data/lib/puma/const.rb CHANGED
@@ -100,7 +100,7 @@ module Puma
100
100
  # too taxing on performance.
101
101
  module Const
102
102
 
103
- PUMA_VERSION = VERSION = "5.5.1".freeze
103
+ PUMA_VERSION = VERSION = "5.5.2".freeze
104
104
  CODE_NAME = "Zawgyi".freeze
105
105
 
106
106
  PUMA_SERVER_STRING = ['puma', PUMA_VERSION, CODE_NAME].join(' ').freeze
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puma
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.5.1
4
+ version: 5.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evan Phoenix