Commit 59cd208
committed
scp: reuse GetScpFileName buffer instead of realloc
- Track the scpFileName allocation size in a new scpFileNameCap field,
so GetScpFileName() and ScpCheckForRename() reuse the buffer whenever
the name plus its terminator fits, instead of testing against the
previous name length
- Pass scpFileNameCap to the send callback, which writes into
scpFileName and needs the capacity; scpFileNameSz is now the name
length on every path, including the source path
- Free and reallocate the transfer buffer in ScpSourceInit(), clearing
the size fields alongside the pointers they describe
- Wrap a long line in ScpProcessEntry()
- Add test_ScpGetFileName covering the reuse-vs-realloc branch, the
exact-fit boundary, a grow-by-one that catches an off-by-one in the
reuse condition, and a source-path buffer holding no name yet
- Add test_wolfSSH_SCP_RecursiveTwoFiles, a real "scp -r" transfer of
two files, covering the scpFileHeaderSent reset on the recursive
path added in the duplicate-header fix; it clears leftovers from an
aborted run up front and bounds its recv so a regression fails
instead of hanging1 parent 8f6a8e7 commit 59cd208
5 files changed
Lines changed: 374 additions & 13 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1605 | 1605 | | |
1606 | 1606 | | |
1607 | 1607 | | |
| 1608 | + | |
1608 | 1609 | | |
1609 | 1610 | | |
1610 | 1611 | | |
| |||
1706 | 1707 | | |
1707 | 1708 | | |
1708 | 1709 | | |
| 1710 | + | |
1709 | 1711 | | |
1710 | 1712 | | |
1711 | 1713 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
366 | 366 | | |
367 | 367 | | |
368 | 368 | | |
| 369 | + | |
369 | 370 | | |
370 | 371 | | |
371 | 372 | | |
372 | 373 | | |
373 | 374 | | |
374 | 375 | | |
375 | 376 | | |
376 | | - | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
377 | 381 | | |
378 | 382 | | |
379 | 383 | | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
380 | 390 | | |
381 | 391 | | |
382 | 392 | | |
383 | 393 | | |
384 | 394 | | |
| 395 | + | |
385 | 396 | | |
386 | 397 | | |
| 398 | + | |
387 | 399 | | |
388 | 400 | | |
389 | 401 | | |
| |||
633 | 645 | | |
634 | 646 | | |
635 | 647 | | |
| 648 | + | |
| 649 | + | |
636 | 650 | | |
637 | 651 | | |
638 | | - | |
| 652 | + | |
| 653 | + | |
639 | 654 | | |
640 | 655 | | |
641 | 656 | | |
| |||
1258 | 1273 | | |
1259 | 1274 | | |
1260 | 1275 | | |
1261 | | - | |
1262 | | - | |
1263 | | - | |
1264 | | - | |
1265 | | - | |
| 1276 | + | |
| 1277 | + | |
| 1278 | + | |
| 1279 | + | |
| 1280 | + | |
| 1281 | + | |
| 1282 | + | |
| 1283 | + | |
| 1284 | + | |
| 1285 | + | |
1266 | 1286 | | |
1267 | | - | |
1268 | | - | |
1269 | | - | |
1270 | | - | |
| 1287 | + | |
| 1288 | + | |
| 1289 | + | |
| 1290 | + | |
| 1291 | + | |
| 1292 | + | |
| 1293 | + | |
1271 | 1294 | | |
1272 | 1295 | | |
1273 | 1296 | | |
| |||
1281 | 1304 | | |
1282 | 1305 | | |
1283 | 1306 | | |
| 1307 | + | |
| 1308 | + | |
| 1309 | + | |
| 1310 | + | |
| 1311 | + | |
| 1312 | + | |
| 1313 | + | |
| 1314 | + | |
1284 | 1315 | | |
1285 | 1316 | | |
1286 | 1317 | | |
| |||
1443 | 1474 | | |
1444 | 1475 | | |
1445 | 1476 | | |
1446 | | - | |
| 1477 | + | |
1447 | 1478 | | |
1448 | 1479 | | |
| 1480 | + | |
1449 | 1481 | | |
| 1482 | + | |
1450 | 1483 | | |
1451 | 1484 | | |
1452 | 1485 | | |
| |||
1456 | 1489 | | |
1457 | 1490 | | |
1458 | 1491 | | |
| 1492 | + | |
1459 | 1493 | | |
1460 | 1494 | | |
1461 | 1495 | | |
| |||
3057 | 3091 | | |
3058 | 3092 | | |
3059 | 3093 | | |
3060 | | - | |
| 3094 | + | |
| 3095 | + | |
3061 | 3096 | | |
3062 | 3097 | | |
3063 | 3098 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4082 | 4082 | | |
4083 | 4083 | | |
4084 | 4084 | | |
| 4085 | + | |
| 4086 | + | |
| 4087 | + | |
| 4088 | + | |
| 4089 | + | |
| 4090 | + | |
| 4091 | + | |
| 4092 | + | |
| 4093 | + | |
| 4094 | + | |
| 4095 | + | |
| 4096 | + | |
| 4097 | + | |
| 4098 | + | |
| 4099 | + | |
| 4100 | + | |
| 4101 | + | |
| 4102 | + | |
| 4103 | + | |
| 4104 | + | |
| 4105 | + | |
| 4106 | + | |
| 4107 | + | |
| 4108 | + | |
| 4109 | + | |
| 4110 | + | |
| 4111 | + | |
| 4112 | + | |
| 4113 | + | |
| 4114 | + | |
| 4115 | + | |
| 4116 | + | |
| 4117 | + | |
| 4118 | + | |
| 4119 | + | |
| 4120 | + | |
| 4121 | + | |
| 4122 | + | |
| 4123 | + | |
| 4124 | + | |
| 4125 | + | |
| 4126 | + | |
| 4127 | + | |
| 4128 | + | |
| 4129 | + | |
| 4130 | + | |
| 4131 | + | |
| 4132 | + | |
| 4133 | + | |
| 4134 | + | |
| 4135 | + | |
| 4136 | + | |
| 4137 | + | |
| 4138 | + | |
| 4139 | + | |
| 4140 | + | |
| 4141 | + | |
| 4142 | + | |
| 4143 | + | |
| 4144 | + | |
| 4145 | + | |
| 4146 | + | |
| 4147 | + | |
| 4148 | + | |
| 4149 | + | |
| 4150 | + | |
| 4151 | + | |
| 4152 | + | |
| 4153 | + | |
| 4154 | + | |
| 4155 | + | |
| 4156 | + | |
| 4157 | + | |
| 4158 | + | |
| 4159 | + | |
| 4160 | + | |
| 4161 | + | |
| 4162 | + | |
| 4163 | + | |
| 4164 | + | |
| 4165 | + | |
| 4166 | + | |
| 4167 | + | |
| 4168 | + | |
| 4169 | + | |
| 4170 | + | |
| 4171 | + | |
| 4172 | + | |
| 4173 | + | |
| 4174 | + | |
| 4175 | + | |
| 4176 | + | |
| 4177 | + | |
| 4178 | + | |
| 4179 | + | |
| 4180 | + | |
| 4181 | + | |
| 4182 | + | |
| 4183 | + | |
| 4184 | + | |
| 4185 | + | |
| 4186 | + | |
| 4187 | + | |
| 4188 | + | |
| 4189 | + | |
| 4190 | + | |
| 4191 | + | |
| 4192 | + | |
| 4193 | + | |
| 4194 | + | |
| 4195 | + | |
| 4196 | + | |
| 4197 | + | |
| 4198 | + | |
| 4199 | + | |
| 4200 | + | |
| 4201 | + | |
| 4202 | + | |
| 4203 | + | |
| 4204 | + | |
| 4205 | + | |
| 4206 | + | |
4085 | 4207 | | |
4086 | 4208 | | |
4087 | 4209 | | |
| |||
4175 | 4297 | | |
4176 | 4298 | | |
4177 | 4299 | | |
| 4300 | + | |
4178 | 4301 | | |
4179 | 4302 | | |
4180 | 4303 | | |
| |||
5377 | 5500 | | |
5378 | 5501 | | |
5379 | 5502 | | |
| 5503 | + | |
5380 | 5504 | | |
5381 | 5505 | | |
5382 | 5506 | | |
| |||
0 commit comments