Commit 8ea25a3
authored
fix(ext/node): preserve raw socket connect when wrapping TLS (#34093)
Fixes wrapping a still-connecting `net.Socket` with `tls.connect({
socket })`.
The TLS wrapper now leaves the raw socket as the TCP handle owner until
its pending `connect` event has fired, then transfers ownership to the
TLS socket if it was not destroyed by user code. This lets raw
`net.connect(..., cb)` callbacks run before TLS takes over, matching
Node behavior.
Also aligns custom DNS lookup options with Node by not passing `port`,
and ignores `test-tls-connect-keepalive-nodelay.js` because it requires
Node's unimplemented `internal/net` module.1 parent 2668e09 commit 8ea25a3
4 files changed
Lines changed: 72 additions & 50 deletions
File tree
- ext/node/polyfills
- internal_binding
- tests/node_compat
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
526 | 526 | | |
527 | 527 | | |
528 | 528 | | |
529 | | - | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
530 | 534 | | |
531 | 535 | | |
532 | 536 | | |
| |||
783 | 787 | | |
784 | 788 | | |
785 | 789 | | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
786 | 794 | | |
787 | 795 | | |
788 | 796 | | |
789 | 797 | | |
790 | | - | |
| 798 | + | |
791 | 799 | | |
792 | | - | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| 803 | + | |
| 804 | + | |
793 | 805 | | |
794 | | - | |
| 806 | + | |
| 807 | + | |
| 808 | + | |
| 809 | + | |
| 810 | + | |
795 | 811 | | |
796 | 812 | | |
797 | 813 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
14 | 48 | | |
15 | 49 | | |
16 | 50 | | |
| |||
53 | 87 | | |
54 | 88 | | |
55 | 89 | | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
56 | 94 | | |
57 | 95 | | |
58 | 96 | | |
| |||
125 | 163 | | |
126 | 164 | | |
127 | 165 | | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
| 166 | + | |
161 | 167 | | |
162 | 168 | | |
163 | 169 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1047 | 1047 | | |
1048 | 1048 | | |
1049 | 1049 | | |
1050 | | - | |
1051 | 1050 | | |
1052 | 1051 | | |
1053 | 1052 | | |
| |||
1063 | 1062 | | |
1064 | 1063 | | |
1065 | 1064 | | |
| 1065 | + | |
| 1066 | + | |
| 1067 | + | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
| 1072 | + | |
| 1073 | + | |
| 1074 | + | |
1066 | 1075 | | |
1067 | 1076 | | |
1068 | 1077 | | |
| |||
1073 | 1082 | | |
1074 | 1083 | | |
1075 | 1084 | | |
1076 | | - | |
1077 | | - | |
1078 | | - | |
1079 | | - | |
1080 | | - | |
1081 | 1085 | | |
1082 | 1086 | | |
1083 | 1087 | | |
1084 | 1088 | | |
1085 | 1089 | | |
1086 | 1090 | | |
1087 | 1091 | | |
1088 | | - | |
| 1092 | + | |
1089 | 1093 | | |
1090 | 1094 | | |
1091 | 1095 | | |
| |||
1097 | 1101 | | |
1098 | 1102 | | |
1099 | 1103 | | |
1100 | | - | |
1101 | | - | |
1102 | | - | |
1103 | | - | |
1104 | | - | |
1105 | 1104 | | |
1106 | 1105 | | |
1107 | | - | |
| 1106 | + | |
1108 | 1107 | | |
1109 | 1108 | | |
1110 | 1109 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3578 | 3578 | | |
3579 | 3579 | | |
3580 | 3580 | | |
| 3581 | + | |
3581 | 3582 | | |
3582 | 3583 | | |
3583 | 3584 | | |
| |||
0 commit comments